am ba3cf72a: Merge "Telephony: Clarify IccCardConstants.State enum"

* commit 'ba3cf72a08368ab40556b07b4518536bb59eb2f6':
  Telephony: Clarify IccCardConstants.State enum
diff --git a/cmds/installd/commands.c b/cmds/installd/commands.c
index 8b11d02..41e7b8d 100644
--- a/cmds/installd/commands.c
+++ b/cmds/installd/commands.c
@@ -1094,7 +1094,12 @@
         rc = -errno;
         goto out;
     }
-
+    if (chmod(libdir, 0755) < 0) {
+        ALOGE("cannot chmod dir '%s': %s\n", libdir, strerror(errno));
+        unlink(libdir);
+        rc = -errno;
+        goto out;
+    }
     if (chown(libdir, AID_SYSTEM, AID_SYSTEM) < 0) {
         ALOGE("cannot chown dir '%s': %s\n", libdir, strerror(errno));
         unlink(libdir);
diff --git a/core/java/android/accessibilityservice/AccessibilityService.java b/core/java/android/accessibilityservice/AccessibilityService.java
index b6001eb..81ee192 100644
--- a/core/java/android/accessibilityservice/AccessibilityService.java
+++ b/core/java/android/accessibilityservice/AccessibilityService.java
@@ -66,7 +66,7 @@
  * accessibility service. Following is an example declaration:
  * </p>
  * <pre> &lt;service android:name=".MyAccessibilityService"
- *         android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE&gt;
+ *         android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"&gt;
  *     &lt;intent-filter&gt;
  *         &lt;action android:name="android.accessibilityservice.AccessibilityService" /&gt;
  *     &lt;/intent-filter&gt;
diff --git a/core/java/android/accounts/AccountManagerService.java b/core/java/android/accounts/AccountManagerService.java
index 079b9bd..22e454f 100644
--- a/core/java/android/accounts/AccountManagerService.java
+++ b/core/java/android/accounts/AccountManagerService.java
@@ -220,8 +220,6 @@
 
         sThis.set(this);
 
-        UserAccounts accounts = initUser(0);
-
         IntentFilter intentFilter = new IntentFilter();
         intentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED);
         intentFilter.addDataScheme("package");
@@ -242,6 +240,11 @@
         }, userFilter);
     }
 
+    public void systemReady() {
+        mAuthenticatorCache.generateServicesMap();
+        initUser(0);
+    }
+
     private UserAccounts initUser(int userId) {
         synchronized (mUsers) {
             UserAccounts accounts = mUsers.get(userId);
diff --git a/core/java/android/accounts/IAccountAuthenticatorCache.java b/core/java/android/accounts/IAccountAuthenticatorCache.java
index 618771f..20dd585 100644
--- a/core/java/android/accounts/IAccountAuthenticatorCache.java
+++ b/core/java/android/accounts/IAccountAuthenticatorCache.java
@@ -60,4 +60,9 @@
      */
     void setListener(RegisteredServicesCacheListener<AuthenticatorDescription> listener,
             Handler handler);
+
+    /**
+     * Refreshes the authenticator cache.
+     */
+    void generateServicesMap();
 }
\ No newline at end of file
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index b902550..411f6d0 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -361,10 +361,10 @@
                     return PolicyManager.makeNewLayoutInflater(ctx.getOuterContext());
                 }});
 
-        registerService(LOCATION_SERVICE, new StaticServiceFetcher() {
-                public Object createStaticService() {
+        registerService(LOCATION_SERVICE, new ServiceFetcher() {
+                public Object createService(ContextImpl ctx) {
                     IBinder b = ServiceManager.getService(LOCATION_SERVICE);
-                    return new LocationManager(ILocationManager.Stub.asInterface(b));
+                    return new LocationManager(ctx, ILocationManager.Stub.asInterface(b));
                 }});
 
         registerService(NETWORK_POLICY_SERVICE, new ServiceFetcher() {
diff --git a/core/java/android/app/DatePickerDialog.java b/core/java/android/app/DatePickerDialog.java
index 3f0b4d4..d168800 100644
--- a/core/java/android/app/DatePickerDialog.java
+++ b/core/java/android/app/DatePickerDialog.java
@@ -33,8 +33,8 @@
 /**
  * A simple dialog containing an {@link android.widget.DatePicker}.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-datepicker.html">Date Picker
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/pickers.html">Pickers</a>
+ * guide.</p>
  */
 public class DatePickerDialog extends AlertDialog implements OnClickListener,
         OnDateChangedListener {
diff --git a/core/java/android/app/MediaRouteButton.java b/core/java/android/app/MediaRouteButton.java
index c34c163..b0bfe74 100644
--- a/core/java/android/app/MediaRouteButton.java
+++ b/core/java/android/app/MediaRouteButton.java
@@ -60,7 +60,7 @@
     }
 
     public MediaRouteButton(Context context, AttributeSet attrs) {
-        this(context, null, com.android.internal.R.attr.mediaRouteButtonStyle);
+        this(context, attrs, com.android.internal.R.attr.mediaRouteButtonStyle);
     }
 
     public MediaRouteButton(Context context, AttributeSet attrs, int defStyleAttr) {
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index ceb8cde..cb83dc2 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -897,12 +897,16 @@
      * Builder class for {@link Notification} objects.
      * 
      * Provides a convenient way to set the various fields of a {@link Notification} and generate
-     * content views using the platform's notification layout template. 
+     * content views using the platform's notification layout template. If your app supports
+     * versions of Android as old as API level 4, you can instead use
+     * {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder},
+     * available in the <a href="{@docRoot}tools/extras/support-library.html">Android Support
+     * library</a>.
      * 
-     * Example:
+     * <p>Example:
      * 
      * <pre class="prettyprint">
-     * Notification noti = new Notification.Builder()
+     * Notification noti = new Notification.Builder(mContext)
      *         .setContentTitle(&quot;New mail from &quot; + sender.toString())
      *         .setContentText(subject)
      *         .setSmallIcon(R.drawable.new_mail)
@@ -1731,6 +1735,9 @@
             return this;
         }
 
+        /**
+         * Provide the bitmap to be used as the payload for the BigPicture notification.
+         */
         public BigPictureStyle bigPicture(Bitmap b) {
             mPicture = b;
             return this;
@@ -1809,6 +1816,10 @@
             return this;
         }
 
+        /**
+         * Provide the longer text to be displayed in the big form of the
+         * template in place of the content text.
+         */
         public BigTextStyle bigText(CharSequence cs) {
             mBigText = cs;
             return this;
@@ -1889,6 +1900,9 @@
             return this;
         }
 
+        /**
+         * Append a line to the digest section of the Inbox notification.
+         */
         public InboxStyle addLine(CharSequence cs) {
             mTexts.add(cs);
             return this;
diff --git a/core/java/android/app/Service.java b/core/java/android/app/Service.java
index cb43d4c..02cf3aa 100644
--- a/core/java/android/app/Service.java
+++ b/core/java/android/app/Service.java
@@ -142,7 +142,7 @@
  * to the service.  The service will remain running as long as the connection
  * is established (whether or not the client retains a reference on the
  * service's IBinder).  Usually the IBinder returned is for a complex
- * interface that has been <a href="{@docRoot}guide/developing/tools/aidl.html">written
+ * interface that has been <a href="{@docRoot}guide/components/aidl.html">written
  * in aidl</a>.
  * 
  * <p>A service can be both started and have connections bound to it.  In such
@@ -473,7 +473,7 @@
      * Return the communication channel to the service.  May return null if 
      * clients can not bind to the service.  The returned
      * {@link android.os.IBinder} is usually for a complex interface
-     * that has been <a href="{@docRoot}guide/developing/tools/aidl.html">described using
+     * that has been <a href="{@docRoot}guide/components/aidl.html">described using
      * aidl</a>.
      * 
      * <p><em>Note that unlike other application components, calls on to the
diff --git a/core/java/android/app/TimePickerDialog.java b/core/java/android/app/TimePickerDialog.java
index d773bc8..952227f 100644
--- a/core/java/android/app/TimePickerDialog.java
+++ b/core/java/android/app/TimePickerDialog.java
@@ -30,8 +30,8 @@
 /**
  * A dialog that prompts the user for the time of day using a {@link TimePicker}.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-timepicker.html">Time Picker
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/pickers.html">Pickers</a>
+ * guide.</p>
  */
 public class TimePickerDialog extends AlertDialog
         implements OnClickListener, OnTimeChangedListener {
diff --git a/core/java/android/content/BroadcastReceiver.java b/core/java/android/content/BroadcastReceiver.java
index 9ddb2a6..446f1af 100644
--- a/core/java/android/content/BroadcastReceiver.java
+++ b/core/java/android/content/BroadcastReceiver.java
@@ -735,7 +735,7 @@
     
     /**
      * Control inclusion of debugging help for mismatched
-     * calls to {@ Context#registerReceiver(BroadcastReceiver, IntentFilter)
+     * calls to {@link Context#registerReceiver(BroadcastReceiver, IntentFilter)
      * Context.registerReceiver()}.
      * If called with true, before given to registerReceiver(), then the
      * callstack of the following {@link Context#unregisterReceiver(BroadcastReceiver)
diff --git a/core/java/android/content/ContentService.java b/core/java/android/content/ContentService.java
index f827c3d..1a07504 100644
--- a/core/java/android/content/ContentService.java
+++ b/core/java/android/content/ContentService.java
@@ -132,6 +132,9 @@
     /*package*/ ContentService(Context context, boolean factoryTest) {
         mContext = context;
         mFactoryTest = factoryTest;
+    }
+
+    public void systemReady() {
         getSyncManager();
     }
 
@@ -524,7 +527,7 @@
         }
     }
 
-    public static IContentService main(Context context, boolean factoryTest) {
+    public static ContentService main(Context context, boolean factoryTest) {
         ContentService service = new ContentService(context, factoryTest);
         ServiceManager.addService(ContentResolver.CONTENT_SERVICE_NAME, service);
         return service;
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 6de69b0..7e96ae6 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -1610,7 +1610,7 @@
      *
      * @param flags Additional option flags. Use any combination of
      * {@link #GET_META_DATA}, {@link #GET_SHARED_LIBRARY_FILES},
-     * {link #GET_UNINSTALLED_PACKAGES} to modify the data returned.
+     * {@link #GET_UNINSTALLED_PACKAGES} to modify the data returned.
      *
      * @return A List of ApplicationInfo objects, one for each application that
      *         is installed on the device.  In the unlikely case of there being
diff --git a/core/java/android/content/pm/RegisteredServicesCache.java b/core/java/android/content/pm/RegisteredServicesCache.java
index b1fc788..d8f9204 100644
--- a/core/java/android/content/pm/RegisteredServicesCache.java
+++ b/core/java/android/content/pm/RegisteredServicesCache.java
@@ -251,7 +251,7 @@
         return false;
     }
 
-    void generateServicesMap() {
+    public void generateServicesMap() {
         PackageManager pm = mContext.getPackageManager();
         ArrayList<ServiceInfo<V>> serviceInfos = new ArrayList<ServiceInfo<V>>();
         List<ResolveInfo> resolveInfos = pm.queryIntentServices(new Intent(mInterfaceName),
diff --git a/core/java/android/content/res/Resources.java b/core/java/android/content/res/Resources.java
index c630bb5..ab2fe1c 100755
--- a/core/java/android/content/res/Resources.java
+++ b/core/java/android/content/res/Resources.java
@@ -1120,8 +1120,8 @@
          * Return a StyledAttributes holding the values defined by
          * <var>Theme</var> which are listed in <var>attrs</var>.
          * 
-         * <p>Be sure to call StyledAttributes.recycle() when you are done with
-         * the array.
+         * <p>Be sure to call {@link TypedArray#recycle() TypedArray.recycle()} when you are done
+         * with the array.
          * 
          * @param attrs The desired attributes.
          *
@@ -1148,8 +1148,8 @@
          * Return a StyledAttributes holding the values defined by the style
          * resource <var>resid</var> which are listed in <var>attrs</var>.
          * 
-         * <p>Be sure to call StyledAttributes.recycle() when you are done with
-         * the array.
+         * <p>Be sure to call {@link TypedArray#recycle() TypedArray.recycle()} when you are done
+         * with the array.
          * 
          * @param resid The desired style resource.
          * @param attrs The desired attributes in the style.
@@ -1208,8 +1208,8 @@
          * AttributeSet specifies a style class (through the "style" attribute),
          * that style will be applied on top of the base attributes it defines.
          * 
-         * <p>Be sure to call StyledAttributes.recycle() when you are done with
-         * the array.
+         * <p>Be sure to call {@link TypedArray#recycle() TypedArray.recycle()} when you are done
+         * with the array.
          * 
          * <p>When determining the final value of a particular attribute, there
          * are four inputs that come into play:</p>
diff --git a/core/java/android/content/res/TypedArray.java b/core/java/android/content/res/TypedArray.java
index 2df492e..2968fbb 100644
--- a/core/java/android/content/res/TypedArray.java
+++ b/core/java/android/content/res/TypedArray.java
@@ -684,7 +684,7 @@
     }
 
     /**
-     * Give back a previously retrieved StyledAttributes, for later re-use.
+     * Give back a previously retrieved array, for later re-use.
      */
     public void recycle() {
         synchronized (mResources.mTmpValue) {
diff --git a/core/java/android/hardware/usb/UsbManager.java b/core/java/android/hardware/usb/UsbManager.java
index c40504a..f64ef87 100644
--- a/core/java/android/hardware/usb/UsbManager.java
+++ b/core/java/android/hardware/usb/UsbManager.java
@@ -257,7 +257,7 @@
      * data using {@link android.hardware.usb.UsbRequest}.
      *
      * @param device the device to open
-     * @return true if we successfully opened the device
+     * @return a {@link UsbDeviceConnection}, or {@code null} if open failed
      */
     public UsbDeviceConnection openDevice(UsbDevice device) {
         try {
diff --git a/core/java/android/net/DummyDataStateTracker.java b/core/java/android/net/DummyDataStateTracker.java
index 9f0f9cd..ccd96ff 100644
--- a/core/java/android/net/DummyDataStateTracker.java
+++ b/core/java/android/net/DummyDataStateTracker.java
@@ -123,7 +123,7 @@
      * Record the detailed state of a network, and if it is a
      * change from the previous state, send a notification to
      * any listeners.
-     * @param state the new @{code DetailedState}
+     * @param state the new {@code DetailedState}
      * @param reason a {@code String} indicating a reason for the state change,
      * if one was supplied. May be {@code null}.
      * @param extraInfo optional {@code String} providing extra information about the state change
diff --git a/core/java/android/net/MobileDataStateTracker.java b/core/java/android/net/MobileDataStateTracker.java
index 63c19ad..d59fa6a 100644
--- a/core/java/android/net/MobileDataStateTracker.java
+++ b/core/java/android/net/MobileDataStateTracker.java
@@ -385,7 +385,7 @@
      * Record the detailed state of a network, and if it is a
      * change from the previous state, send a notification to
      * any listeners.
-     * @param state the new @{code DetailedState}
+     * @param state the new {@code DetailedState}
      * @param reason a {@code String} indicating a reason for the state change,
      * if one was supplied. May be {@code null}.
      * @param extraInfo optional {@code String} providing extra information about the state change
diff --git a/core/java/android/nfc/NdefRecord.java b/core/java/android/nfc/NdefRecord.java
index 8872335..ed1c5b3 100644
--- a/core/java/android/nfc/NdefRecord.java
+++ b/core/java/android/nfc/NdefRecord.java
@@ -70,7 +70,7 @@
  * indicate location with an NDEF message, provide support for chunking of
  * NDEF records, and to pack optional fields. This class does not expose
  * those details. To write an NDEF Record as binary you must first put it
- * into an @{link NdefMessage}, then call {@link NdefMessage#toByteArray()}.
+ * into an {@link NdefMessage}, then call {@link NdefMessage#toByteArray()}.
  * <p class="note">
  * {@link NdefMessage} and {@link NdefRecord} implementations are
  * always available, even on Android devices that do not have NFC hardware.
diff --git a/core/java/android/os/Binder.java b/core/java/android/os/Binder.java
index 577fc43..7b51119 100644
--- a/core/java/android/os/Binder.java
+++ b/core/java/android/os/Binder.java
@@ -32,7 +32,7 @@
  * the standard support creating a local implementation of such an object.
  * 
  * <p>Most developers will not implement this class directly, instead using the
- * <a href="{@docRoot}guide/developing/tools/aidl.html">aidl</a> tool to describe the desired
+ * <a href="{@docRoot}guide/components/aidl.html">aidl</a> tool to describe the desired
  * interface, having it generate the appropriate Binder subclass.  You can,
  * however, derive directly from Binder to implement your own custom RPC
  * protocol or simply instantiate a raw Binder object directly to use as a
diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java
index a4819d8..8a20a6e 100644
--- a/core/java/android/os/storage/StorageManager.java
+++ b/core/java/android/os/storage/StorageManager.java
@@ -289,7 +289,7 @@
      * Constructs a StorageManager object through which an application can
      * can communicate with the systems mount service.
      * 
-     * @param tgtLooper The {@android.os.Looper} which events will be received on.
+     * @param tgtLooper The {@link android.os.Looper} which events will be received on.
      *
      * <p>Applications can get instance of this class by calling
      * {@link android.content.Context#getSystemService(java.lang.String)} with an argument
diff --git a/core/java/android/preference/Preference.java b/core/java/android/preference/Preference.java
index 8df4339..336960e 100644
--- a/core/java/android/preference/Preference.java
+++ b/core/java/android/preference/Preference.java
@@ -55,6 +55,13 @@
  * {@link SharedPreferences}. It is up to the subclass to decide how to store
  * the value.
  * 
+ * <div class="special reference">
+ * <h3>Developer Guides</h3>
+ * <p>For information about building a settings UI with Preferences,
+ * read the <a href="{@docRoot}guide/topics/ui/settings.html">Settings</a>
+ * guide.</p>
+ * </div>
+ * 
  * @attr ref android.R.styleable#Preference_icon
  * @attr ref android.R.styleable#Preference_key
  * @attr ref android.R.styleable#Preference_title
diff --git a/core/java/android/preference/PreferenceActivity.java b/core/java/android/preference/PreferenceActivity.java
index 140bff0..9bfa8c0 100644
--- a/core/java/android/preference/PreferenceActivity.java
+++ b/core/java/android/preference/PreferenceActivity.java
@@ -84,6 +84,13 @@
  * items.  Doing this implicitly switches the class into its new "headers
  * + fragments" mode rather than the old style of just showing a single
  * preferences list.
+ * 
+ * <div class="special reference">
+ * <h3>Developer Guides</h3>
+ * <p>For information about using {@code PreferenceActivity},
+ * read the <a href="{@docRoot}guide/topics/ui/settings.html">Settings</a>
+ * guide.</p>
+ * </div>
  *
  * <a name="SampleCode"></a>
  * <h3>Sample Code</h3>
diff --git a/core/java/android/preference/PreferenceCategory.java b/core/java/android/preference/PreferenceCategory.java
index 237c5ce..d8af324 100644
--- a/core/java/android/preference/PreferenceCategory.java
+++ b/core/java/android/preference/PreferenceCategory.java
@@ -24,6 +24,13 @@
 /**
  * Used to group {@link Preference} objects
  * and provide a disabled title above the group.
+ * 
+ * <div class="special reference">
+ * <h3>Developer Guides</h3>
+ * <p>For information about building a settings UI with Preferences,
+ * read the <a href="{@docRoot}guide/topics/ui/settings.html">Settings</a>
+ * guide.</p>
+ * </div>
  */
 public class PreferenceCategory extends PreferenceGroup {
     private static final String TAG = "PreferenceCategory";
diff --git a/core/java/android/preference/PreferenceFragment.java b/core/java/android/preference/PreferenceFragment.java
index bdd858b..11d8878 100644
--- a/core/java/android/preference/PreferenceFragment.java
+++ b/core/java/android/preference/PreferenceFragment.java
@@ -74,6 +74,13 @@
  * As a convenience, this fragment implements a click listener for any
  * preference in the current hierarchy, see
  * {@link #onPreferenceTreeClick(PreferenceScreen, Preference)}.
+ * 
+ * <div class="special reference">
+ * <h3>Developer Guides</h3>
+ * <p>For information about using {@code PreferenceFragment},
+ * read the <a href="{@docRoot}guide/topics/ui/settings.html">Settings</a>
+ * guide.</p>
+ * </div>
  *
  * <a name="SampleCode"></a>
  * <h3>Sample Code</h3>
diff --git a/core/java/android/preference/PreferenceGroup.java b/core/java/android/preference/PreferenceGroup.java
index d008fd6..f33a6be 100644
--- a/core/java/android/preference/PreferenceGroup.java
+++ b/core/java/android/preference/PreferenceGroup.java
@@ -33,6 +33,13 @@
  * {@link Preference} objects. It is a base class for  Preference objects that are
  * parents, such as {@link PreferenceCategory} and {@link PreferenceScreen}.
  * 
+ * <div class="special reference">
+ * <h3>Developer Guides</h3>
+ * <p>For information about building a settings UI with Preferences,
+ * read the <a href="{@docRoot}guide/topics/ui/settings.html">Settings</a>
+ * guide.</p>
+ * </div>
+ * 
  * @attr ref android.R.styleable#PreferenceGroup_orderingFromXml
  */
 public abstract class PreferenceGroup extends Preference implements GenericInflater.Parent<Preference> {
diff --git a/core/java/android/preference/PreferenceManager.java b/core/java/android/preference/PreferenceManager.java
index 6562de9..5ca7d79 100644
--- a/core/java/android/preference/PreferenceManager.java
+++ b/core/java/android/preference/PreferenceManager.java
@@ -415,19 +415,20 @@
     }
     
     /**
-     * Sets the default values from a preference hierarchy in XML. This should
+     * Sets the default values from an XML preference file by reading the values defined
+     * by each {@link Preference} item's {@code android:defaultValue} attribute. This should
      * be called by the application's main activity.
      * <p>
-     * If {@code readAgain} is false, this will only set the default values if this
-     * method has never been called in the past (or the
+     * 
+     * @param context The context of the shared preferences.
+     * @param resId The resource ID of the preference XML file.
+     * @param readAgain Whether to re-read the default values.
+     * If false, this method sets the default values only if this
+     * method has never been called in the past (or if the
      * {@link #KEY_HAS_SET_DEFAULT_VALUES} in the default value shared
      * preferences file is false). To attempt to set the default values again
      * bypassing this check, set {@code readAgain} to true.
-     * 
-     * @param context The context of the shared preferences.
-     * @param resId The resource ID of the preference hierarchy XML file.
-     * @param readAgain Whether to re-read the default values.
-     *            <p>
+     *            <p class="note">
      *            Note: this will NOT reset preferences back to their default
      *            values. For that functionality, use
      *            {@link PreferenceManager#getDefaultSharedPreferences(Context)}
@@ -445,6 +446,25 @@
      * Similar to {@link #setDefaultValues(Context, int, boolean)} but allows
      * the client to provide the filename and mode of the shared preferences
      * file.
+     *
+     * @param context The context of the shared preferences.
+     * @param sharedPreferencesName A custom name for the shared preferences file.
+     * @param sharedPreferencesMode The file creation mode for the shared preferences file, such
+     * as {@link android.content.Context#MODE_PRIVATE} or {@link
+     * android.content.Context#MODE_PRIVATE}
+     * @param resId The resource ID of the preference XML file.
+     * @param readAgain Whether to re-read the default values.
+     * If false, this method will set the default values only if this
+     * method has never been called in the past (or if the
+     * {@link #KEY_HAS_SET_DEFAULT_VALUES} in the default value shared
+     * preferences file is false). To attempt to set the default values again
+     * bypassing this check, set {@code readAgain} to true.
+     *            <p class="note">
+     *            Note: this will NOT reset preferences back to their default
+     *            values. For that functionality, use
+     *            {@link PreferenceManager#getDefaultSharedPreferences(Context)}
+     *            and clear it followed by a call to this method with this
+     *            parameter set to true.
      * 
      * @see #setDefaultValues(Context, int, boolean)
      * @see #setSharedPreferencesName(String)
diff --git a/core/java/android/preference/PreferenceScreen.java b/core/java/android/preference/PreferenceScreen.java
index c17111a..db80676 100644
--- a/core/java/android/preference/PreferenceScreen.java
+++ b/core/java/android/preference/PreferenceScreen.java
@@ -75,6 +75,13 @@
  * clicked will show another screen of preferences such as "Prefer WiFi" (and
  * the other preferences that are children of the "second_preferencescreen" tag).
  * 
+ * <div class="special reference">
+ * <h3>Developer Guides</h3>
+ * <p>For information about building a settings UI with Preferences,
+ * read the <a href="{@docRoot}guide/topics/ui/settings.html">Settings</a>
+ * guide.</p>
+ * </div>
+ *
  * @see PreferenceCategory
  */
 public final class PreferenceScreen extends PreferenceGroup implements AdapterView.OnItemClickListener,
diff --git a/core/java/android/provider/CalendarContract.java b/core/java/android/provider/CalendarContract.java
index 1ef0916..a28585c 100644
--- a/core/java/android/provider/CalendarContract.java
+++ b/core/java/android/provider/CalendarContract.java
@@ -1442,9 +1442,9 @@
                         attendeeValues.put(Attendees.ATTENDEE_STATUS,
                                 subCursor.getInt(COLUMN_ATTENDEE_STATUS));
                         attendeeValues.put(Attendees.ATTENDEE_IDENTITY,
-                                subCursor.getInt(COLUMN_ATTENDEE_IDENTITY));
+                                subCursor.getString(COLUMN_ATTENDEE_IDENTITY));
                         attendeeValues.put(Attendees.ATTENDEE_ID_NAMESPACE,
-                                subCursor.getInt(COLUMN_ATTENDEE_ID_NAMESPACE));
+                                subCursor.getString(COLUMN_ATTENDEE_ID_NAMESPACE));
                         entity.addSubValue(Attendees.CONTENT_URI, attendeeValues);
                     }
                 } finally {
diff --git a/core/java/android/text/MeasuredText.java b/core/java/android/text/MeasuredText.java
index 445aac6..bd9310c 100644
--- a/core/java/android/text/MeasuredText.java
+++ b/core/java/android/text/MeasuredText.java
@@ -83,7 +83,7 @@
     }
 
     void setPos(int pos) {
-        mPos = pos;
+        mPos = pos - mTextStart;
     }
 
     /**
diff --git a/core/java/android/view/SurfaceHolder.java b/core/java/android/view/SurfaceHolder.java
index 2a16725..015a78e 100644
--- a/core/java/android/view/SurfaceHolder.java
+++ b/core/java/android/view/SurfaceHolder.java
@@ -155,7 +155,7 @@
 
     /**
      * Make the surface a fixed size.  It will never change from this size.
-     * When working with a {link SurfaceView}, this must be called from the
+     * When working with a {@link SurfaceView}, this must be called from the
      * same thread running the SurfaceView's window.
      * 
      * @param width The surface's width.
@@ -167,14 +167,14 @@
      * Allow the surface to resized based on layout of its container (this is
      * the default).  When this is enabled, you should monitor
      * {@link Callback#surfaceChanged} for changes to the size of the surface.
-     * When working with a {link SurfaceView}, this must be called from the
+     * When working with a {@link SurfaceView}, this must be called from the
      * same thread running the SurfaceView's window.
      */
     public void setSizeFromLayout();
 
     /**
      * Set the desired PixelFormat of the surface.  The default is OPAQUE.
-     * When working with a {link SurfaceView}, this must be called from the
+     * When working with a {@link SurfaceView}, this must be called from the
      * same thread running the SurfaceView's window.
      * 
      * @param format A constant from PixelFormat.
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index fa555d2..f2a80d0 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -2362,7 +2362,7 @@
      * with a stable layout.  (Note that you should avoid using
      * {@link #SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION} by itself.)
      *
-     * If you have set the window flag {@ WindowManager.LayoutParams#FLAG_FULLSCREEN}
+     * If you have set the window flag {@link WindowManager.LayoutParams#FLAG_FULLSCREEN}
      * to hide the status bar (instead of using {@link #SYSTEM_UI_FLAG_FULLSCREEN}),
      * then a hidden status bar will be considered a "stable" state for purposes
      * here.  This allows your UI to continually hide the status bar, while still
diff --git a/core/java/android/view/ViewGroup.java b/core/java/android/view/ViewGroup.java
index 044627c..0c83a73 100644
--- a/core/java/android/view/ViewGroup.java
+++ b/core/java/android/view/ViewGroup.java
@@ -4100,21 +4100,23 @@
                 final int left = mLeft;
                 final int top = mTop;
 
-                if ((mGroupFlags & FLAG_CLIP_CHILDREN) != FLAG_CLIP_CHILDREN ||
-                        dirty.intersect(0, 0, mRight - left, mBottom - top) ||
-                        (mPrivateFlags & DRAW_ANIMATION) == DRAW_ANIMATION) {
-                    mPrivateFlags &= ~DRAWING_CACHE_VALID;
-
-                    location[CHILD_LEFT_INDEX] = left;
-                    location[CHILD_TOP_INDEX] = top;
-
-                    if (mLayerType != LAYER_TYPE_NONE) {
-                        mPrivateFlags |= INVALIDATED;
-                        mLocalDirtyRect.union(dirty);
+                if ((mGroupFlags & FLAG_CLIP_CHILDREN) == FLAG_CLIP_CHILDREN) {
+                    if (!dirty.intersect(0, 0, mRight - left, mBottom - top)) {
+                        dirty.setEmpty();
                     }
-
-                    return mParent;
                 }
+                mPrivateFlags &= ~DRAWING_CACHE_VALID;
+
+                location[CHILD_LEFT_INDEX] = left;
+                location[CHILD_TOP_INDEX] = top;
+
+                if (mLayerType != LAYER_TYPE_NONE) {
+                    mPrivateFlags |= INVALIDATED;
+                    mLocalDirtyRect.union(dirty);
+                }
+
+                return mParent;
+
             } else {
                 mPrivateFlags &= ~DRAWN & ~DRAWING_CACHE_VALID;
 
@@ -5204,7 +5206,7 @@
     }
 
     /**
-     * If {link #addStatesFromChildren} is true, refreshes this group's
+     * If {@link #addStatesFromChildren} is true, refreshes this group's
      * drawable state (to include the states from its children).
      */
     public void childDrawableStateChanged(View child) {
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 6959b84..ad850da 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -870,6 +870,8 @@
         if (dirty == null) {
             invalidate();
             return null;
+        } else if (dirty.isEmpty()) {
+            return null;
         }
 
         if (mCurScrollY != 0 || mTranslator != null) {
diff --git a/core/java/android/view/textservice/TextServicesManager.java b/core/java/android/view/textservice/TextServicesManager.java
index 161e8fb..81b36db 100644
--- a/core/java/android/view/textservice/TextServicesManager.java
+++ b/core/java/android/view/textservice/TextServicesManager.java
@@ -91,11 +91,11 @@
 
     /**
      * Get a spell checker session for the specified spell checker
-     * @param locale the locale for the spell checker. If {@param locale} is null and
+     * @param locale the locale for the spell checker. If {@code locale} is null and
      * referToSpellCheckerLanguageSettings is true, the locale specified in Settings will be
-     * returned. If {@param locale} is not null and referToSpellCheckerLanguageSettings is true,
-     * the locale specified in Settings will be returned only when it is same as {@param locale}.
-     * Exceptionally, when referToSpellCheckerLanguageSettings is true and {@param locale} is
+     * returned. If {@code locale} is not null and referToSpellCheckerLanguageSettings is true,
+     * the locale specified in Settings will be returned only when it is same as {@code locale}.
+     * Exceptionally, when referToSpellCheckerLanguageSettings is true and {@code locale} is
      * only language (e.g. "en"), the specified locale in Settings (e.g. "en_US") will be
      * selected.
      * @param listener a spell checker session lister for getting results from a spell checker.
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 119fcd3..e493653 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -65,8 +65,8 @@
  * href="{@docRoot}guide/topics/manifest/manifest-element.html">{@code <manifest>}</a>
  * element.</p>
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-webview.html">Web View
- * tutorial</a>.</p>
+ * <p>For more information, read
+ * <a href="{@docRoot}guide/webapps/webview.html">Building Web Apps in WebView</a>.</p>
  *
  * <h3>Basic usage</h3>
  *
diff --git a/core/java/android/widget/AbsListView.java b/core/java/android/widget/AbsListView.java
index 19aef8e..437da59 100644
--- a/core/java/android/widget/AbsListView.java
+++ b/core/java/android/widget/AbsListView.java
@@ -16,8 +16,6 @@
 
 package android.widget;
 
-import com.android.internal.R;
-
 import android.content.Context;
 import android.content.Intent;
 import android.content.res.TypedArray;
@@ -69,6 +67,8 @@
 import android.view.inputmethod.InputConnectionWrapper;
 import android.view.inputmethod.InputMethodManager;
 
+import com.android.internal.R;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -1813,6 +1813,10 @@
         }
         ss.checkedItemCount = mCheckedItemCount;
 
+        if (mRemoteAdapter != null) {
+            mRemoteAdapter.saveRemoteViewsCache();
+        }
+
         return ss;
     }
 
@@ -5974,6 +5978,9 @@
         mDeferNotifyDataSetChanged = false;
         // Otherwise, create a new RemoteViewsAdapter for binding
         mRemoteAdapter = new RemoteViewsAdapter(getContext(), intent, this);
+        if (mRemoteAdapter.isDataReady()) {
+            setAdapter(mRemoteAdapter);
+        }
     }
 
     /**
diff --git a/core/java/android/widget/AdapterViewAnimator.java b/core/java/android/widget/AdapterViewAnimator.java
index c557963..2266cea 100644
--- a/core/java/android/widget/AdapterViewAnimator.java
+++ b/core/java/android/widget/AdapterViewAnimator.java
@@ -813,6 +813,9 @@
     @Override
     public Parcelable onSaveInstanceState() {
         Parcelable superState = super.onSaveInstanceState();
+        if (mRemoteViewsAdapter != null) {
+            mRemoteViewsAdapter.saveRemoteViewsCache();
+        }
         return new SavedState(superState, mWhichChild);
     }
 
@@ -984,6 +987,9 @@
         mDeferNotifyDataSetChanged = false;
         // Otherwise, create a new RemoteViewsAdapter for binding
         mRemoteViewsAdapter = new RemoteViewsAdapter(getContext(), intent, this);
+        if (mRemoteViewsAdapter.isDataReady()) {
+            setAdapter(mRemoteViewsAdapter);
+        }
     }
 
     @Override
diff --git a/core/java/android/widget/AutoCompleteTextView.java b/core/java/android/widget/AutoCompleteTextView.java
index e5199f6..30dd17d 100644
--- a/core/java/android/widget/AutoCompleteTextView.java
+++ b/core/java/android/widget/AutoCompleteTextView.java
@@ -75,8 +75,8 @@
  * }
  * </pre>
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-autocomplete.html">Auto Complete
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/text.html">Text Fields</a>
+ * guide.</p>
  *
  * @attr ref android.R.styleable#AutoCompleteTextView_completionHint
  * @attr ref android.R.styleable#AutoCompleteTextView_completionThreshold
diff --git a/core/java/android/widget/Button.java b/core/java/android/widget/Button.java
index 99f4cae..2ac56ac 100644
--- a/core/java/android/widget/Button.java
+++ b/core/java/android/widget/Button.java
@@ -83,8 +83,8 @@
  * href="{@docRoot}guide/topics/resources/drawable-resource.html#StateList">State List
  * Drawable</a>.</p>
  *
- * <p>Also see the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a> for an example implementation of a button.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/button.html">Buttons</a>
+ * guide.</p>
  *
  * <p><strong>XML attributes</strong></p>
  * <p>
diff --git a/core/java/android/widget/CheckBox.java b/core/java/android/widget/CheckBox.java
index 858c415..f1804f8 100644
--- a/core/java/android/widget/CheckBox.java
+++ b/core/java/android/widget/CheckBox.java
@@ -44,8 +44,8 @@
  * }
  * </pre>
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/checkbox.html">Checkboxes</a>
+ * guide.</p>
  *  
  * <p><strong>XML attributes</strong></p> 
  * <p>
diff --git a/core/java/android/widget/DatePicker.java b/core/java/android/widget/DatePicker.java
index 108b720..ac3bedb 100644
--- a/core/java/android/widget/DatePicker.java
+++ b/core/java/android/widget/DatePicker.java
@@ -53,8 +53,8 @@
  * displayed. Also the minimal and maximal date from which dates to be selected
  * can be customized.
  * <p>
- * See the <a href="{@docRoot}resources/tutorials/views/hello-datepicker.html">Date
- * Picker tutorial</a>.
+ * See the <a href="{@docRoot}guide/topics/ui/controls/pickers.html">Pickers</a>
+ * guide.
  * </p>
  * <p>
  * For a dialog using this view, see {@link android.app.DatePickerDialog}.
diff --git a/core/java/android/widget/EditText.java b/core/java/android/widget/EditText.java
index 2fd8768..57e51c2 100644
--- a/core/java/android/widget/EditText.java
+++ b/core/java/android/widget/EditText.java
@@ -38,8 +38,8 @@
  * EditText is a thin veneer over TextView that configures itself
  * to be editable.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/text.html">Text Fields</a>
+ * guide.</p>
  * <p>
  * <b>XML attributes</b>
  * <p>
diff --git a/core/java/android/widget/GridView.java b/core/java/android/widget/GridView.java
index ada7dd1..37e0b90 100644
--- a/core/java/android/widget/GridView.java
+++ b/core/java/android/widget/GridView.java
@@ -37,8 +37,8 @@
  * A view that shows items in two-dimensional scrolling grid. The items in the
  * grid come from the {@link ListAdapter} associated with this view.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-gridview.html">Grid
- * View tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/layout/gridview.html">Grid
+ * View</a> guide.</p>
  * 
  * @attr ref android.R.styleable#GridView_horizontalSpacing
  * @attr ref android.R.styleable#GridView_verticalSpacing
diff --git a/core/java/android/widget/ImageButton.java b/core/java/android/widget/ImageButton.java
index 59a8f28..379354c 100644
--- a/core/java/android/widget/ImageButton.java
+++ b/core/java/android/widget/ImageButton.java
@@ -64,8 +64,8 @@
  * it will only be applied after {@code android:state_pressed} and {@code
  * android:state_focused} have both evaluated false.</p>
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/button.html">Buttons</a>
+ * guide.</p>
  *
  * <p><strong>XML attributes</strong></p>
  * <p>
diff --git a/core/java/android/widget/LinearLayout.java b/core/java/android/widget/LinearLayout.java
index 2391898..09c0129 100644
--- a/core/java/android/widget/LinearLayout.java
+++ b/core/java/android/widget/LinearLayout.java
@@ -41,8 +41,8 @@
  * {@link android.widget.LinearLayout.LayoutParams LinearLayout.LayoutParams}.
  * The default orientation is horizontal.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-linearlayout.html">Linear Layout
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/layout/linear.html">Linear Layout</a>
+ * guide.</p>
  *
  * <p>
  * Also see {@link LinearLayout.LayoutParams android.widget.LinearLayout.LayoutParams}
diff --git a/core/java/android/widget/ListView.java b/core/java/android/widget/ListView.java
index d2e55d9..e011c13 100644
--- a/core/java/android/widget/ListView.java
+++ b/core/java/android/widget/ListView.java
@@ -57,8 +57,8 @@
  * A view that shows items in a vertically scrolling list. The items
  * come from the {@link ListAdapter} associated with this view.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-listview.html">List View
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/layout/listview.html">List View</a>
+ * guide.</p>
  *
  * @attr ref android.R.styleable#ListView_entries
  * @attr ref android.R.styleable#ListView_divider
diff --git a/core/java/android/widget/RadioButton.java b/core/java/android/widget/RadioButton.java
index b1bb1c0..a0fef7d 100644
--- a/core/java/android/widget/RadioButton.java
+++ b/core/java/android/widget/RadioButton.java
@@ -38,8 +38,8 @@
  * a radio group, checking one radio button unchecks all the others.</p>
  * </p>
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/radiobutton.html">Radio Buttons</a>
+ * guide.</p>
  *
  * <p><strong>XML attributes</strong></p>
  * <p> 
diff --git a/core/java/android/widget/RatingBar.java b/core/java/android/widget/RatingBar.java
index 524d272..4d3c56c 100644
--- a/core/java/android/widget/RatingBar.java
+++ b/core/java/android/widget/RatingBar.java
@@ -43,9 +43,6 @@
  * <p>
  * The secondary progress should not be modified by the client as it is used
  * internally as the background for a fractionally filled star.
- *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a>.</p>
  * 
  * @attr ref android.R.styleable#RatingBar_numStars
  * @attr ref android.R.styleable#RatingBar_rating
diff --git a/core/java/android/widget/RelativeLayout.java b/core/java/android/widget/RelativeLayout.java
index 29cf000..569cf99 100644
--- a/core/java/android/widget/RelativeLayout.java
+++ b/core/java/android/widget/RelativeLayout.java
@@ -56,8 +56,8 @@
  * {@link #ALIGN_PARENT_BOTTOM}.
  * </p>
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-relativelayout.html">Relative
- * Layout tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/layout/relative.html">Relative
+ * Layout</a> guide.</p>
  *
  * <p>
  * Also see {@link android.widget.RelativeLayout.LayoutParams RelativeLayout.LayoutParams} for
diff --git a/core/java/android/widget/RemoteViewsAdapter.java b/core/java/android/widget/RemoteViewsAdapter.java
index 46ec923..f0109ce 100644
--- a/core/java/android/widget/RemoteViewsAdapter.java
+++ b/core/java/android/widget/RemoteViewsAdapter.java
@@ -17,10 +17,10 @@
 package android.widget;
 
 import java.lang.ref.WeakReference;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedList;
-
 import android.appwidget.AppWidgetManager;
 import android.content.Context;
 import android.content.Intent;
@@ -31,6 +31,7 @@
 import android.os.Message;
 import android.os.RemoteException;
 import android.util.Log;
+import android.util.Pair;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.View.MeasureSpec;
@@ -47,7 +48,7 @@
 public class RemoteViewsAdapter extends BaseAdapter implements Handler.Callback {
     private static final String TAG = "RemoteViewsAdapter";
 
-    // The max number of items in the cache
+    // The max number of items in the cache 
     private static final int sDefaultCacheSize = 40;
     // The delay (in millis) to wait until attempting to unbind from a service after a request.
     // This ensures that we don't stay continually bound to the service and that it can be destroyed
@@ -58,7 +59,7 @@
     private static final int sDefaultLoadingViewHeight = 50;
 
     // Type defs for controlling different messages across the main and worker message queues
-    private static final int sDefaultMessageType = 0;
+    private static final int sDefaultMessageType = 0; 
     private static final int sUnbindServiceMessageType = 1;
 
     private final Context mContext;
@@ -83,6 +84,26 @@
     private Handler mWorkerQueue;
     private Handler mMainQueue;
 
+    // We cache the FixedSizeRemoteViewsCaches across orientation. These are the related data
+    // structures;
+    private static final HashMap<Pair<Intent.FilterComparison, Integer>, FixedSizeRemoteViewsCache>
+            sCachedRemoteViewsCaches = new HashMap<Pair<Intent.FilterComparison, Integer>,
+                    FixedSizeRemoteViewsCache>();
+    private static final HashMap<Pair<Intent.FilterComparison, Integer>, Runnable>
+            sRemoteViewsCacheRemoveRunnables = new HashMap<Pair<Intent.FilterComparison, Integer>,
+            Runnable>();
+    private static HandlerThread sCacheRemovalThread;
+    private static Handler sCacheRemovalQueue;
+
+    // We keep the cache around for a duration after onSaveInstanceState for use on re-inflation.
+    // If a new RemoteViewsAdapter with the same intent / widget id isn't constructed within this
+    // duration, the cache is dropped.
+    private static final int REMOTE_VIEWS_CACHE_DURATION = 5000;
+
+    // Used to indicate to the AdapterView that it can use this Adapter immediately after
+    // construction (happens when we have a cached FixedSizeRemoteViewsCache).
+    private boolean mDataReady = false;
+
     /**
      * An interface for the RemoteAdapter to notify other classes when adapters
      * are actually connected to/disconnected from their actual services.
@@ -246,7 +267,7 @@
      * A FrameLayout which contains a loading view, and manages the re/applying of RemoteViews when
      * they are loaded.
      */
-    private class RemoteViewsFrameLayout extends FrameLayout {
+    private static class RemoteViewsFrameLayout extends FrameLayout {
         public RemoteViewsFrameLayout(Context context) {
             super(context);
         }
@@ -301,7 +322,7 @@
          * Notifies each of the RemoteViewsFrameLayouts associated with a particular position that
          * the associated RemoteViews has loaded.
          */
-        public void notifyOnRemoteViewsLoaded(int position, RemoteViews view, int typeId) {
+        public void notifyOnRemoteViewsLoaded(int position, RemoteViews view) {
             if (view == null) return;
 
             final Integer pos = position;
@@ -331,7 +352,7 @@
     /**
      * The meta-data associated with the cache in it's current state.
      */
-    private class RemoteViewsMetaData {
+    private static class RemoteViewsMetaData {
         int count;
         int viewTypeCount;
         boolean hasStableIds;
@@ -390,14 +411,23 @@
             }
         }
 
+        public boolean isViewTypeInRange(int typeId) {
+            int mappedType = getMappedViewType(typeId);
+            if (mappedType >= viewTypeCount) {
+                return false;
+            } else {
+                return true;
+            }
+        }
+
         private RemoteViewsFrameLayout createLoadingView(int position, View convertView,
-                ViewGroup parent) {
+                ViewGroup parent, Object lock, LayoutInflater layoutInflater) {
             // Create and return a new FrameLayout, and setup the references for this position
             final Context context = parent.getContext();
             RemoteViewsFrameLayout layout = new RemoteViewsFrameLayout(context);
 
             // Create a new loading view
-            synchronized (mCache) {
+            synchronized (lock) {
                 boolean customLoadingViewAvailable = false;
 
                 if (mUserLoadingView != null) {
@@ -425,7 +455,7 @@
                             mFirstViewHeight = firstView.getMeasuredHeight();
                             mFirstView = null;
                         } catch (Exception e) {
-                            float density = mContext.getResources().getDisplayMetrics().density;
+                            float density = context.getResources().getDisplayMetrics().density;
                             mFirstViewHeight = (int)
                                     Math.round(sDefaultLoadingViewHeight * density);
                             mFirstView = null;
@@ -434,7 +464,7 @@
                     }
 
                     // Compose the loading view text
-                    TextView loadingTextView = (TextView) mLayoutInflater.inflate(
+                    TextView loadingTextView = (TextView) layoutInflater.inflate(
                             com.android.internal.R.layout.remote_views_adapter_default_loading_view,
                             layout, false);
                     loadingTextView.setHeight(mFirstViewHeight);
@@ -451,29 +481,28 @@
     /**
      * The meta-data associated with a single item in the cache.
      */
-    private class RemoteViewsIndexMetaData {
+    private static class RemoteViewsIndexMetaData {
         int typeId;
         long itemId;
-        boolean isRequested;
 
-        public RemoteViewsIndexMetaData(RemoteViews v, long itemId, boolean requested) {
-            set(v, itemId, requested);
+        public RemoteViewsIndexMetaData(RemoteViews v, long itemId) {
+            set(v, itemId);
         }
 
-        public void set(RemoteViews v, long id, boolean requested) {
+        public void set(RemoteViews v, long id) {
             itemId = id;
-            if (v != null)
+            if (v != null) {
                 typeId = v.getLayoutId();
-            else
+            } else {
                 typeId = 0;
-            isRequested = requested;
+            }
         }
     }
 
     /**
      *
      */
-    private class FixedSizeRemoteViewsCache {
+    private static class FixedSizeRemoteViewsCache {
         private static final String TAG = "FixedSizeRemoteViewsCache";
 
         // The meta data related to all the RemoteViews, ie. count, is stable, etc.
@@ -535,10 +564,11 @@
             mLoadIndices = new HashSet<Integer>();
         }
 
-        public void insert(int position, RemoteViews v, long itemId, boolean isRequested) {
+        public void insert(int position, RemoteViews v, long itemId,
+                ArrayList<Integer> visibleWindow) {
             // Trim the cache if we go beyond the count
             if (mIndexRemoteViews.size() >= mMaxCount) {
-                mIndexRemoteViews.remove(getFarthestPositionFrom(position));
+                mIndexRemoteViews.remove(getFarthestPositionFrom(position, visibleWindow));
             }
 
             // Trim the cache if we go beyond the available memory size constraints
@@ -549,15 +579,15 @@
                 // remove based on both its position as well as it's current memory usage, as well
                 // as whether it was directly requested vs. whether it was preloaded by our caching
                 // mechanism.
-                mIndexRemoteViews.remove(getFarthestPositionFrom(pruneFromPosition));
+                mIndexRemoteViews.remove(getFarthestPositionFrom(pruneFromPosition, visibleWindow));
             }
 
             // Update the metadata cache
             if (mIndexMetaData.containsKey(position)) {
                 final RemoteViewsIndexMetaData metaData = mIndexMetaData.get(position);
-                metaData.set(v, itemId, isRequested);
+                metaData.set(v, itemId);
             } else {
-                mIndexMetaData.put(position, new RemoteViewsIndexMetaData(v, itemId, isRequested));
+                mIndexMetaData.put(position, new RemoteViewsIndexMetaData(v, itemId));
             }
             mIndexRemoteViews.put(position, v);
         }
@@ -600,29 +630,30 @@
             }
             return mem;
         }
-        private int getFarthestPositionFrom(int pos) {
+
+        private int getFarthestPositionFrom(int pos, ArrayList<Integer> visibleWindow) {
             // Find the index farthest away and remove that
             int maxDist = 0;
             int maxDistIndex = -1;
-            int maxDistNonRequested = 0;
-            int maxDistIndexNonRequested = -1;
+            int maxDistNotVisible = 0;
+            int maxDistIndexNotVisible = -1;
             for (int i : mIndexRemoteViews.keySet()) {
                 int dist = Math.abs(i-pos);
-                if (dist > maxDistNonRequested && !mIndexMetaData.get(i).isRequested) {
-                    // maxDistNonRequested/maxDistIndexNonRequested will store the index of the
-                    // farthest non-requested position
-                    maxDistIndexNonRequested = i;
-                    maxDistNonRequested = dist;
+                if (dist > maxDistNotVisible && !visibleWindow.contains(i)) {
+                    // maxDistNotVisible/maxDistIndexNotVisible will store the index of the
+                    // farthest non-visible position
+                    maxDistIndexNotVisible = i;
+                    maxDistNotVisible = dist;
                 }
                 if (dist >= maxDist) {
                     // maxDist/maxDistIndex will store the index of the farthest position
-                    // regardless of whether it was directly requested or not
+                    // regardless of whether it is visible or not
                     maxDistIndex = i;
                     maxDist = dist;
                 }
             }
-            if (maxDistIndexNonRequested > -1) {
-                return maxDistIndexNonRequested;
+            if (maxDistIndexNotVisible > -1) {
+                return maxDistIndexNotVisible;
             }
             return maxDistIndex;
         }
@@ -737,11 +768,36 @@
         mWorkerQueue = new Handler(mWorkerThread.getLooper());
         mMainQueue = new Handler(Looper.myLooper(), this);
 
+        if (sCacheRemovalThread == null) {
+            sCacheRemovalThread = new HandlerThread("RemoteViewsAdapter-cachePruner");
+            sCacheRemovalThread.start();
+            sCacheRemovalQueue = new Handler(sCacheRemovalThread.getLooper());
+        }
+
         // Initialize the cache and the service connection on startup
-        mCache = new FixedSizeRemoteViewsCache(sDefaultCacheSize);
         mCallback = new WeakReference<RemoteAdapterConnectionCallback>(callback);
         mServiceConnection = new RemoteViewsAdapterServiceConnection(this);
-        requestBindService();
+
+        Pair<Intent.FilterComparison, Integer> key = new Pair<Intent.FilterComparison, Integer>
+                (new Intent.FilterComparison(mIntent), mAppWidgetId);
+
+        synchronized(sCachedRemoteViewsCaches) {
+            if (sCachedRemoteViewsCaches.containsKey(key)) {
+                mCache = sCachedRemoteViewsCaches.get(key);
+                synchronized (mCache.mMetaData) {
+                    if (mCache.mMetaData.count > 0) {
+                        // As a precautionary measure, we verify that the meta data indicates a
+                        // non-zero count before declaring that data is ready.
+                        mDataReady = true;
+                    }
+                }
+            } else {
+                mCache = new FixedSizeRemoteViewsCache(sDefaultCacheSize);
+            }
+            if (!mDataReady) {
+                requestBindService();
+            }
+        }
     }
 
     @Override
@@ -755,6 +811,51 @@
         }
     }
 
+    public boolean isDataReady() {
+        return mDataReady;
+    }
+
+    public void saveRemoteViewsCache() {
+        final Pair<Intent.FilterComparison, Integer> key = new Pair<Intent.FilterComparison,
+                Integer> (new Intent.FilterComparison(mIntent), mAppWidgetId);
+
+        synchronized(sCachedRemoteViewsCaches) {
+            // If we already have a remove runnable posted for this key, remove it.
+            if (sRemoteViewsCacheRemoveRunnables.containsKey(key)) {
+                sCacheRemovalQueue.removeCallbacks(sRemoteViewsCacheRemoveRunnables.get(key));
+                sRemoteViewsCacheRemoveRunnables.remove(key);
+            }
+
+            int metaDataCount = 0;
+            int numRemoteViewsCached = 0;
+            synchronized (mCache.mMetaData) {
+                metaDataCount = mCache.mMetaData.count;
+            }
+            synchronized (mCache) {
+                numRemoteViewsCached = mCache.mIndexRemoteViews.size();
+            }
+            if (metaDataCount > 0 && numRemoteViewsCached > 0) {
+                sCachedRemoteViewsCaches.put(key, mCache);
+            }
+
+            Runnable r = new Runnable() {
+                @Override
+                public void run() {
+                    synchronized (sCachedRemoteViewsCaches) {
+                        if (sCachedRemoteViewsCaches.containsKey(key)) {
+                            sCachedRemoteViewsCaches.remove(key);
+                        }
+                        if (sRemoteViewsCacheRemoveRunnables.containsKey(key)) {
+                            sRemoteViewsCacheRemoveRunnables.remove(key);
+                        }
+                    }
+                }
+            };
+            sRemoteViewsCacheRemoveRunnables.put(key, r);
+            sCacheRemovalQueue.postDelayed(r, REMOTE_VIEWS_CACHE_DURATION);
+        }
+    }
+
     private void loadNextIndexInBackground() {
         mWorkerQueue.post(new Runnable() {
             @Override
@@ -762,15 +863,13 @@
                 if (mServiceConnection.isConnected()) {
                     // Get the next index to load
                     int position = -1;
-                    boolean isRequested = false;
                     synchronized (mCache) {
                         int[] res = mCache.getNextIndexToLoad();
                         position = res[0];
-                        isRequested = res[1] > 0;
                     }
                     if (position > -1) {
                         // Load the item, and notify any existing RemoteViewsFrameLayouts
-                        updateRemoteViews(position, isRequested, true);
+                        updateRemoteViews(position, true);
 
                         // Queue up for the next one to load
                         loadNextIndexInBackground();
@@ -832,8 +931,7 @@
         }
     }
 
-    private void updateRemoteViews(final int position, boolean isRequested, boolean
-            notifyWhenLoaded) {
+    private void updateRemoteViews(final int position, boolean notifyWhenLoaded) {
         IRemoteViewsFactory factory = mServiceConnection.getRemoteViewsFactory();
 
         // Load the item information from the remote service
@@ -861,21 +959,40 @@
                     "returned from RemoteViewsFactory.");
             return;
         }
-        synchronized (mCache) {
-            // Cache the RemoteViews we loaded
-            mCache.insert(position, remoteViews, itemId, isRequested);
 
-            // Notify all the views that we have previously returned for this index that
-            // there is new data for it.
-            final RemoteViews rv = remoteViews;
-            final int typeId = mCache.getMetaDataAt(position).typeId;
-            if (notifyWhenLoaded) {
-                mMainQueue.post(new Runnable() {
-                    @Override
-                    public void run() {
-                        mRequestedViews.notifyOnRemoteViewsLoaded(position, rv, typeId);
-                    }
-                });
+        int layoutId = remoteViews.getLayoutId();
+        RemoteViewsMetaData metaData = mCache.getMetaData();
+        boolean viewTypeInRange;
+        int cacheCount;
+        synchronized (metaData) {
+            viewTypeInRange = metaData.isViewTypeInRange(layoutId);
+            cacheCount = mCache.mMetaData.count;
+        }
+        synchronized (mCache) {
+            if (viewTypeInRange) {
+                ArrayList<Integer> visibleWindow = getVisibleWindow(mVisibleWindowLowerBound,
+                        mVisibleWindowUpperBound, cacheCount);
+                // Cache the RemoteViews we loaded
+                mCache.insert(position, remoteViews, itemId, visibleWindow);
+
+                // Notify all the views that we have previously returned for this index that
+                // there is new data for it.
+                final RemoteViews rv = remoteViews;
+                if (notifyWhenLoaded) {
+                    mMainQueue.post(new Runnable() {
+                        @Override
+                        public void run() {
+                            mRequestedViews.notifyOnRemoteViewsLoaded(position, rv);
+                        }
+                    });
+                }
+            } else {
+                // We need to log an error here, as the the view type count specified by the
+                // factory is less than the number of view types returned. We don't return this
+                // view to the AdapterView, as this will cause an exception in the hosting process,
+                // which contains the associated AdapterView.
+                Log.e(TAG, "Error: widget's RemoteViewsFactory returns more view types than " +
+                        " indicated by getViewTypeCount() ");
             }
         }
     }
@@ -979,7 +1096,6 @@
                 Context context = parent.getContext();
                 RemoteViews rv = mCache.getRemoteViewsAt(position);
                 RemoteViewsIndexMetaData indexMetaData = mCache.getMetaDataAt(position);
-                indexMetaData.isRequested = true;
                 int typeId = indexMetaData.typeId;
 
                 try {
@@ -1010,7 +1126,8 @@
                     RemoteViewsFrameLayout loadingView = null;
                     final RemoteViewsMetaData metaData = mCache.getMetaData();
                     synchronized (metaData) {
-                        loadingView = metaData.createLoadingView(position, convertView, parent);
+                        loadingView = metaData.createLoadingView(position, convertView, parent,
+                                mCache, mLayoutInflater);
                     }
                     return loadingView;
                 } finally {
@@ -1022,7 +1139,8 @@
                 RemoteViewsFrameLayout loadingView = null;
                 final RemoteViewsMetaData metaData = mCache.getMetaData();
                 synchronized (metaData) {
-                    loadingView = metaData.createLoadingView(position, convertView, parent);
+                    loadingView = metaData.createLoadingView(position, convertView, parent,
+                            mCache, mLayoutInflater);
                 }
 
                 mRequestedViews.add(position, loadingView);
@@ -1076,18 +1194,21 @@
         // Re-request the new metadata (only after the notification to the factory)
         updateTemporaryMetaData();
         int newCount;
+        ArrayList<Integer> visibleWindow;
         synchronized(mCache.getTemporaryMetaData()) {
             newCount = mCache.getTemporaryMetaData().count;
+            visibleWindow = getVisibleWindow(mVisibleWindowLowerBound,
+                    mVisibleWindowUpperBound, newCount);
         }
 
         // Pre-load (our best guess of) the views which are currently visible in the AdapterView.
         // This mitigates flashing and flickering of loading views when a widget notifies that
         // its data has changed.
-        for (int i = mVisibleWindowLowerBound; i <= mVisibleWindowUpperBound; i++) {
+        for (int i: visibleWindow) {
             // Because temporary meta data is only ever modified from this thread (ie.
             // mWorkerThread), it is safe to assume that count is a valid representation.
             if (i < newCount) {
-                updateRemoteViews(i, false, false);
+                updateRemoteViews(i, false);
             }
         }
 
@@ -1108,6 +1229,31 @@
         mNotifyDataSetChangedAfterOnServiceConnected = false;
     }
 
+    private ArrayList<Integer> getVisibleWindow(int lower, int upper, int count) {
+        ArrayList<Integer> window = new ArrayList<Integer>();
+
+        // In the case that the window is invalid or uninitialized, return an empty window.
+        if ((lower == 0 && upper == 0) || lower < 0 || upper < 0) {
+            return window;
+        }
+
+        if (lower <= upper) {
+            for (int i = lower;  i <= upper; i++){
+                window.add(i);
+            }
+        } else {
+            // If the upper bound is less than the lower bound it means that the visible window
+            // wraps around.
+            for (int i = lower; i < count; i++) {
+                window.add(i);
+            }
+            for (int i = 0; i <= upper; i++) {
+                window.add(i);
+            }
+        }
+        return window;
+    }
+
     public void notifyDataSetChanged() {
         // Dequeue any unbind messages
         mMainQueue.removeMessages(sUnbindServiceMessageType);
diff --git a/core/java/android/widget/Spinner.java b/core/java/android/widget/Spinner.java
index 36d1ee0..64834b2 100644
--- a/core/java/android/widget/Spinner.java
+++ b/core/java/android/widget/Spinner.java
@@ -39,10 +39,16 @@
  * The items in the Spinner come from the {@link Adapter} associated with
  * this view.
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-spinner.html">Spinner
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/spinner.html">Spinners</a> guide.</p>
  *
+ * @attr ref android.R.styleable#Spinner_dropDownHorizontalOffset
+ * @attr ref android.R.styleable#Spinner_dropDownSelector
+ * @attr ref android.R.styleable#Spinner_dropDownVerticalOffset
+ * @attr ref android.R.styleable#Spinner_dropDownWidth
+ * @attr ref android.R.styleable#Spinner_gravity
+ * @attr ref android.R.styleable#Spinner_popupBackground
  * @attr ref android.R.styleable#Spinner_prompt
+ * @attr ref android.R.styleable#Spinner_spinnerMode
  */
 @Widget
 public class Spinner extends AbsSpinner implements OnClickListener {
@@ -409,6 +415,7 @@
     /**
      * <p>A spinner does not support item click events. Calling this method
      * will raise an exception.</p>
+     * <p>Instead use {@link AdapterView#setOnItemSelectedListener}.
      *
      * @param l this listener will be ignored
      */
diff --git a/core/java/android/widget/Switch.java b/core/java/android/widget/Switch.java
index 9ea1372..cea613f 100644
--- a/core/java/android/widget/Switch.java
+++ b/core/java/android/widget/Switch.java
@@ -53,6 +53,17 @@
  * {@link #setSwitchTextAppearance(android.content.Context, int) switchTextAppearance} and
  * the related seSwitchTypeface() methods control that of the thumb.
  *
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/togglebutton.html">Toggle Buttons</a>
+ * guide.</p>
+ *
+ * @attr ref android.R.styleable#Switch_textOn
+ * @attr ref android.R.styleable#Switch_textOff
+ * @attr ref android.R.styleable#Switch_switchMinWidth
+ * @attr ref android.R.styleable#Switch_switchPadding
+ * @attr ref android.R.styleable#Switch_switchTextAppearance
+ * @attr ref android.R.styleable#Switch_thumb
+ * @attr ref android.R.styleable#Switch_thumbTextPadding
+ * @attr ref android.R.styleable#Switch_track
  */
 public class Switch extends CompoundButton {
     private static final int TOUCH_MODE_IDLE = 0;
diff --git a/core/java/android/widget/TimePicker.java b/core/java/android/widget/TimePicker.java
index 18f7a91..cb9ed61 100644
--- a/core/java/android/widget/TimePicker.java
+++ b/core/java/android/widget/TimePicker.java
@@ -48,8 +48,8 @@
  * or 'P' to pick. For a dialog using this view, see
  * {@link android.app.TimePickerDialog}.
  *<p>
- * See the <a href="{@docRoot}resources/tutorials/views/hello-timepicker.html">Time Picker
- * tutorial</a>.
+ * See the <a href="{@docRoot}guide/topics/ui/controls/pickers.html">Pickers</a>
+ * guide.
  * </p>
  */
 @Widget
diff --git a/core/java/android/widget/ToggleButton.java b/core/java/android/widget/ToggleButton.java
index 4beee96..cedc777 100644
--- a/core/java/android/widget/ToggleButton.java
+++ b/core/java/android/widget/ToggleButton.java
@@ -31,8 +31,8 @@
  * Displays checked/unchecked states as a button
  * with a "light" indicator and by default accompanied with the text "ON" or "OFF".
  *
- * <p>See the <a href="{@docRoot}resources/tutorials/views/hello-formstuff.html">Form Stuff
- * tutorial</a>.</p>
+ * <p>See the <a href="{@docRoot}guide/topics/ui/controls/togglebutton.html">Toggle Buttons</a>
+ * guide.</p>
  * 
  * @attr ref android.R.styleable#ToggleButton_textOn
  * @attr ref android.R.styleable#ToggleButton_textOff
diff --git a/core/jni/android/graphics/BitmapFactory.cpp b/core/jni/android/graphics/BitmapFactory.cpp
index 416370e..69ef080 100644
--- a/core/jni/android/graphics/BitmapFactory.cpp
+++ b/core/jni/android/graphics/BitmapFactory.cpp
@@ -327,7 +327,18 @@
         const float sx = scaledWidth / float(decoded->width());
         const float sy = scaledHeight / float(decoded->height());
 
-        bitmap->setConfig(decoded->getConfig(), scaledWidth, scaledHeight);
+        SkBitmap::Config config = decoded->config();
+        switch (config) {
+            case SkBitmap::kNo_Config:
+            case SkBitmap::kIndex8_Config:
+            case SkBitmap::kRLE_Index8_Config:
+                config = SkBitmap::kARGB_8888_Config;
+                break;
+            default:
+                break;
+        }
+
+        bitmap->setConfig(config, scaledWidth, scaledHeight);
         bitmap->setIsOpaque(decoded->isOpaque());
         bitmap->allocPixels(&javaAllocator, NULL);
         bitmap->eraseColor(0);
diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml
index fc0a9f9..f52ab95 100644
--- a/core/res/res/values-fa/strings.xml
+++ b/core/res/res/values-fa/strings.xml
@@ -35,7 +35,7 @@
     <string name="defaultVoiceMailAlphaTag" msgid="2660020990097733077">"پست صوتی"</string>
     <string name="defaultMsisdnAlphaTag" msgid="2850889754919584674">"MSISDN1"</string>
     <string name="mmiError" msgid="5154499457739052907">"مشکل در اتصال یا کد MMI نامعتبر."</string>
-    <string name="mmiFdnError" msgid="5224398216385316471">"عملکرد فقط به شماره های شماره گیری ثابت محدود است."</string>
+    <string name="mmiFdnError" msgid="5224398216385316471">"عملکرد فقط به شماره‌های شماره گیری ثابت محدود است."</string>
     <string name="serviceEnabled" msgid="8147278346414714315">"سرویس فعال شد."</string>
     <string name="serviceEnabledFor" msgid="6856228140453471041">"سرویس فعال شد برای:"</string>
     <string name="serviceDisabled" msgid="1937553226592516411">"سرویس غیرفعال شده است."</string>
@@ -62,13 +62,13 @@
     <string name="CnipMmi" msgid="3110534680557857162">"شماره تماس حاضر"</string>
     <string name="CnirMmi" msgid="3062102121430548731">"شماره تماس محدود شده"</string>
     <string name="ThreeWCMmi" msgid="9051047170321190368">"سه روش برقراری تماس"</string>
-    <string name="RuacMmi" msgid="7827887459138308886">"رد تماس های ناخواسته و آزار دهنده"</string>
+    <string name="RuacMmi" msgid="7827887459138308886">"رد تماس‌های ناخواسته و آزار دهنده"</string>
     <string name="CndMmi" msgid="3116446237081575808">"تحویل شماره تماس"</string>
     <string name="DndMmi" msgid="1265478932418334331">"مزاحم نشوید"</string>
-    <string name="CLIRDefaultOnNextCallOn" msgid="429415409145781923">"پیش فرض شناسه تماس گیرنده روی محدود است. تماس بعدی: محدود"</string>
-    <string name="CLIRDefaultOnNextCallOff" msgid="3092918006077864624">"پیش فرض شناسه تماس گیرنده روی محدود است. تماس بعدی: بدون محدودیت"</string>
-    <string name="CLIRDefaultOffNextCallOn" msgid="6179425182856418465">"پیش فرض شناسه تماس گیرنده روی غیر محدود است. تماس بعدی: محدود"</string>
-    <string name="CLIRDefaultOffNextCallOff" msgid="2567998633124408552">"پیش فرض شناسه تماس گیرنده روی غیر محدود است. تماس بعدی: بدون محدودیت"</string>
+    <string name="CLIRDefaultOnNextCallOn" msgid="429415409145781923">"پیش‌فرض شناسه تماس گیرنده روی محدود است. تماس بعدی: محدود"</string>
+    <string name="CLIRDefaultOnNextCallOff" msgid="3092918006077864624">"پیش‌فرض شناسه تماس گیرنده روی محدود است. تماس بعدی: بدون محدودیت"</string>
+    <string name="CLIRDefaultOffNextCallOn" msgid="6179425182856418465">"پیش‌فرض شناسه تماس گیرنده روی غیر محدود است. تماس بعدی: محدود"</string>
+    <string name="CLIRDefaultOffNextCallOff" msgid="2567998633124408552">"پیش‌فرض شناسه تماس گیرنده روی غیر محدود است. تماس بعدی: بدون محدودیت"</string>
     <string name="serviceNotProvisioned" msgid="8614830180508686666">"سرویس دارای مجوز نیست."</string>
     <string name="CLIRPermanent" msgid="3377371145926835671">"شما می‎توانید تنظیم شناسه تماس گیرنده را تغییر دهید."</string>
     <string name="RestrictedChangedTitle" msgid="5592189398956187498">"دسترسی محدود تغییر یافت"</string>
@@ -78,7 +78,7 @@
     <string name="RestrictedOnAllVoice" msgid="3396963652108151260">"تمام سرویس‎های صدا مسدود هستند."</string>
     <string name="RestrictedOnSms" msgid="8314352327461638897">"سرویس پیامک مسدود شده است."</string>
     <string name="RestrictedOnVoiceData" msgid="996636487106171320">"سرویس‎‎های صدا/داده مسدود شدند."</string>
-    <string name="RestrictedOnVoiceSms" msgid="1888588152792023873">"سرویس های صوتی/پیامک مسدود شده اند"</string>
+    <string name="RestrictedOnVoiceSms" msgid="1888588152792023873">"سرویس‌های صوتی/پیامک مسدود شده‌اند"</string>
     <string name="RestrictedOnAll" msgid="5643028264466092821">"تمام سرویس‌های صدا/داده/ پیامک مسدود هستند."</string>
     <string name="serviceClassVoice" msgid="1258393812335258019">"صوتی"</string>
     <string name="serviceClassData" msgid="872456782077937893">"داده"</string>
@@ -124,16 +124,16 @@
     <string name="httpErrorBadUrl" msgid="3636929722728881972">"بدلیل نامعتبر بودن URL، باز کردن صفحه ممکن نیست."</string>
     <string name="httpErrorFile" msgid="2170788515052558676">"دسترسی به فایل انجام نشد."</string>
     <string name="httpErrorFileNotFound" msgid="6203856612042655084">"فایل درخواستی پیدا نشد."</string>
-    <string name="httpErrorTooManyRequests" msgid="1235396927087188253">"درخواست های زیادی در حال پردازش است. بعداً دوباره امتحان کنید."</string>
+    <string name="httpErrorTooManyRequests" msgid="1235396927087188253">"درخواست‌های زیادی در حال پردازش است. بعداً دوباره امتحان کنید."</string>
     <string name="notification_title" msgid="8967710025036163822">"خطای ورود به سیستم برای <xliff:g id="ACCOUNT">%1$s</xliff:g>"</string>
     <string name="contentServiceSync" msgid="8353523060269335667">"همگام سازی"</string>
     <string name="contentServiceSyncNotificationTitle" msgid="397743349191901458">"همگام سازی"</string>
     <string name="contentServiceTooManyDeletesNotificationDesc" msgid="8100981435080696431">"تعداد موارد حذف شده <xliff:g id="CONTENT_TYPE">%s</xliff:g> بسیار زیاد است."</string>
     <string name="low_memory" product="tablet" msgid="6494019234102154896">"حافظه رایانه لوحی پر است! برخی از فایل‎ها را حذف کنید تا فضا آزاد شود."</string>
-    <string name="low_memory" product="default" msgid="3475999286680000541">"حافظه تلفن پر است. بعضی از فایلها را حذف کنید تا فضا آزاد شود."</string>
+    <string name="low_memory" product="default" msgid="3475999286680000541">"حافظه تلفن پر است. بعضی از فایل‌ها را حذف کنید تا فضا آزاد شود."</string>
     <string name="me" msgid="6545696007631404292">"من"</string>
-    <string name="power_dialog" product="tablet" msgid="8545351420865202853">"گزینه های رایانه لوحی"</string>
-    <string name="power_dialog" product="default" msgid="1319919075463988638">"گزینه های تلفن"</string>
+    <string name="power_dialog" product="tablet" msgid="8545351420865202853">"گزینه‌های رایانه لوحی"</string>
+    <string name="power_dialog" product="default" msgid="1319919075463988638">"گزینه‌های تلفن"</string>
     <string name="silent_mode" msgid="7167703389802618663">"حالت ساکت"</string>
     <string name="turn_on_radio" msgid="3912793092339962371">"روشن کردن بی سیم"</string>
     <string name="turn_off_radio" msgid="8198784949987062346">"خاموش کردن بی سیم"</string>
@@ -143,15 +143,15 @@
     <string name="silent_mode_vibrate" msgid="7072043388581551395">"زنگ لرزشی"</string>
     <string name="silent_mode_ring" msgid="8592241816194074353">"زنگ روشن"</string>
     <string name="shutdown_progress" msgid="2281079257329981203">"خاموش کردن..."</string>
-    <string name="shutdown_confirm" product="tablet" msgid="3385745179555731470">"رایانه لوحی شما خاموش می شود."</string>
-    <string name="shutdown_confirm" product="default" msgid="649792175242821353">"گوشی شما خاموش می شود."</string>
+    <string name="shutdown_confirm" product="tablet" msgid="3385745179555731470">"رایانه لوحی شما خاموش می‌شود."</string>
+    <string name="shutdown_confirm" product="default" msgid="649792175242821353">"گوشی شما خاموش می‌شود."</string>
     <string name="shutdown_confirm_question" msgid="2906544768881136183">"آیا می‎خواهید تلفن خاموش شود؟"</string>
     <string name="reboot_safemode_title" msgid="7054509914500140361">"راه‌اندازی مجدد در حالت امن"</string>
     <string name="reboot_safemode_confirm" msgid="55293944502784668">"آیا می‌خواهید با حالت امن راه‌اندازی مجدد کنید؟ با این کار کلیه برنامه‌های شخص ثالثی که نصب کرده‌اید غیرفعال می‌شوند. با راه‌اندازی دوباره سیستم این برنامه‌ها دوباره بازیابی می‌شوند."</string>
     <string name="recent_tasks_title" msgid="3691764623638127888">"اخیر"</string>
     <string name="no_recent_tasks" msgid="8794906658732193473">"برنامه‎های جدید موجود نیست."</string>
-    <string name="global_actions" product="tablet" msgid="408477140088053665">"گزینه های رایانه لوحی"</string>
-    <string name="global_actions" product="default" msgid="2406416831541615258">"گزینه های تلفن"</string>
+    <string name="global_actions" product="tablet" msgid="408477140088053665">"گزینه‌های رایانه لوحی"</string>
+    <string name="global_actions" product="default" msgid="2406416831541615258">"گزینه‌های تلفن"</string>
     <string name="global_action_lock" msgid="2844945191792119712">"قفل صفحه"</string>
     <string name="global_action_power_off" msgid="4471879440839879722">"خاموش کردن"</string>
     <string name="global_action_toggle_silent_mode" msgid="8219525344246810925">"حالت ساکت"</string>
@@ -163,29 +163,29 @@
     <string name="status_bar_notification_info_overflow" msgid="5301981741705354993">"بیشتر از 999"</string>
     <string name="safeMode" msgid="2788228061547930246">"حالت ایمن"</string>
     <string name="android_system_label" msgid="6577375335728551336">"سیستم Android"</string>
-    <string name="permgrouplab_costMoney" msgid="5429808217861460401">"سرویس های غیر رایگان"</string>
+    <string name="permgrouplab_costMoney" msgid="5429808217861460401">"سرویس‌های غیر رایگان"</string>
     <string name="permgroupdesc_costMoney" msgid="3293301903409869495">"انجام کارهایی که برای شما هزینه دارد."</string>
-    <string name="permgrouplab_messages" msgid="7521249148445456662">"پیام های شما"</string>
-    <string name="permgroupdesc_messages" msgid="7821999071003699236">"پیام کوتاه، ایمیل و دیگر پیامها را بخوانید."</string>
+    <string name="permgrouplab_messages" msgid="7521249148445456662">"پیام‌های شما"</string>
+    <string name="permgroupdesc_messages" msgid="7821999071003699236">"پیام کوتاه، ایمیل و دیگر پیام‌ها را بخوانید."</string>
     <string name="permgrouplab_personalInfo" msgid="3519163141070533474">"اطلاعات شخصی شما"</string>
     <string name="permgroupdesc_personalInfo" product="tablet" msgid="6975389054186265786">"دسترسی مستقیم به مخاطبین و تقویم ذخیره شده در رایانه لوحی."</string>
     <string name="permgroupdesc_personalInfo" product="default" msgid="5488050357388806068">"دسترسی مستقیم به مخاطبین و تقویم ذخیره شده در گوشی."</string>
     <string name="permgrouplab_location" msgid="635149742436692049">"موقعیت مکانی شما"</string>
     <string name="permgroupdesc_location" msgid="5704679763124170100">"بر موقعیت مکانی فیزیکی خود نظارت داشته باشید."</string>
-    <string name="permgrouplab_network" msgid="5808983377727109831">"ارتباط شبکه"</string>
+    <string name="permgrouplab_network" msgid="5808983377727109831">"ارتباط شبکه‌ای"</string>
     <string name="permgroupdesc_network" msgid="4478299413241861987">"به ویژگی‎های مختلف شبکه دسترسی داشته باشید."</string>
-    <string name="permgrouplab_accounts" msgid="3359646291125325519">"حساب های شما"</string>
-    <string name="permgroupdesc_accounts" msgid="4948732641827091312">"به حساب های موجود دسترسی داشته باشید."</string>
-    <string name="permgrouplab_hardwareControls" msgid="7998214968791599326">"کنترل های سخت افزار"</string>
+    <string name="permgrouplab_accounts" msgid="3359646291125325519">"حساب‌های شما"</string>
+    <string name="permgroupdesc_accounts" msgid="4948732641827091312">"به حساب‌های موجود دسترسی داشته باشید."</string>
+    <string name="permgrouplab_hardwareControls" msgid="7998214968791599326">"کنترل‌های سخت افزار"</string>
     <string name="permgroupdesc_hardwareControls" msgid="4357057861225462702">"دسترسی مستقیم به سخت افزار در گوشی."</string>
-    <string name="permgrouplab_phoneCalls" msgid="9067173988325865923">"تماس های تلفنی"</string>
-    <string name="permgroupdesc_phoneCalls" msgid="7489701620446183770">"نظارت، ضبط و پردازش تماس های تلفنی."</string>
+    <string name="permgrouplab_phoneCalls" msgid="9067173988325865923">"تماس‌های تلفنی"</string>
+    <string name="permgroupdesc_phoneCalls" msgid="7489701620446183770">"نظارت، ضبط و پردازش تماس‌های تلفنی."</string>
     <string name="permgrouplab_systemTools" msgid="4652191644082714048">"ابزارهای سیستم"</string>
     <string name="permgroupdesc_systemTools" msgid="8162102602190734305">"دسترسی سطح پایین و کنترل سیستم."</string>
     <string name="permgrouplab_developmentTools" msgid="3446164584710596513">"ابزارهای توسعه"</string>
     <string name="permgroupdesc_developmentTools" msgid="7058828032358142018">"ویژگیهایی که فقط مورد نیاز برنامه نویسان است."</string>
-    <string name="permgrouplab_storage" msgid="1971118770546336966">"ذخیره سازی"</string>
-    <string name="permgroupdesc_storage" product="nosdcard" msgid="7442318502446874999">"به حافظه USB دسترسی پیدا کنید."</string>
+    <string name="permgrouplab_storage" msgid="1971118770546336966">"حافظه"</string>
+    <string name="permgroupdesc_storage" product="nosdcard" msgid="7442318502446874999">"به حافظهٔ USB دسترسی پیدا کنید."</string>
     <string name="permgroupdesc_storage" product="default" msgid="9203302214915355774">"به کارت SD دسترسی داشته باشید."</string>
     <string name="permlab_statusBar" msgid="7417192629601890791">"غیرفعال کردن یا تغییر نوار وضعیت"</string>
     <string name="permdesc_statusBar" msgid="8434669549504290975">"به برنامه اجازه می‎دهد تا نوار وضعیت را غیرفعال کند یا نمادهای سیستم را اضافه یا حذف کند."</string>
@@ -196,25 +196,25 @@
     <string name="permlab_processOutgoingCalls" msgid="3906007831192990946">"ترسیم مجدد مسیر تماس‌های خروجی"</string>
     <string name="permdesc_processOutgoingCalls" msgid="5331318931937402040">"به برنامه اجازه می‎دهد تماس‌های خروجی را پردازش کند و شماره‎هایی که باید گرفته شوند را تغییر دهد. این مجوز به برنامه امکان می‌دهد به کنترل، هدایت مجدد یا جلوگیری از تماس‌های خروجی بپردازد."</string>
     <string name="permlab_receiveSms" msgid="8673471768947895082">"دریافت پیام‌های نوشتاری (پیامک)"</string>
-    <string name="permdesc_receiveSms" msgid="6424387754228766939">"به برنامه اجازه می‌دهد پیامک‌ها را دریافت و پردازش کند. این یعنی برنامه می‌تواند پیام‌های ارسالی به دستگاه شما را بدون نمایش آنها به شما حذف یا کنترل کند."</string>
+    <string name="permdesc_receiveSms" msgid="6424387754228766939">"به برنامه اجازه می‌دهد پیامک‌ها را دریافت و پردازش کند. این یعنی برنامه می‌تواند پیام‌های ارسالی به دستگاه شما را بدون نمایش آن‌ها به شما حذف یا کنترل کند."</string>
     <string name="permlab_receiveMms" msgid="1821317344668257098">"دریافت پیام‌های نوشتاری (MMS)"</string>
-    <string name="permdesc_receiveMms" msgid="533019437263212260">"به برنامه اجازه می‌دهد پیام‌های MMS را دریافت و پردازش کند. این یعنی برنامه می‌تواند پیام‌های ارسالی به دستگاه شما را بدون نمایش آنها به شما حذف یا کنترل کند."</string>
-    <string name="permlab_receiveEmergencyBroadcast" msgid="1803477660846288089">"دریافت پخش های اضطراری"</string>
-    <string name="permdesc_receiveEmergencyBroadcast" msgid="848524070262431974">"به برنامه اجازه می‎دهد تا پیامهای پخش اضطراری را دریافت و پردازش کند. این مجوز فقط برای برنامه‎های سیستم در دسترس است."</string>
+    <string name="permdesc_receiveMms" msgid="533019437263212260">"به برنامه اجازه می‌دهد پیام‌های MMS را دریافت و پردازش کند. این یعنی برنامه می‌تواند پیام‌های ارسالی به دستگاه شما را بدون نمایش آن‌ها به شما حذف یا کنترل کند."</string>
+    <string name="permlab_receiveEmergencyBroadcast" msgid="1803477660846288089">"دریافت پخش‌های اضطراری"</string>
+    <string name="permdesc_receiveEmergencyBroadcast" msgid="848524070262431974">"به برنامه اجازه می‎دهد تا پیام‌های پخش اضطراری را دریافت و پردازش کند. این مجوز فقط برای برنامه‎های سیستم در دسترس است."</string>
     <string name="permlab_readCellBroadcasts" msgid="1598328843619646166">"خواندن پیام‌های پخش سلولی"</string>
-    <string name="permdesc_readCellBroadcasts" msgid="6361972776080458979">"به برنامه اجازه می‎دهد پیامهای پخش سلولی دستگاه شما را بخواند. هشدارهای پخش سلولی در برخی از موقعیت‌های مکانی تحویل داده می‎شوند تا موقعیت‌های اضطراری را به شما اعلام کنند. وقتی پخش سلولی دریافت می‎شود، ممکن است برنامه‎های مخرب در عملکرد یا کارکرد دستگاه شما اختلال ایجاد کنند."</string>
+    <string name="permdesc_readCellBroadcasts" msgid="6361972776080458979">"به برنامه اجازه می‎دهد پیام‌های پخش سلولی دستگاه شما را بخواند. هشدارهای پخش سلولی در برخی از موقعیت‌های مکانی تحویل داده می‎شوند تا موقعیت‌های اضطراری را به شما اعلام کنند. وقتی پخش سلولی دریافت می‎شود، ممکن است برنامه‎های مخرب در عملکرد یا کارکرد دستگاه شما اختلال ایجاد کنند."</string>
     <string name="permlab_sendSms" msgid="5600830612147671529">"ارسال پیامک ها"</string>
     <string name="permdesc_sendSms" msgid="7094729298204937667">"به برنامه اجازه می‌دهد پیامک‌ها را ارسال کند. این باعث ایجاد هزینه‌های پیش‌بینی نشده می‌شود. برنامه‌های مخرب ممکن است با ارسال پیام بدون تأیید شما هزینه‌هایی را برای شما ایجاد کنند."</string>
     <string name="permlab_sendSmsNoConfirmation" msgid="4781483105951730228">"ارسال پیامک بدون تأیید"</string>
     <string name="permdesc_sendSmsNoConfirmation" msgid="402569800862935907">"به برنامه اجازه می‌دهد پیامک‌ها را ارسال کند. این باعث ایجاد هزینه‌های پیش‌بینی نشده می‌شود. برنامه‌های مخرب ممکن است با ارسال پیام بدون تأیید شما هزینه‌هایی را برای شما ایجاد کنند."</string>
     <string name="permlab_readSms" msgid="8745086572213270480">"خواندن پیام‌های نوشتاری شما (پیامک یا MMS)"</string>
-    <string name="permdesc_readSms" product="tablet" msgid="2467981548684735522">"به برنامه اجازه می‌دهد پیامک‌های ذخیره شده در رایانه لوحی یا سیم کارت شما را بخواند. این ویژگی به برنامه امکان می‌دهد همه پیامک‌ها را صرفنظر از محتوا یا محرمانه بودن آنها بخواند."</string>
-    <string name="permdesc_readSms" product="default" msgid="3695967533457240550">"به برنامه اجازه می‌دهد پیامک‌های ذخیره شده در تلفن یا سیم کارت شما را بخواند. این ویژگی به برنامه امکان می‌دهد همه پیامک‌ها را صرفنظر از محتوا یا محرمانه بودن آنها بخواند."</string>
+    <string name="permdesc_readSms" product="tablet" msgid="2467981548684735522">"به برنامه اجازه می‌دهد پیامک‌های ذخیره شده در رایانه لوحی یا سیم کارت شما را بخواند. این ویژگی به برنامه امکان می‌دهد همه پیامک‌ها را صرفنظر از محتوا یا محرمانه بودن آن‌ها بخواند."</string>
+    <string name="permdesc_readSms" product="default" msgid="3695967533457240550">"به برنامه اجازه می‌دهد پیامک‌های ذخیره شده در تلفن یا سیم کارت شما را بخواند. این ویژگی به برنامه امکان می‌دهد همه پیامک‌ها را صرفنظر از محتوا یا محرمانه بودن آن‌ها بخواند."</string>
     <string name="permlab_writeSms" msgid="3216950472636214774">"ویرایش پیام‌های نوشتاری شما (پیامک یا MMS)"</string>
-    <string name="permdesc_writeSms" product="tablet" msgid="5160413947794501538">"به برنامه اجازه می‎دهد تا در پیامهای کوتاه ذخیره شده در رایانه لوحی یا سیم کارت بنویسد. برنامه‎های مخرب پیامهای شما را حذف می‎کنند."</string>
-    <string name="permdesc_writeSms" product="default" msgid="7268668709052328567">"به برنامه اجازه می‎دهد تا در پیامهای کوتاه ذخیره شده در تلفن یا سیم کارت بنویسد. برنامه‎های مخرب می‎توانند پیامهای شما را حذف کنند."</string>
+    <string name="permdesc_writeSms" product="tablet" msgid="5160413947794501538">"به برنامه اجازه می‎دهد تا در پیام‌های کوتاه ذخیره شده در رایانه لوحی یا سیم کارت بنویسد. برنامه‎های مخرب پیام‌های شما را حذف می‎کنند."</string>
+    <string name="permdesc_writeSms" product="default" msgid="7268668709052328567">"به برنامه اجازه می‎دهد تا در پیام‌های کوتاه ذخیره شده در تلفن یا سیم کارت بنویسد. برنامه‎های مخرب می‎توانند پیام‌های شما را حذف کنند."</string>
     <string name="permlab_receiveWapPush" msgid="5991398711936590410">"دریافت پیام‌های نوشتاری (WAP)"</string>
-    <string name="permdesc_receiveWapPush" msgid="748232190220583385">"به برنامه اجازه می‌دهد پیام‌های WAP را دریافت و پردازش کند. این مجوز می‌تواند پیام‌های ارسالی به شما را بدون نمایش آنها به شما حذف یا کنترل کند."</string>
+    <string name="permdesc_receiveWapPush" msgid="748232190220583385">"به برنامه اجازه می‌دهد پیام‌های WAP را دریافت و پردازش کند. این مجوز می‌تواند پیام‌های ارسالی به شما را بدون نمایش آن‌ها به شما حذف یا کنترل کند."</string>
     <string name="permlab_getTasks" msgid="6466095396623933906">"بازیابی برنامه‎های در حال اجرا"</string>
     <string name="permdesc_getTasks" msgid="7454215995847658102">"به برنامه امکان می‌دهد اطلاعات مربوط به کارهای در حال اجرای اخیر و کنونی را بازیابی کند. این ممکن است به برنامه امکان دهد به اطلاعات مربوط به برنامه‌هایی که در دستگاه استفاده می‌شوند دست یابد."</string>
     <string name="permlab_getDetailedTasks" msgid="6229468674753529501">"بازیابی جزئیات برنامه‌های در حال اجرا"</string>
@@ -222,11 +222,11 @@
     <string name="permlab_reorderTasks" msgid="2018575526934422779">"تنظیم مجدد ترتیب برنامه‎های در حال اجرا"</string>
     <string name="permdesc_reorderTasks" msgid="7734217754877439351">"به برنامه اجازه می‎دهد تا کارها را به پیش‌زمینه و پس‌زمینه منتقل کند. برنامه‎ ممکن است بدون دخالت شما این کار را انجام دهد."</string>
     <string name="permlab_removeTasks" msgid="6821513401870377403">"متوقف کردن برنامه‎های در حال اجرا"</string>
-    <string name="permdesc_removeTasks" msgid="1394714352062635493">"به برنامه اجازه می‎دهد تا کارها را حذف کند و برنامه‎های آنها را متوقف کند. برنامه‎های مخرب می‌توانند در اجرای برنامه‎های دیگر اختلال ایجاد ‎کنند."</string>
+    <string name="permdesc_removeTasks" msgid="1394714352062635493">"به برنامه اجازه می‎دهد تا کارها را حذف کند و برنامه‎های آن‌ها را متوقف کند. برنامه‎های مخرب می‌توانند در اجرای برنامه‎های دیگر اختلال ایجاد ‎کنند."</string>
     <string name="permlab_startAnyActivity" msgid="2918768238045206456">"شروع هر نوع فعالیت"</string>
     <string name="permdesc_startAnyActivity" msgid="997823695343584001">"به برنامه اجازه می‎دهد هر فعالیتی را شروع کند بدون اینکه وضعیت صادرشده یا حفاظت با مجوز در نظر گرفته شود."</string>
-    <string name="permlab_setScreenCompatibility" msgid="6975387118861842061">"تنظیم سازگاری با صفحه نمایش"</string>
-    <string name="permdesc_setScreenCompatibility" msgid="692043618693917374">"به برنامه کاربردی اجازه کنترل حالت سازگاری صفحه نمایش برای برنامه‌های دیگر را می‌دهد. برنامه‌های خرابکار ممکن است باعث کارکرد نادرست دیگر برنامه‌ها شوند."</string>
+    <string name="permlab_setScreenCompatibility" msgid="6975387118861842061">"تنظیم سازگاری با صفحهٔ نمایش"</string>
+    <string name="permdesc_setScreenCompatibility" msgid="692043618693917374">"به برنامه کاربردی اجازه کنترل حالت سازگاری صفحهٔ نمایش برای برنامه‌های دیگر را می‌دهد. برنامه‌های خرابکار ممکن است باعث کارکرد نادرست دیگر برنامه‌ها شوند."</string>
     <string name="permlab_setDebugApp" msgid="3022107198686584052">"فعال کردن عیب‌یابی برنامه"</string>
     <string name="permdesc_setDebugApp" msgid="4474512416299013256">"به برنامه اجازه می‎دهد تا عیب‌یابی را برای برنامه‌ای دیگر فعال کند. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا اجرای برنامه‎های دیگر را متوقف کنند."</string>
     <string name="permlab_changeConfiguration" msgid="4162092185124234480">"تغییر تنظیمات نمایشگر سیستم"</string>
@@ -240,32 +240,32 @@
     <string name="permlab_forceBack" msgid="652935204072584616">"بستن اجباری برنامه"</string>
     <string name="permdesc_forceBack" msgid="3892295830419513623">"به برنامه اجازه می‎دهد تا برنامه‌ای را که در پیش زمینه است ببندد و برگردد. برای برنامه‎های عادی مورد نیاز نیست."</string>
     <string name="permlab_dump" msgid="1681799862438954752">"بازیابی وضعیت داخلی سیستم"</string>
-    <string name="permdesc_dump" msgid="1778299088692290329">"به برنامه اجازه می‎دهد تا وضعیت داخلی سیستم را بازیابی کند. برنامه‎های مخرب می‎توانند انواع مختلفی از اطلاعات خصوصی و امن را که معمولا به آنها نیاز ندارند، بازیابی کنند."</string>
+    <string name="permdesc_dump" msgid="1778299088692290329">"به برنامه اجازه می‎دهد تا وضعیت داخلی سیستم را بازیابی کند. برنامه‎های مخرب می‎توانند انواع مختلفی از اطلاعات خصوصی و امن را که معمولا به آن‌ها نیاز ندارند، بازیابی کنند."</string>
     <string name="permlab_retrieve_window_content" msgid="8022588608994589938">"بازیابی محتوای صفحه"</string>
     <string name="permdesc_retrieve_window_content" msgid="3193269069469700265">"به برنامه اجازه می‎دهد تا محتوای پنجره فعال را بازیابی کند. برنامه‎های مخرب می‎توانند کل محتوای پنجره را بازیابی کنند و همه متن آنرا به غیر از گذرواژه‎ها امتحان کنند."</string>
     <string name="permlab_shutdown" msgid="7185747824038909016">"خاموش شدن جزئی"</string>
-    <string name="permdesc_shutdown" msgid="7046500838746291775">"مدیر فعالیت را در حالت خاموشی قرار می دهد. خاموشی را به صورت کامل انجام نمی دهد."</string>
+    <string name="permdesc_shutdown" msgid="7046500838746291775">"مدیر فعالیت را در حالت خاموشی قرار می‌دهد. خاموشی را به صورت کامل انجام نمی‌دهد."</string>
     <string name="permlab_stopAppSwitches" msgid="4138608610717425573">"ممانعت از جابجایی برنامه"</string>
     <string name="permdesc_stopAppSwitches" msgid="8262195802582255021">"اجازه نمی‎دهد کاربر به برنامه دیگری برود."</string>
     <string name="permlab_runSetActivityWatcher" msgid="892239094867182656">"نظارت و کنترل راه اندازی همه برنامه"</string>
-    <string name="permdesc_runSetActivityWatcher" msgid="6003603162578577406">"به برنامه اجازه می‎دهد تا نحوه راه اندازی فعالیتهای سیستم را کنترل کند. برنامه‎های مخرب می‎توانند کاملا با سیستم سازگار شوند. این مجوز فقط برای توسعه نیاز است و برای استفاده عادی نیست."</string>
+    <string name="permdesc_runSetActivityWatcher" msgid="6003603162578577406">"به برنامه اجازه می‎دهد تا نحوه راه اندازی فعالیت‌های سیستم را کنترل کند. برنامه‎های مخرب می‎توانند کاملا با سیستم سازگار شوند. این مجوز فقط برای توسعه نیاز است و برای استفاده عادی نیست."</string>
     <string name="permlab_broadcastPackageRemoved" msgid="2576333434893532475">"ارسال پخش بسته حذف شده"</string>
     <string name="permdesc_broadcastPackageRemoved" msgid="6621901216207931089">"به برنامه اجازه می‎دهد تا اعلان حذف بسته برنامه را پخش کند. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا هر برنامه در حال اجرای دیگر را از بین ببرد."</string>
     <string name="permlab_broadcastSmsReceived" msgid="5689095009030336593">"ارسال پخش دریافت شده توسط پیامک"</string>
-    <string name="permdesc_broadcastSmsReceived" msgid="4152037720034365492">"به برنامه اجازه می‎دهد تا اعلان دریافت پیام کوتاه را پخش کند. برنامه‎های مخرب می‎توانند از این برای جعل پیامهای کوتاه ورودی استفاده کنند."</string>
+    <string name="permdesc_broadcastSmsReceived" msgid="4152037720034365492">"به برنامه اجازه می‎دهد تا اعلان دریافت پیام کوتاه را پخش کند. برنامه‎های مخرب می‎توانند از این برای جعل پیام‌های کوتاه ورودی استفاده کنند."</string>
     <string name="permlab_broadcastWapPush" msgid="3145347413028582371">"ارسال پخش دریافت شده توسط WAP-PUSH"</string>
     <string name="permdesc_broadcastWapPush" msgid="4783402525039442729">"به برنامه اجازه می‎دهد تا اعلانی را پخش کند که پیام WAP PUSH دریافت کرده است. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا دریافت پیام MMS را جعل کنند یا محتوای هر صفحه وب را با انواع مخرب جایگزین کنند."</string>
     <string name="permlab_setProcessLimit" msgid="2451873664363662666">"محدود کردن تعداد فرآیندهای در حال اجرا"</string>
     <string name="permdesc_setProcessLimit" msgid="7318061314040879542">"به برنامه اجازه می‎دهد تا حداکثر تعداد پردازشهایی را که اجرا خواهد شد کنترل کند. هرگز برای برنامه‎های عادی لازم نیست."</string>
     <string name="permlab_setAlwaysFinish" msgid="550958507798796965">"بستن اجباری برنامه‌های پس‌زمینه"</string>
-    <string name="permdesc_setAlwaysFinish" msgid="7471310652868841499">"به برنامه اجازه می‎دهد تا به محض اینکه فعالیتها به پس زمینه رفتند تمام شوند. برای برنامه‎های عادی نیازی نیست."</string>
+    <string name="permdesc_setAlwaysFinish" msgid="7471310652868841499">"به برنامه اجازه می‎دهد تا به محض اینکه فعالیتها به پس‌زمینه رفتند تمام شوند. برای برنامه‎های عادی نیازی نیست."</string>
     <string name="permlab_batteryStats" msgid="7863923071360031652">"اصلاح کردن آمار مربوط به باتری"</string>
     <string name="permdesc_batteryStats" msgid="6835186932305744068">"به برنامه اجازه می‎دهد تا آمار جمع آوری شده باتری را تغییر دهد. برای استفاده برنامه‎های عادی نیست."</string>
-    <string name="permlab_backup" msgid="470013022865453920">"کنترل نسخه پشتیبان سیستم و بازیابی"</string>
+    <string name="permlab_backup" msgid="470013022865453920">"کنترل نسخهٔ پشتیبان سیستم و بازیابی"</string>
     <string name="permdesc_backup" msgid="6912230525140589891">"به برنامه اجازه می‎دهد پشتیبان سیستم را کنترل کند و مکانیستم را بازیابی کند. برای استفاده برنامه‎های عادی نیست."</string>
-    <string name="permlab_confirm_full_backup" msgid="5557071325804469102">"تهیه نسخه پشتیبان کامل را تأیید کرده یا عملیات را بازیابی کنید"</string>
+    <string name="permlab_confirm_full_backup" msgid="5557071325804469102">"تهیه نسخهٔ پشتیبان کامل را تأیید کرده یا عملیات را بازیابی کنید"</string>
     <string name="permdesc_confirm_full_backup" msgid="1748762171637699562">"به برنامه اجازه می‎دهد تا رابط کاربر تایید نسخه کامل پشتیبان را راه‌اندازی کند. هر برنامه‌ای نمی‎تواند از آن استفاده کند."</string>
-    <string name="permlab_internalSystemWindow" msgid="2148563628140193231">"نمایش پنجره های غیرمجاز"</string>
+    <string name="permlab_internalSystemWindow" msgid="2148563628140193231">"نمایش پنجره‌های غیرمجاز"</string>
     <string name="permdesc_internalSystemWindow" msgid="7458387759461466397">"به برنامه اجازه می‎دهد پنجره‎هایی را ایجاد کند که می‎خواهد توسط رابط کاربر سیستم داخلی استفاده شود. برای استفاده برنامه‎های عادی نیست."</string>
     <string name="permlab_systemAlertWindow" msgid="3543347980839518613">"ترسیم روی برنامه‌های دیگر"</string>
     <string name="permdesc_systemAlertWindow" msgid="4460454022797261814">"به برنامه اجازه می‎دهد تا پنجره‎های هشدار سیستم را نشان دهد. برخی از پنجره‌های هشدار ممکن است کل صفحه را کنترل کنند."</string>
@@ -273,11 +273,11 @@
     <string name="permdesc_setAnimationScale" msgid="7690063428924343571">"به برنامه اجازه می‎دهد سرعت کلی انیمیشن را هر زمان که بخواهد تغییر دهد (انیمیشن‎های سریعتر یا آهسته‎تر)."</string>
     <string name="permlab_manageAppTokens" msgid="1286505717050121370">"مدیریت نشانه‎های برنامه"</string>
     <string name="permdesc_manageAppTokens" msgid="8043431713014395671">"به برنامه اجازه می‎دهد با ایجاد کنارگذر از سفارش عادی Z، نشانه‎های خود را ایجاد و مدیریت کند. برای برنامه‎های عادی مورد نیاز است."</string>
-    <string name="permlab_injectEvents" msgid="1378746584023586600">"کلیدها و دکمه های کنترل را فشار دهید"</string>
+    <string name="permlab_injectEvents" msgid="1378746584023586600">"کلیدها و دکمه‌های کنترل را فشار دهید"</string>
     <string name="permdesc_injectEvents" product="tablet" msgid="206352565599968632">"به برنامه اجازه می‎دهد تا رویدادهای ورودی خود (فشردن کلیدها و غیره) را تحویل دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا کارکرد رایانه لوحی را کنترل کنند."</string>
     <string name="permdesc_injectEvents" product="default" msgid="653128057572326253">"به برنامه اجازه می‎دهد تا رویدادهای ورودی خود را به برنامه‎های دیگر تحویل دهد (فشردن کلیدها و غیره). برنامه‎های مخرب می‎توانند از آن برای کنترل کارکرد تلفن استفاده کنند."</string>
-    <string name="permlab_readInputState" msgid="469428900041249234">"مواردی که می نویسید و کارهایی که انجام می دهید را ضبط کنید"</string>
-    <string name="permdesc_readInputState" msgid="8387754901688728043">"به برنامه اجازه می‎دهد تا کلیدهایی را که هنگام تعامل با برنامه دیگر فشار می‎دهید ببیند (مانند تایپ کردن گذرواژه). برای برنامه‎های عادی مورد نیاز نیست."</string>
+    <string name="permlab_readInputState" msgid="469428900041249234">"مواردی که می‌نویسید و کارهایی که انجام می‌دهید را ضبط کنید"</string>
+    <string name="permdesc_readInputState" msgid="8387754901688728043">"به برنامه اجازه می‎دهد تا کلیدهایی را که هنگام تعامل با برنامهٔ دیگر فشار می‎دهید ببیند (مانند تایپ کردن گذرواژه). برای برنامه‎های عادی مورد نیاز نیست."</string>
     <string name="permlab_bindInputMethod" msgid="3360064620230515776">"پیوند شده به روش ورودی"</string>
     <string name="permdesc_bindInputMethod" msgid="3250440322807286331">"به دارنده این دستگاه اجازه می‎دهد تا به رابط سطح بالای یک روش ورودی متصل شود. این ویژگی هیچگاه برای برنامه‎های معمولی ضروری نمی‎باشد."</string>
     <string name="permlab_bindAccessibilityService" msgid="5357733942556031593">"اتصال به سرویس دسترسی"</string>
@@ -294,7 +294,7 @@
     <string name="permdesc_bindDeviceAdmin" msgid="569715419543907930">"به دارنده اجازه می‎دهد اهداف خود را به سرپرست دستگاه ارسال کند. برنامه‎های معمولی هیچگاه به این ویژگی نیازی ندارند."</string>
     <string name="permlab_setOrientation" msgid="3365947717163866844">"تغییر جهت صفحه"</string>
     <string name="permdesc_setOrientation" msgid="3046126619316671476">"به برنامه اجازه می‎دهد تا چرخش صفحه را هر وقت بخواهد تغییر دهد. برای برنامه‎های عادی نیاز نیست."</string>
-    <string name="permlab_setPointerSpeed" msgid="9175371613322562934">"تغییر سرعت اشاره گر"</string>
+    <string name="permlab_setPointerSpeed" msgid="9175371613322562934">"تغییر سرعت اشاره‌گر"</string>
     <string name="permdesc_setPointerSpeed" msgid="6866563234274104233">"به برنامه اجازه می‎دهد تا سرعت ماوس و پد کنترل را هر وقت خواست تغییر دهد. برای برنامه‎های عادی نیاز نیست."</string>
     <string name="permlab_setKeyboardLayout" msgid="4778731703600909340">"تغییر چیدمان صفحه کلید"</string>
     <string name="permdesc_setKeyboardLayout" msgid="8480016771134175879">"به برنامه اجازه می‌دهد تا چیدمان صفحه کلید را تغییر دهد. این کار هیچ‌گاه برای برنامه‌های عادی نیاز نیست."</string>
@@ -308,37 +308,37 @@
     <string name="permlab_clearAppUserData" msgid="274109191845842756">"حذف داده‎های برنامه‎های دیگر"</string>
     <string name="permdesc_clearAppUserData" msgid="4625323684125459488">"به برنامه اجازه می‎دهد تا داده‎های کاربر را پاک کند."</string>
     <string name="permlab_deleteCacheFiles" msgid="3128665571837408675">"حذف حافظه پنهان برنامه‎های دیگر"</string>
-    <string name="permdesc_deleteCacheFiles" msgid="3812998599006730196">"به برنامه اجازه می‎دهد تا فایلهای حافظه پنهان را پاک کند."</string>
+    <string name="permdesc_deleteCacheFiles" msgid="3812998599006730196">"به برنامه اجازه می‎دهد تا فایل‌های حافظه پنهان را پاک کند."</string>
     <string name="permlab_getPackageSize" msgid="7472921768357981986">"اندازه گیری فضای حافظه برنامه"</string>
     <string name="permdesc_getPackageSize" msgid="3921068154420738296">"به برنامه اجازه می‎دهد تا کدها، داده‎ها و اندازه‎های حافظه پنهان خود را بازیابی کند"</string>
     <string name="permlab_installPackages" msgid="2199128482820306924">"نصب مستقیم برنامه"</string>
     <string name="permdesc_installPackages" msgid="5628530972548071284">"به برنامه اجازه می‎دهد تا بسته‎های Android به روز شده یا جدید را نصب کند. برنامه‎های مخرب می‎توانند از این استفاده کنند تا برنامه‎های جدید را با مجوزهای قوی اختیاری اضافه کنند."</string>
     <string name="permlab_clearAppCache" msgid="7487279391723526815">"حذف تمام داده‎های حافظه پنهان برنامه"</string>
-    <string name="permdesc_clearAppCache" product="tablet" msgid="3523396284474042284">"به برنامه اجازه می‎دهد تا حافظه رایانه لوحی را با حذف فایلها در فهرست حافظه پنهان برنامه آزاد کند. معمولا دسترسی برای پردازش سیستم بسیار محدود است."</string>
-    <string name="permdesc_clearAppCache" product="default" msgid="5067988373366292186">"به برنامه اجازه می‎دهد تا با حذف فایلها در فهرست حافظه پنهان برنامه حافظه تلفن را آزاد کند. معمولا دسترسی به پردازش سیستم بسیار محدود است."</string>
+    <string name="permdesc_clearAppCache" product="tablet" msgid="3523396284474042284">"به برنامه اجازه می‎دهد تا حافظه رایانه لوحی را با حذف فایل‌ها در فهرست حافظه پنهان برنامه آزاد کند. معمولا دسترسی برای پردازش سیستم بسیار محدود است."</string>
+    <string name="permdesc_clearAppCache" product="default" msgid="5067988373366292186">"به برنامه اجازه می‎دهد تا با حذف فایل‌ها در فهرست حافظه پنهان برنامه حافظه تلفن را آزاد کند. معمولا دسترسی به پردازش سیستم بسیار محدود است."</string>
     <string name="permlab_movePackage" msgid="3289890271645921411">"انتقال منابع برنامه"</string>
     <string name="permdesc_movePackage" msgid="319562217778244524">"به برنامه اجازه می‎دهد تا منابع برنامه را از رسانه داخلی به رسانه خارجی و بالعکس منتقل کند."</string>
-    <string name="permlab_readLogs" msgid="6615778543198967614">"مطالعه داده های گزارش حساس"</string>
-    <string name="permdesc_readLogs" product="tablet" msgid="82061313293455151">"به برنامه اجازه می‎دهد فایلهای مختلف گزارش سیستم را بخواند. با این کار، برنامه اطلاعات کلی مربوط به کاری که با رایانه لوحی انجام می‎دهید را کشف می کند، که ممکن است حاوی اطلاعات شخصی و خصوصی باشند."</string>
-    <string name="permdesc_readLogs" product="default" msgid="2063438140241560443">"به برنامه اجازه می‎دهد تا فایلهای گزارش مختلف سیستم را بخواند. این کار به برنامه اجازه می‎دهد اطلاعات عمومی کاری که با تلفن انجام می‎دهید مثلا اطلاعات خصوصی و شخصی را کشف کند."</string>
+    <string name="permlab_readLogs" msgid="6615778543198967614">"مطالعه داده‌های گزارش حساس"</string>
+    <string name="permdesc_readLogs" product="tablet" msgid="82061313293455151">"به برنامه اجازه می‎دهد فایل‌های مختلف گزارش سیستم را بخواند. با این کار، برنامه اطلاعات کلی مربوط به کاری که با رایانه لوحی انجام می‎دهید را کشف می‌کند، که ممکن است حاوی اطلاعات شخصی و خصوصی باشند."</string>
+    <string name="permdesc_readLogs" product="default" msgid="2063438140241560443">"به برنامه اجازه می‎دهد تا فایل‌های گزارش مختلف سیستم را بخواند. این کار به برنامه اجازه می‎دهد اطلاعات عمومی کاری که با تلفن انجام می‎دهید مثلا اطلاعات خصوصی و شخصی را کشف کند."</string>
     <string name="permlab_anyCodecForPlayback" msgid="715805555823881818">"استفاده از هر رمزگشای رسانه‎ای برای بازپخش"</string>
     <string name="permdesc_anyCodecForPlayback" msgid="8283912488433189010">"اجازه می‎دهد برنامه از هر رمزگشای رسانه نصب شده‌ای استفاده کند تا برای پخش رمزگشایی شود."</string>
     <string name="permlab_diagnostic" msgid="8076743953908000342">"خواندن/نوشتن منابع متعلق به تشخیص"</string>
-    <string name="permdesc_diagnostic" msgid="6608295692002452283">"به برنامه اجازه می‌دهد هر منبعی را که متعلق به گروه تشخیص است بخواند و در آن بنویسد؛ بعنوان مثال، فایل‌های /dev. این امر بصورت بالقوه می‌تواند بر پایدار بودن و امنیت سیستم تأثیر بگذارد. این تنها باید برای تشخیص‎‌های مختص سخت‌افزار توسط تولیدکننده یا اپراتور استفاده شود."</string>
+    <string name="permdesc_diagnostic" msgid="6608295692002452283">"به برنامه اجازه می‌دهد هر منبعی را که متعلق به گروه تشخیص است بخواند و در آن بنویسد؛ به‌عنوان مثال، فایل‌های /dev. این امر به‌صورت بالقوه می‌تواند بر پایدار بودن و امنیت سیستم تأثیر بگذارد. این تنها باید برای تشخیص‎‌های مختص سخت‌افزار توسط تولیدکننده یا اپراتور استفاده شود."</string>
     <string name="permlab_changeComponentState" msgid="6335576775711095931">"فعال یا غیر فعال کردن اجزای برنامه"</string>
-    <string name="permdesc_changeComponentState" product="tablet" msgid="8887435740982237294">"به برنامه اجازه می‎دهد تا فعال بودن یا نبودن اجزای برنامه دیگر را تغییر دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا قابلیتهای مهم رایانه لوحی را غیرفعال کنند. باید دقت کرد که با این مجوز ممکن است وضعیت اجزای برنامه ناپایدار، ناهماهنگ یا غیرقابل استفاده شود."</string>
-    <string name="permdesc_changeComponentState" product="default" msgid="1827232484416505615">"به برنامه اجازه می‎دهد تا فعال بودن یا غیرفعال بودن جزئیات برنامه دیگر را تغییر دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا ویژگیهای مهم را غیرفعال کنند. برای این مجوز باید دقت کنید چون ممکن است وضعیت جزئیات برنامه ناپایدار، بی‎ثبات یا غیرقابل استفاده شود."</string>
+    <string name="permdesc_changeComponentState" product="tablet" msgid="8887435740982237294">"به برنامه اجازه می‎دهد تا فعال بودن یا نبودن اجزای برنامهٔ دیگر را تغییر دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا قابلیتهای مهم رایانه لوحی را غیرفعال کنند. باید دقت کرد که با این مجوز ممکن است وضعیت اجزای برنامه ناپایدار، ناهماهنگ یا غیرقابل استفاده شود."</string>
+    <string name="permdesc_changeComponentState" product="default" msgid="1827232484416505615">"به برنامه اجازه می‎دهد تا فعال بودن یا غیرفعال بودن جزئیات برنامهٔ دیگر را تغییر دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا ویژگی‌های مهم را غیرفعال کنند. برای این مجوز باید دقت کنید چون ممکن است وضعیت جزئیات برنامه ناپایدار، بی‎ثبات یا غیرقابل استفاده شود."</string>
     <string name="permlab_grantRevokePermissions" msgid="4627315351093508795">"ارائه یا لغو مجوزها"</string>
-    <string name="permdesc_grantRevokePermissions" msgid="4088642654085850662">"به یک برنامه کاربردی اجازه می‌دهد تا مجوزهای خاصی را برای خود یا دیگر برنامه‌ها ارائه کرده یا آنها را لغو کند. برنامه‌های مضر از این حالت برای دسترسی به ویژگی‌هایی استفاده می‌کنند که شما اجازه آن را در اختیارشان قرار نداده‌اید."</string>
+    <string name="permdesc_grantRevokePermissions" msgid="4088642654085850662">"به یک برنامه کاربردی اجازه می‌دهد تا مجوزهای خاصی را برای خود یا دیگر برنامه‌ها ارائه کرده یا آن‌ها را لغو کند. برنامه‌های مضر از این حالت برای دسترسی به ویژگی‌هایی استفاده می‌کنند که شما اجازه آن را در اختیارشان قرار نداده‌اید."</string>
     <string name="permlab_setPreferredApplications" msgid="8463181628695396391">"تنظیم برنامه‎های ترجیحی"</string>
     <string name="permdesc_setPreferredApplications" msgid="4973986762241783712">"به برنامه اجازه می‎دهد تا برنامه‎های ترجیحی شما را تغییر دهد. برنامه‎های مخرب می‎توانند بدون اعلان برنامه‎هایی را که اجرا می‎شوند، تغییر دهند خود را به جای برنامه‎های کنونی قلمداد کنند تا داده‎های شخصی را از شما جمع آوری کنند."</string>
     <string name="permlab_writeSettings" msgid="2226195290955224730">"اصلاح تنظیمات سیستم"</string>
     <string name="permdesc_writeSettings" msgid="7775723441558907181">"به برنامه اجازه می‎دهد تا داده‎های تنظیم سیستم را تغییر دهد. برنامه‎های مخرب می‎توانند پیکربندی سیستم شما را خراب کنند."</string>
     <string name="permlab_writeSecureSettings" msgid="204676251876718288">"اصلاح کردن تنظیمات سیستم ایمن"</string>
     <string name="permdesc_writeSecureSettings" msgid="8159535613020137391">"به برنامه اجازه می‎دهد داده‎های تنظیمات امنیتی سیستم را تغییر دهد. برای استفاده برنامه‎های عادی نیست."</string>
-    <string name="permlab_writeGservices" msgid="2149426664226152185">"اصلاح کردن نقشه سرویس های Google"</string>
+    <string name="permlab_writeGservices" msgid="2149426664226152185">"اصلاح کردن نقشه سرویس‌های Google"</string>
     <string name="permdesc_writeGservices" msgid="1287309437638380229">"به برنامه اجازه می‎دهد تا نقشه سرویس‌های Google را تغییر دهد. برای استفاده برنامه‎های عادی نیست."</string>
-    <string name="permlab_receiveBootCompleted" msgid="5312965565987800025">"اجرا هنگام راه‌اندازی"</string>
+    <string name="permlab_receiveBootCompleted" msgid="5312965565987800025">"اجرا شدن در هنگام راه‌اندازی"</string>
     <string name="permdesc_receiveBootCompleted" product="tablet" msgid="7390304664116880704">"به برنامه اجازه می‎دهد تا به محض اتمام راه‎اندازی سیستم خودبخود شروع به کار کند. این کار ممکن است باعث شود مدت زمان بیشتری صرف شدوع به کار رایانه لوحی شود و به برنامه اجازه می‎دهد تا با اجرای همیشگی رایانه لوحی را کند کند."</string>
     <string name="permdesc_receiveBootCompleted" product="default" msgid="513950589102617504">"به برنامه اجازه می‎دهد تا به محض اینکه سیستم راه‎اندازی شد خودبخود شروع به کار کند. این کار باعث می‎شود مدت زمان بیشتری صرف شود تا تلفن شروع به کار کند و به برنامه اجازه می‎دهد تا کل تلفن کند شود چون همیشه در حال اجرا شدن است."</string>
     <string name="permlab_broadcastSticky" msgid="7919126372606881614">"ارسال پخش چسبنده"</string>
@@ -361,18 +361,18 @@
     <string name="permlab_writeProfile" msgid="907793628777397643">"اصلاح کارت تماس شما"</string>
     <string name="permdesc_writeProfile" product="default" msgid="5552084294598465899">"به برنامه اجازه می‎دهد تا اطلاعات نمایه شخصی ذخیره شده در دستگاه شما، مانند نام و اطلاعات تماس شما را تغییر دهد یا اضافه کند. یعنی برنامه‎ می‎تواند شما را شناسایی کند و ممکن است اطلاعات نمایه شما را برای دیگران ارسال کند."</string>
     <string name="permlab_readSocialStream" product="default" msgid="1268920956152419170">"خواندن جریان اجتماعی شما"</string>
-    <string name="permdesc_readSocialStream" product="default" msgid="4255706027172050872">"به برنامه اجازه می‌دهد به به‌روزرسانی‌های اجتماعی از طرف شما و دوستان شما دسترسی پیدا کرده و آنها را همگام‌سازی کند. دقت کنید که هنگام اشتراک‌گذاری -- این ویژگی به برنامه اجازه می‌دهد ارتباطات بین شما و دوستان شما را در شبکه‌های اجتماعی، صرفنظر از محرمانه بودن آنها بخواند. توجه: این مجوز ممکن است در همه شبکه‌های اجتماعی اجرا نشود."</string>
+    <string name="permdesc_readSocialStream" product="default" msgid="4255706027172050872">"به برنامه اجازه می‌دهد به به‌روزرسانی‌های اجتماعی از طرف شما و دوستان شما دسترسی پیدا کرده و آن‌ها را همگام‌سازی کند. دقت کنید که هنگام اشتراک‌گذاری -- این ویژگی به برنامه اجازه می‌دهد ارتباطات بین شما و دوستان شما را در شبکه‌های اجتماعی، صرفنظر از محرمانه بودن آن‌ها بخواند. توجه: این مجوز ممکن است در همه شبکه‌های اجتماعی اجرا نشود."</string>
     <string name="permlab_writeSocialStream" product="default" msgid="3504179222493235645">"نوشتن در جریان اجتماعی شما"</string>
-    <string name="permdesc_writeSocialStream" product="default" msgid="3086557552204114849">"به برنامه اجازه می‌دهد به‌روزرسانی‌های اجتماعی از طرف دوستان شما را نمایش دهد. دقت کنید هنگام اشتراک‌گذاری اطلاعات -- این ویژگی به برنامه اجازه می‌دهد پیام‌هایی را که به نظر می‌رسد از طرف یکی از دوستان شما باشد ایجاد کند. توجه: این مجوز در همه شبکه‌های اجتماعی قابل اجرا نمی‌باشد."</string>
+    <string name="permdesc_writeSocialStream" product="default" msgid="3086557552204114849">"به برنامه اجازه می‌دهد به‌روزرسانی‌های اجتماعی از طرف دوستان شما را نمایش دهد. دقت کنید هنگام اشتراک‌گذاری اطلاعات -- این ویژگی به برنامه اجازه می‌دهد پیام‌هایی را که به نظر می‌رسد از طرف یکی از دوستان شما باشد ایجاد کند. توجه: این مجوز در همه شبکه‌های اجتماعی قابل اجرا نیست."</string>
     <string name="permlab_readCalendar" msgid="5972727560257612398">"خواندن رویدادهای تقویم به همراه اطلاعات محرمانه"</string>
-    <string name="permdesc_readCalendar" product="tablet" msgid="4216462049057658723">"به برنامه امکان می‌دهد همه رویدادهای تقویم ذخیره شده در رایانه لوحی شما را بخواند، از جمله رویدادهای دوستان یا همکاران. این ممکن است به برنامه امکان دهد داده‌های تقویم شما را صرفنظر از محرمانه یا حساس بودن آنها به اشتراک گذاشته یا ذخیره کند."</string>
-    <string name="permdesc_readCalendar" product="default" msgid="7434548682470851583">"به برنامه امکان می‌دهد همه رویدادهای تقویم ذخیره شده در تلفن شما را بخواند، از جمله رویدادهای دوستان یا همکاران. این ممکن است به برنامه امکان دهد داده‌های تقویم شما را صرفنظر از محرمانه یا حساس بودن آنها به اشتراک گذاشته یا ذخیره کند."</string>
+    <string name="permdesc_readCalendar" product="tablet" msgid="4216462049057658723">"به برنامه امکان می‌دهد همه رویدادهای تقویم ذخیره شده در رایانه لوحی شما را بخواند، از جمله رویدادهای دوستان یا همکاران. این ممکن است به برنامه امکان دهد داده‌های تقویم شما را صرفنظر از محرمانه یا حساس بودن آن‌ها به اشتراک گذاشته یا ذخیره کند."</string>
+    <string name="permdesc_readCalendar" product="default" msgid="7434548682470851583">"به برنامه امکان می‌دهد همه رویدادهای تقویم ذخیره شده در تلفن شما را بخواند، از جمله رویدادهای دوستان یا همکاران. این ممکن است به برنامه امکان دهد داده‌های تقویم شما را صرفنظر از محرمانه یا حساس بودن آن‌ها به اشتراک گذاشته یا ذخیره کند."</string>
     <string name="permlab_writeCalendar" msgid="8438874755193825647">"افزودن یا تغییر رویدادهای تقویم و ارسال ایمیل به مهمانان بدون دخالت مالک"</string>
     <string name="permdesc_writeCalendar" product="tablet" msgid="6679035520113668528">"به برنامه اجازه می‌دهد رویدادهایی را که می‌توانید در رایانه لوحی خود اصلاح نمایید، از جمله رویدادهای دوستان یا همکاران خود را، اضافه یا حذف کرده یا تغییر دهد. این ویژگی ممکن است به برنامه اجازه دهد پیام‌هایی را که به نظر می‌رسد از مالکین تقویم رسیده است ارسال نموده یا رویدادها را بدون اطلاع مالک اصلاح کنند."</string>
     <string name="permdesc_writeCalendar" product="default" msgid="2324469496327249376">"به برنامه اجازه می‌دهد رویدادهایی را که می‌توانید در تلفن خود اصلاح نمایید، از جمله رویدادهای دوستان یا همکاران خود را، اضافه یا حذف کرده یا تغییر دهد. این ویژگی ممکن است به برنامه اجازه دهد پیام‌هایی را که به نظر می‌رسد از مالکین تقویم رسیده است ارسال نموده یا رویدادها را بدون اطلاع مالک اصلاح کنند."</string>
     <string name="permlab_accessMockLocation" msgid="8688334974036823330">"منابع مکان کاذب برای تست"</string>
     <string name="permdesc_accessMockLocation" msgid="5808711039482051824">"منابع موقعیت مکانی کاذب را برای تست کردن یا نصب یک ارائه‌دهنده موقعیت مکانی جدید ایجاد نمایید. این کار به برنامه امکان می‌دهد موقعیت مکانی و/یا وضعیت گزارش داده شده توسط سایر منابع موقعیت مکانی مانند GPS یا ارائه‌دهندگان موقعیت مکانی را نادیده بگیرد."</string>
-    <string name="permlab_accessLocationExtraCommands" msgid="2836308076720553837">"دسترسی به فرمان های بیشتر ارائه دهنده مکان"</string>
+    <string name="permlab_accessLocationExtraCommands" msgid="2836308076720553837">"دسترسی به فرمان‌های بیشتر ارائه دهنده مکان"</string>
     <string name="permdesc_accessLocationExtraCommands" msgid="5945166642335800763">"به برنامه اجازه می‎دهد تا به فرمان‌های ارائه‎دهنده موقعیت مکانی دیگری دسترسی داشته باشد. این ویژگی ممکن است باعث مختل شدن عملکرد GPS یا دیگر منابع موقعیت مکانی توسط این برنامه شود."</string>
     <string name="permlab_installLocationProvider" msgid="6578101199825193873">"مجوز برای نصب یک ارائه دهنده مکان"</string>
     <string name="permdesc_installLocationProvider" msgid="9066146120470591509">"منابع موقعیت مکانی کاذب را برای تست کردن یا نصب یک ارائه‌دهنده موقعیت مکانی جدید ایجاد نمایید. این کار به برنامه امکان می‌دهد موقعیت مکانی و/یا وضعیت گزارش داده شده توسط سایر منابع موقعیت مکانی مانند GPS یا ارائه‌دهندگان موقعیت مکانی را نادیده بگیرد."</string>
@@ -382,7 +382,7 @@
     <string name="permlab_accessCoarseLocation" msgid="7422827215441638984">"موقعیت مکانی تقریبی (مبتنی بر شبکه)"</string>
     <string name="permdesc_accessCoarseLocation" msgid="5383798877137640762">"به موقعیت مکانی تقریبی ارا‌ئه‌دهندگان موقعیت مکانی با استفاده از منابع شبکه مانند برج مخابراتی و Wi-Fi دسترسی پیدا کنید. وقتی این سرویس‌های موقعیت مکانی موجود و فعال باشند، این مجوز به برنامه امکان می‌دهد موقعیت مکانی تقریبی شما را تعیین کند."</string>
     <string name="permlab_accessSurfaceFlinger" msgid="2363969641792388947">"دسترسی به SurfaceFlinger"</string>
-    <string name="permdesc_accessSurfaceFlinger" msgid="1041619516733293551">"اجازه می‎دهد برنامه از ویژگیهای سطح پایین SurfaceFlinger استفاده کند."</string>
+    <string name="permdesc_accessSurfaceFlinger" msgid="1041619516733293551">"اجازه می‎دهد برنامه از ویژگی‌های سطح پایین SurfaceFlinger استفاده کند."</string>
     <string name="permlab_readFrameBuffer" msgid="6690504248178498136">"خواندن بافر قاب"</string>
     <string name="permdesc_readFrameBuffer" msgid="4937405521809454680">"به برنامه اجازه می‎دهد تا محتوای بافر کادر را بخواند."</string>
     <string name="permlab_modifyAudioSettings" msgid="6095859937069146086">"تغییر تنظیمات صوتی"</string>
@@ -399,47 +399,47 @@
     <string name="permlab_reboot" product="default" msgid="2898560872462638242">"اجبار برنامه برای راه اندازی مجدد"</string>
     <string name="permdesc_reboot" product="tablet" msgid="8172056180063700741">"به برنامه اجازه می‎دهد تا سبب راه اندازی مجدد رایانه لوحی شود."</string>
     <string name="permdesc_reboot" product="default" msgid="5326008124289989969">"به برنامه اجازه می‎دهد تا سبب راه اندازی مجدد گوشی شود."</string>
-    <string name="permlab_mount_unmount_filesystems" product="nosdcard" msgid="2927361537942591841">"دسترسی به سیستم فایل حافظه USB"</string>
+    <string name="permlab_mount_unmount_filesystems" product="nosdcard" msgid="2927361537942591841">"دسترسی به سیستم فایل حافظهٔ USB"</string>
     <string name="permlab_mount_unmount_filesystems" product="default" msgid="4402305049890953810">"دسترسی به سیستم فایل کارت SD"</string>
-    <string name="permdesc_mount_unmount_filesystems" msgid="1829290701658992347">"به برنامه اجازه می‎دهد تا فایلهای سیستمی در حافظه جداشدنی نصب شود یا نصب آن لغو شود."</string>
-    <string name="permlab_mount_format_filesystems" product="nosdcard" msgid="6227819582624904972">"پاک کردن حافظه USB"</string>
+    <string name="permdesc_mount_unmount_filesystems" msgid="1829290701658992347">"به برنامه اجازه می‎دهد تا فایل‌های سیستمی در حافظه جداشدنی نصب شود یا نصب آن لغو شود."</string>
+    <string name="permlab_mount_format_filesystems" product="nosdcard" msgid="6227819582624904972">"پاک کردن حافظهٔ USB"</string>
     <string name="permlab_mount_format_filesystems" product="default" msgid="262582698639274056">"پاک کردن کارت SD"</string>
     <string name="permdesc_mount_format_filesystems" msgid="8784268246779198627">"به برنامه اجازه می‎دهد تا حافظه جداشدنی را فرمت کند."</string>
-    <string name="permlab_asec_access" msgid="3411338632002193846">"دریافت اطلاعات مربوط به حافظه داخلی"</string>
-    <string name="permdesc_asec_access" msgid="3094563844593878548">"به برنامه اجازه می‎دهد تا اطلاعات مربوط به حافظه داخلی را دریافت کند."</string>
-    <string name="permlab_asec_create" msgid="6414757234789336327">"ایجاد حافظه داخلی"</string>
-    <string name="permdesc_asec_create" msgid="4558869273585856876">"به برنامه اجازه می‎دهد تا حافظه داخلی ایجاد کند."</string>
-    <string name="permlab_asec_destroy" msgid="526928328301618022">"خراب کردن حافظه داخلی"</string>
-    <string name="permdesc_asec_destroy" msgid="7218749286145526537">"به برنامه اجازه می‎دهد تا حافظه داخلی را از بین ببرد."</string>
-    <string name="permlab_asec_mount_unmount" msgid="8877998101944999386">"نصب/لغو نصب حافظه داخلی"</string>
-    <string name="permdesc_asec_mount_unmount" msgid="3451360114902490929">"به برنامه اجازه می‎دهد حافظه داخلی را نصب کرده/نصب آنرا لغو کند."</string>
+    <string name="permlab_asec_access" msgid="3411338632002193846">"دریافت اطلاعات مربوط به حافظهٔ داخلی"</string>
+    <string name="permdesc_asec_access" msgid="3094563844593878548">"به برنامه اجازه می‎دهد تا اطلاعات مربوط به حافظهٔ داخلی را دریافت کند."</string>
+    <string name="permlab_asec_create" msgid="6414757234789336327">"ایجاد حافظهٔ داخلی"</string>
+    <string name="permdesc_asec_create" msgid="4558869273585856876">"به برنامه اجازه می‎دهد تا حافظهٔ داخلی ایجاد کند."</string>
+    <string name="permlab_asec_destroy" msgid="526928328301618022">"خراب کردن حافظهٔ داخلی"</string>
+    <string name="permdesc_asec_destroy" msgid="7218749286145526537">"به برنامه اجازه می‎دهد تا حافظهٔ داخلی را از بین ببرد."</string>
+    <string name="permlab_asec_mount_unmount" msgid="8877998101944999386">"نصب/لغو نصب حافظهٔ داخلی"</string>
+    <string name="permdesc_asec_mount_unmount" msgid="3451360114902490929">"به برنامه اجازه می‎دهد حافظهٔ داخلی را نصب کرده/نصب آنرا لغو کند."</string>
     <string name="permlab_asec_rename" msgid="7496633954080472417">"نامگذاری مجدد دستگاه ذخیره داخلی"</string>
-    <string name="permdesc_asec_rename" msgid="1794757588472127675">"به برنامه اجازه می‎دهد تا نام حافظه داخلی را تغییر دهد."</string>
+    <string name="permdesc_asec_rename" msgid="1794757588472127675">"به برنامه اجازه می‎دهد تا نام حافظهٔ داخلی را تغییر دهد."</string>
     <string name="permlab_vibrate" msgid="7696427026057705834">"کنترل لرزش"</string>
     <string name="permdesc_vibrate" msgid="6284989245902300945">"به برنامه اجازه می‎دهد تا لرزاننده را کنترل کند."</string>
     <string name="permlab_flashlight" msgid="2155920810121984215">"کنترل چراغ قوه"</string>
     <string name="permdesc_flashlight" msgid="6522284794568368310">"به برنامه اجازه می‎دهد تا چراغ قوه را کنترل کند."</string>
-    <string name="permlab_manageUsb" msgid="1113453430645402723">"مدیریت تنظیمات برگزیده و مجوزها برای دستگاه های USB"</string>
-    <string name="permdesc_manageUsb" msgid="7776155430218239833">"به برنامه اجازه می‎دهد تا تنظیمات برگزیده و مجوزهای دستگاههای USB را مدیریت کند."</string>
+    <string name="permlab_manageUsb" msgid="1113453430645402723">"مدیریت تنظیمات برگزیده و مجوزها برای دستگاه‌های USB"</string>
+    <string name="permdesc_manageUsb" msgid="7776155430218239833">"به برنامه اجازه می‎دهد تا تنظیمات برگزیده و مجوزهای دستگاه‌های USB را مدیریت کند."</string>
     <string name="permlab_accessMtp" msgid="4953468676795917042">"اعمال پروتکل MTP"</string>
-    <string name="permdesc_accessMtp" msgid="6532961200486791570">"دسترسی به درایور کرنل MTP جهت اعمال پروتکل MTP USB را اجازه می دهد."</string>
+    <string name="permdesc_accessMtp" msgid="6532961200486791570">"دسترسی به درایور کرنل MTP جهت اعمال پروتکل MTP USB را اجازه می‌دهد."</string>
     <string name="permlab_hardware_test" msgid="4148290860400659146">"تست سخت افزار"</string>
-    <string name="permdesc_hardware_test" msgid="6597964191208016605">"به برنامه اجازه می‎دهد به منظور تست سخت‌افزار، قسمتهای جانبی مختلف را کنترل کنند."</string>
-    <string name="permlab_callPhone" msgid="3925836347681847954">"تماس مستقیم با شماره تلفن ها"</string>
+    <string name="permdesc_hardware_test" msgid="6597964191208016605">"به برنامه اجازه می‎دهد به منظور تست سخت‌افزار، قسمت‌های جانبی مختلف را کنترل کنند."</string>
+    <string name="permlab_callPhone" msgid="3925836347681847954">"تماس مستقیم با شماره تلفن‌ها"</string>
     <string name="permdesc_callPhone" msgid="3740797576113760827">"به برنامه اجازه می‌دهد بدون دخالت شما با شماره‌های تلفن تماس بگیرد. این ممکن است باعث ایجاد هزینه یا تماس‌های پیش‌بینی نشده شود. توجه داشته باشید که این به برنامه اجازه نمی‌دهد به برقراری تماس‌های اضطراری بپردازد. برنامه‌های مخرب ممکن است با برقراری تماس بدون تأیید شما هزینه‌هایی را برای شما ایجاد کنند."</string>
     <string name="permlab_callPrivileged" msgid="4198349211108497879">"تماس مستقیم با هر شماره تلفنی"</string>
-    <string name="permdesc_callPrivileged" msgid="1689024901509996810">"به برنامه اجازه می‎دهد تا بدون دخالت با هر شماره تلفنی تماس بگیرد، از جمله شماره‎های اضطراری. برنامه‎های مخرب می‎توانند تماسهای غیرضروری و غیر قانونی با خدمات اضطراری بگیرند."</string>
+    <string name="permdesc_callPrivileged" msgid="1689024901509996810">"به برنامه اجازه می‎دهد تا بدون دخالت با هر شماره تلفنی تماس بگیرد، از جمله شماره‎های اضطراری. برنامه‎های مخرب می‎توانند تماس‌های غیرضروری و غیر قانونی با خدمات اضطراری بگیرند."</string>
     <string name="permlab_performCdmaProvisioning" product="tablet" msgid="4842576994144604821">"راه اندازی مستقیم تنظیم رایانه لوحی CDMA"</string>
     <string name="permlab_performCdmaProvisioning" product="default" msgid="5604848095315421425">"شروع مستقیم راه اندازی تلفن CDMA"</string>
     <string name="permdesc_performCdmaProvisioning" msgid="1994193538802314186">"به برنامه اجازه می‎دهد تا شرایط مقررات CDMA را شروع کند. برنامه‎های مخرب می‎توانند شرایط مقررات CDMA را در مواقع غیرضروری شروع کند."</string>
-    <string name="permlab_locationUpdates" msgid="7785408253364335740">"کنترل اعلان های به روز رسانی مکان"</string>
+    <string name="permlab_locationUpdates" msgid="7785408253364335740">"کنترل اعلان‌های به‌روزرسانی مکان"</string>
     <string name="permdesc_locationUpdates" msgid="1120741557891438876">"به برنامه اجازه می‎دهد اعلانهای به‎روزرسانی موقعیت مکانی را از رادیو فعال/غیرفعال کند. برای استفاده برنامه‎های عادی نیست."</string>
     <string name="permlab_checkinProperties" msgid="7855259461268734914">"دسترسی به مشخصات اعلام ورود"</string>
-    <string name="permdesc_checkinProperties" msgid="4024526968630194128">"به برنامه اجازه می‎دهد دسترسی به ویژگیهای بارگذاری شده توسط سرویسهای ورود را بخواند/بنویسد. برای استفاده برنامه‎های عادی مورد نیاز نیست."</string>
-    <string name="permlab_bindGadget" msgid="776905339015863471">"انتخاب ابزارک ها"</string>
+    <string name="permdesc_checkinProperties" msgid="4024526968630194128">"به برنامه اجازه می‎دهد دسترسی به ویژگی‌های بارگذاری شده توسط سرویس‌های ورود را بخواند/بنویسد. برای استفاده برنامه‎های عادی مورد نیاز نیست."</string>
+    <string name="permlab_bindGadget" msgid="776905339015863471">"انتخاب ابزارک‌ها"</string>
     <string name="permdesc_bindGadget" msgid="8261326938599049290">"به برنامه اجازه می‎دهد تا به سیستم اعلام کند کدام ویجت را کدام برنامه می‎تواند استفاده کند. برنامه‎ای که این مجوز را دارد می‎تواند به داده‎های شخصی دیگر برنامه‎ها دسترسی داشته باشد. برای استفاده برنامه‎های عادی نیست."</string>
     <string name="permlab_modifyPhoneState" msgid="8423923777659292228">"اصلاح کردن حالت تلفن"</string>
-    <string name="permdesc_modifyPhoneState" msgid="1029877529007686732">"به برنامه اجازه می‎دهد ویژگیهای دستگاه را کنترل کند. برنامه‎ای که این مجوز را دارد می‎تواند بدون اطلاع شما تعویض شبکه داشته باشد، رادیوی تلفن را روشن یا خاموش کند و کارهایی از این قبیل را انجام دهد."</string>
+    <string name="permdesc_modifyPhoneState" msgid="1029877529007686732">"به برنامه اجازه می‎دهد ویژگی‌های دستگاه را کنترل کند. برنامه‎ای که این مجوز را دارد می‎تواند بدون اطلاع شما تعویض شبکه داشته باشد، رادیوی تلفن را روشن یا خاموش کند و کارهایی از این قبیل را انجام دهد."</string>
     <string name="permlab_readPhoneState" msgid="9178228524507610486">"خواندن وضعیت تلفن و شناسه"</string>
     <string name="permdesc_readPhoneState" msgid="1639212771826125528">"به برنامه اجازه می‌دهد به ویژگی‌های تلفن دستگاه شما دسترسی پیدا کند. این مجوز به برنامه اجازه می‌دهد شماره تلفن و شناسه‌های دستگاه، فعال بودن یک تماس و شماره راه دوری که با یک تماس متصل شده است را مشخص کند."</string>
     <string name="permlab_wakeLock" product="tablet" msgid="1531731435011495015">"ممانعت از به خواب رفتن رایانه لوحی"</string>
@@ -451,20 +451,20 @@
     <string name="permdesc_devicePower" product="tablet" msgid="6689862878984631831">"به برنامه اجازه می‎دهد رایانه لوحی را روشن یا خاموش کند."</string>
     <string name="permdesc_devicePower" product="default" msgid="6037057348463131032">"به برنامه اجازه می‎دهد گوشی را روشن یا خاموش کند."</string>
     <string name="permlab_factoryTest" msgid="3715225492696416187">"اجرا در حالت تست کارخانه"</string>
-    <string name="permdesc_factoryTest" product="tablet" msgid="3952059318359653091">"اجرا به عنوان تست سازنده سطح پایین، امکان دسترسی کامل به سخت افزار رایانه لوحی شما را فراهم می آورد. فقط زمانی که رایانه لوحی در حالت تست سازنده در حال اجراست قابل دسترسی است."</string>
-    <string name="permdesc_factoryTest" product="default" msgid="8136644990319244802">"اجرا به عنوان تست سازنده سطح پایین، امکان دسترسی کامل به سخت افزار تلفن شما را فراهم می آورد. فقط زمانی که تلفن در حالت تست سازنده در حال اجراست قابل دسترسی است."</string>
+    <string name="permdesc_factoryTest" product="tablet" msgid="3952059318359653091">"اجرا به عنوان تست سازنده سطح پایین، امکان دسترسی کامل به سخت افزار رایانه لوحی شما را فراهم می‌آورد. فقط زمانی که رایانه لوحی در حالت تست سازنده در حال اجراست قابل دسترسی است."</string>
+    <string name="permdesc_factoryTest" product="default" msgid="8136644990319244802">"اجرا به عنوان تست سازنده سطح پایین، امکان دسترسی کامل به سخت افزار تلفن شما را فراهم می‌آورد. فقط زمانی که تلفن در حالت تست سازنده در حال اجراست قابل دسترسی است."</string>
     <string name="permlab_setWallpaper" msgid="6627192333373465143">"تنظیم تصویر زمینه"</string>
     <string name="permdesc_setWallpaper" msgid="7373447920977624745">"به برنامه اجازه می‎دهد تا تصویر زمینه سیستم را تنظیم کند."</string>
     <string name="permlab_setWallpaperHints" msgid="3278608165977736538">"تنظیم اندازه تصویر زمینه"</string>
     <string name="permdesc_setWallpaperHints" msgid="8235784384223730091">"به برنامه اجازه می‎دهد تا نکات اندازه تصویر زمینه سیستم را تنظیم کند."</string>
-    <string name="permlab_masterClear" msgid="2315750423139697397">"بازنشانی سیستم به موارد پیش فرض کارخانه"</string>
+    <string name="permlab_masterClear" msgid="2315750423139697397">"بازنشانی سیستم به موارد پیش‌فرض کارخانه"</string>
     <string name="permdesc_masterClear" msgid="3665380492633910226">"به برنامه اجازه می‎دهد تا بطور کامل سیستم را روی تنظیمات کارخانه بازنشانی کند، همه داده‎ها، پیکربندی و برنامه‎های نصب شده را پاک کند."</string>
     <string name="permlab_setTime" msgid="2021614829591775646">"تنظیم ساعت"</string>
     <string name="permdesc_setTime" product="tablet" msgid="1896341438151152881">"به برنامه اجازه می‎دهد تا زمان ساعت رایانه لوحی را تغییر دهد."</string>
     <string name="permdesc_setTime" product="default" msgid="1855702730738020">"به برنامه اجازه می‎دهد تا زمان ساعت تلفن را تغییر دهد."</string>
-    <string name="permlab_setTimeZone" msgid="2945079801013077340">"تنظیم منطقه زمانی"</string>
-    <string name="permdesc_setTimeZone" product="tablet" msgid="1676983712315827645">"به برنامه اجازه می‎دهد تا منطقه زمانی رایانه لوحی را تغییر دهد."</string>
-    <string name="permdesc_setTimeZone" product="default" msgid="4499943488436633398">"به برنامه اجازه می‎دهد تا منطقه زمانی تلفن را تغییر دهد."</string>
+    <string name="permlab_setTimeZone" msgid="2945079801013077340">"تنظیم منطقهٔ زمانی"</string>
+    <string name="permdesc_setTimeZone" product="tablet" msgid="1676983712315827645">"به برنامه اجازه می‎دهد تا منطقهٔ زمانی رایانه لوحی را تغییر دهد."</string>
+    <string name="permdesc_setTimeZone" product="default" msgid="4499943488436633398">"به برنامه اجازه می‎دهد تا منطقهٔ زمانی تلفن را تغییر دهد."</string>
     <string name="permlab_accountManagerService" msgid="4829262349691386986">"عملکرد به عنوان AccountManagerService"</string>
     <string name="permdesc_accountManagerService" msgid="1948455552333615954">"به برنامه اجازه می‎دهد با AccountAuthenticators تماس برقرار کند."</string>
     <string name="permlab_getAccounts" msgid="1086795467760122114">"یافتن حساب‌ها در دستگاه"</string>
@@ -473,10 +473,10 @@
     <string name="permlab_authenticateAccounts" msgid="5265908481172736933">"ایجاد حساب‌ها و تنظیم گذرواژ‌ه‌ها"</string>
     <string name="permdesc_authenticateAccounts" msgid="5472124296908977260">"به برنامه اجازه می‎دهد از امکانات تأیید کننده اعتبار حساب AccountManager از جمله ایجاد حساب و دریافت و تنظیم گذرواژه‎ها استفاده کند."</string>
     <string name="permlab_manageAccounts" msgid="4983126304757177305">"افزودن یا حذف حساب‌ها"</string>
-    <string name="permdesc_manageAccounts" msgid="8698295625488292506">"به برنامه اجازه می‎دهد تا عملکردهایی مانند افزودن و حذف حسابها و حذف گذرواژه‎ها را انجام دهد."</string>
+    <string name="permdesc_manageAccounts" msgid="8698295625488292506">"به برنامه اجازه می‎دهد تا عملکردهایی مانند افزودن و حذف حساب‌ها و حذف گذرواژه‎ها را انجام دهد."</string>
     <string name="permlab_useCredentials" msgid="235481396163877642">"استفاده از حساب‌ها در دستگاه"</string>
     <string name="permdesc_useCredentials" msgid="7984227147403346422">"به برنامه اجازه می‎دهد نشانه‎های تایید اعتبار را درخواست کند."</string>
-    <string name="permlab_accessNetworkState" msgid="4951027964348974773">"مشاهده اتصالات شبکه"</string>
+    <string name="permlab_accessNetworkState" msgid="4951027964348974773">"مشاهدهٔ اتصالات شبکه"</string>
     <string name="permdesc_accessNetworkState" msgid="8318964424675960975">"به برنامه امکان می‌دهد اطلاعات مربوط به اتصالات شبکه مانند شبکه‌های موجود و متصل را مشاهده کند."</string>
     <string name="permlab_createNetworkSockets" msgid="8018758136404323658">"دسترسی کامل به شبکه"</string>
     <string name="permdesc_createNetworkSockets" msgid="3403062187779724185">"به برنامه امکان می‌دهد سوکت‌های شبکه را ایجاد کند و از پروتکل‌های شبکه سفارشی استفاده نماید. مرورگر و سایر برنامه‌ها روشی را برای ارسال داده‌ها به اینترنت ارائه می‌کنند بنابراین این مجوز برای ارسال داده به اینترنت ضروری نیست."</string>
@@ -486,19 +486,19 @@
     <string name="permdesc_changeNetworkState" msgid="6789123912476416214">"به برنامه اجازه می‎دهد تا وضعیت اتصال شبکه را تغییر دهد."</string>
     <string name="permlab_changeTetherState" msgid="5952584964373017960">"تغییر قابلیت اتصال داده با سیم"</string>
     <string name="permdesc_changeTetherState" msgid="1524441344412319780">"به برنامه اجازه می‎دهد تا وضعیت اتصال شبکه اتصال داده با سیم را تغییر دهد."</string>
-    <string name="permlab_changeBackgroundDataSetting" msgid="1400666012671648741">"تغییر تنظیمات میزان استفاده داده در پس زمینه"</string>
-    <string name="permdesc_changeBackgroundDataSetting" msgid="5347729578468744379">"به برنامه اجازه می‎دهد تا تنظیم کاربرد داده‎های پس زمینه را تغییر دهد."</string>
-    <string name="permlab_accessWifiState" msgid="5202012949247040011">"مشاهده اتصالات Wi-Fi"</string>
+    <string name="permlab_changeBackgroundDataSetting" msgid="1400666012671648741">"تغییر تنظیمات میزان استفاده داده در پس‌زمینه"</string>
+    <string name="permdesc_changeBackgroundDataSetting" msgid="5347729578468744379">"به برنامه اجازه می‎دهد تا تنظیم کاربرد داده‎های پس‌زمینه را تغییر دهد."</string>
+    <string name="permlab_accessWifiState" msgid="5202012949247040011">"مشاهدهٔ اتصالات Wi-Fi"</string>
     <string name="permdesc_accessWifiState" msgid="5002798077387803726">"به برنامه امکان می‌دهد اطلاعات مربوط به شبکه Wi-Fi را مشاهده کند، به عنوان مثال فعال بودن Wi-Fi و نام دستگاه‌های Wi-Fi متصل."</string>
     <string name="permlab_changeWifiState" msgid="6550641188749128035">"اتصال به Wi-Fi و قطع اتصال از آن"</string>
-    <string name="permdesc_changeWifiState" msgid="7137950297386127533">"به برنامه اجازه می‎دهد تا به نقاط دسترسی Wi-Fi وصل شود و ارتباط خود را با آنها قطع کند و تغییراتی را در پیکربندی دستگاه برای شبکه‎های Wi-Fi ایجاد کند."</string>
-    <string name="permlab_changeWifiMulticastState" msgid="1368253871483254784">"دریافت چندگانه Wi-Fi را مجاز می کند"</string>
+    <string name="permdesc_changeWifiState" msgid="7137950297386127533">"به برنامه اجازه می‎دهد تا به نقاط دسترسی Wi-Fi وصل شود و ارتباط خود را با آن‌ها قطع کند و تغییراتی را در پیکربندی دستگاه برای شبکه‎های Wi-Fi ایجاد کند."</string>
+    <string name="permlab_changeWifiMulticastState" msgid="1368253871483254784">"دریافت چندگانه Wi-Fi را مجاز می‌کند"</string>
     <string name="permdesc_changeWifiMulticastState" product="tablet" msgid="7969774021256336548">"به برنامه اجازه می‌دهد به دریافت بسته‌های ارسالی به همه دستگاه‌های موجود در شبکه Wi-Fi با استفاده از آدرس‌های پخش چندگانه و نه فقط به رایانه لوحی شما بپردازند. این از توان مصرف بیشتری نسبت به حالت پخش غیرچندگانه استفاده می‌کند."</string>
     <string name="permdesc_changeWifiMulticastState" product="default" msgid="6851949706025349926">"به برنامه اجازه می‌دهد به دریافت بسته‌های ارسالی به همه دستگاه‌های موجود در شبکه Wi-Fi با استفاده از آدرس‌های پخش چندگانه و نه فقط به تلفن شما بپردازند. این از توان مصرف بیشتری نسبت به حالت پخش غیرچندگانه استفاده می‌کند."</string>
     <string name="permlab_bluetoothAdmin" msgid="6006967373935926659">"دسترسی به تنظیمات بلوتوث"</string>
-    <string name="permdesc_bluetoothAdmin" product="tablet" msgid="6921177471748882137">"به برنامه اجازه می‎دهد تا رایانه لوحی بلوتوث محلی را پیکربندی کرده، دستگاههای راه دور را شناسایی کرده و با آنها جفت شود."</string>
-    <string name="permdesc_bluetoothAdmin" product="default" msgid="8931682159331542137">"به برنامه اجازه می‎دهد تا تلفن بلوتوث محلی را پیکربندی کند و دستگاههای راه دور را پیدا کند و با آنها جفت شود."</string>
-    <string name="permlab_accessWimaxState" msgid="7436749103151096452">"مشاهده اتصالات وایمکس"</string>
+    <string name="permdesc_bluetoothAdmin" product="tablet" msgid="6921177471748882137">"به برنامه اجازه می‎دهد تا رایانه لوحی بلوتوث محلی را پیکربندی کرده، دستگاه‌های راه دور را شناسایی کرده و با آن‌ها جفت شود."</string>
+    <string name="permdesc_bluetoothAdmin" product="default" msgid="8931682159331542137">"به برنامه اجازه می‎دهد تا تلفن بلوتوث محلی را پیکربندی کند و دستگاه‌های راه دور را پیدا کند و با آن‌ها جفت شود."</string>
+    <string name="permlab_accessWimaxState" msgid="7436749103151096452">"مشاهدهٔ اتصالات وایمکس"</string>
     <string name="permdesc_accessWimaxState" msgid="6360102877261978887">"به برنامه امکان می‌دهد فعال بودن وایمکس و اطلاعات مربوط به هر یک از شبکه‌های وایمکس متصل را مشخص کند."</string>
     <string name="permlab_changeWimaxState" msgid="2405042267131496579">"تغییر وضعیت WiMAX"</string>
     <string name="permdesc_changeWimaxState" product="tablet" msgid="3156456504084201805">"به برنامه امکان می‌دهد رایانه لوحی را به شبکه‌های وایمکس متصل کرده یا اتصال آن را از این شبکه‌ها قطع کند."</string>
@@ -524,20 +524,20 @@
     <string name="permdesc_readDictionary" msgid="659614600338904243">"به برنامه اجازه می‎دهد همه کلمه، نام و عباراتی را که کاربر در فرهنگ لغت خود ذخیره کرده است بخواند."</string>
     <string name="permlab_writeDictionary" msgid="2296383164914812772">"نوشتن در فرهنگ لغت تعریف شده از سوی کاربر"</string>
     <string name="permdesc_writeDictionary" msgid="8185385716255065291">"به برنامه اجازه می‎دهد تا کلمات جدید را در فهرست کاربر بنویسد."</string>
-    <string name="permlab_sdcardRead" product="nosdcard" msgid="8235341515605559677">"تست دسترسی به حافظه محافظت شده"</string>
-    <string name="permlab_sdcardRead" product="default" msgid="8235341515605559677">"تست دسترسی به حافظه محافظت شده"</string>
-    <string name="permdesc_sdcardRead" product="nosdcard" msgid="5791957130190763289">"به برنامه اجازه می‌دهد یک مجوز را برای حافظه USB که در دستگاه‌های آتی موجود خواهد بود تست کند."</string>
+    <string name="permlab_sdcardRead" product="nosdcard" msgid="8235341515605559677">"تست کردن دسترسی به حافظهٔ محافظت‌شده"</string>
+    <string name="permlab_sdcardRead" product="default" msgid="8235341515605559677">"تست کردن دسترسی به حافظهٔ محافظت‌شده"</string>
+    <string name="permdesc_sdcardRead" product="nosdcard" msgid="5791957130190763289">"به برنامه اجازه می‌دهد یک مجوز را برای حافظهٔ USB که در دستگاه‌های آتی موجود خواهد بود تست کند."</string>
     <string name="permdesc_sdcardRead" product="default" msgid="5914402684685848828">"به برنامه اجازه می‌دهد یک مجوز را برای کارت SD که در دستگاه‌های آتی موجود خواهد بود تست کند."</string>
-    <string name="permlab_sdcardWrite" product="nosdcard" msgid="8485979062254666748">"اصلاح یا حذف محتویات حافظه USB شما"</string>
+    <string name="permlab_sdcardWrite" product="nosdcard" msgid="8485979062254666748">"اصلاح یا حذف محتویات حافظهٔ USB شما"</string>
     <string name="permlab_sdcardWrite" product="default" msgid="8805693630050458763">"محتوای کارت SD شما را اصلاح کرده یا تغییر دهد"</string>
-    <string name="permdesc_sdcardWrite" product="nosdcard" msgid="6175406299445710888">"به برنامه اجازه می‎دهد تا در حافظه USB بنویسد."</string>
+    <string name="permdesc_sdcardWrite" product="nosdcard" msgid="6175406299445710888">"به برنامه اجازه می‎دهد تا در حافظهٔ USB بنویسد."</string>
     <string name="permdesc_sdcardWrite" product="default" msgid="4337417790936632090">"به برنامه اجازه می‎دهد تا در کارت SD بنویسد."</string>
     <string name="permlab_mediaStorageWrite" product="default" msgid="6859839199706879015">"تغییر/حذف محتواهای حافظه رسانه داخلی"</string>
     <string name="permdesc_mediaStorageWrite" product="default" msgid="8189160597698529185">"به برنامه اجازه می‎دهد تا محتویات حافظه رسانه داخلی را تغییر دهد."</string>
     <string name="permlab_cache_filesystem" msgid="5656487264819669824">"دسترسی به سیستم فایل حافظه پنهان"</string>
     <string name="permdesc_cache_filesystem" msgid="5578967642265550955">"به برنامه اجازه می‎دهد تا سیستم فایل حافظه پنهان را بخواند و بنویسد."</string>
-    <string name="permlab_use_sip" msgid="5986952362795870502">"علامتگذاری/دریافت تماس های اینترنتی"</string>
-    <string name="permdesc_use_sip" msgid="4717632000062674294">"به برنامه اجازه می‎دهد تا از خدمات SIP استفاده کند و تماسهای اینترنتی بگیرد/دریافت کند."</string>
+    <string name="permlab_use_sip" msgid="5986952362795870502">"علامتگذاری/دریافت تماس‌های اینترنتی"</string>
+    <string name="permdesc_use_sip" msgid="4717632000062674294">"به برنامه اجازه می‎دهد تا از خدمات SIP استفاده کند و تماس‌های اینترنتی بگیرد/دریافت کند."</string>
     <string name="permlab_readNetworkUsageHistory" msgid="7862593283611493232">"خواندن سابقه استفاده از شبکه"</string>
     <string name="permdesc_readNetworkUsageHistory" msgid="7689060749819126472">"به برنامه اجازه می‎دهد تا کاربرد شبکه را در طول زمان برای برنامه‎ها و شبکه‎های خاص بخواند."</string>
     <string name="permlab_manageNetworkPolicy" msgid="2562053592339859990">"مدیریت خط مشی شبکه"</string>
@@ -546,18 +546,18 @@
     <string name="permdesc_modifyNetworkAccounting" msgid="5443412866746198123">"به برنامه اجازه می‎دهد تا نحوه محاسبه کاربرد شبکه در برنامه را تغییر دهد. برای استفاده برنامه‎های عادی نیست."</string>
     <string name="policylab_limitPassword" msgid="4497420728857585791">"تنظیم قوانین رمز ورود"</string>
     <string name="policydesc_limitPassword" msgid="3252114203919510394">"طول و نویسه‎های مجاز در گذرواژه‌های بازکردن قفل صفحه را کنترل کنید."</string>
-    <string name="policylab_watchLogin" msgid="914130646942199503">"نمایش تلاش های قفل گشایی صفحه"</string>
-    <string name="policydesc_watchLogin" product="tablet" msgid="3215729294215070072">"تعداد گذرواژه‎های اشتباه تایپ شده را هنگام بازکردن قفل صفحه کنترل میکند، و یا اگر دفعات زیادی گذرواژه اشتباه تایپ شود رایانه لوحی را قفل می‎کند و همه داده‎های رایانه لوحی را پاک می‎کند."</string>
+    <string name="policylab_watchLogin" msgid="914130646942199503">"نمایش تلاش‌های قفل گشایی صفحه"</string>
+    <string name="policydesc_watchLogin" product="tablet" msgid="3215729294215070072">"تعداد گذرواژه‎های اشتباه تایپ شده را هنگام بازکردن قفل صفحه کنترل می‌کند، و یا اگر دفعات زیادی گذرواژه اشتباه تایپ شود رایانه لوحی را قفل می‎کند و همه داده‎های رایانه لوحی را پاک می‎کند."</string>
     <string name="policydesc_watchLogin" product="default" msgid="5712323091846761073">"تعداد گذرواژه‎های نادرست تایپ شده را کنترل می‎کند. هنگام بازکردن قفل صفحه اگر دفعات زیادی گذرواژه نادرست تایپ کرده‎اید، تلفن را قفل کنید یا همه داده‎های تلفن را پاک کنید."</string>
     <string name="policylab_resetPassword" msgid="2620077191242688955">"تغییر رمز ورود قفل گشایی صفحه"</string>
     <string name="policydesc_resetPassword" msgid="605963962301904458">"گذرواژه بازگشایی قفل صفحه را تغییر دهید."</string>
     <string name="policylab_forceLock" msgid="2274085384704248431">"قفل کردن صفحه"</string>
     <string name="policydesc_forceLock" msgid="1141797588403827138">"نحوه و زمان قفل شدن صفحه را کنترل کنید."</string>
-    <string name="policylab_wipeData" msgid="3910545446758639713">"پاک کردن تمام داده ها"</string>
+    <string name="policylab_wipeData" msgid="3910545446758639713">"پاک کردن تمام داده‌ها"</string>
     <string name="policydesc_wipeData" product="tablet" msgid="4306184096067756876">"با انجام بازنشانی به داده‌های کارخانه، داده‌های رایانه لوحی بدون هشدار پاک می‌شود."</string>
     <string name="policydesc_wipeData" product="default" msgid="5096895604574188391">"با انجام بازنشانی به داده‌های کارخانه، داده‌های تلفن بدون هشدار پاک می‌شود."</string>
     <string name="policylab_setGlobalProxy" msgid="2784828293747791446">"تنظیم پروکسی جهانی دستگاه"</string>
-    <string name="policydesc_setGlobalProxy" msgid="6387497466660154931">"پروکسی جهانی دستگاه مورد نظر را جهت استفاده هنگام فعال بودن خط مشی تنظیم کنید. فقط اولین سرپرست دستگاه پروکسی جهانی مفید را تنظیم می کند."</string>
+    <string name="policydesc_setGlobalProxy" msgid="6387497466660154931">"پروکسی جهانی دستگاه مورد نظر را جهت استفاده هنگام فعال بودن خط مشی تنظیم کنید. فقط اولین سرپرست دستگاه پروکسی جهانی مفید را تنظیم می‌کند."</string>
     <string name="policylab_expirePassword" msgid="885279151847254056">"تنظیم زمان انقضای رمز ورود قفل صفحه"</string>
     <string name="policydesc_expirePassword" msgid="1729725226314691591">"کنترل کنید چند وقت یکبار باید گذرواژه صفحه قفل عوض شود."</string>
     <string name="policylab_encryptedStorage" msgid="8901326199909132915">"تنظیم رمزگذاری حافظه"</string>
@@ -568,7 +568,7 @@
     <item msgid="8901098336658710359">"خانه"</item>
     <item msgid="869923650527136615">"تلفن همراه"</item>
     <item msgid="7897544654242874543">"محل کار"</item>
-    <item msgid="1103601433382158155">"نمابر محل كار"</item>
+    <item msgid="1103601433382158155">"نمابر محل کار"</item>
     <item msgid="1735177144948329370">"نمابر خانه"</item>
     <item msgid="603878674477207394">"پیجر"</item>
     <item msgid="1650824275177931637">"سایر موارد"</item>
@@ -611,7 +611,7 @@
     <string name="phoneTypeHome" msgid="2570923463033985887">"خانه"</string>
     <string name="phoneTypeMobile" msgid="6501463557754751037">"تلفن همراه"</string>
     <string name="phoneTypeWork" msgid="8863939667059911633">"محل کار"</string>
-    <string name="phoneTypeFaxWork" msgid="3517792160008890912">"نمابر محل كار"</string>
+    <string name="phoneTypeFaxWork" msgid="3517792160008890912">"نمابر محل کار"</string>
     <string name="phoneTypeFaxHome" msgid="2067265972322971467">"نمابر خانه"</string>
     <string name="phoneTypePager" msgid="7582359955394921732">"پیجر"</string>
     <string name="phoneTypeOther" msgid="1544425847868765990">"سایر موارد"</string>
@@ -620,7 +620,7 @@
     <string name="phoneTypeCompanyMain" msgid="540434356461478916">"شماره اصلی شرکت"</string>
     <string name="phoneTypeIsdn" msgid="8022453193171370337">"ISDN"</string>
     <string name="phoneTypeMain" msgid="6766137010628326916">"اصلی"</string>
-    <string name="phoneTypeOtherFax" msgid="8587657145072446565">"سایر شماره های نمابر"</string>
+    <string name="phoneTypeOtherFax" msgid="8587657145072446565">"سایر شماره‌های نمابر"</string>
     <string name="phoneTypeRadio" msgid="4093738079908667513">"رادیو"</string>
     <string name="phoneTypeTelex" msgid="3367879952476250512">"تلکس"</string>
     <string name="phoneTypeTtyTdd" msgid="8606514378585000044">"TTY TDD"</string>
@@ -674,7 +674,7 @@
     <string name="relationTypeSister" msgid="1735983554479076481">"خواهر"</string>
     <string name="relationTypeSpouse" msgid="394136939428698117">"همسر"</string>
     <string name="sipAddressTypeCustom" msgid="2473580593111590945">"سفارشی"</string>
-    <string name="sipAddressTypeHome" msgid="6093598181069359295">"صفحه اصلی"</string>
+    <string name="sipAddressTypeHome" msgid="6093598181069359295">"صفحهٔ اصلی"</string>
     <string name="sipAddressTypeWork" msgid="6920725730797099047">"محل کار"</string>
     <string name="sipAddressTypeOther" msgid="4408436162950119849">"سایر موارد"</string>
     <string name="keyguard_password_enter_pin_code" msgid="3037685796058495017">"پین کد را وارد کنید"</string>
@@ -698,7 +698,7 @@
     <string name="lockscreen_pattern_wrong" msgid="4317955014948108794">"دوباره امتحان کنید"</string>
     <string name="lockscreen_password_wrong" msgid="5737815393253165301">"دوباره امتحان کنید"</string>
     <string name="faceunlock_multiple_failures" msgid="754137583022792429">"دفعات تلاش برای Face Unlock از حداکثر مجاز بیشتر شد"</string>
-    <string name="lockscreen_plugged_in" msgid="8057762828355572315">"در حال شارژ،<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string>
+    <string name="lockscreen_plugged_in" msgid="8057762828355572315">"در حال شارژ، <xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string>
     <string name="lockscreen_charged" msgid="4938930459620989972">"شارژ شد."</string>
     <string name="lockscreen_battery_short" msgid="4477264849386850266">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string>
     <string name="lockscreen_low_battery" msgid="1482873981919249740">"شارژر خود را متصل کنید."</string>
@@ -714,23 +714,23 @@
     <string name="lockscreen_transport_pause_description" msgid="7659088786780128001">"دکمه مکث"</string>
     <string name="lockscreen_transport_play_description" msgid="5888422938351019426">"دکمه پخش"</string>
     <string name="lockscreen_transport_stop_description" msgid="4562318378766987601">"دکمه توقف"</string>
-    <string name="emergency_calls_only" msgid="6733978304386365407">"فقط تماس های اضطراری"</string>
+    <string name="emergency_calls_only" msgid="6733978304386365407">"فقط تماس‌های اضطراری"</string>
     <string name="lockscreen_network_locked_message" msgid="143389224986028501">"شبکه قفل شد"</string>
     <string name="lockscreen_sim_puk_locked_message" msgid="7441797339976230">"سیم کارت با PUK قفل شده است."</string>
     <string name="lockscreen_sim_puk_locked_instructions" msgid="8127916255245181063">"لطفاً به راهنمای کاربر مراجعه کرده یا با مرکز پشتیبانی از مشتریان تماس بگیرید."</string>
     <string name="lockscreen_sim_locked_message" msgid="8066660129206001039">"سیم کارت قفل شد."</string>
     <string name="lockscreen_sim_unlock_progress_dialog_message" msgid="595323214052881264">"بازگشایی قفل سیم کارت..."</string>
     <string name="lockscreen_too_many_failed_attempts_dialog_message" msgid="6481623830344107222">"الگوی بازگشایی قفل خود را <xliff:g id="NUMBER_0">%d</xliff:g> بار اشتباه کشیده‎اید. "\n\n"لطفاً پس از <xliff:g id="NUMBER_1">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
-    <string name="lockscreen_too_many_failed_password_attempts_dialog_message" msgid="2725973286239344555">"گذرواژه خود را <xliff:g id="NUMBER_0">%d</xliff:g> بار اشتباه تایپ کرده اید. "\n\n"پس از <xliff:g id="NUMBER_1">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
+    <string name="lockscreen_too_many_failed_password_attempts_dialog_message" msgid="2725973286239344555">"گذرواژه خود را <xliff:g id="NUMBER_0">%d</xliff:g> بار اشتباه تایپ کرده‌اید. "\n\n"پس از <xliff:g id="NUMBER_1">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
     <string name="lockscreen_too_many_failed_pin_attempts_dialog_message" msgid="6216672706545696955">"پین را<xliff:g id="NUMBER_0">%d</xliff:g>  بار اشتباه تایپ کرده‎اید. "\n\n"پس از <xliff:g id="NUMBER_1">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
     <string name="lockscreen_failed_attempts_almost_glogin" product="tablet" msgid="9191611984625460820">"شما الگوی بازگشایی قفل خود را <xliff:g id="NUMBER_0">%d</xliff:g> بار اشتباه کشیده‎اید. بعد از <xliff:g id="NUMBER_1">%d</xliff:g> تلاش ناموفق، از شما خواسته می‎شود که برای بازگشایی قفل رایانه لوحی خود به Google وارد شوید."\n\n" لطفاً پس از <xliff:g id="NUMBER_2">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
     <string name="lockscreen_failed_attempts_almost_glogin" product="default" msgid="2590227559763762751">"شما الگوی بازگشایی قفل خود را <xliff:g id="NUMBER_0">%d</xliff:g> بار اشتباه کشیده اید. پس از <xliff:g id="NUMBER_1">%d</xliff:g> تلاش ناموفق دیگر از شما خواسته می‎شود که برای بازگشایی قفل گوشی خود به برنامه Google وارد شوید."\n\n" لطفاً پس از <xliff:g id="NUMBER_2">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
-    <string name="lockscreen_failed_attempts_almost_at_wipe" product="tablet" msgid="6128106399745755604">"شما به اشتباه <xliff:g id="NUMBER_0">%d</xliff:g> بار اقدام به باز کردن قفل رایانه لوحی کرده‌اید. پس از <xliff:g id="NUMBER_1">%d</xliff:g> تلاش ناموفق دیگر، رایانه لوحی به پیش فرض کارخانه بازنشانی می‌شود و تمام داده‌های کاربر از دست خواهد رفت."</string>
-    <string name="lockscreen_failed_attempts_almost_at_wipe" product="default" msgid="8603565142156826565">"شما به اشتباه <xliff:g id="NUMBER_0">%d</xliff:g> بار اقدام به باز کردن قفل تلفن کرده‌اید. پس از<xliff:g id="NUMBER_1">%d</xliff:g> تلاش ناموفق دیگر، تلفن به پیش فرض کارخانه بازنشانی می‌شود و تمام داده‌های کاربر از دست خواهد رفت."</string>
-    <string name="lockscreen_failed_attempts_now_wiping" product="tablet" msgid="280873516493934365">"شما به اشتباه اقدام به باز کردن قفل <xliff:g id="NUMBER">%d</xliff:g> رایانه لوحی کرده‌اید. رایانه لوحی در حال حاضر به پیش فرض کارخانه بازنشانی می‌شود."</string>
-    <string name="lockscreen_failed_attempts_now_wiping" product="default" msgid="3025504721764922246">"شما به اشتباه <xliff:g id="NUMBER">%d</xliff:g> بار اقدام به باز کردن قفل تلفن کرده‌اید. این تلفن در حال حاضر به پیش فرض کارخانه بازنشانی می‌شود."</string>
+    <string name="lockscreen_failed_attempts_almost_at_wipe" product="tablet" msgid="6128106399745755604">"شما به اشتباه <xliff:g id="NUMBER_0">%d</xliff:g> بار اقدام به باز کردن قفل رایانه لوحی کرده‌اید. پس از <xliff:g id="NUMBER_1">%d</xliff:g> تلاش ناموفق دیگر، رایانه لوحی به پیش‌فرض کارخانه بازنشانی می‌شود و تمام داده‌های کاربر از دست خواهد رفت."</string>
+    <string name="lockscreen_failed_attempts_almost_at_wipe" product="default" msgid="8603565142156826565">"شما به اشتباه <xliff:g id="NUMBER_0">%d</xliff:g> بار اقدام به باز کردن قفل تلفن کرده‌اید. پس از<xliff:g id="NUMBER_1">%d</xliff:g> تلاش ناموفق دیگر، تلفن به پیش‌فرض کارخانه بازنشانی می‌شود و تمام داده‌های کاربر از دست خواهد رفت."</string>
+    <string name="lockscreen_failed_attempts_now_wiping" product="tablet" msgid="280873516493934365">"شما به اشتباه اقدام به باز کردن قفل <xliff:g id="NUMBER">%d</xliff:g> رایانه لوحی کرده‌اید. رایانه لوحی در حال حاضر به پیش‌فرض کارخانه بازنشانی می‌شود."</string>
+    <string name="lockscreen_failed_attempts_now_wiping" product="default" msgid="3025504721764922246">"شما به اشتباه <xliff:g id="NUMBER">%d</xliff:g> بار اقدام به باز کردن قفل تلفن کرده‌اید. این تلفن در حال حاضر به پیش‌فرض کارخانه بازنشانی می‌شود."</string>
     <string name="lockscreen_too_many_failed_attempts_countdown" msgid="6251480343394389665">"در <xliff:g id="NUMBER">%d</xliff:g> ثانیه دوباره امتحان کنید."</string>
-    <string name="lockscreen_forgot_pattern_button_text" msgid="2626999449610695930">"الگو را فراموش کرده اید؟"</string>
+    <string name="lockscreen_forgot_pattern_button_text" msgid="2626999449610695930">"الگو را فراموش کرده‌اید؟"</string>
     <string name="lockscreen_glogin_forgot_pattern" msgid="2588521501166032747">"بازگشایی قفل حساب"</string>
     <string name="lockscreen_glogin_too_many_attempts" msgid="2751368605287288808">"تلاش‎های زیادی برای کشیدن الگو صورت گرفته است"</string>
     <string name="lockscreen_glogin_instructions" msgid="3931816256100707784">"برای بازگشایی قفل، با حساب Google خود وارد سیستم شوید."</string>
@@ -757,7 +757,7 @@
     <string name="hour_ampm" msgid="4584338083529355982">"<xliff:g id="HOUR">%-l</xliff:g><xliff:g id="AMPM">%P</xliff:g>"</string>
     <string name="hour_cap_ampm" msgid="2083465992940444366">"<xliff:g id="HOUR">%-l</xliff:g><xliff:g id="AMPM">%p</xliff:g>"</string>
     <string name="factorytest_failed" msgid="5410270329114212041">"تست کارخانه انجام نشد"</string>
-    <string name="factorytest_not_system" msgid="4435201656767276723">"عملکرد FACTORY_TEST تنها برای بسته های نصب شده در /system/app پشتیبانی می شود."</string>
+    <string name="factorytest_not_system" msgid="4435201656767276723">"عملکرد FACTORY_TEST تنها برای بسته‌های نصب شده در /system/app پشتیبانی می‌شود."</string>
     <string name="factorytest_no_action" msgid="872991874799998561">"بسته ای یافت نشد که عملکرد FACTORY_TEST را ارائه کند."</string>
     <string name="factorytest_reboot" msgid="6320168203050791643">"راه اندازی مجدد"</string>
     <string name="js_dialog_title" msgid="1987483977834603872">"صفحه در \"<xliff:g id="TITLE">%s</xliff:g>\" می‎گوید:"</string>
@@ -784,7 +784,7 @@
     <string name="autofill_area" msgid="3547409050889952423">"منطقه"</string>
     <string name="autofill_emirate" msgid="2893880978835698818">"امارات"</string>
     <string name="permlab_readHistoryBookmarks" msgid="3775265775405106983">"خواندن سابقه و نشانک‌های وب شما"</string>
-    <string name="permdesc_readHistoryBookmarks" msgid="8462378226600439658">"به برنامه اجازه می‌دهد سابقه نشانی‌های اینترنتی را که مرورگر بازدید کرده است و همه نشانک‌های مرورگر را بخواند. توجه: این مجوز توسط مرورگرهای شخص ثالث یا سایر برنامه‌های دارای قابلیت مرور وب قابل اجرا نمی‌باشد."</string>
+    <string name="permdesc_readHistoryBookmarks" msgid="8462378226600439658">"به برنامه اجازه می‌دهد سابقه نشانی‌های اینترنتی را که مرورگر بازدید کرده است و همه نشانک‌های مرورگر را بخواند. توجه: این مجوز توسط مرورگرهای شخص ثالث یا سایر برنامه‌های دارای قابلیت مرور وب قابل اجرا نیست."</string>
     <string name="permlab_writeHistoryBookmarks" msgid="3714785165273314490">"نوشتن نشانک‌های وب و سابقه"</string>
     <string name="permdesc_writeHistoryBookmarks" product="tablet" msgid="6825527469145760922">"به برنامه اجازه می‌دهد سابقه مرورگر یا نشانک‌های ذخیره شده در رایانه لوحی شما را اصلاح کند. این ویژگی ممکن است به برنامه اجازه دهد داده‌های مرورگر را حذف یا اصلاح کند. توجه: این مجوز ممکن است توسط مرورگرهای شخص ثالث یا سایر برنامه‌های دارای قابلیت مرور وب قابل اجرا نباشد."</string>
     <string name="permdesc_writeHistoryBookmarks" product="default" msgid="8497389531014185509">"به برنامه اجازه می‌دهد سابقه مرورگر یا نشانک‌های ذخیره شده در تلفن شما را اصلاح کند. این ویژگی ممکن است به برنامه اجازه دهد داده‌های مرورگر را حذف یا اصلاح کند. توجه: این مجوز ممکن است توسط مرورگرهای شخص ثالث یا سایر برنامه‌های دارای قابلیت مرور وب قابل اجرا نباشد."</string>
@@ -793,7 +793,7 @@
     <string name="permlab_addVoicemail" msgid="5525660026090959044">"افزودن پست صوتی"</string>
     <string name="permdesc_addVoicemail" msgid="6604508651428252437">"به برنامه اجازه می‌دهد تا پیام‌ها را به صندوق دریافت پست صوتی شما اضافه کند."</string>
     <string name="permlab_writeGeolocationPermissions" msgid="5962224158955273932">"تغییر مجوزهای مکان جغرافیایی مرورگر"</string>
-    <string name="permdesc_writeGeolocationPermissions" msgid="1083743234522638747">"به برنامه اجازه می‎دهد تا مجوزهای جغرافیایی مرورگر را تغییر دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا اطلاعات موقعیت مکانی را به سایتهای وب کتابخانه بفرستند."</string>
+    <string name="permdesc_writeGeolocationPermissions" msgid="1083743234522638747">"به برنامه اجازه می‎دهد تا مجوزهای جغرافیایی مرورگر را تغییر دهد. برنامه‎های مخرب می‎توانند از آن استفاده کنند تا اطلاعات موقعیت مکانی را به سایت‌های وب کتابخانه بفرستند."</string>
     <string name="permlab_packageVerificationAgent" msgid="5568139100645829117">"تأیید بسته‌ها"</string>
     <string name="permdesc_packageVerificationAgent" msgid="8437590190990843381">"به برنامه اجازه می‌دهد قابل نصب بودن بسته را تأیید کند."</string>
     <string name="permlab_bindPackageVerifier" msgid="4187786793360326654">"اتصال به یک تأیید کننده بسته"</string>
@@ -804,7 +804,7 @@
     <string name="permdesc_accessContentProvidersExternally" msgid="4544346486697853685">"به دارنده اجازه می‌دهد تا از خارج برنامه به ارائه‌دهندگان محتوا دسترسی داشته باشد. هرگز برای برنامه‌های معمولی به آن نیازی نیست."</string>
     <string name="permlab_updateLock" msgid="3527558366616680889">"ترغیب به انجام ندادن به‌روزرسانی‌های خودکار دستگاه"</string>
     <string name="permdesc_updateLock" msgid="1655625832166778492">"به دارنده اجازه می‌دهد اطلاعاتی در مورد زمان مناسب برای یک راه‌اندازی مجدد غیرتعاملی جهت ارتقای دستگاه را به سیستم ارائه دهد."</string>
-    <string name="save_password_message" msgid="767344687139195790">"می خواهید مرورگر این رمز ورود را به خاطر داشته باشد؟"</string>
+    <string name="save_password_message" msgid="767344687139195790">"می‌خواهید مرورگر این رمز ورود را به خاطر داشته باشد؟"</string>
     <string name="save_password_notnow" msgid="6389675316706699758">"اکنون خیر"</string>
     <string name="save_password_remember" msgid="6491879678996749466">"به خاطر سپردن"</string>
     <string name="save_password_never" msgid="8274330296785855105">"هرگز"</string>
@@ -824,18 +824,18 @@
     <string name="enable_explore_by_touch_warning_title" msgid="7460694070309730149">"فعال کردن «کاوش با لمس»؟"</string>
     <string name="enable_explore_by_touch_warning_message" product="tablet" msgid="8655887539089910577">"<xliff:g id="ACCESSIBILITY_SERVICE_NAME">%1$s</xliff:g> می‌خواهد «کاوش با لمس» را فعال کند. وقتی «کاوش با لمس» فعال است، می‌توانید توضیحاتی را برای آنچه که زیر انگشت شما است مشاهده کرده یا بشنوید یا برای استفاده از رایانه لوحی از حرکات اشاره استفاده کنید."</string>
     <string name="enable_explore_by_touch_warning_message" product="default" msgid="2708199672852373195">"<xliff:g id="ACCESSIBILITY_SERVICE_NAME">%1$s</xliff:g> می‌خواهد «کاوش با لمس» را فعال کند. وقتی «کاوش با لمس» فعال است، می‌توانید توضیحاتی را برای آنچه که زیر انگشت شما است مشاهده کرده یا بشنوید یا برای استفاده از تلفن خود از حرکات اشاره استفاده کنید."</string>
-    <string name="oneMonthDurationPast" msgid="7396384508953779925">"1 ماه قبل"</string>
-    <string name="beforeOneMonthDurationPast" msgid="909134546836499826">"قبل از 1 ماه گذشته"</string>
+    <string name="oneMonthDurationPast" msgid="7396384508953779925">"۱ ماه قبل"</string>
+    <string name="beforeOneMonthDurationPast" msgid="909134546836499826">"قبل از ۱ ماه گذشته"</string>
   <plurals name="num_seconds_ago">
-    <item quantity="one" msgid="4869870056547896011">"1 ثانیه قبل"</item>
+    <item quantity="one" msgid="4869870056547896011">"۱ ثانیه قبل"</item>
     <item quantity="other" msgid="3903706804349556379">"<xliff:g id="COUNT">%d</xliff:g> ثانیه قبل"</item>
   </plurals>
   <plurals name="num_minutes_ago">
-    <item quantity="one" msgid="3306787433088810191">"1 دقیقه قبل"</item>
+    <item quantity="one" msgid="3306787433088810191">"۱ دقیقه قبل"</item>
     <item quantity="other" msgid="2176942008915455116">"<xliff:g id="COUNT">%d</xliff:g> دقیقه قبل"</item>
   </plurals>
   <plurals name="num_hours_ago">
-    <item quantity="one" msgid="9150797944610821849">"1 ساعت قبل"</item>
+    <item quantity="one" msgid="9150797944610821849">"۱ ساعت قبل"</item>
     <item quantity="other" msgid="2467273239587587569">"<xliff:g id="COUNT">%d</xliff:g> ساعت قبل"</item>
   </plurals>
   <plurals name="last_num_days">
@@ -848,15 +848,15 @@
     <item quantity="other" msgid="2479586466153314633">"<xliff:g id="COUNT">%d</xliff:g> روز قبل"</item>
   </plurals>
   <plurals name="in_num_seconds">
-    <item quantity="one" msgid="2729745560954905102">"در 1 ثانیه"</item>
+    <item quantity="one" msgid="2729745560954905102">"در ۱ ثانیه"</item>
     <item quantity="other" msgid="1241926116443974687">"در <xliff:g id="COUNT">%d</xliff:g> ثانیه"</item>
   </plurals>
   <plurals name="in_num_minutes">
-    <item quantity="one" msgid="8793095251325200395">"در 1 دقیقه"</item>
+    <item quantity="one" msgid="8793095251325200395">"در ۱ دقیقه"</item>
     <item quantity="other" msgid="3330713936399448749">"در <xliff:g id="COUNT">%d</xliff:g> دقیقه"</item>
   </plurals>
   <plurals name="in_num_hours">
-    <item quantity="one" msgid="7164353342477769999">"در 1 ساعت"</item>
+    <item quantity="one" msgid="7164353342477769999">"در ۱ ساعت"</item>
     <item quantity="other" msgid="547290677353727389">"در <xliff:g id="COUNT">%d</xliff:g> ساعت"</item>
   </plurals>
   <plurals name="in_num_days">
@@ -864,15 +864,15 @@
     <item quantity="other" msgid="5109449375100953247">"در <xliff:g id="COUNT">%d</xliff:g> روز"</item>
   </plurals>
   <plurals name="abbrev_num_seconds_ago">
-    <item quantity="one" msgid="1849036840200069118">"1 ثانیه قبل"</item>
+    <item quantity="one" msgid="1849036840200069118">"۱ ثانیه قبل"</item>
     <item quantity="other" msgid="3699169366650930415">"<xliff:g id="COUNT">%d</xliff:g> ثانیه قبل"</item>
   </plurals>
   <plurals name="abbrev_num_minutes_ago">
-    <item quantity="one" msgid="6361490147113871545">"1 دقیقه قبل"</item>
+    <item quantity="one" msgid="6361490147113871545">"۱ دقیقه قبل"</item>
     <item quantity="other" msgid="851164968597150710">"<xliff:g id="COUNT">%d</xliff:g> دقیقه قبل"</item>
   </plurals>
   <plurals name="abbrev_num_hours_ago">
-    <item quantity="one" msgid="4796212039724722116">"1 ساعت قبل"</item>
+    <item quantity="one" msgid="4796212039724722116">"۱ ساعت قبل"</item>
     <item quantity="other" msgid="6889970745748538901">"<xliff:g id="COUNT">%d</xliff:g> ساعت قبل"</item>
   </plurals>
   <plurals name="abbrev_num_days_ago">
@@ -880,15 +880,15 @@
     <item quantity="other" msgid="3453342639616481191">"<xliff:g id="COUNT">%d</xliff:g> روز قبل"</item>
   </plurals>
   <plurals name="abbrev_in_num_seconds">
-    <item quantity="one" msgid="5842225370795066299">"در 1 ثانیه"</item>
+    <item quantity="one" msgid="5842225370795066299">"در ۱ ثانیه"</item>
     <item quantity="other" msgid="5495880108825805108">"در <xliff:g id="COUNT">%d</xliff:g> ثانیه"</item>
   </plurals>
   <plurals name="abbrev_in_num_minutes">
-    <item quantity="one" msgid="562786149928284878">"در 1 دقیقه"</item>
+    <item quantity="one" msgid="562786149928284878">"در ۱ دقیقه"</item>
     <item quantity="other" msgid="4216113292706568726">"در <xliff:g id="COUNT">%d</xliff:g> دقیقه"</item>
   </plurals>
   <plurals name="abbrev_in_num_hours">
-    <item quantity="one" msgid="3274708118124045246">"در 1 ساعت"</item>
+    <item quantity="one" msgid="3274708118124045246">"در ۱ ساعت"</item>
     <item quantity="other" msgid="3705373766798013406">"در <xliff:g id="COUNT">%d</xliff:g> ساعت"</item>
   </plurals>
   <plurals name="abbrev_in_num_days">
@@ -910,15 +910,15 @@
     <string name="weeks" msgid="6509623834583944518">"هفته"</string>
     <string name="year" msgid="4001118221013892076">"سال"</string>
     <string name="years" msgid="6881577717993213522">"سال"</string>
-    <string name="VideoView_error_title" msgid="3534509135438353077">"مشکل در ویدیو"</string>
-    <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"متأسفیم، این ویدیو برای پخش جریانی با این دستگاه معتبر نیست."</string>
-    <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"پخش این ویدیو ممکن نیست."</string>
+    <string name="VideoView_error_title" msgid="3534509135438353077">"مشکل در ویدئو"</string>
+    <string name="VideoView_error_text_invalid_progressive_playback" msgid="3186670335938670444">"متأسفیم، این ویدئو برای پخش جریانی با این دستگاه معتبر نیست."</string>
+    <string name="VideoView_error_text_unknown" msgid="3450439155187810085">"پخش این ویدئو ممکن نیست."</string>
     <string name="VideoView_error_button" msgid="2822238215100679592">"تأیید"</string>
     <string name="relative_time" msgid="1818557177829411417">"<xliff:g id="DATE">%1$s</xliff:g>، <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="noon" msgid="7245353528818587908">"ظهر"</string>
     <string name="Noon" msgid="3342127745230013127">"ظهر"</string>
-    <string name="midnight" msgid="7166259508850457595">"نیمه شب"</string>
-    <string name="Midnight" msgid="5630806906897892201">"نیمه شب"</string>
+    <string name="midnight" msgid="7166259508850457595">"نیمه‌شب"</string>
+    <string name="Midnight" msgid="5630806906897892201">"نیمه‌شب"</string>
     <string name="elapsed_time_short_format_mm_ss" msgid="4431555943828711473">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
     <string name="elapsed_time_short_format_h_mm_ss" msgid="1846071997616654124">"<xliff:g id="HOURS">%1$d</xliff:g>:<xliff:g id="MINUTES">%2$02d</xliff:g>:<xliff:g id="SECONDS">%3$02d</xliff:g>"</string>
     <string name="selectAll" msgid="6876518925844129331">"انتخاب همه"</string>
@@ -941,12 +941,12 @@
     <string name="yes" msgid="5362982303337969312">"تأیید"</string>
     <string name="no" msgid="5141531044935541497">"لغو"</string>
     <string name="dialog_alert_title" msgid="2049658708609043103">"توجه"</string>
-    <string name="loading" msgid="7933681260296021180">"درحال بارگیری..."</string>
+    <string name="loading" msgid="7933681260296021180">"در حال بارگیری..."</string>
     <string name="capital_on" msgid="1544682755514494298">"روشن"</string>
     <string name="capital_off" msgid="6815870386972805832">"خاموش"</string>
     <string name="whichApplication" msgid="4533185947064773386">"تکمیل عملکرد با استفاده از"</string>
-    <string name="alwaysUse" msgid="4583018368000610438">"استفاده به صورت پیش فرض برای این عملکرد."</string>
-    <string name="clearDefaultHintMsg" msgid="3252584689512077257">"پیش فرض را در تنظیمات سیستم&gt; برنامه‎ها&gt; مورد دانلود شده پاک کنید."</string>
+    <string name="alwaysUse" msgid="4583018368000610438">"استفاده به صورت پیش‌فرض برای این عملکرد."</string>
+    <string name="clearDefaultHintMsg" msgid="3252584689512077257">"پیش‌فرض را در تنظیمات سیستم&gt; برنامه‎ها&gt; مورد دانلود شده پاک کنید."</string>
     <string name="chooseActivity" msgid="7486876147751803333">"انتخاب عملکرد"</string>
     <string name="chooseUsbActivity" msgid="6894748416073583509">"انتخاب برنامه برای دستگاه USB"</string>
     <string name="noApplications" msgid="2991814273936504689">"هیچ برنامه‌ای نمی‎تواند این کار را انجام دهد."</string>
@@ -997,18 +997,18 @@
     <string name="volume_icon_description_incall" msgid="8890073218154543397">"میزان صدای تماس"</string>
     <string name="volume_icon_description_media" msgid="4217311719665194215">"میزان صدای رسانه"</string>
     <string name="volume_icon_description_notification" msgid="7044986546477282274">"میزان صدای اعلان"</string>
-    <string name="ringtone_default" msgid="3789758980357696936">"آهنگ زنگ پیش فرض"</string>
-    <string name="ringtone_default_with_actual" msgid="8129563480895990372">"آهنگ زنگ پیش فرض (<xliff:g id="ACTUAL_RINGTONE">%1$s</xliff:g>)"</string>
+    <string name="ringtone_default" msgid="3789758980357696936">"آهنگ زنگ پیش‌فرض"</string>
+    <string name="ringtone_default_with_actual" msgid="8129563480895990372">"آهنگ زنگ پیش‌فرض (<xliff:g id="ACTUAL_RINGTONE">%1$s</xliff:g>)"</string>
     <string name="ringtone_silent" msgid="4440324407807468713">"ساکت"</string>
-    <string name="ringtone_picker_title" msgid="3515143939175119094">"آهنگ های زنگ"</string>
+    <string name="ringtone_picker_title" msgid="3515143939175119094">"آهنگ‌های زنگ"</string>
     <string name="ringtone_unknown" msgid="5477919988701784788">"آهنگ زنگ ناشناس"</string>
   <plurals name="wifi_available">
     <item quantity="one" msgid="6654123987418168693">"شبکه Wi-Fi موجود است"</item>
-    <item quantity="other" msgid="4192424489168397386">"شبکه های Wi-Fi موجود هستند"</item>
+    <item quantity="other" msgid="4192424489168397386">"شبکه‌های Wi-Fi موجود هستند"</item>
   </plurals>
   <plurals name="wifi_available_detailed">
     <item quantity="one" msgid="1634101450343277345">"شبکه Wi-Fi موجود را باز کنید"</item>
-    <item quantity="other" msgid="7915895323644292768">"شبکه های Wi-Fi موجود را باز کنید"</item>
+    <item quantity="other" msgid="7915895323644292768">"شبکه‌های Wi-Fi موجود را باز کنید"</item>
   </plurals>
     <string name="wifi_available_sign_in" msgid="4029489716605255386">"ورود به شبکه Wi-Fi"</string>
     <!-- no translation found for wifi_available_sign_in_detailed (6797764740339907572) -->
@@ -1043,7 +1043,7 @@
     <string name="date_picker_dialog_title" msgid="5879450659453782278">"تاریخ تنظیم"</string>
     <string name="date_time_set" msgid="5777075614321087758">"تنظیم"</string>
     <string name="date_time_done" msgid="2507683751759308828">"انجام شد"</string>
-    <string name="default_permission_group" msgid="2690160991405646128">"پیش فرض"</string>
+    <string name="default_permission_group" msgid="2690160991405646128">"پیش‌فرض"</string>
     <string name="no_permissions" msgid="7283357728219338112">"مجوزی لازم نیست"</string>
     <string name="perms_hide" msgid="7283915391320676226"><b>"پنهان کردن"</b></string>
     <string name="perms_show_all" msgid="2671791163933091180"><b>"نمایش همه"</b></string>
@@ -1051,22 +1051,22 @@
     <string name="perms_description_app" msgid="5139836143293299417">"ارائه شده توسط <xliff:g id="APP_NAME">%1$s</xliff:g> ."</string>
     <string name="usb_storage_activity_title" msgid="4465055157209648641">"حافظه انبوه USB"</string>
     <string name="usb_storage_title" msgid="5901459041398751495">"USB متصل شد"</string>
-    <string name="usb_storage_message" product="nosdcard" msgid="3308538094316477839">"شما از طریق USB به رایانه خود متصل شده‎اید. اگر می‎خواهید فایل‎ها را بین رایانه خود و حافظه USB در Android کپی کنید، دکمه زیر را لمس کنید."</string>
+    <string name="usb_storage_message" product="nosdcard" msgid="3308538094316477839">"شما از طریق USB به رایانه خود متصل شده‎اید. اگر می‎خواهید فایل‎ها را بین رایانه خود و حافظهٔ USB در Android کپی کنید، دکمه زیر را لمس کنید."</string>
     <string name="usb_storage_message" product="default" msgid="805351000446037811">"شما از طریق USB به رایانه خود متصل شده‎اید. اگر می‎خواهید فایل‎ها را بین رایانه خود و کارت SD در Android کپی کنید، دکمه زیر را لمس کنید."</string>
-    <string name="usb_storage_button_mount" msgid="1052259930369508235">"روشن کردن دستگاه ذخیره سازی USB"</string>
-    <string name="usb_storage_error_message" product="nosdcard" msgid="3017045217365540658">"هنگام استفاده از حافظه USB برای حافظه انبوه USB مشکلی بوجود آمد."</string>
+    <string name="usb_storage_button_mount" msgid="1052259930369508235">"روشن کردن دستگاه ذخیره‌سازی USB"</string>
+    <string name="usb_storage_error_message" product="nosdcard" msgid="3017045217365540658">"هنگام استفاده از حافظهٔ USB برای حافظه انبوه USB مشکلی بوجود آمد."</string>
     <string name="usb_storage_error_message" product="default" msgid="2876018512716970313">"هنگام استفاده از کارت SD برای حافظه ذخیره انبوه USB مشکلی بوجود آمد."</string>
     <string name="usb_storage_notification_title" msgid="8175892554757216525">"USB متصل شد"</string>
-    <string name="usb_storage_notification_message" msgid="939822783828183763">"برای کپی کردن فایلها از/به رایانه خود لمس کنید."</string>
-    <string name="usb_storage_stop_notification_title" msgid="2336058396663516017">"خاموش کردن دستگاه ذخیره سازی USB"</string>
-    <string name="usb_storage_stop_notification_message" msgid="1656852098555623822">"برای غیرفعال کردن حافظه USB، لمس کنید."</string>
-    <string name="usb_storage_stop_title" msgid="660129851708775853">"دستگاه ذخیره سازی USB در حال استفاده است"</string>
-    <string name="usb_storage_stop_message" product="nosdcard" msgid="4264025280777219521">"قبل از غیرفعال کردن حافظه USB، حافظه USB مربوط به Android را در رایانه خود لغو نصب کنید (\"خارج کنید\")."</string>
-    <string name="usb_storage_stop_message" product="default" msgid="8043969782460613114">"قبل از غیرفعال کردن حافظه USB، کارت SD مربوط به Android را در رایانه لغو نصب کنید (\"خارج کنید\")."</string>
-    <string name="usb_storage_stop_button_mount" msgid="7060218034900696029">"خاموش کردن دستگاه ذخیره سازی USB"</string>
-    <string name="usb_storage_stop_error_message" msgid="1970374898263063836">"هنگام غیرفعال کردن حافظه USB مشکلی بوجود آمد. بررسی کنید میزبان USB را لغو نصب کرده باشید، سپس دوباره امتحان کنید."</string>
-    <string name="dlg_confirm_kill_storage_users_title" msgid="963039033470478697">"روشن کردن دستگاه ذخیره سازی USB"</string>
-    <string name="dlg_confirm_kill_storage_users_text" msgid="5100428757107469454">"در صورت فعال کردن حافظه USB، برخی از برنامه‎هایی که از آنها استفاده می‎کنید متوقف می‎شوند و تا زمانی که حافظه USB را غیرفعال نکنید امکان استفاده از آنها وجود نخواهد داشت."</string>
+    <string name="usb_storage_notification_message" msgid="939822783828183763">"برای کپی کردن فایل‌ها از/به رایانه خود لمس کنید."</string>
+    <string name="usb_storage_stop_notification_title" msgid="2336058396663516017">"خاموش کردن دستگاه ذخیره‌سازی USB"</string>
+    <string name="usb_storage_stop_notification_message" msgid="1656852098555623822">"برای غیرفعال کردن حافظهٔ USB، لمس کنید."</string>
+    <string name="usb_storage_stop_title" msgid="660129851708775853">"دستگاه ذخیره‌سازی USB در حال استفاده است"</string>
+    <string name="usb_storage_stop_message" product="nosdcard" msgid="4264025280777219521">"قبل از غیرفعال کردن حافظهٔ USB، حافظهٔ USB مربوط به Android را در رایانه خود لغو نصب کنید (\"خارج کنید\")."</string>
+    <string name="usb_storage_stop_message" product="default" msgid="8043969782460613114">"قبل از غیرفعال کردن حافظهٔ USB، کارت SD مربوط به Android را در رایانه لغو نصب کنید (\"خارج کنید\")."</string>
+    <string name="usb_storage_stop_button_mount" msgid="7060218034900696029">"خاموش کردن دستگاه ذخیره‌سازی USB"</string>
+    <string name="usb_storage_stop_error_message" msgid="1970374898263063836">"هنگام غیرفعال کردن حافظهٔ USB مشکلی بوجود آمد. بررسی کنید میزبان USB را لغو نصب کرده باشید، سپس دوباره امتحان کنید."</string>
+    <string name="dlg_confirm_kill_storage_users_title" msgid="963039033470478697">"روشن کردن دستگاه ذخیره‌سازی USB"</string>
+    <string name="dlg_confirm_kill_storage_users_text" msgid="5100428757107469454">"در صورت فعال کردن حافظهٔ USB، برخی از برنامه‎هایی که از آن‌ها استفاده می‎کنید متوقف می‎شوند و تا زمانی که حافظهٔ USB را غیرفعال نکنید امکان استفاده از آن‌ها وجود نخواهد داشت."</string>
     <string name="dlg_error_title" msgid="7323658469626514207">"راه‌اندازی USB ناموفق بود."</string>
     <string name="dlg_ok" msgid="7376953167039865701">"تأیید"</string>
     <string name="usb_mtp_notification_title" msgid="3699913097391550394">"متصل شده به عنوان دستگاه رسانه ای"</string>
@@ -1074,9 +1074,9 @@
     <string name="usb_cd_installer_notification_title" msgid="6774712827892090754">"متصل شده به عنوان نصب کننده"</string>
     <string name="usb_accessory_notification_title" msgid="7848236974087653666">"به یک وسیله جانبی USB وصل شده است"</string>
     <string name="usb_notification_message" msgid="2290859399983720271">"برای سایر گزینه‌های USB لمس کنید."</string>
-    <string name="extmedia_format_title" product="nosdcard" msgid="9020092196061007262">"حافظه USB فرمت شود؟"</string>
+    <string name="extmedia_format_title" product="nosdcard" msgid="9020092196061007262">"حافظهٔ USB فرمت شود؟"</string>
     <string name="extmedia_format_title" product="default" msgid="3648415921526526069">"کارت SD فرمت شود؟"</string>
-    <string name="extmedia_format_message" product="nosdcard" msgid="3934016853425761078">"همه فایلهای ذخیره شده در حافظه USB پاک خواهد شد. این عمل را نمی‎توان برگرداند!"</string>
+    <string name="extmedia_format_message" product="nosdcard" msgid="3934016853425761078">"همه فایل‌های ذخیره شده در حافظهٔ USB پاک خواهد شد. این عمل را نمی‎توان برگرداند!"</string>
     <string name="extmedia_format_message" product="default" msgid="14131895027543830">"تمام اطلاعات روی کارت شما از بین می‎رود."</string>
     <string name="extmedia_format_button_format" msgid="4131064560127478695">"قالب"</string>
     <string name="adb_active_notification_title" msgid="6729044778949189918">"اتصال رفع عیب USB"</string>
@@ -1090,34 +1090,34 @@
     <string name="fast_scroll_alphabet" msgid="5433275485499039199">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
     <string name="fast_scroll_numeric_alphabet" msgid="4030170524595123610">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
     <string name="candidates_style" msgid="4333913089637062257"><u>"داوطلبین"</u></string>
-    <string name="ext_media_checking_notification_title" product="nosdcard" msgid="3449816005351468560">"آماده سازی حافظه USB"</string>
+    <string name="ext_media_checking_notification_title" product="nosdcard" msgid="3449816005351468560">"آماده سازی حافظهٔ USB"</string>
     <string name="ext_media_checking_notification_title" product="default" msgid="5457603418970994050">"آماده کردن کارت SD"</string>
     <string name="ext_media_checking_notification_message" msgid="8287319882926737053">"بررسی خطاها."</string>
-    <string name="ext_media_nofs_notification_title" product="nosdcard" msgid="7788040745686229307">"حافظه USB خالی"</string>
+    <string name="ext_media_nofs_notification_title" product="nosdcard" msgid="7788040745686229307">"حافظهٔ USB خالی"</string>
     <string name="ext_media_nofs_notification_title" product="default" msgid="780477838241212997">"کارت SD خالی"</string>
-    <string name="ext_media_nofs_notification_message" product="nosdcard" msgid="7840121067427269500">"حافظه USB خالی است یا دارای سیستم فایل پشتیبانی نشده است."</string>
+    <string name="ext_media_nofs_notification_message" product="nosdcard" msgid="7840121067427269500">"حافظهٔ USB خالی است یا دارای سیستم فایل پشتیبانی نشده است."</string>
     <string name="ext_media_nofs_notification_message" product="default" msgid="8641065641786923604">"کارت SD خالی است یا دارای سیستم فایل پشتیبانی نشده است."</string>
-    <string name="ext_media_unmountable_notification_title" product="nosdcard" msgid="2090046769532713563">"حافظه USB خراب شده"</string>
+    <string name="ext_media_unmountable_notification_title" product="nosdcard" msgid="2090046769532713563">"حافظهٔ USB خراب شده"</string>
     <string name="ext_media_unmountable_notification_title" product="default" msgid="6410723906019100189">"کارت SD آسیب دیده"</string>
-    <string name="ext_media_unmountable_notification_message" product="nosdcard" msgid="1795917578395333280">"حافظه USB خراب است. سعی کنید آنرا دوباره فرمت کنید."</string>
+    <string name="ext_media_unmountable_notification_message" product="nosdcard" msgid="1795917578395333280">"حافظهٔ USB خراب است. سعی کنید آنرا دوباره فرمت کنید."</string>
     <string name="ext_media_unmountable_notification_message" product="default" msgid="1753898567525568253">"کارت SD خراب است. سعی کنید آنرا دوباره فرمت کنید."</string>
-    <string name="ext_media_badremoval_notification_title" product="nosdcard" msgid="1661683031330951073">"حافظه USB به صورت غیر منتظره جدا شد"</string>
+    <string name="ext_media_badremoval_notification_title" product="nosdcard" msgid="1661683031330951073">"حافظهٔ USB به صورت غیر منتظره جدا شد"</string>
     <string name="ext_media_badremoval_notification_title" product="default" msgid="6872152882604407837">"کارت SD به صورت غیر منتظره ای جدا شد"</string>
-    <string name="ext_media_badremoval_notification_message" product="nosdcard" msgid="4329848819865594241">"اتصال حافظه USB را قبل از بیرون آوردن قطع کنید تا سبب از بین رفتن داده ها نشود."</string>
-    <string name="ext_media_badremoval_notification_message" product="default" msgid="7260183293747448241">"کارت SD را قبل از بیرون آوردن جدا کنید تا سبب از بین رفتن داده ها نشود."</string>
-    <string name="ext_media_safe_unmount_notification_title" product="nosdcard" msgid="3967973893270360230">"حافظه USB را می توانید با ایمنی جدا کنید"</string>
-    <string name="ext_media_safe_unmount_notification_title" product="default" msgid="6729801130790616200">"کارت SD را می توان با امنیت کامل جدا کرد"</string>
-    <string name="ext_media_safe_unmount_notification_message" product="nosdcard" msgid="6142195361606493530">"شما می توانید حافظه USB را با اطمینان جدا کنید."</string>
-    <string name="ext_media_safe_unmount_notification_message" product="default" msgid="568841278138377604">"کارت SD را می توانید با امنیت کامل خارج کنید."</string>
-    <string name="ext_media_nomedia_notification_title" product="nosdcard" msgid="4486377230140227651">"جدا کردن حافظه USB"</string>
+    <string name="ext_media_badremoval_notification_message" product="nosdcard" msgid="4329848819865594241">"اتصال حافظهٔ USB را قبل از بیرون آوردن قطع کنید تا سبب از بین رفتن داده‌ها نشود."</string>
+    <string name="ext_media_badremoval_notification_message" product="default" msgid="7260183293747448241">"کارت SD را قبل از بیرون آوردن جدا کنید تا سبب از بین رفتن داده‌ها نشود."</string>
+    <string name="ext_media_safe_unmount_notification_title" product="nosdcard" msgid="3967973893270360230">"حافظهٔ USB را می‌توانید با ایمنی جدا کنید"</string>
+    <string name="ext_media_safe_unmount_notification_title" product="default" msgid="6729801130790616200">"کارت SD را می‌توان با امنیت کامل جدا کرد"</string>
+    <string name="ext_media_safe_unmount_notification_message" product="nosdcard" msgid="6142195361606493530">"شما می‌توانید حافظهٔ USB را با اطمینان جدا کنید."</string>
+    <string name="ext_media_safe_unmount_notification_message" product="default" msgid="568841278138377604">"کارت SD را می‌توانید با امنیت کامل خارج کنید."</string>
+    <string name="ext_media_nomedia_notification_title" product="nosdcard" msgid="4486377230140227651">"جدا کردن حافظهٔ USB"</string>
     <string name="ext_media_nomedia_notification_title" product="default" msgid="8902518030404381318">"کارت SD حذف شده"</string>
-    <string name="ext_media_nomedia_notification_message" product="nosdcard" msgid="6921126162580574143">"حافظه USB جدا شد. یک رسانه جدید متصل کنید."</string>
+    <string name="ext_media_nomedia_notification_message" product="nosdcard" msgid="6921126162580574143">"حافظهٔ USB جدا شد. یک رسانه جدید متصل کنید."</string>
     <string name="ext_media_nomedia_notification_message" product="default" msgid="3870120652983659641">"کارت SD جدا شد. یک کارت جدید وارد کنید."</string>
     <string name="activity_list_empty" msgid="1675388330786841066">"فعالیتی مطابق با این مورد یافت نشد."</string>
-    <string name="permlab_pkgUsageStats" msgid="8787352074326748892">"به روزرسانی آمار مربوط به استفاده مؤلفه"</string>
+    <string name="permlab_pkgUsageStats" msgid="8787352074326748892">"به‌روزرسانی آمار مربوط به استفاده مؤلفه"</string>
     <string name="permdesc_pkgUsageStats" msgid="1106612424254277630">"به برنامه اجازه می‎دهد آمار جمع‎آوری شده کاربرد قطعه را تغییر دهد. برای استفاده برنامه‎های عادی نیست."</string>
     <string name="permlab_copyProtectedData" msgid="4341036311211406692">"کپی کردن محتوا"</string>
-    <string name="permdesc_copyProtectedData" msgid="4390697124288317831">"به برنامه اجازه می‎دهد تا سرویس پیش فرض را فراخوانی کند و محتوا را کپی کند. برای استفاده برنامه‎های عادی مورد نیاز نیست."</string>
+    <string name="permdesc_copyProtectedData" msgid="4390697124288317831">"به برنامه اجازه می‎دهد تا سرویس پیش‌فرض را فراخوانی کند و محتوا را کپی کند. برای استفاده برنامه‎های عادی مورد نیاز نیست."</string>
     <string name="permlab_route_media_output" msgid="1642024455750414694">"تعیین مسیر خروجی رسانه"</string>
     <string name="permdesc_route_media_output" msgid="4932818749547244346">"به یک برنامه اجازه می‌دهد خروجی رسانه را به دستگاه‌های خارجی دیگر تعیین مسیر کند."</string>
     <string name="tutorial_double_tap_to_zoom_message_short" msgid="4070433208160063538">"دوبار لمس کنید تا بزرگنمایی کنترل شود"</string>
@@ -1132,7 +1132,7 @@
     <string name="dial_number_using" msgid="5789176425167573586">"شماره گیری "\n"با استفاده از <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="create_contact_using" msgid="4947405226788104538">"ایجاد مخاطب"\n"با استفاده از <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="grant_credentials_permission_message_header" msgid="2106103817937859662">"یک یا چند برنامه زیر برای دسترسی به حساب شما در زمان حال و آینده درخواست مجوز کرده‌اند."</string>
-    <string name="grant_credentials_permission_message_footer" msgid="3125211343379376561">"می خواهید به این درخواست اجازه دهید؟"</string>
+    <string name="grant_credentials_permission_message_footer" msgid="3125211343379376561">"می‌خواهید به این درخواست اجازه دهید؟"</string>
     <string name="grant_permissions_header_text" msgid="6874497408201826708">"درخواست دسترسی"</string>
     <string name="allow" msgid="7225948811296386551">"مجاز"</string>
     <string name="deny" msgid="2081879885755434506">"رد کردن"</string>
@@ -1158,9 +1158,9 @@
     <string name="back_button_label" msgid="2300470004503343439">"برگشت"</string>
     <string name="next_button_label" msgid="1080555104677992408">"بعدی"</string>
     <string name="skip_button_label" msgid="1275362299471631819">"پرش"</string>
-    <string name="throttle_warning_notification_title" msgid="4890894267454867276">"استفاده زیاد از داده های تلفن همراه"</string>
+    <string name="throttle_warning_notification_title" msgid="4890894267454867276">"استفاده زیاد از داده‌های تلفن همراه"</string>
     <string name="throttle_warning_notification_message" msgid="3340822228599337743">"برای کسب اطلاعات بیشتر درباره استفاده از داده‌های تلفن همراه، لمس کنید."</string>
-    <string name="throttled_notification_title" msgid="6269541897729781332">"داده های تلفن همراه از مقدار مجاز بیشتر است"</string>
+    <string name="throttled_notification_title" msgid="6269541897729781332">"داده‌های تلفن همراه از مقدار مجاز بیشتر است"</string>
     <string name="throttled_notification_message" msgid="5443457321354907181">"برای کسب اطلاعات بیشتر درباره استفاده از داده‌های تلفن همراه، لمس کنید."</string>
     <string name="no_matches" msgid="8129421908915840737">"مورد منطبقی موجود نیست"</string>
     <string name="find_on_page" msgid="1946799233822820384">"یافتن در صفحه"</string>
@@ -1169,20 +1169,20 @@
     <item quantity="other" msgid="4641872797067609177">"<xliff:g id="INDEX">%d</xliff:g> از <xliff:g id="TOTAL">%d</xliff:g>"</item>
   </plurals>
     <string name="action_mode_done" msgid="7217581640461922289">"انجام شد"</string>
-    <string name="progress_unmounting" product="nosdcard" msgid="3923810448507612746">"درحال لغو نصب حافظه USB..."</string>
-    <string name="progress_unmounting" product="default" msgid="1327894998409537190">"درحال لغو نصب کارت SD..."</string>
-    <string name="progress_erasing" product="nosdcard" msgid="4521573321524340058">"در حال پاک کردن حافظه USB..."</string>
+    <string name="progress_unmounting" product="nosdcard" msgid="3923810448507612746">"در حال لغو نصب حافظهٔ USB..."</string>
+    <string name="progress_unmounting" product="default" msgid="1327894998409537190">"در حال لغو نصب کارت SD..."</string>
+    <string name="progress_erasing" product="nosdcard" msgid="4521573321524340058">"در حال پاک کردن حافظهٔ USB..."</string>
     <string name="progress_erasing" product="default" msgid="6596988875507043042">"در حال پاک کردن کارت SD..."</string>
     <string name="format_error" product="nosdcard" msgid="6299769563624776948">"پاک کردن محل ذخیره  USB ممکن نیست."</string>
     <string name="format_error" product="default" msgid="7315248696644510935">"پاک کردن کارت SD ممکن نیست."</string>
     <string name="media_bad_removal" msgid="7960864061016603281">"کارت SD قبل از قطع اتصال از دستگاه خارج شد."</string>
-    <string name="media_checking" product="nosdcard" msgid="418188720009569693">"حافظه USB اکنون در حال بررسی شدن است."</string>
+    <string name="media_checking" product="nosdcard" msgid="418188720009569693">"حافظهٔ USB اکنون در حال بررسی شدن است."</string>
     <string name="media_checking" product="default" msgid="7334762503904827481">"کارت SD در حال حاضر در حال بررسی است."</string>
     <string name="media_removed" msgid="7001526905057952097">"کارت SD حذف شده است."</string>
-    <string name="media_shared" product="nosdcard" msgid="5830814349250834225">"حافظه در حال حاضر توسط رایانه دیگری استفاده می شود."</string>
+    <string name="media_shared" product="nosdcard" msgid="5830814349250834225">"حافظه در حال حاضر توسط رایانه دیگری استفاده می‌شود."</string>
     <string name="media_shared" product="default" msgid="5706130568133540435">"کارت SD در حال حاضر توسط یک رایانه در حال استفاده است."</string>
     <string name="media_unknown_state" msgid="729192782197290385">"رسانه خارجی در حالت ناشناس است."</string>
-    <string name="share" msgid="1778686618230011964">"اشتراک گذاری"</string>
+    <string name="share" msgid="1778686618230011964">"اشتراک‌گذاری"</string>
     <string name="find" msgid="4808270900322985960">"یافتن"</string>
     <string name="websearch" msgid="4337157977400211589">"جستجوی وب"</string>
     <string name="gpsNotifTicker" msgid="5622683912616496172">"درخواست موقعیت مکانی از <xliff:g id="NAME">%s</xliff:g>"</string>
@@ -1237,18 +1237,18 @@
     <string name="description_target_unlock_tablet" msgid="3833195335629795055">"برای بازگشایی قفل، بلغزانید."</string>
     <string name="keyboard_headset_required_to_hear_password" msgid="7011927352267668657">"برای شنیدن کلیدهای گذرواژه که با صدای بلند خوانده می‌شوند، هدست را وصل کنید."</string>
     <string name="keyboard_password_character_no_headset" msgid="2859873770886153678">"نقطه."</string>
-    <string name="action_bar_home_description" msgid="5293600496601490216">"رفتن به صفحه اصلی"</string>
+    <string name="action_bar_home_description" msgid="5293600496601490216">"رفتن به صفحهٔ اصلی"</string>
     <string name="action_bar_up_description" msgid="2237496562952152589">"حرکت به بالا"</string>
-    <string name="action_menu_overflow_description" msgid="2295659037509008453">"سایر گزینه ها"</string>
-    <string name="storage_internal" msgid="4891916833657929263">"حافظه داخلی"</string>
+    <string name="action_menu_overflow_description" msgid="2295659037509008453">"سایر گزینه‌ها"</string>
+    <string name="storage_internal" msgid="4891916833657929263">"حافظهٔ داخلی"</string>
     <string name="storage_sd_card" msgid="3282948861378286745">"کارت SD"</string>
-    <string name="storage_usb" msgid="3017954059538517278">"حافظه USB"</string>
+    <string name="storage_usb" msgid="3017954059538517278">"حافظهٔ USB"</string>
     <string name="extract_edit_menu_button" msgid="8940478730496610137">"ویرایش"</string>
     <string name="data_usage_warning_title" msgid="1955638862122232342">"هشدار میزان استفاده از داده"</string>
     <string name="data_usage_warning_body" msgid="2814673551471969954">"برای مشاهده کاربرد و تنظیمات لمس کنید."</string>
-    <string name="data_usage_3g_limit_title" msgid="7093334419518706686">"داده های 2G-3G غیرفعال شد"</string>
+    <string name="data_usage_3g_limit_title" msgid="7093334419518706686">"داده‌های 2G-3G غیرفعال شد"</string>
     <string name="data_usage_4g_limit_title" msgid="7636489436819470761">"داده 4G غیر فعال شده است"</string>
-    <string name="data_usage_mobile_limit_title" msgid="7869402519391631884">"داده های تلفن همراه غیرفعال شد"</string>
+    <string name="data_usage_mobile_limit_title" msgid="7869402519391631884">"داده‌های تلفن همراه غیرفعال شد"</string>
     <string name="data_usage_wifi_limit_title" msgid="8992154736441284865">"داده‌های Wi-Fi غیرفعال شد"</string>
     <string name="data_usage_limit_body" msgid="3317964706973601386">"برای فعال کردن لمس کنید."</string>
     <string name="data_usage_3g_limit_snoozed_title" msgid="7026739121138005231">"اطلاعات 2G-3G بیش از حد مجاز است"</string>
@@ -1268,7 +1268,7 @@
     <string name="validity_period" msgid="8818886137545983110">"اعتبار:"</string>
     <string name="issued_on" msgid="5895017404361397232">"صادر شده در:"</string>
     <string name="expires_on" msgid="3676242949915959821">"تاریخ انقضا:"</string>
-    <string name="serial_number" msgid="758814067660862493">"شماره سریال:"</string>
+    <string name="serial_number" msgid="758814067660862493">"شمارهٔ سریال:"</string>
     <string name="fingerprints" msgid="4516019619850763049">"اثر انگشت:"</string>
     <string name="sha256_fingerprint" msgid="4391271286477279263">"اثر انگشت SHA-256:"</string>
     <string name="sha1_fingerprint" msgid="7930330235269404581">"اثر انگشت SHA-1"</string>
@@ -1277,11 +1277,11 @@
     <string name="share_action_provider_share_with" msgid="5247684435979149216">"اشتراک‌گذاری با"</string>
     <string name="status_bar_device_locked" msgid="3092703448690669768">"دستگاه قفل است."</string>
     <string name="list_delimeter" msgid="3975117572185494152">"، "</string>
-    <string name="sending" msgid="3245653681008218030">"درحال ارسال..."</string>
+    <string name="sending" msgid="3245653681008218030">"در حال ارسال..."</string>
     <string name="launchBrowserDefault" msgid="2057951947297614725">"مرورگر راه‌اندازی شود؟"</string>
     <string name="SetupCallDefault" msgid="5834948469253758575">"تماس را می‌پذیرید؟"</string>
     <string name="activity_resolver_use_always" msgid="8017770747801494933">"همیشه"</string>
-    <string name="activity_resolver_use_once" msgid="2404644797149173758">"فقط یک بار"</string>
+    <string name="activity_resolver_use_once" msgid="2404644797149173758">"فقط این بار"</string>
     <string name="default_audio_route_name" product="tablet" msgid="4617053898167127471">"رایانه لوحی"</string>
     <string name="default_audio_route_name" product="default" msgid="4239291273420140123">"تلفن"</string>
     <string name="default_audio_route_name_headphones" msgid="8119971843803439110">"هدفون‌ها"</string>
diff --git a/core/res/res/values-in/strings.xml b/core/res/res/values-in/strings.xml
index cd2a80f..a760e41 100644
--- a/core/res/res/values-in/strings.xml
+++ b/core/res/res/values-in/strings.xml
@@ -324,7 +324,7 @@
     <string name="permlab_anyCodecForPlayback" msgid="715805555823881818">"menggunakan media pengawasandi apa pun untuk pemutaran"</string>
     <string name="permdesc_anyCodecForPlayback" msgid="8283912488433189010">"Mengizinkan apl menggunakan pengawasandi media apa pun yang terpasang guna mengawasandikan media untuk diputar."</string>
     <string name="permlab_diagnostic" msgid="8076743953908000342">"baca/tulis ke sumber daya yang dimiliki oleh diag"</string>
-    <string name="permdesc_diagnostic" msgid="6608295692002452283">"Mengizinkan apl membaca dan menulis ke sumber daya apa pun yang dimiliki oleh grup diag; misalnya, file dalam /dev. Izin ini berpotensi memengaruhi kestabilan dan keamanan sistem. Sebaiknya ini HANYA digunakan untuk diagnostik khusus perangkat keras oleh pabrikan atau operator."</string>
+    <string name="permdesc_diagnostic" msgid="6608295692002452283">"Mengizinkan apl membaca dan menulis ke sumber daya apa pun yang dimiliki oleh grup diag; misalnya, file dalam /dev. Izin ini berpotensi memengaruhi kestabilan dan keamanan sistem. Sebaiknya ini HANYA digunakan untuk diagnosis khusus perangkat keras oleh pabrikan atau operator."</string>
     <string name="permlab_changeComponentState" msgid="6335576775711095931">"mengaktifkan atau menonaktifkan komponen apl"</string>
     <string name="permdesc_changeComponentState" product="tablet" msgid="8887435740982237294">"Mengizinkan apl mengubah apakah komponen apl lain diaktifkan atau tidak. Apl berbahaya dapat menggunakan ini untuk menonaktifkan kemampuan tablet yang penting. Izin ini harus digunakan dengan hati-hati karena dapat menjadikan komponen apl tidak dapat digunakan, tidak konsisten, atau tidak stabil."</string>
     <string name="permdesc_changeComponentState" product="default" msgid="1827232484416505615">"Mengizinkan apl mengubah apakah komponen apl lain diaktifkan atau tidak. Apl berbahaya dapat menggunakan izin ini untuk menonaktifkan kemampuan ponsel yang penting. Izin ini harus digunakan dengan hati-hati, karena mungkin saja menjadikan komponen apl tidak dapat digunakan, tidak konsisten, atau tidak stabil."</string>
@@ -434,8 +434,8 @@
     <string name="permdesc_performCdmaProvisioning" msgid="1994193538802314186">"Mengizinkan apl memulai penyediaan CDMA. Apl berbahaya dapat memulai penyediaan CDMA yang tidak perlu."</string>
     <string name="permlab_locationUpdates" msgid="7785408253364335740">"mengontrol pemberitahuan pembaruan lokasi"</string>
     <string name="permdesc_locationUpdates" msgid="1120741557891438876">"Mengizinkan apl mengaktifkan/menonaktifkan pemberitahuan pembaruan lokasi dari radio. Tidak untuk digunakan oleh apl normal."</string>
-    <string name="permlab_checkinProperties" msgid="7855259461268734914">"akses properti lapor masuk"</string>
-    <string name="permdesc_checkinProperties" msgid="4024526968630194128">"Mengizinkan apl membaca/menulis akses ke properti yang diunggah oleh layanan lapor masuk. Tidak untuk digunakan oleh apl normal."</string>
+    <string name="permlab_checkinProperties" msgid="7855259461268734914">"akses properti check in"</string>
+    <string name="permdesc_checkinProperties" msgid="4024526968630194128">"Mengizinkan apl membaca/menulis akses ke properti yang diunggah oleh layanan check in. Tidak untuk digunakan oleh apl normal."</string>
     <string name="permlab_bindGadget" msgid="776905339015863471">"pilih widget"</string>
     <string name="permdesc_bindGadget" msgid="8261326938599049290">"Mengizinkan apl memberi tahu sistem tentang widget mana yang dapat digunakan oleh suatu apl. Apl dengan izin ini dapat memberikan akses ke data pribadi untuk apl lain. Tidak untuk digunakan oleh apl normal."</string>
     <string name="permlab_modifyPhoneState" msgid="8423923777659292228">"ubah kondisi ponsel"</string>
diff --git a/core/res/res/values-mcc208-mnc01/config.xml b/core/res/res/values-mcc208-mnc01/config.xml
new file mode 100755
index 0000000..c1489b1
--- /dev/null
+++ b/core/res/res/values-mcc208-mnc01/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Orange Internet,orange.fr,,,,,,orange,orange,,208,01,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc214-mnc03/config.xml b/core/res/res/values-mcc214-mnc03/config.xml
new file mode 100755
index 0000000..02f1475
--- /dev/null
+++ b/core/res/res/values-mcc214-mnc03/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Orange Internet PC,internet,,,,,,orange,orange,,214,03,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc214-mnc07/config.xml b/core/res/res/values-mcc214-mnc07/config.xml
new file mode 100755
index 0000000..4e3fa16
--- /dev/null
+++ b/core/res/res/values-mcc214-mnc07/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Conexión compartida,movistar.es,,,,,,MOVISTAR,MOVISTAR,,214,07,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc222-mnc01/config.xml b/core/res/res/values-mcc222-mnc01/config.xml
new file mode 100755
index 0000000..6bb1196
--- /dev/null
+++ b/core/res/res/values-mcc222-mnc01/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">TIM WEB,ibox.tim.it,,,,,,,,,222,01,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc222-mnc10/config.xml b/core/res/res/values-mcc222-mnc10/config.xml
new file mode 100755
index 0000000..24dd71c
--- /dev/null
+++ b/core/res/res/values-mcc222-mnc10/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Tethering Internet,web.omnitel.it,,,,,,,,,222,10,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc234-mnc33/config.xml b/core/res/res/values-mcc234-mnc33/config.xml
new file mode 100755
index 0000000..d79d212
--- /dev/null
+++ b/core/res/res/values-mcc234-mnc33/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Consumer Broadband,consumerbroadband,,,,,,,,,234,33,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc302-mnc370/config.xml b/core/res/res/values-mcc302-mnc370/config.xml
new file mode 100755
index 0000000..b1d363f
--- /dev/null
+++ b/core/res/res/values-mcc302-mnc370/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Fido Tethering,isp.fido.apn,,,,,,,,,302,370,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc302-mnc660/config.xml b/core/res/res/values-mcc302-mnc660/config.xml
new file mode 100755
index 0000000..37853cf
--- /dev/null
+++ b/core/res/res/values-mcc302-mnc660/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">MTS -Tethering,internet.mts,,,,,,,,,302,660,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc302-mnc720/config.xml b/core/res/res/values-mcc302-mnc720/config.xml
new file mode 100755
index 0000000..40ef939
--- /dev/null
+++ b/core/res/res/values-mcc302-mnc720/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Rogers Tethering,isp.apn,,,,,,,,,302,720,,DUN</string>
+</resources>
diff --git a/core/res/res/values-mcc340-mnc01/config.xml b/core/res/res/values-mcc340-mnc01/config.xml
new file mode 100755
index 0000000..fb71f3b
--- /dev/null
+++ b/core/res/res/values-mcc340-mnc01/config.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds.  Do not translate. -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
+    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
+    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
+    <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>1</item>
+        <item>4</item>
+        <item>7</item>
+        <item>9</item>
+    </integer-array>
+
+    <!-- String containing the apn value for tethering.  May be overriden by secure settings
+         TETHER_DUN_APN.  Value is a comma separated series of strings:
+         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
+         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
+    <string translatable="false" name="config_tether_apndata">Orangeweb,orangeweb,,,,,,orange,orange,,340,01,1,DUN</string>
+</resources>
diff --git a/core/res/res/values-nb/strings.xml b/core/res/res/values-nb/strings.xml
index 4e560b8..b94f399 100644
--- a/core/res/res/values-nb/strings.xml
+++ b/core/res/res/values-nb/strings.xml
@@ -144,7 +144,7 @@
     <string name="silent_mode_ring" msgid="8592241816194074353">"Ringelyd på"</string>
     <string name="shutdown_progress" msgid="2281079257329981203">"Avslutter…"</string>
     <string name="shutdown_confirm" product="tablet" msgid="3385745179555731470">"Nettbrettet slås av."</string>
-    <string name="shutdown_confirm" product="default" msgid="649792175242821353">"Telefonen vil bli slått av."</string>
+    <string name="shutdown_confirm" product="default" msgid="649792175242821353">"Telefonen kommer til å slås av."</string>
     <string name="shutdown_confirm_question" msgid="2906544768881136183">"Vil du slå av?"</string>
     <string name="reboot_safemode_title" msgid="7054509914500140361">"Start på nytt i sikker modus"</string>
     <string name="reboot_safemode_confirm" msgid="55293944502784668">"Ønsker du å starte på nytt i sikker modus? Dette deaktiverer alle tredjepartsprogrammene du har installert. De gjenopprettes når du starter på nytt."</string>
@@ -474,7 +474,7 @@
     <string name="permdesc_authenticateAccounts" msgid="5472124296908977260">"Lar appen bruke kontoadministratoren sine rettigheter til kontoautentisering, herunder oppretting av kontoer samt innhenting og angivelse av passord."</string>
     <string name="permlab_manageAccounts" msgid="4983126304757177305">"legger til eller fjerner kontoer"</string>
     <string name="permdesc_manageAccounts" msgid="8698295625488292506">"Lar appen utføre handlinger som å legge til og fjerne kontoer samt slette passord."</string>
-    <string name="permlab_useCredentials" msgid="235481396163877642">"bruker kontoer på enheten"</string>
+    <string name="permlab_useCredentials" msgid="235481396163877642">"bruke kontoer på enheten"</string>
     <string name="permdesc_useCredentials" msgid="7984227147403346422">"Lar appen be om autentiseringstokener."</string>
     <string name="permlab_accessNetworkState" msgid="4951027964348974773">"ser nettverkstilkoblinger"</string>
     <string name="permdesc_accessNetworkState" msgid="8318964424675960975">"Lar appen se informasjon om nettverkstilkoblinger, slik som hvilke nettverk som finnes og er tilkoblet."</string>
diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml
index a10696a..165f1ed 100644
--- a/core/res/res/values-sk/strings.xml
+++ b/core/res/res/values-sk/strings.xml
@@ -942,8 +942,8 @@
     <string name="no" msgid="5141531044935541497">"Zrušiť"</string>
     <string name="dialog_alert_title" msgid="2049658708609043103">"Pozor"</string>
     <string name="loading" msgid="7933681260296021180">"Prebieha načítavanie..."</string>
-    <string name="capital_on" msgid="1544682755514494298">"ZAPNUTÉ"</string>
-    <string name="capital_off" msgid="6815870386972805832">"VYPNUTÉ"</string>
+    <string name="capital_on" msgid="1544682755514494298">"I"</string>
+    <string name="capital_off" msgid="6815870386972805832">"O"</string>
     <string name="whichApplication" msgid="4533185947064773386">"Dokončiť akciu pomocou aplikácie"</string>
     <string name="alwaysUse" msgid="4583018368000610438">"Použiť ako predvolené nastavenie pre túto akciu."</string>
     <string name="clearDefaultHintMsg" msgid="3252584689512077257">"Vymazať predvolené nastavenia v sekcii Nastavenia systému &gt; Aplikácie &gt; Prevzaté položky."</string>
diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml
index f69a75c..c2bd3ee 100644
--- a/core/res/res/values-sw/strings.xml
+++ b/core/res/res/values-sw/strings.xml
@@ -187,7 +187,7 @@
     <string name="permgrouplab_storage" msgid="1971118770546336966">"Hifadhi"</string>
     <string name="permgroupdesc_storage" product="nosdcard" msgid="7442318502446874999">"Fikia hifadhi ya USB."</string>
     <string name="permgroupdesc_storage" product="default" msgid="9203302214915355774">"Fikia kadi ya SD."</string>
-    <string name="permlab_statusBar" msgid="7417192629601890791">"lemaza au rekebisha mwambaa hali"</string>
+    <string name="permlab_statusBar" msgid="7417192629601890791">"zima au rekebisha mwambaa hali"</string>
     <string name="permdesc_statusBar" msgid="8434669549504290975">"Inaruhusu programu kulemaza upau wa hali au kuongeza na kutoa ikoni za mfumo."</string>
     <string name="permlab_statusBarService" msgid="7247281911387931485">"mwamba hali"</string>
     <string name="permdesc_statusBarService" msgid="716113660795976060">"Inaruhusu programu kuwa upau wa hali."</string>
@@ -391,7 +391,7 @@
     <string name="permdesc_recordAudio" msgid="4906839301087980680">"Inaruhusu programu kurekodi sauti kwa kinasa sauti. Idhini hii inaruhusu programu kurekodi sauti wakati wowote bila ya uthibitisho wako."</string>
     <string name="permlab_camera" msgid="3616391919559751192">"chukua picha na video"</string>
     <string name="permdesc_camera" msgid="8497216524735535009">"Inaruhusu programu kupiga picha na video kwa kamera. Kibali hiki kinaruhusu programu kutumia kamera kwa wakati wowote bila uthibitisho wako."</string>
-    <string name="permlab_brick" product="tablet" msgid="2961292205764488304">"lemaza kompyuta ndogo kabisa"</string>
+    <string name="permlab_brick" product="tablet" msgid="2961292205764488304">"zima kompyuta ndogo kabisa"</string>
     <string name="permlab_brick" product="default" msgid="8337817093326370537">"simu iliyolemazwa kabisa"</string>
     <string name="permdesc_brick" product="tablet" msgid="4334818808001699530">"Inaruhusu programu kulemaza kompyuta yote kibao kabisa. Hii ni hatari sana."</string>
     <string name="permdesc_brick" product="default" msgid="5788903297627283099">"Inaruhusu programu kulemaza simu yote kabisa. Hii ni hatari sana."</string>
@@ -508,7 +508,7 @@
     <string name="permdesc_bluetooth" product="default" msgid="3207106324452312739">"Inaruhusu programu kuona usanidi wa Bluetooth kwenye simu, na kuunda na kukubali miunganisho kwa vifaa vilivyooanishwa."</string>
     <string name="permlab_nfc" msgid="4423351274757876953">"dhibiti Mawasiliano Karibu na Uga"</string>
     <string name="permdesc_nfc" msgid="7120611819401789907">"Inaruhusu programu kuwasiliana na lebo, kadi na wasomaji wa Near Field Communication (NFC)."</string>
-    <string name="permlab_disableKeyguard" msgid="3598496301486439258">"lemaza kufuli la skrini yako"</string>
+    <string name="permlab_disableKeyguard" msgid="3598496301486439258">"zima kufuli la skrini yako"</string>
     <string name="permdesc_disableKeyguard" msgid="6034203065077122992">"Inaruhusu programu kulemaza ufunguo wa vitufe na usalama mwingine ambata wa nenosiri. Kwa mfano, simu inalemaza ufunguo wa viitufe inapopokea simu inayoingia, kisha inawezesha upya ufunguo wa vitufe wakati simu inapokamilika."</string>
     <string name="permlab_readSyncSettings" msgid="6201810008230503052">"soma mipangilio ya usawazishaji"</string>
     <string name="permdesc_readSyncSettings" msgid="2706745674569678644">"Inaruhusu programu kusoma mipangilio ya upatanishi wa akaunti. Kwa mfano, huku kunaweza kuamua kama programu ya Watu imepatanishwa na akaunti."</string>
diff --git a/core/res/res/values-th/strings.xml b/core/res/res/values-th/strings.xml
index 80e8143..976ff8a 100644
--- a/core/res/res/values-th/strings.xml
+++ b/core/res/res/values-th/strings.xml
@@ -1230,7 +1230,7 @@
     <string name="description_direction_left" msgid="7207478719805562165">"เลื่อนไปทางซ้ายเพื่อ <xliff:g id="TARGET_DESCRIPTION">%s</xliff:g>"</string>
     <string name="description_direction_right" msgid="8034433242579600980">"เลื่อนไปทางขวาเพื่อ <xliff:g id="TARGET_DESCRIPTION">%s</xliff:g>"</string>
     <string name="description_target_unlock" msgid="2228524900439801453">"ปลดล็อก"</string>
-    <string name="description_target_camera" msgid="969071997552486814">"กล้องถ่ายรูป"</string>
+    <string name="description_target_camera" msgid="969071997552486814">"กล้อง"</string>
     <string name="description_target_silent" msgid="893551287746522182">"ปิดเสียง"</string>
     <string name="description_target_soundon" msgid="30052466675500172">"เปิดเสียง"</string>
     <string name="description_target_search" msgid="3091587249776033139">"ค้นหา"</string>
diff --git a/core/res/res/values-zh-rCN/strings.xml b/core/res/res/values-zh-rCN/strings.xml
index 98348db..f2f9fde 100644
--- a/core/res/res/values-zh-rCN/strings.xml
+++ b/core/res/res/values-zh-rCN/strings.xml
@@ -630,7 +630,7 @@
     <string name="phoneTypeMms" msgid="7254492275502768992">"彩信"</string>
     <string name="eventTypeCustom" msgid="7837586198458073404">"自定义"</string>
     <string name="eventTypeBirthday" msgid="2813379844211390740">"生日"</string>
-    <string name="eventTypeAnniversary" msgid="3876779744518284000">"周年纪念"</string>
+    <string name="eventTypeAnniversary" msgid="3876779744518284000">"周年纪念日"</string>
     <string name="eventTypeOther" msgid="7388178939010143077">"其他"</string>
     <string name="emailTypeCustom" msgid="8525960257804213846">"自定义"</string>
     <string name="emailTypeHome" msgid="449227236140433919">"家用"</string>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 0a0c81c..4d54fd2 100755
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -249,8 +249,11 @@
     <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
     <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
     <integer-array translatable="false" name="config_tether_upstream_types">
+        <item>0</item>
         <item>1</item>
-        <item>4</item>
+        <item>5</item>
+        <item>7</item>
+        <item>9</item>
     </integer-array>
 
     <!-- If the DUN connection for this CDMA device supports more than just DUN -->
diff --git a/core/res/res/values/themes.xml b/core/res/res/values/themes.xml
index 2f18944..481ca7f 100644
--- a/core/res/res/values/themes.xml
+++ b/core/res/res/values/themes.xml
@@ -1422,6 +1422,9 @@
         <item name="preferenceLayoutChild">@android:layout/preference_child_holo</item>
         <item name="detailsElementBackground">@android:drawable/panel_bg_holo_light</item>
 
+        <!-- PreferenceFrameLayout attributes -->
+        <item name="preferenceFrameLayoutStyle">@android:style/Widget.Holo.PreferenceFrameLayout</item>
+
         <!-- Search widget styles -->
         <item name="searchWidgetCorpusItemBackground">@android:color/search_widget_corpus_item_background</item>
 
diff --git a/core/tests/coretests/src/android/accounts/AccountManagerServiceTest.java b/core/tests/coretests/src/android/accounts/AccountManagerServiceTest.java
index 6efc61a..33a73b5 100644
--- a/core/tests/coretests/src/android/accounts/AccountManagerServiceTest.java
+++ b/core/tests/coretests/src/android/accounts/AccountManagerServiceTest.java
@@ -216,6 +216,10 @@
                 final RegisteredServicesCacheListener<AuthenticatorDescription> listener,
                 final Handler handler) {
         }
+
+        @Override
+        public void generateServicesMap() {
+        }
     }
 
     static public class MyMockContext extends MockContext {
diff --git a/data/etc/platform.xml b/data/etc/platform.xml
index 4b93e74..833064e 100644
--- a/data/etc/platform.xml
+++ b/data/etc/platform.xml
@@ -163,6 +163,12 @@
     <assign-permission name="android.permission.FORCE_STOP_PACKAGES" uid="shell" />
     <assign-permission name="android.permission.STOP_APP_SWITCHES" uid="shell" />
     <assign-permission name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY" uid="shell" />
+    <assign-permission name="android.permission.GRANT_REVOKE_PERMISSIONS" uid="shell" />
+    <assign-permission name="android.permission.SET_KEYBOARD_LAYOUT" uid="shell" />
+    <assign-permission name="android.permission.GET_DETAILED_TASKS" uid="shell" />
+    <assign-permission name="android.permission.SET_SCREEN_COMPATIBILITY" uid="shell" />
+    <assign-permission name="android.permission.READ_EXTERNAL_STORAGE" uid="shell" />
+    <assign-permission name="android.permission.WRITE_EXTERNAL_STORAGE" uid="shell" />
 
     <assign-permission name="android.permission.MODIFY_AUDIO_SETTINGS" uid="media" />
     <assign-permission name="android.permission.ACCESS_DRM" uid="media" />
diff --git a/data/fonts/AndroidEmoji.ttf b/data/fonts/AndroidEmoji.ttf
index 4c017d5..92bf047 100644
--- a/data/fonts/AndroidEmoji.ttf
+++ b/data/fonts/AndroidEmoji.ttf
Binary files differ
diff --git a/docs/downloads/README b/docs/downloads/README
new file mode 100644
index 0000000..0e7d790
--- /dev/null
+++ b/docs/downloads/README
@@ -0,0 +1,9 @@
+Files in this directory are not hosted on developer.android.com.
+
+This directory serves as a "master" repository for various
+downloadable files. This provides us consistent version control
+for downloadables that are associated with documentation. 
+
+Once saved here, the files must be uploaded to a separate
+hosting service where they're accessible by users, such as
+Google Cloud Storage.
\ No newline at end of file
diff --git a/docs/downloads/design/Android_Design_Color_Swatches_20120229.zip b/docs/downloads/design/Android_Design_Color_Swatches_20120229.zip
new file mode 100644
index 0000000..81b6522
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Color_Swatches_20120229.zip
Binary files differ
diff --git a/docs/downloads/design/Android_Design_Downloads_20120814.zip b/docs/downloads/design/Android_Design_Downloads_20120814.zip
new file mode 100755
index 0000000..102b011
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Downloads_20120814.zip
Binary files differ
diff --git a/docs/downloads/design/Android_Design_Downloads_20120823.zip b/docs/downloads/design/Android_Design_Downloads_20120823.zip
new file mode 100644
index 0000000..6d31283
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Downloads_20120823.zip
Binary files differ
diff --git a/docs/downloads/design/Android_Design_Fireworks_Stencil_20120814.png b/docs/downloads/design/Android_Design_Fireworks_Stencil_20120814.png
new file mode 100755
index 0000000..9a55143
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Fireworks_Stencil_20120814.png
Binary files differ
diff --git a/docs/downloads/design/Android_Design_Holo_Widgets_20120814.zip b/docs/downloads/design/Android_Design_Holo_Widgets_20120814.zip
new file mode 100755
index 0000000..295affd
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Holo_Widgets_20120814.zip
Binary files differ
diff --git a/docs/downloads/design/Android_Design_Icons_20120814.zip b/docs/downloads/design/Android_Design_Icons_20120814.zip
new file mode 100755
index 0000000..3471438
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Icons_20120814.zip
Binary files differ
diff --git a/docs/downloads/design/Android_Design_Illustrator_Vectors_20120814.ai b/docs/downloads/design/Android_Design_Illustrator_Vectors_20120814.ai
new file mode 100644
index 0000000..928ecfa
--- /dev/null
+++ b/docs/downloads/design/Android_Design_Illustrator_Vectors_20120814.ai
Binary files differ
diff --git a/docs/downloads/design/Android_Design_OmniGraffle_Stencil_20120814.graffle b/docs/downloads/design/Android_Design_OmniGraffle_Stencil_20120814.graffle
new file mode 100755
index 0000000..d575008
--- /dev/null
+++ b/docs/downloads/design/Android_Design_OmniGraffle_Stencil_20120814.graffle
Binary files differ
diff --git a/docs/downloads/design/Roboto_Hinted_20111129.zip b/docs/downloads/design/Roboto_Hinted_20111129.zip
new file mode 100644
index 0000000..abf4942
--- /dev/null
+++ b/docs/downloads/design/Roboto_Hinted_20111129.zip
Binary files differ
diff --git a/docs/downloads/design/Roboto_Hinted_20120823.zip b/docs/downloads/design/Roboto_Hinted_20120823.zip
new file mode 100644
index 0000000..9ead4af
--- /dev/null
+++ b/docs/downloads/design/Roboto_Hinted_20120823.zip
Binary files differ
diff --git a/docs/downloads/design/Roboto_Specimen_Book_20111129.pdf b/docs/downloads/design/Roboto_Specimen_Book_20111129.pdf
new file mode 100644
index 0000000..594a366
--- /dev/null
+++ b/docs/downloads/design/Roboto_Specimen_Book_20111129.pdf
Binary files differ
diff --git a/docs/html/shareables/training/ActivityLifecycle.zip b/docs/downloads/training/ActivityLifecycle.zip
similarity index 100%
rename from docs/html/shareables/training/ActivityLifecycle.zip
rename to docs/downloads/training/ActivityLifecycle.zip
Binary files differ
diff --git a/docs/html/shareables/training/BitmapFun.zip b/docs/downloads/training/BitmapFun.zip
similarity index 100%
rename from docs/html/shareables/training/BitmapFun.zip
rename to docs/downloads/training/BitmapFun.zip
Binary files differ
diff --git a/docs/html/shareables/training/CustomView.zip b/docs/downloads/training/CustomView.zip
similarity index 100%
rename from docs/html/shareables/training/CustomView.zip
rename to docs/downloads/training/CustomView.zip
Binary files differ
diff --git a/docs/html/shareables/training/DeviceManagement.zip b/docs/downloads/training/DeviceManagement.zip
similarity index 100%
rename from docs/html/shareables/training/DeviceManagement.zip
rename to docs/downloads/training/DeviceManagement.zip
Binary files differ
diff --git a/docs/html/shareables/training/EffectiveNavigation.zip b/docs/downloads/training/EffectiveNavigation.zip
similarity index 100%
rename from docs/html/shareables/training/EffectiveNavigation.zip
rename to docs/downloads/training/EffectiveNavigation.zip
Binary files differ
diff --git a/docs/html/shareables/training/FragmentBasics.zip b/docs/downloads/training/FragmentBasics.zip
similarity index 100%
rename from docs/html/shareables/training/FragmentBasics.zip
rename to docs/downloads/training/FragmentBasics.zip
Binary files differ
diff --git a/docs/html/shareables/training/LocationAware.zip b/docs/downloads/training/LocationAware.zip
similarity index 100%
rename from docs/html/shareables/training/LocationAware.zip
rename to docs/downloads/training/LocationAware.zip
Binary files differ
diff --git a/docs/html/shareables/training/MobileAds.zip b/docs/downloads/training/MobileAds.zip
similarity index 100%
rename from docs/html/shareables/training/MobileAds.zip
rename to docs/downloads/training/MobileAds.zip
Binary files differ
diff --git a/docs/html/shareables/training/NetworkUsage.zip b/docs/downloads/training/NetworkUsage.zip
similarity index 100%
rename from docs/html/shareables/training/NetworkUsage.zip
rename to docs/downloads/training/NetworkUsage.zip
Binary files differ
diff --git a/docs/html/shareables/training/NewsReader.zip b/docs/downloads/training/NewsReader.zip
similarity index 100%
rename from docs/html/shareables/training/NewsReader.zip
rename to docs/downloads/training/NewsReader.zip
Binary files differ
diff --git a/docs/html/shareables/training/OpenGLES.zip b/docs/downloads/training/OpenGLES.zip
similarity index 100%
rename from docs/html/shareables/training/OpenGLES.zip
rename to docs/downloads/training/OpenGLES.zip
Binary files differ
diff --git a/docs/html/shareables/training/PhotoIntentActivity.zip b/docs/downloads/training/PhotoIntentActivity.zip
similarity index 100%
rename from docs/html/shareables/training/PhotoIntentActivity.zip
rename to docs/downloads/training/PhotoIntentActivity.zip
Binary files differ
diff --git a/docs/downloads/training/TabCompat.zip b/docs/downloads/training/TabCompat.zip
new file mode 100644
index 0000000..b907b42
--- /dev/null
+++ b/docs/downloads/training/TabCompat.zip
Binary files differ
diff --git a/docs/html/about/dashboards/index.jd b/docs/html/about/dashboards/index.jd
index d115beb..4a75b91 100644
--- a/docs/html/about/dashboards/index.jd
+++ b/docs/html/about/dashboards/index.jd
@@ -32,19 +32,20 @@
 </tr>
 <tr><td><a href="/about/versions/android-1.5.html">1.5</a></td><td>Cupcake</td>  <td>3</td><td>0.2%</td></tr>
 <tr><td><a href="/about/versions/android-1.6.html">1.6</a></td><td>Donut</td>    <td>4</td><td>0.5%</td></tr>
-<tr><td><a href="/about/versions/android-2.1.html">2.1</a></td><td>Eclair</td>   <td>7</td><td>4.7%</td></tr>
-<tr><td><a href="/about/versions/android-2.2.html">2.2</a></td><td>Froyo</td>    <td>8</td><td>17.3%</td></tr>
+<tr><td><a href="/about/versions/android-2.1.html">2.1</a></td><td>Eclair</td>   <td>7</td><td>4.2%</td></tr>
+<tr><td><a href="/about/versions/android-2.2.html">2.2</a></td><td>Froyo</td>    <td>8</td><td>15.5%</td></tr>
 <tr><td><a href="/about/versions/android-2.3.html">2.3 - 2.3.2</a>
-                                   </td><td rowspan="2">Gingerbread</td>    <td>9</td><td>0.4%</td></tr>
+                                   </td><td rowspan="2">Gingerbread</td>    <td>9</td><td>0.3%</td></tr>
 <tr><td><a href="/about/versions/android-2.3.3.html">2.3.3 - 2.3.7
-        </a></td><!-- Gingerbread -->                                       <td>10</td><td>63.6%</td></tr>
+        </a></td><!-- Gingerbread -->                                       <td>10</td><td>60.3%</td></tr>
 <tr><td><a href="/about/versions/android-3.1.html">3.1</a></td>
                                                    <td rowspan="2">Honeycomb</td>      <td>12</td><td>0.5%</td></tr>
-<tr><td><a href="/about/versions/android-3.2.html">3.2</a></td>      <!-- Honeycomb --><td>13</td><td>1.9%</td></tr> 
+<tr><td><a href="/about/versions/android-3.2.html">3.2</a></td>      <!-- Honeycomb --><td>13</td><td>1.8%</td></tr> 
 <tr><td><a href="/about/versions/android-4.0.html">4.0 - 4.0.2</a></td>
-                                                <td rowspan="2">Ice Cream Sandwich</td><td>14</td><td>0.2%</td></tr> 
+                                                <td rowspan="2">Ice Cream Sandwich</td><td>14</td><td>0.1%</td></tr> 
 <tr><td><a href="/about/versions/android-4.0.3.html">4.0.3 - 4.0.4</a></td>
-                                                                     <!-- ICS     -->  <td>15</td><td>10.7%</td></tr> 
+                                                                     <!-- ICS     -->  <td>15</td><td>15.8%</td></tr> 
+<tr><td><a href="/about/versions/android-4.1.html">4.1</a></td>   <td>Jelly Bean</td><td>16</td><td>0.8%</td></tr> 
 </table>
 
 
@@ -52,11 +53,11 @@
 
 <div class="col-7" style="margin-right:0">
 <img alt=""
-src="http://chart.apis.google.com/chart?&cht=p&chs=460x310&chd=t:0.2,0.5,4.7,17.3,0.4,63.6,0.5,1.9,0.2,10.7&chl=Android%201.5|Android%201.6|Android%202.1|Android%202.2|Android%202.3|Android%202.3.3|Android%203.1|Android%203.2|Android%204.0|Android%204.0.3&chco=c4df9b,6fad0c&chf=bg,s,00000000" />
+src="http://chart.apis.google.com/chart?&cht=p&chs=460x310&chd=t:0.2,0.5,4.2,15.5,0.3,60.3,0.5,1.8,0.1,15.8,0.8&chl=Android%201.5|Android%201.6|Android%202.1|Android%202.2|Android%202.3|Android%202.3.3|Android%203.1|Android%203.2|Android%204.0|Android%204.0.3|Android%204.1&chco=c4df9b,6fad0c&chf=bg,s,00000000" />
 
 </div><!-- end dashboard-panel -->
 
-<p style="clear:both"><em>Data collected during a 14-day period ending on July 2, 2012</em></p>
+<p style="clear:both"><em>Data collected during a 14-day period ending on August 1, 2012</em></p>
 <!--
 <p style="font-size:.9em">* <em>Other: 0.1% of devices running obsolete versions</em></p>
 -->
@@ -81,9 +82,9 @@
 Google Play within a 14-day period ending on the date indicated on the x-axis.</p>
 
 <img alt="" height="250" width="660"
-src="http://chart.apis.google.com/chart?&cht=lc&chs=660x250&chxt=x,x,y,r&chxr=0,0,12|1,0,12|2,0,100|3,0,100&chxl=0%3A%7C01/01%7C01/15%7C02/01%7C02/15%7C03/01%7C03/15%7C04/01%7C04/15%7C05/01%7C05/15%7C06/01%7C06/15%7C07/01%7C1%3A%7C2012%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C2012%7C2%3A%7C0%25%7C25%25%7C50%25%7C75%25%7C100%25%7C3%3A%7C0%25%7C25%25%7C50%25%7C75%25%7C100%25&chxp=0,0,1,2,3,4,5,6,7,8,9,10,11,12&chxtc=0,5&chd=t:98.3,98.2,98.6,98.4,98.4,98.6,98.5,98.6,98.8,98.7,98.9,99.1,99.1|97.2,97.2,97.6,97.5,97.6,97.8,97.8,97.9,98.1,98.1,98.3,98.5,98.6|88.7,89.2,89.9,90.3,90.8,91.4,91.8,92.1,92.5,92.7,93.1,93.5,93.9|58.2,60.1,62.0,63.7,65.2,66.8,68.6,69.9,71.5,72.6,74.0,75.2,76.5|3.5,3.6,4.0,4.1,4.3,4.6,5.5,6.5,7.6,8.2,9.4,11.0,12.8|2.0,2.2,2.6,3.0,3.2,3.5,4.5,5.5,6.6,7.4,8.7,10.4,12.3|0.3,0.4,0.7,0.8,1.1,1.3,2.3,3.3,4.4,5.3,6.7,8.4,10.4&chm=b,c3df9b,0,1,0|b,b6dc7d,1,2,0|tAndroid%202.2,5b831d,2,0,15,,t::-5|b,aadb5e,2,3,0|tAndroid%202.3.3,496c13,3,0,15,,t::-5|b,9ddb3d,3,4,0|b,91da1e,4,5,0|b,80c414,5,6,0|tAndroid%204.0.3,131d02,6,12,15,,t::-5|B,6fad0c,6,7,0&chg=7,25&chdl=Android%201.6|Android%202.1|Android%202.2|Android%202.3.3|Android%203.1|Android%203.2|Android%204.0.3&chco=add274,a0d155,94d134,84c323,73ad18,62960f,507d08&chf=bg,s,00000000" />
+src="http://chart.apis.google.com/chart?&cht=lc&chs=660x250&chxt=x,x,y,r&chf=bg,s,00000000&chxr=0,0,12|1,0,12|2,0,100|3,0,100&chxl=0%3A%7C02/01%7C02/15%7C03/01%7C03/15%7C04/01%7C04/15%7C05/01%7C05/15%7C06/01%7C06/15%7C07/01%7C07/15%7C08/01%7C1%3A%7C2012%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C2012%7C2%3A%7C0%25%7C25%25%7C50%25%7C75%25%7C100%25%7C3%3A%7C0%25%7C25%25%7C50%25%7C75%25%7C100%25&chxp=0,0,1,2,3,4,5,6,7,8,9,10,11,12&chxtc=0,5&chd=t:98.6,98.4,98.4,98.6,98.5,98.6,98.8,98.7,98.9,99.1,99.1,99.2,98.6|97.6,97.5,97.6,97.8,97.8,97.9,98.1,98.1,98.3,98.5,98.6,98.7,98.1|89.9,90.3,90.8,91.4,91.8,92.1,92.5,92.7,93.1,93.5,93.9,94.2,93.9|62.0,63.7,65.2,66.8,68.6,69.9,71.5,72.6,74.0,75.2,76.5,77.8,78.4|4.0,4.1,4.3,4.6,5.5,6.5,7.6,8.2,9.4,11.0,12.8,15.6,18.1|2.6,3.0,3.2,3.5,4.5,5.5,6.6,7.4,8.7,10.4,12.3,15.1,17.6|0.7,0.8,1.1,1.3,2.3,3.3,4.4,5.3,6.7,8.4,10.4,13.2,15.8&chm=b,c3df9b,0,1,0|b,b6dc7d,1,2,0|tAndroid%202.2,5b831d,2,0,15,,t::-5|b,aadb5e,2,3,0|tAndroid%202.3.3,496c13,3,0,15,,t::-5|b,9ddb3d,3,4,0|b,91da1e,4,5,0|b,80c414,5,6,0|tAndroid%204.0.3,131d02,6,10,15,,t::-5|B,6fad0c,6,7,0&chg=7,25&chdl=Android%201.6|Android%202.1|Android%202.2|Android%202.3.3|Android%203.1|Android%203.2|Android%204.0.3&chco=add274,a0d155,94d134,84c323,73ad18,62960f,507d08" />
 
-<p><em>Last historical dataset collected during a 14-day period ending on July 2, 2012</em></p>
+<p><em>Last historical dataset collected during a 14-day period ending on August 1, 2012</em></p>
 
 
 
@@ -143,26 +144,26 @@
 <th scope="col">xhdpi</th>
 </tr>
 <tr><th scope="row">small</th> 
-<td>1.7%</td>     <!-- small/ldpi -->
+<td>1.5%</td>     <!-- small/ldpi -->
 <td></td>     <!-- small/mdpi -->
-<td>1.3%</td> <!-- small/hdpi -->
+<td>1.2%</td> <!-- small/hdpi -->
 <td></td>     <!-- small/xhdpi -->
 </tr> 
 <tr><th scope="row">normal</th> 
-<td>0.4%</td>  <!-- normal/ldpi -->
-<td>12.9%</td> <!-- normal/mdpi -->
-<td>57.5%</td> <!-- normal/hdpi -->
-<td>18.0%</td>      <!-- normal/xhdpi -->
+<td>0.5%</td>  <!-- normal/ldpi -->
+<td>12.1%</td> <!-- normal/mdpi -->
+<td>55.3%</td> <!-- normal/hdpi -->
+<td>17.4%</td>      <!-- normal/xhdpi -->
 </tr> 
 <tr><th scope="row">large</th> 
-<td>0.2%</td>     <!-- large/ldpi -->
-<td>2.9%</td> <!-- large/mdpi -->
+<td>0.1%</td>     <!-- large/ldpi -->
+<td>2.7%</td> <!-- large/mdpi -->
 <td></td>     <!-- large/hdpi -->
-<td></td>     <!-- large/xhdpi -->
+<td>4.5%</td>     <!-- large/xhdpi -->
 </tr> 
 <tr><th scope="row">xlarge</th> 
 <td></td>     <!-- xlarge/ldpi -->
-<td>5.1%</td> <!-- xlarge/mdpi -->
+<td>4.7%</td> <!-- xlarge/mdpi -->
 <td></td>     <!-- xlarge/hdpi -->
 <td></td>     <!-- xlarge/xhdpi -->
 </tr> 
@@ -173,12 +174,11 @@
 
 <div class="col-7" style="margin-right:0">
 <img alt=""
-src="http://chart.googleapis.com/chart?cht=p&chs=400x250&chf=bg,s,00000000&chco=c4df9b,6fad0c&chl=Xlarge%20/%20mdpi%7CLarge%20/%20ldpi%7CLarge%20/%20mdpi%7CNormal%20/%20hdpi%7CNormal%20/%20ldpi%7CNormal%20/%20mdpi%7CNormal%20/%20xhdpi%7CSmall%20/%20hdpi%7CSmall%20/%20ldpi&chd=t%3A5.1,0.2,2.9,57.5,0.4,12.9,18.0,1.3,1.7" />
+src="http://chart.googleapis.com/chart?cht=p&chs=400x250&chf=bg,s,00000000&chco=c4df9b,6fad0c&chl=Xlarge%20/%20mdpi|Large%20/%20ldpi|Large%20/%20mdpi|Large%20/%20xhdpi|Normal%20/%20hdpi|Normal%20/%20ldpi|Normal%20/%20mdpi|Normal%20/%20xhdpi|Small%20/%20hdpi|Small%20/%20ldpi&chd=t%3A4.7,0.1,2.7,4.5,55.3,0.5,12.1,17.4,1.2,1.5" />
 
 </div>
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on July 2, 2012</em></p>
-
+<p style="clear:both"><em>Data collected during a 7-day period ending on August 1, 2012</em></p>
 
 
 
@@ -217,20 +217,20 @@
 </tr>
 <tr>
 <td>1.1 only</th>
-<td>9.7%</td>
+<td>9.3%</td>
 </tr>
 <tr>
 <td>2.0 &amp; 1.1</th>
-<td>90.3%</td>
+<td>90.7%</td>
 </tr>
 </table>
 </div>
 
 <div class="col-7" style="margin-right:0">
 <img alt=""
-src="http://chart.googleapis.com/chart?cht=p&chs=400x250&chco=c4df9b,6fad0c&chl=GL%201.1%20only|GL% 202.0%20%26%201.1&chd=t%3A9.7,90.3&chf=bg,s,00000000" />
+src="http://chart.googleapis.com/chart?cht=p&chs=400x250&chco=c4df9b,6fad0c&chl=GL%201.1%20only|GL%202.0%20%26%201.1&chd=t%3A9.3,90.7&chf=bg,s,00000000" />
 
 </div>
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on July 2, 2012</em></p>
+<p style="clear:both"><em>Data collected during a 7-day period ending on August 1, 2012</em></p>
diff --git a/docs/html/about/start.jd b/docs/html/about/start.jd
index af8344d..fbe70e3 100644
--- a/docs/html/about/start.jd
+++ b/docs/html/about/start.jd
@@ -29,9 +29,9 @@
 <p>Before you write a single line of code, you need to design the user interface and make it fit
 the Android user experience. Although you may know what a user will <em>do</em> with your app, you
 should pause to focus on how a user will <em>interact</em> with it. Your design should be sleek,
-simple, powereful, and tailored to the Android experience.</p>
+simple, powerful, and tailored to the Android experience.</p>
 
-<p>So whether your a one-man shop or a large team, you should study the <a
+<p>So whether you're a one-man shop or a large team, you should study the <a
 href="{@docRoot}design/index.html">Design</a> guidelines first.</p>
 </div>
 
diff --git a/docs/html/about/versions/android-1.6-highlights.jd b/docs/html/about/versions/android-1.6-highlights.jd
index 2ee1d80..edfd7ff 100644
--- a/docs/html/about/versions/android-1.6-highlights.jd
+++ b/docs/html/about/versions/android-1.6-highlights.jd
@@ -49,17 +49,17 @@
 <!-- screenshots float right -->
 
 <div class="screenshot">
-<img src="images/search.png" class="screenshot" alt="" /><br/>
+<img src="{@docRoot}sdk/images/search.png" class="screenshot" alt="" /><br/>
 Quick Search Box
 </div>
  
 <div class="screenshot">
-<img src="images/camera.png" class="screenshot" alt="" /><br/>
+<img src="{@docRoot}sdk/images/camera.png" class="screenshot" alt="" /><br/>
 New Camera/Camcorder UI
 </div>
 
 <div class="screenshot">
-<img src="images/battery.png" class="screenshot" alt="" /><br/>
+<img src="{@docRoot}sdk/images/battery.png" class="screenshot" alt="" /><br/>
 Battery Usage Indicator
 </div>
 
@@ -121,7 +121,7 @@
 <h2 id="GooglePlayUpdates" style="clear:right">Google Play Updates</h2>
 
 <div class="screenshot" style="margin-top:-35px">
-<img src="images/market.png" class="screenshot" alt="" /><br/>
+<img src="{@docRoot}sdk/images/market.png" class="screenshot" alt="" /><br/>
 New Google Play UI
 </div>
 
diff --git a/docs/html/about/versions/android-2.0-highlights.jd b/docs/html/about/versions/android-2.0-highlights.jd
index 2ba9ac7..58b5fda 100644
--- a/docs/html/about/versions/android-2.0-highlights.jd
+++ b/docs/html/about/versions/android-2.0-highlights.jd
@@ -54,27 +54,27 @@
 <!-- screenshots float right -->
 
 <div class="screenshot">
-  <img src="images/2.0/quick-connect.png" class="screenshot" alt="" /><br/>
+  <img src="{@docRoot}sdk/images/2.0/quick-connect.png" class="screenshot" alt="" /><br/>
   Quick Contact for Android
 </div>
 
 <div class="screenshot second">
-  <img src="images/2.0/multiple-accounts.png" class="screenshot" alt="" /><br/>
+  <img src="{@docRoot}sdk/images/2.0/multiple-accounts.png" class="screenshot" alt="" /><br/>
   Multiple Accounts
 </div>
 
 <div class="screenshot">
-  <img src="images/2.0/mms-search.png" class="screenshot" alt="" /><br/>
+  <img src="{@docRoot}sdk/images/2.0/mms-search.png" class="screenshot" alt="" /><br/>
   Messaging Search
 </div>
 
 <div class="screenshot second">
-  <img src="images/2.0/email-inbox.png" class="screenshot" alt="" /><br/>
+  <img src="{@docRoot}sdk/images/2.0/email-inbox.png" class="screenshot" alt="" /><br/>
   Email Combined Inbox
 </div>
 
 <div class="screenshot">
-  <img src="images/2.0/camera-modes.png" class="screenshot" alt="" /><br/>
+  <img src="{@docRoot}sdk/images/2.0/camera-modes.png" class="screenshot" alt="" /><br/>
   Camera Modes
 </div>
 
diff --git a/docs/html/about/versions/android-2.2-highlights.jd b/docs/html/about/versions/android-2.2-highlights.jd
index 37a20d5..190e301 100644
--- a/docs/html/about/versions/android-2.2-highlights.jd
+++ b/docs/html/about/versions/android-2.2-highlights.jd
@@ -71,7 +71,7 @@
 <table class="columns" style="max-width:800px">
 <tr>
   <td>
-<img src="images/2.2/22home.png" alt="" height=230 />
+<img src="{@docRoot}sdk/images/2.2/22home.png" alt="" height=230 />
   </td>
   <td>
 <p style="margin-top:0">New Home screen <span class="green">tips widget</span> assists new users on
@@ -103,7 +103,7 @@
 application, enabling users to auto-complete recipient names from the directory.</p>
   </td>
   <td>
-<img src="images/2.2/22exchange.png" alt="" height=300 />
+<img src="{@docRoot}sdk/images/2.2/22exchange.png" alt="" height=300 />
   </td>
 </tr>
 </table>
@@ -114,7 +114,7 @@
 <table class="columns" style="max-width:800px">
 <tr>
   <td>
-<img src="images/2.2/22gallery.png" alt="" height=220 />
+<img src="{@docRoot}sdk/images/2.2/22gallery.png" alt="" height=220 />
   </td>
   <td>
 <p>Gallery allows you to <span class="green">peek into picture stacks</span> using a zoom
@@ -141,7 +141,7 @@
 two devices.</p>
   </td>
   <td>
-<img src="images/2.2/22hotspot.png" alt="" height=180 />
+<img src="{@docRoot}sdk/images/2.2/22hotspot.png" alt="" height=180 />
   </td>
 </tr>
 </table>
@@ -152,7 +152,7 @@
 <table class="columns" style="max-width:800px">
 <tr>
   <td>
-<img src="images/2.2/22keyboard.png" alt="" height=220 />
+<img src="{@docRoot}sdk/images/2.2/22keyboard.png" alt="" height=220 />
   </td>
   <td>
 <p>Multi-lingual users can add multiple languages to the keyboard and <span class="green">switch
@@ -179,7 +179,7 @@
 which results in faster app switching and smoother performance on memory-constrained devices.</p>
   </td>
   <td>
-<img src="images/2.2/jit-graph.png" alt="" height=200 />
+<img src="{@docRoot}sdk/images/2.2/jit-graph.png" alt="" height=200 />
   </td>
 </tr>
 </table>
diff --git a/docs/html/about/versions/android-2.2.jd b/docs/html/about/versions/android-2.2.jd
index 361e8b6..64ddca4 100644
--- a/docs/html/about/versions/android-2.2.jd
+++ b/docs/html/about/versions/android-2.2.jd
@@ -1,4 +1,4 @@
-page.title=Android 2.2 Platform
+page.title=Android 2.2 APIs
 sdk.platform.version=2.2
 sdk.platform.apiLevel=8
 sdk.platform.majorMinor=minor
@@ -117,7 +117,7 @@
 <p>For more information about setting a preferred install location for your
 application, including a discussion of what types of applications should and
 should not request external installation, please read the <a
-href="{@docRoot}guide/appendix/install-location.html">App Install Location</a>
+href="{@docRoot}guide/topics/data/install-location.html">App Install Location</a>
 document. </p>
 
 <h3 id="backup-manager">Data backup</h3>
diff --git a/docs/html/about/versions/android-2.3.3.jd b/docs/html/about/versions/android-2.3.3.jd
index 55ff346..7a9711d 100644
--- a/docs/html/about/versions/android-2.3.3.jd
+++ b/docs/html/about/versions/android-2.3.3.jd
@@ -1,4 +1,4 @@
-page.title=Android 2.3.3 Platform
+page.title=Android 2.3.3 APIs
 sdk.platform.version=2.3.3
 sdk.platform.apiLevel=10
 
@@ -122,8 +122,8 @@
 <code>&lt;uses-feature android:name="android.hardware.nfc"
 android:required="true"&gt;</code> to the application's manifest.</p>
 
-<p class="note">To look at sample code for NFC, see
-<a href="{@docRoot}resources/samples/NFCDemo/index.html">NFCDemo app</a>, <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/nfc/TechFilter.html">filtering by tag technology</a></li>, <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/nfc/ForegroundDispatch.html">using foreground dispatch</a>, and <a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/nfc/ForegroundNdefPush.html">foreground NDEF push (P2P)</a>.</p>
+<p class="note">For more information, read the 
+  <a href="{@docRoot}guide/topics/connectivity/nfc/index.html">NFC</a> developer guide.</p>
 
 <h3 id="bluetooth">Bluetooth</h3>
 
diff --git a/docs/html/about/versions/android-2.3.4.jd b/docs/html/about/versions/android-2.3.4.jd
index bb4feec..3bb0d7b 100644
--- a/docs/html/about/versions/android-2.3.4.jd
+++ b/docs/html/about/versions/android-2.3.4.jd
@@ -1,4 +1,4 @@
-page.title=Android 2.3.4 Platform
+page.title=Android 2.3.4 APIs
 sdk.platform.version=2.3.4
 sdk.platform.apiLevel=10
 
diff --git a/docs/html/about/versions/android-2.3.jd b/docs/html/about/versions/android-2.3.jd
index 2afa564..8715973 100644
--- a/docs/html/about/versions/android-2.3.jd
+++ b/docs/html/about/versions/android-2.3.jd
@@ -1,4 +1,4 @@
-page.title=Android 2.3 Platform
+page.title=Android 2.3 APIs
 sdk.platform.version=2.3
 sdk.platform.apiLevel=9
 
@@ -76,8 +76,8 @@
 android:required="true"&gt;</code> and <code>&lt;uses-feature
 android:name="android.software.sip.voip"&gt;</code> to the application manifest.</p>
 
-<p class="note">To look at a sample application that uses the SIP API, see <a
-href="{@docRoot}resources/samples/SipDemo/index.html">SIP Demo</a>.</p>
+<p class="note">For more information, read the <a
+href="{@docRoot}guide/topics/connectivity/sip.html">SIP</a> developer guide.</p>
 
 <h3 id="nfc">Near Field Communications (NFC)</h3>
 
diff --git a/docs/html/about/versions/android-3.0.jd b/docs/html/about/versions/android-3.0.jd
index 76e0795..5bfdffc 100644
--- a/docs/html/about/versions/android-3.0.jd
+++ b/docs/html/about/versions/android-3.0.jd
@@ -1,4 +1,4 @@
-page.title=Android 3.0 Platform
+page.title=Android 3.0 APIs
 sdk.platform.version=3.0
 sdk.platform.apiLevel=11
 @jd:body
diff --git a/docs/html/about/versions/android-3.1.jd b/docs/html/about/versions/android-3.1.jd
index 2a845f0..b0e2f08 100644
--- a/docs/html/about/versions/android-3.1.jd
+++ b/docs/html/about/versions/android-3.1.jd
@@ -1,4 +1,4 @@
-page.title=Android 3.1 Platform
+page.title=Android 3.1 APIs
 sdk.platform.version=3.1
 sdk.platform.apiLevel=12
 @jd:body
diff --git a/docs/html/about/versions/android-3.2.jd b/docs/html/about/versions/android-3.2.jd
index 02111a0..e0f0125 100644
--- a/docs/html/about/versions/android-3.2.jd
+++ b/docs/html/about/versions/android-3.2.jd
@@ -1,4 +1,4 @@
-page.title=Android 3.2 Platform
+page.title=Android 3.2 APIs
 sdk.platform.version=3.2
 sdk.platform.apiLevel=13
 @jd:body
diff --git a/docs/html/about/versions/android-4.0.3.jd b/docs/html/about/versions/android-4.0.3.jd
index b7d4db3..a773b6e 100644
--- a/docs/html/about/versions/android-4.0.3.jd
+++ b/docs/html/about/versions/android-4.0.3.jd
@@ -1,4 +1,4 @@
-page.title=Android 4.0.3 Platform
+page.title=Android 4.0.3 APIs
 sdk.platform.version=4.0.3
 sdk.platform.apiLevel=15
 @jd:body
@@ -44,8 +44,7 @@
 
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-    <strong>Table of Contents</strong>
+class="toggle-content-img" alt="" /><strong>Table of Contents</strong>
   </a></p>
 
   <div class="toggle-content-toggleme" style="padding-left:2em;">
diff --git a/docs/html/about/versions/android-4.0.jd b/docs/html/about/versions/android-4.0.jd
index 06b63a0c..8595eee 100644
--- a/docs/html/about/versions/android-4.0.jd
+++ b/docs/html/about/versions/android-4.0.jd
@@ -1,4 +1,6 @@
-page.title=Android 4.1 API Overview
+page.title=Android 4.0 APIs
+sdk.platform.version=4.0
+sdk.platform.apiLevel=14
 @jd:body
 
 <div id="qv-wrapper">
diff --git a/docs/html/design/building-blocks/dialogs.jd b/docs/html/design/building-blocks/dialogs.jd
index 9b653ee..728821e 100644
--- a/docs/html/design/building-blocks/dialogs.jd
+++ b/docs/html/design/building-blocks/dialogs.jd
@@ -10,28 +10,29 @@
 <div class="with-callouts">
 
 <ol>
-<li>
-<h4>Optional title region</h4>
-<p>The title introduces the content of your dialog. It can, for example, identify the name of a
- setting that the user is about to change, or request a decision.</p>
-</li>
-<li>
-<h4>Content area</h4>
-<p>Dialog content varies widely. For settings dialogs, a dialog may contain UI elements such as
- sliders, text fields, checkboxes, or radio buttons that allow the user to change app or system
- settings. In other cases, such as alerts, the content may consist solely of text that provides
- further context for a user decision.</p>
-</li>
-<li>
-<h4>Action buttons</h4>
-<p>Action buttons are typically Cancel and/or OK, with OK indicating the preferred or most likely
- action. However, if the options consist of specific actions such as Close or Wait rather than
- a confirmation or cancellation of the action described in the content, then all the buttons
- should be active verbs. As a rule, the dismissive action of a dialog is always on the left
- whereas the affirmative actions are on the right.</p>
-</li>
-</ol>
+  <li>
+  <h4>Optional title region</h4>
+  <p>The title introduces the content of your dialog. It can, for example, identify the name of a
+   setting that the user is about to change, or request a decision.</p>
+  </li>
+  <li>
+  <h4>Content area</h4>
+  <p>Dialog content varies widely. For settings dialogs, a dialog may contain UI elements such as
+   sliders, text fields, checkboxes, or radio buttons that allow the user to change app or system
+   settings. In other cases, such as alerts, the content may consist solely of text that provides
+   further context for a user decision.</p>
+  </li>
 
+  <li>
+  <h4>Action buttons</h4>
+  <p>Action buttons are typically Cancel and/or OK, with OK indicating the preferred or most likely action. However, if the options consist of specific actions such as Close or Wait rather than a confirmation or cancellation of the action described in the content, then all the buttons should be active verbs. Order actions following these rules:</p>
+    <ul>
+    
+    <li>The dismissive action of a dialog is always on the left. Dismissive actions return to the user to the previous state.</li>
+    <li>The affirmative actions are on the right. Affirmative actions continue progress toward the user goal that triggered the dialog.</li>
+    </ul>
+  </li>
+</ol>
 </div>
 
 <img src="{@docRoot}design/media/dialogs_examples.png">
@@ -80,7 +81,46 @@
 
   </div>
 </div>
+<p>When crafting a confirmation dialog, make the title meaningful by echoing the requested action.</p>
 
+<div class="layout-content-row">
+  <div class="layout-content-col span-4">
+    <div class="do-dont-label bad">Don't</div>
+      <table class="ui-table bad">
+      <thead>
+        <tr>
+          <th class="label">
+          Are you sure?
+          </th>
+        </tr>
+      </thead>
+      </table>
+  </div>
+  <div class="layout-content-col span-4">
+    <div class="do-dont-label bad">Don't</div>
+      <table class="ui-table bad">
+      <thead>
+        <tr>
+          <th class="label">
+          Warning!
+          </th>
+        </tr>
+      </thead>
+      </table>
+  </div>
+  <div class="layout-content-col span-5">
+    <div class="do-dont-label good">Do</div>
+      <table class="ui-table good">
+      <thead>
+        <tr>
+          <th class="label">
+          Erase USB storage?
+          </th>
+        </tr>
+      </thead>
+      </table>
+  </div>
+</div>
 
 <h2 id="popups">Popups</h2>
 
diff --git a/docs/html/design/building-blocks/index.jd b/docs/html/design/building-blocks/index.jd
index d915aae..e554775 100644
--- a/docs/html/design/building-blocks/index.jd
+++ b/docs/html/design/building-blocks/index.jd
@@ -11,7 +11,7 @@
 #text-overlay {
   position: absolute;
   left: 0;
-  top: 472px;
+  top: 520px;
   width: 450px;
 }
 </style>
diff --git a/docs/html/design/building-blocks/progress.jd b/docs/html/design/building-blocks/progress.jd
index 03fc09c..7342387 100644
--- a/docs/html/design/building-blocks/progress.jd
+++ b/docs/html/design/building-blocks/progress.jd
@@ -1,19 +1,14 @@
-page.title=Progress and Activity
+page.title=Progress &amp; Activity
 @jd:body
 
-<p>When an operation of interest to the user is taking place over a relatively long period of time,
-provide visual feedback that it's still happening and in the process of being completed.</p>
-<h2 id="progress">Progress</h2>
+<p>Progress bars and activity indicators signal to users that something is happening that will take a moment.</p>
+<h2 id="progress">Progress bars</h2>
 
-<p>If you know the percentage of the operation that has been completed, use a determinate progress bar
-to give the user a sense of how much longer it will take.</p>
+<p>Progress bars are for situations where the percentage completed can be determined. They give users a quick sense of how much longer an operation will take.</p>
 
 <img src="{@docRoot}design/media/progress_download.png">
 
-<p>The progress bar should always travel from 0% to 100% completion. Avoid setting the bar to a lower
-value than a previous value, or using the same progress bar to represent the progress of multiple
-events, since doing so makes the display meaningless. If you're not sure how long a particular
-operation will take, use an indeterminate progress indicator.</p>
+<p>A progress bar should always fill from 0% to 100% and never move backwards to a lower value. If multiple operations are happening in sequence, use the progress bar to represent the delay as a whole, so that when the bar reaches 100%, it doesn't return back to 0%.</p>
 
 <div class="vspace size-2">&nbsp;</div>
 
@@ -22,12 +17,11 @@
   Progress bar in Holo Dark and Holo Light.
 </div>
 
-<h2 id="activity">Activity</h2>
+<h2 id="activity">Activity indicators</h2>
 
-<p>If you don't know how much longer an operation will continue, use an indeterminate progress
-indicator. There are two styles available: a flat bar and a circle. Use the one that best fits the
-available space.</p>
+<p>Activity indicators are for operations of an indeterminate length. They ask users to wait a moment while something finishes up, without getting into specifics about what's happening behind the scenes.</p>
 
+<p>Two styles are available: a bar and a circle. Each is offered in a variety of sizes, in both Holo Light and Holo Dark themes. Choose the appropriate style and size for the surrounding context. For example, the largest activity circle works well when displayed in a blank content area, but not in a smaller dialog box. Each operation should only be represented by one activity indicator.</p>
 
 <div class="layout-content-row">
   <div class="layout-content-col span-6">
@@ -38,14 +32,8 @@
   <div class="layout-content-col span-7 with-callouts">
 
     <ol>
-      <li class="value-1"><h4>Activity bar (shown with the Holo Dark theme)</h4>
-        <p>
-
-An indeterminate activity bar is used at the start of an application download because the Play Store
-app hasn't been able to contact the server yet, and it's not possible to determine how long it will
-take for the download to begin.
-
-        </p>
+      <li class="value-1"><h4>Activity bar</h4>
+        <p>In this example, an activity bar (in Holo Dark) appears when a user first requests a download. There's an unknown period of time when the download has not yet started. As soon as the download starts, this activity bar transforms into a progress bar.</p>
       </li>
     </ol>
 
@@ -61,12 +49,19 @@
   <div class="layout-content-col span-7 with-callouts">
 
     <ol>
-      <li class="value-2"><h4>Activity circle (shown with the Holo Light theme)</h4>
+      <li class="value-2"><h4>Activity circle</h4>
+        <p>In this example, an activity circle (in Holo Light) is used in the Gmail application when a message is being loaded because it's not possible to determine how long it will take to download the email.</p>
+        <p>When displaying an activity circle, do not include text to communicate what the app is doing. The moving circle alone provides sufficient feedback about the delay, and does so in an understated way that minimizes the impact.</p>
         <p>
-
-An indeterminate activity circle is used in the Gmail application when a message is being
-loaded because it's not possible to determine how long it will take to download the email.
-
+        <div class="layout-content-col span-3" style="margin-left:0">
+          <div class="do-dont-label bad">Don't</div>
+          <img src="{@docRoot}design/media/progress_activity_dont.png">
+        </div>
+      
+        <div class="layout-content-col span-3">
+          <div class="do-dont-label good">Do</div>
+          <img src="{@docRoot}design/media/progress_activity_do.png">
+        </div>
         </p>
       </li>
     </ol>
@@ -74,6 +69,34 @@
   </div>
 </div>
 
-<p>You should only use one activity indicator on screen per activity, and it should appropriately sized
-for the surrounding context. For example, the largest activity circle works well when displayed in a
-blank content area, but not in a smaller dialog box.</p>
+<h2 id="custom-indicators">Custom indicators</h2>
+<p>The standard progress bar and activity indicators work well for most situations and should be used whenever possible to provide a consistent experience across Android. However, some situations may call for something more custom.</p>
+
+<p>Here's an example:<br>
+In all of the Google Play apps (Music, Books, Movies, Magazines), we wanted the current download state of each item to be visible at all times at the top-level screen. These states are:
+  <ul>
+    <li>Not downloaded</li>
+    <li>Temporarily downloaded (automatically cached by the app)</li>
+    <li>Permanently downloaded on the device at the user's request</li>
+  </ul>
+</p>
+<p>We also needed to indicate progress from one download state to another, because downloading is not instantaneous.</p>
+<p>This presented a challenge, because the Google Play apps use a variety of different layouts, and some of them are highly space-constrained. We didn't want this information to clutter the top-level screens, or compete too much with the cover art.</p>
+<p>So we designed a custom indicator that could show all of the information in a tiny footprint, with the flexibility to appear on top of content if necessary.</p>
+
+<img src="{@docRoot}design/media/progress_activity_custom.png">
+
+<p>The color indicates whether it's downloaded (blue) or not (gray). The appearance of the pin indicates whether the download is permanent (white, upright) or temporary (gray, diagonal). And when state is in the process of changing, progress is indicated by a moving pie chart.</p>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-9">
+    <img src="{@docRoot}design/media/progress_activity_custom_app.png">
+  </div>
+  <div class="layout-content-col span-4">
+    <div class="figure-caption">
+      Across Google Play apps with different layouts, the same custom indicator appears with each item. It communicates download state as well as progress, in a compact package that can be incorporated into any screen design.
+    </div>
+  </div>
+</div>
+
+<p>If you find that the standard indicators aren't meeting your needs (due to space constraints, state complexities), by all means design your own. Make it feel like part of the Android family by injecting some of the visual characteristics of the standard indicators. In this example, we carried over the circular shape, the same shade of blue, and the flat and simple style.</p>
diff --git a/docs/html/design/building-blocks/tabs.jd b/docs/html/design/building-blocks/tabs.jd
index 19ed1c3..fe05f80 100644
--- a/docs/html/design/building-blocks/tabs.jd
+++ b/docs/html/design/building-blocks/tabs.jd
@@ -6,6 +6,7 @@
 <p>Tabs in the action bar make it easy to explore and switch between different views or functional
 aspects of your app, or to browse categorized data sets.</p>
 
+<p>For details on using gestures to move between tabs, see the <a href="{@docRoot}design/patterns/swipe-views.html">Swipe Views</a> pattern.</p>
 
 <h2 id="scrollable">Scrollable Tabs</h2>
 
@@ -34,9 +35,8 @@
 
 
 <h2 id="fixed">Fixed Tabs</h2>
-
-
-<p>Fixed tabs display all items concurrently. To navigate to a different view, touch the tab.</p>
+<p>Fixed tabs display all items concurrently. To navigate to a different view, touch the tab, or swipe left or right.</p>
+<p>Fixed tabs are displayed with equal width, based on the width of the widest tab label. If there is insufficient room to display all tabs, the tab labels themselves will be scrollable. For this reason, fixed tabs are best suited for displaying 3 or fewer tabs.</p>
 
 <img src="{@docRoot}design/media/tabs_standard.png">
 <div class="figure-caption">
diff --git a/docs/html/design/design_toc.cs b/docs/html/design/design_toc.cs
index a31fdd3..c3020e1 100644
--- a/docs/html/design/design_toc.cs
+++ b/docs/html/design/design_toc.cs
@@ -26,7 +26,7 @@
   <li class="nav-section">
     <div class="nav-section-header"><a href="<?cs var:toroot ?>design/patterns/index.html">Patterns</a></div>
     <ul>
-      <li><a href="<?cs var:toroot ?>design/patterns/new-4-0.html">New in Android 4.0</a></li>
+      <li><a href="<?cs var:toroot ?>design/patterns/new.html">New in Android</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/gestures.html">Gestures</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/app-structure.html">App Structure</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/navigation.html">Navigation</a></li>
@@ -34,9 +34,13 @@
       <li><a href="<?cs var:toroot ?>design/patterns/multi-pane-layouts.html">Multi-pane Layouts</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/swipe-views.html">Swipe Views</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/selection.html">Selection</a></li>
+      <li><a href="<?cs var:toroot ?>design/patterns/confirming-acknowledging.html">Confirming &amp; Acknowledging</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/notifications.html">Notifications</a></li>
+      <li><a href="<?cs var:toroot ?>design/patterns/widgets.html">Widgets</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/settings.html">Settings</a></li>
+      <li><a href="<?cs var:toroot ?>design/patterns/help.html">Help</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/compatibility.html">Compatibility</a></li>
+      <li><a href="<?cs var:toroot ?>design/patterns/accessibility.html">Accessibility</a></li>
       <li><a href="<?cs var:toroot ?>design/patterns/pure-android.html">Pure Android</a></li>
     </ul>
   </li>
@@ -63,4 +67,8 @@
     <div class="nav-section-header empty"><a href="<?cs var:toroot ?>design/downloads/index.html">Downloads</a></div>
   </li>
 
+  <li class="nav-section">
+    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>design/videos/index.html">Videos</a></div>
+  </li>
+
 </ul>
\ No newline at end of file
diff --git a/docs/html/design/downloads/index.jd b/docs/html/design/downloads/index.jd
index 67dfd79..5f78aea 100644
--- a/docs/html/design/downloads/index.jd
+++ b/docs/html/design/downloads/index.jd
@@ -12,7 +12,7 @@
   <div class="layout-content-col span-4">
 
 <p>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Android_Design_Downloads_20120229.zip">Download All</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_Downloads_20120823.zip">Download All</a>
 </p>
 
   </div>
@@ -37,9 +37,10 @@
   <div class="layout-content-col span-4">
 
 <p>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Android_Design_Fireworks_Stencil_20120229.png">Adobe&reg; Fireworks&reg; PNG Stencil</a>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Android_Design_OmniGraffle_Stencil_20120229.graffle">Omni&reg; OmniGraffle&reg; Stencil</a>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Android_Design_Holo_Widgets_20120302.zip">Adobe&reg; Photoshop&reg; Sources</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_Fireworks_Stencil_20120814.png">Adobe&reg; Fireworks&reg; PNG Stencil</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_Illustrator_Vectors_20120814.ai">Adobe&reg; Illustrator&reg; Stencil</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_OmniGraffle_Stencil_20120814.graffle">Omni&reg; OmniGraffle&reg; Stencil</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_Holo_Widgets_20120814.zip">Adobe&reg; Photoshop&reg; Sources</a>
 </p>
 
   </div>
@@ -65,7 +66,7 @@
   <div class="layout-content-col span-4">
 
 <p>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Android_Design_Icons_20120229.zip">Action Bar Icon Pack</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_Icons_20120814.zip">Action Bar Icon Pack</a>
 </p>
 
   </div>
@@ -90,8 +91,8 @@
   <div class="layout-content-col span-4">
 
 <p>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Roboto_Hinted_20111129.zip">Roboto</a>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Roboto_Specimen_Book_20111129.pdf">Specimen Book</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Roboto_Hinted_20120823.zip">Roboto</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Roboto_Specimen_Book_20111129.pdf">Specimen Book</a>
 </p>
 
   </div>
@@ -114,7 +115,7 @@
   <div class="layout-content-col span-4">
 
 <p>
-  <a class="download-button" href="https://dl-ssl.google.com/android/design/Android_Design_Color_Swatches_20120229.zip">Color Swatches</a>
+  <a class="download-button" href="{@docRoot}downloads/design/Android_Design_Color_Swatches_20120229.zip">Color Swatches</a>
 </p>
 
   </div>
diff --git a/docs/html/design/get-started/creative-vision.jd b/docs/html/design/get-started/creative-vision.jd
index 792b97d..c57b185 100644
--- a/docs/html/design/get-started/creative-vision.jd
+++ b/docs/html/design/get-started/creative-vision.jd
@@ -5,13 +5,7 @@
 
 <div class="vspace size-1">&nbsp;</div>
 
-<p>Ice Cream Sandwich (Android 4.0) marks a major milestone for Android design. We touched nearly every
-pixel of the system as we expanded the new design approaches introduced in Honeycomb tablets to all
-types of mobile devices. Starting with the most basic elements, we introduced a new font, Roboto,
-designed for high-resolution displays. Other big changes include framework-level action bars on
-phones and support for new phones without physical buttons.</p>
-<p>We focused the design work with three overarching goals for our core apps and the system at large.
-As you design apps to work with Android, consider these goals:</p>
+<p>We focused the design of Android around three overarching goals, which apply to our core apps as well as the system at large. As you design apps to work with Android, consider these goals:</p>
 
 <div class="vspace size-1">&nbsp;</div>
 
diff --git a/docs/html/design/get-started/ui-overview.jd b/docs/html/design/get-started/ui-overview.jd
index 34cdd06..bfb9ec9 100644
--- a/docs/html/design/get-started/ui-overview.jd
+++ b/docs/html/design/get-started/ui-overview.jd
@@ -101,8 +101,7 @@
 
     <img src="{@docRoot}design/media/notifications_dismiss.png">
 
-<p>Most notifications have a one-line title and a one-line message. The recommended layout for a
-notification includes two lines. If necessary, you can add a third line. Timestamps are optional.</p>
+<p>Notifications can be expanded to uncover more details and relevant actions. When collapsed, notifications have a one-line title and a one-line message.The recommended layout for a notification includes two lines. If necessary, you can add a third line.</p>
 <p>Swiping a notification right or left removes it from the notification drawer.</p>
 
   </div>
diff --git a/docs/html/design/media/accessibility_contentdesc.png b/docs/html/design/media/accessibility_contentdesc.png
new file mode 100644
index 0000000..6515711
--- /dev/null
+++ b/docs/html/design/media/accessibility_contentdesc.png
Binary files differ
diff --git a/docs/html/design/media/action_bar_pattern_share_pack.png b/docs/html/design/media/action_bar_pattern_share_pack.png
index dde18f3..c8cff61 100644
--- a/docs/html/design/media/action_bar_pattern_share_pack.png
+++ b/docs/html/design/media/action_bar_pattern_share_pack.png
Binary files differ
diff --git a/docs/html/design/media/actionbar_drawer.png b/docs/html/design/media/actionbar_drawer.png
new file mode 100644
index 0000000..95e04f5
--- /dev/null
+++ b/docs/html/design/media/actionbar_drawer.png
Binary files differ
diff --git a/docs/html/design/media/app_structure_book_detail_page_flip.png b/docs/html/design/media/app_structure_book_detail_page_flip.png
index 0cca587..1066094 100644
--- a/docs/html/design/media/app_structure_book_detail_page_flip.png
+++ b/docs/html/design/media/app_structure_book_detail_page_flip.png
Binary files differ
diff --git a/docs/html/design/media/app_structure_gallery_filmstrip.png b/docs/html/design/media/app_structure_gallery_filmstrip.png
index 483bafa..a937533 100644
--- a/docs/html/design/media/app_structure_gallery_filmstrip.png
+++ b/docs/html/design/media/app_structure_gallery_filmstrip.png
Binary files differ
diff --git a/docs/html/design/media/building_blocks_landing.png b/docs/html/design/media/building_blocks_landing.png
index 2da47b7..40ab0da 100644
--- a/docs/html/design/media/building_blocks_landing.png
+++ b/docs/html/design/media/building_blocks_landing.png
Binary files differ
diff --git a/docs/html/design/media/color_spectrum.png b/docs/html/design/media/color_spectrum.png
index 7d2c023..b7ab309 100644
--- a/docs/html/design/media/color_spectrum.png
+++ b/docs/html/design/media/color_spectrum.png
Binary files differ
diff --git a/docs/html/design/media/compatibility_physical_buttons.png b/docs/html/design/media/compatibility_physical_buttons.png
index 30d5ddd..66a23c8 100644
--- a/docs/html/design/media/compatibility_physical_buttons.png
+++ b/docs/html/design/media/compatibility_physical_buttons.png
Binary files differ
diff --git a/docs/html/design/media/compatibility_virtual_nav.png b/docs/html/design/media/compatibility_virtual_nav.png
index ea595a4..27d39b2 100644
--- a/docs/html/design/media/compatibility_virtual_nav.png
+++ b/docs/html/design/media/compatibility_virtual_nav.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_acknowledge.png b/docs/html/design/media/confirm_ack_acknowledge.png
new file mode 100644
index 0000000..b78eb14
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_acknowledge.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_confirming.png b/docs/html/design/media/confirm_ack_confirming.png
new file mode 100644
index 0000000..20a9c02
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_confirming.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_draft_deleted.png b/docs/html/design/media/confirm_ack_draft_deleted.png
new file mode 100644
index 0000000..f189db9
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_draft_deleted.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_ex_beam.png b/docs/html/design/media/confirm_ack_ex_beam.png
new file mode 100644
index 0000000..d099912
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_ex_beam.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_ex_books.png b/docs/html/design/media/confirm_ack_ex_books.png
new file mode 100644
index 0000000..634d7b9
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_ex_books.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_ex_draftsave.png b/docs/html/design/media/confirm_ack_ex_draftsave.png
new file mode 100644
index 0000000..473368d
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_ex_draftsave.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_ex_plus1.png b/docs/html/design/media/confirm_ack_ex_plus1.png
new file mode 100644
index 0000000..6de6710
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_ex_plus1.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_ex_removeapp.png b/docs/html/design/media/confirm_ack_ex_removeapp.png
new file mode 100644
index 0000000..0abacce
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_ex_removeapp.png
Binary files differ
diff --git a/docs/html/design/media/confirm_ack_flowchart.png b/docs/html/design/media/confirm_ack_flowchart.png
new file mode 100644
index 0000000..3935d47
--- /dev/null
+++ b/docs/html/design/media/confirm_ack_flowchart.png
Binary files differ
diff --git a/docs/html/design/media/dialogs_popups_example.png b/docs/html/design/media/dialogs_popups_example.png
index 2deb00d..c7536f3 100644
--- a/docs/html/design/media/dialogs_popups_example.png
+++ b/docs/html/design/media/dialogs_popups_example.png
Binary files differ
diff --git a/docs/html/design/media/downloads_stencils.png b/docs/html/design/media/downloads_stencils.png
index 9e09319..9b1a9fe 100644
--- a/docs/html/design/media/downloads_stencils.png
+++ b/docs/html/design/media/downloads_stencils.png
Binary files differ
diff --git a/docs/html/design/media/extras_googleio_12.png b/docs/html/design/media/extras_googleio_12.png
new file mode 100644
index 0000000..7ab994d
--- /dev/null
+++ b/docs/html/design/media/extras_googleio_12.png
Binary files differ
diff --git a/docs/html/design/media/help_better.png b/docs/html/design/media/help_better.png
new file mode 100644
index 0000000..83d7b07
--- /dev/null
+++ b/docs/html/design/media/help_better.png
Binary files differ
diff --git a/docs/html/design/media/help_cling.png b/docs/html/design/media/help_cling.png
new file mode 100644
index 0000000..c91d189
--- /dev/null
+++ b/docs/html/design/media/help_cling.png
Binary files differ
diff --git a/docs/html/design/media/help_dont.png b/docs/html/design/media/help_dont.png
new file mode 100644
index 0000000..3c52c97
--- /dev/null
+++ b/docs/html/design/media/help_dont.png
Binary files differ
diff --git a/docs/html/design/media/help_evenbetter.png b/docs/html/design/media/help_evenbetter.png
new file mode 100644
index 0000000..66b9d16
--- /dev/null
+++ b/docs/html/design/media/help_evenbetter.png
Binary files differ
diff --git a/docs/html/design/media/help_overflow.png b/docs/html/design/media/help_overflow.png
new file mode 100644
index 0000000..fb2bc0a
--- /dev/null
+++ b/docs/html/design/media/help_overflow.png
Binary files differ
diff --git a/docs/html/design/media/help_solo_overflow.png b/docs/html/design/media/help_solo_overflow.png
new file mode 100644
index 0000000..9423ede
--- /dev/null
+++ b/docs/html/design/media/help_solo_overflow.png
Binary files differ
diff --git a/docs/html/design/media/iconography_notification_focal.png b/docs/html/design/media/iconography_notification_focal.png
index 20d5e8f..f21954f 100644
--- a/docs/html/design/media/iconography_notification_focal.png
+++ b/docs/html/design/media/iconography_notification_focal.png
Binary files differ
diff --git a/docs/html/design/media/index_landing_page.png b/docs/html/design/media/index_landing_page.png
index 3f319b0..2065344 100644
--- a/docs/html/design/media/index_landing_page.png
+++ b/docs/html/design/media/index_landing_page.png
Binary files differ
diff --git a/docs/html/design/media/multipane_expand.png b/docs/html/design/media/multipane_expand.png
index f761e5f..6014cc8 100644
--- a/docs/html/design/media/multipane_expand.png
+++ b/docs/html/design/media/multipane_expand.png
Binary files differ
diff --git a/docs/html/design/media/multipane_show.png b/docs/html/design/media/multipane_show.png
index b10c91c..9993c9b 100644
--- a/docs/html/design/media/multipane_show.png
+++ b/docs/html/design/media/multipane_show.png
Binary files differ
diff --git a/docs/html/design/media/new_accessibility.png b/docs/html/design/media/new_accessibility.png
new file mode 100644
index 0000000..864ee5c
--- /dev/null
+++ b/docs/html/design/media/new_accessibility.png
Binary files differ
diff --git a/docs/html/design/media/new_notifications.png b/docs/html/design/media/new_notifications.png
new file mode 100644
index 0000000..a7293c8
--- /dev/null
+++ b/docs/html/design/media/new_notifications.png
Binary files differ
diff --git a/docs/html/design/media/new_widgets.png b/docs/html/design/media/new_widgets.png
new file mode 100644
index 0000000..7e6201b
--- /dev/null
+++ b/docs/html/design/media/new_widgets.png
Binary files differ
diff --git a/docs/html/design/media/notifications_dismiss.png b/docs/html/design/media/notifications_dismiss.png
index 71bed4f..696a97f 100644
--- a/docs/html/design/media/notifications_dismiss.png
+++ b/docs/html/design/media/notifications_dismiss.png
Binary files differ
diff --git a/docs/html/design/media/notifications_expand_contract_msg.png b/docs/html/design/media/notifications_expand_contract_msg.png
new file mode 100644
index 0000000..056c9f2
--- /dev/null
+++ b/docs/html/design/media/notifications_expand_contract_msg.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_additional_fail.png b/docs/html/design/media/notifications_pattern_additional_fail.png
index 707c98c..4f056db 100644
--- a/docs/html/design/media/notifications_pattern_additional_fail.png
+++ b/docs/html/design/media/notifications_pattern_additional_fail.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_additional_win.png b/docs/html/design/media/notifications_pattern_additional_win.png
index eb193d8..9d69dfd 100644
--- a/docs/html/design/media/notifications_pattern_additional_win.png
+++ b/docs/html/design/media/notifications_pattern_additional_win.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_anatomy.png b/docs/html/design/media/notifications_pattern_anatomy.png
index cacc183..c9fdf85 100644
--- a/docs/html/design/media/notifications_pattern_anatomy.png
+++ b/docs/html/design/media/notifications_pattern_anatomy.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_dialog_toast.png b/docs/html/design/media/notifications_pattern_dialog_toast.png
deleted file mode 100644
index 517d57b..0000000
--- a/docs/html/design/media/notifications_pattern_dialog_toast.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_expand_contract.png b/docs/html/design/media/notifications_pattern_expand_contract.png
new file mode 100644
index 0000000..e89835c
--- /dev/null
+++ b/docs/html/design/media/notifications_pattern_expand_contract.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_expandable.png b/docs/html/design/media/notifications_pattern_expandable.png
new file mode 100644
index 0000000..31cb3f1
--- /dev/null
+++ b/docs/html/design/media/notifications_pattern_expandable.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_ongoing_music.png b/docs/html/design/media/notifications_pattern_ongoing_music.png
index 01039bd..77b24ed 100644
--- a/docs/html/design/media/notifications_pattern_ongoing_music.png
+++ b/docs/html/design/media/notifications_pattern_ongoing_music.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_personal.png b/docs/html/design/media/notifications_pattern_personal.png
new file mode 100644
index 0000000..a7293c8
--- /dev/null
+++ b/docs/html/design/media/notifications_pattern_personal.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_phone_icons.png b/docs/html/design/media/notifications_pattern_phone_icons.png
index 09d8a83..bee66c9 100644
--- a/docs/html/design/media/notifications_pattern_phone_icons.png
+++ b/docs/html/design/media/notifications_pattern_phone_icons.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_priority.png b/docs/html/design/media/notifications_pattern_priority.png
new file mode 100644
index 0000000..e89835c
--- /dev/null
+++ b/docs/html/design/media/notifications_pattern_priority.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_real_time_people.png b/docs/html/design/media/notifications_pattern_real_time_people.png
index 2af40b8..d03b6f0 100644
--- a/docs/html/design/media/notifications_pattern_real_time_people.png
+++ b/docs/html/design/media/notifications_pattern_real_time_people.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_social_fail.png b/docs/html/design/media/notifications_pattern_social_fail.png
index 2c8fddc..aa0e028 100644
--- a/docs/html/design/media/notifications_pattern_social_fail.png
+++ b/docs/html/design/media/notifications_pattern_social_fail.png
Binary files differ
diff --git a/docs/html/design/media/notifications_pattern_two_actions.png b/docs/html/design/media/notifications_pattern_two_actions.png
new file mode 100644
index 0000000..7c19f2e
--- /dev/null
+++ b/docs/html/design/media/notifications_pattern_two_actions.png
Binary files differ
diff --git a/docs/html/design/media/principles_decide_for_me.png b/docs/html/design/media/principles_decide_for_me.png
index 2d8b883..8080b4e 100644
--- a/docs/html/design/media/principles_decide_for_me.png
+++ b/docs/html/design/media/principles_decide_for_me.png
Binary files differ
diff --git a/docs/html/design/media/principles_error.png b/docs/html/design/media/principles_error.png
index 9376766..c867fe6 100644
--- a/docs/html/design/media/principles_error.png
+++ b/docs/html/design/media/principles_error.png
Binary files differ
diff --git a/docs/html/design/media/principles_information_when_need_it.png b/docs/html/design/media/principles_information_when_need_it.png
index c5ef3ca..d78d5c5 100644
--- a/docs/html/design/media/principles_information_when_need_it.png
+++ b/docs/html/design/media/principles_information_when_need_it.png
Binary files differ
diff --git a/docs/html/design/media/principles_keep_it_brief.png b/docs/html/design/media/principles_keep_it_brief.png
index 9c2813b..ee7dbbb 100644
--- a/docs/html/design/media/principles_keep_it_brief.png
+++ b/docs/html/design/media/principles_keep_it_brief.png
Binary files differ
diff --git a/docs/html/design/media/principles_never_lose_stuff.png b/docs/html/design/media/principles_never_lose_stuff.png
index acbefea..84037d9 100644
--- a/docs/html/design/media/principles_never_lose_stuff.png
+++ b/docs/html/design/media/principles_never_lose_stuff.png
Binary files differ
diff --git a/docs/html/design/media/progress_activity_custom.png b/docs/html/design/media/progress_activity_custom.png
new file mode 100644
index 0000000..2bfdd52
--- /dev/null
+++ b/docs/html/design/media/progress_activity_custom.png
Binary files differ
diff --git a/docs/html/design/media/progress_activity_custom_app.png b/docs/html/design/media/progress_activity_custom_app.png
new file mode 100644
index 0000000..e572508
--- /dev/null
+++ b/docs/html/design/media/progress_activity_custom_app.png
Binary files differ
diff --git a/docs/html/design/media/progress_activity_do.png b/docs/html/design/media/progress_activity_do.png
new file mode 100644
index 0000000..fd22436
--- /dev/null
+++ b/docs/html/design/media/progress_activity_do.png
Binary files differ
diff --git a/docs/html/design/media/progress_activity_dont.png b/docs/html/design/media/progress_activity_dont.png
new file mode 100644
index 0000000..08c4b5d
--- /dev/null
+++ b/docs/html/design/media/progress_activity_dont.png
Binary files differ
diff --git a/docs/html/design/media/swipe_views2.png b/docs/html/design/media/swipe_views2.png
index 6479a2f..ee0f2c4 100644
--- a/docs/html/design/media/swipe_views2.png
+++ b/docs/html/design/media/swipe_views2.png
Binary files differ
diff --git a/docs/html/design/media/swipe_views3.png b/docs/html/design/media/swipe_views3.png
new file mode 100644
index 0000000..bdf9994
--- /dev/null
+++ b/docs/html/design/media/swipe_views3.png
Binary files differ
diff --git a/docs/html/design/media/tabs_youtube.png b/docs/html/design/media/tabs_youtube.png
index 69e9268..4ea6c1c 100644
--- a/docs/html/design/media/tabs_youtube.png
+++ b/docs/html/design/media/tabs_youtube.png
Binary files differ
diff --git a/docs/html/design/media/themes_holo_dark.png b/docs/html/design/media/themes_holo_dark.png
index 0a5876a..e1f4477 100644
--- a/docs/html/design/media/themes_holo_dark.png
+++ b/docs/html/design/media/themes_holo_dark.png
Binary files differ
diff --git a/docs/html/design/media/themes_holo_inverse.png b/docs/html/design/media/themes_holo_inverse.png
index 50be4fb..528d119 100644
--- a/docs/html/design/media/themes_holo_inverse.png
+++ b/docs/html/design/media/themes_holo_inverse.png
Binary files differ
diff --git a/docs/html/design/media/themes_holo_light.png b/docs/html/design/media/themes_holo_light.png
index edc7f77..4f34bb3 100644
--- a/docs/html/design/media/themes_holo_light.png
+++ b/docs/html/design/media/themes_holo_light.png
Binary files differ
diff --git a/docs/html/design/media/ui_overview_notifications.png b/docs/html/design/media/ui_overview_notifications.png
index bc0513f..fe4375e 100644
--- a/docs/html/design/media/ui_overview_notifications.png
+++ b/docs/html/design/media/ui_overview_notifications.png
Binary files differ
diff --git a/docs/html/design/media/widgets_collection_bookmarks.png b/docs/html/design/media/widgets_collection_bookmarks.png
new file mode 100644
index 0000000..86d4d88
--- /dev/null
+++ b/docs/html/design/media/widgets_collection_bookmarks.png
Binary files differ
diff --git a/docs/html/design/media/widgets_collection_gmail.png b/docs/html/design/media/widgets_collection_gmail.png
new file mode 100644
index 0000000..bbd538d
--- /dev/null
+++ b/docs/html/design/media/widgets_collection_gmail.png
Binary files differ
diff --git a/docs/html/design/media/widgets_config.png b/docs/html/design/media/widgets_config.png
new file mode 100644
index 0000000..0ac3473
--- /dev/null
+++ b/docs/html/design/media/widgets_config.png
Binary files differ
diff --git a/docs/html/design/media/widgets_control.png b/docs/html/design/media/widgets_control.png
new file mode 100644
index 0000000..a46add8
--- /dev/null
+++ b/docs/html/design/media/widgets_control.png
Binary files differ
diff --git a/docs/html/design/media/widgets_gestures.png b/docs/html/design/media/widgets_gestures.png
new file mode 100644
index 0000000..f991609
--- /dev/null
+++ b/docs/html/design/media/widgets_gestures.png
Binary files differ
diff --git a/docs/html/design/media/widgets_hybrid.png b/docs/html/design/media/widgets_hybrid.png
new file mode 100644
index 0000000..470f75f
--- /dev/null
+++ b/docs/html/design/media/widgets_hybrid.png
Binary files differ
diff --git a/docs/html/design/media/widgets_info.png b/docs/html/design/media/widgets_info.png
new file mode 100644
index 0000000..6621158
--- /dev/null
+++ b/docs/html/design/media/widgets_info.png
Binary files differ
diff --git a/docs/html/design/media/widgets_resizing01.png b/docs/html/design/media/widgets_resizing01.png
new file mode 100644
index 0000000..5c85df6
--- /dev/null
+++ b/docs/html/design/media/widgets_resizing01.png
Binary files differ
diff --git a/docs/html/design/media/widgets_resizing02.png b/docs/html/design/media/widgets_resizing02.png
new file mode 100644
index 0000000..28f9461
--- /dev/null
+++ b/docs/html/design/media/widgets_resizing02.png
Binary files differ
diff --git a/docs/html/design/patterns/accessibility.jd b/docs/html/design/patterns/accessibility.jd
new file mode 100644
index 0000000..b2fbda9
--- /dev/null
+++ b/docs/html/design/patterns/accessibility.jd
@@ -0,0 +1,80 @@
+page.title=Accessibility
+@jd:body
+
+<p>One of Android's missions is to organize the world's information and make it universally accessible and useful. Accessibility is the measure of how successfully a product can be used by people with varying abilities. Our mission applies to all users-including people with disabilities such as visual impairment, color deficiency, hearing loss, and limited dexterity.</p>
+<p><a href="https://www.google.com/#hl=en&q=universal+design&fp=1">Universal design</a> is the practice of making products that are inherently accessible to all users, regardless of ability. The Android design patterns were created in accordance with universal design principles, and following them will help your app meet basic usability standards. Adhering to universal design and enabling Android's accessibility tools will make your app as accessible as possible.</p>
+<p>Robust support for accessibility will increase your app's user base. It may also be required for adoption by some organizations.</p>
+<p><a href="http://www.google.com/accessibility/">Learn more about Google and accessibility.</a></p>
+
+<h2 id="tools">Android's Accessibility Tools</h2>
+<p>Android includes several features that support access for users with visual impairments; they don't require drastic visual changes to your app.</p>
+
+<ul>
+  <li><strong><a href="https://play.google.com/store/apps/details?id=com.google.android.marvin.talkback">TalkBack</a></strong> is a pre-installed screen reader service provided by Google. It uses spoken feedback to describe the results of actions such as launching an app, and events such as notifications.</li>
+  <li><strong>Explore by Touch</strong> is a system feature that works with TalkBack, allowing you to touch your device's screen and hear what's under your finger via spoken feedback. This feature is helpful to users with low vision.</li>
+  <li><strong>Accessibility settings</strong> let you modify your device's display and sound options, such as increasing the text size, changing the speed at which text is spoken, and more.</li>
+</ul>
+
+<p>Some users use hardware or software directional controllers (such as a D-pad, trackball, keyboard) to jump from selection to selection on a screen. They interact with the structure of your app in a linear fashion, similar to 4-way remote control navigation on a television.</p>
+
+<h2 id="tools">Guidelines</h2>
+<p>The Android design principle "I should always know where I am" is key for accessibility concerns. As a user navigates through an application, they need feedback and a mental model of where they are. All users benefit from a strong sense of information hierarchy and an architecture that makes sense. Most users benefit from visual and haptic feedback during their navigation (such as labels, colors, icons, touch feedback) Low vision users benefit from explicit verbal descriptions and large visuals with high contrast.</p>
+<p>As you design your app, think about the labels and notations needed to navigate your app by sound. When using Explore by Touch, the user enables an invisible but audible layer of structure in your application. Like any other aspect of app design, this structure can be simple, elegant, and robust. The following are Android's recommended guidelines to enable effective navigation for all users.</p>
+
+<h4>Make navigation intuitive</h4>
+<p>Design well-defined, clear task flows with minimal navigation steps, especially for major user tasks. Make sure those tasks are navigable via focus controls. </p>
+
+<h4>Use recommended touch target sizes</h4>
+<p>48 dp is the recommended touch target size for on screen elements. Read about <a href="{@docRoot}design/style/metrics-grids.html">Android Metrics and Grids</a> to learn about implementation strategies to help most of your users. For certain users, it may be appropriate to use larger touch targets. An example of this is educational apps, where buttons larger than the minimum recommendations are appropriate for children with developing motor skills and people with manual dexterity challenges.</p>
+
+
+<h4>Label visual UI elements meaningfully</h4>
+<p>In your wireframes, <a href="{@docRoot}guide/topics/ui/accessibility/apps.html#label-ui">label functional UI components</a> that have no visible text. Those components might be buttons, icons, tabs with icons, and icons with state (like stars). Developers can use the <code><a href="{@docRoot}guide/topics/ui/accessibility/apps.html#label-ui">contentDescription</a></code> attribute to set the label.</p>
+
+<div class ="layout-content-row">
+    <div class="layout-content-col span-8">
+      <img src="{@docRoot}design/media/accessibility_contentdesc.png">
+    </div>
+    <div class="layout-content-col span-5 with-callouts">
+      <ol>
+        <li class="value-1">group</li>
+        <li class="value-2">all contacts</li>
+        <li class="value-3">favorites</li>
+        <li class="value-4">search</li>
+        <li class="value-5">action overflow button</li>
+        <li class="value-6">
+          <em>when starred:</em> remove from favorites </br>
+          <em>when not starred:</em> add to favorties</li>
+        <li class="value-7">action overflow button</li>
+        <li class="value-8">text message</li>
+        <li class="value-9">video chat</li>
+      </ol>
+  </div>
+</div>
+
+<h4>Provide alternatives to affordances that time out</h4>
+<p>Your app may have icons or controls that disappear after a certain amount of time. For example, five seconds after starting a video, playback controls may fade from the screen.</p>
+
+<p>Due to the way that TalkBack works, those controls are not read out loud unless they are focused on. If they fade out from the screen quickly, your user may not even be aware that they are available. Therefore, make sure that you are not relying on timed out controls for high priority task flows. (This is a good universal design guideline too.) If the controls enable an important function, make sure that the user can turn on the controls again and/or their function is duplicated elsewhere. You can also change the behavior of your app when accessibility services are turned on. Your developer may be able to make sure that timed-out controls won't disappear.</p>
+
+<h4>Use standard framework controls or enable TalkBack for custom controls</h4>
+<p>Standard Android framework controls work automatically with accessibility services and have ContentDescriptions built in by default.</p>
+
+<p>An oft-overlooked system control is font size. Users can turn on a system-wide large font size in Settings; using the default system font size in your application will enable the user's preferences in your app as well. To enable system font size in your app, mark text and their associated containers to be measured in <a href="{@docRoot}guide/practices/screens_support.html#screen-independence">scale pixels</a>.</p>
+
+<p>Also, keep in mind that when users have large fonts enabled or speak a different language than you, their type might be larger than the space you've allotted for it. Read <a href="{@docRoot}design/style/devices-displays.html">Devices and Displays</a> and <a href="http://developer.android.com/guide/practices/screens_support.html">Supporting Multiple Screens</a> for design strategies.</p>
+
+<p>If you use custom controls, Android has the developer tools in place to allow adherence to the above guidelines and provide meaningful descriptions about the UI. Provide adequate notation on your wireframes and direct your developer to the <a href="{@docRoot}guide/topics/ui/accessibility/apps.html#custom-views">Custom Views</a> documentation.</p>
+
+<h4>Try it out yourself</h4>
+<p>Turn on the TalkBack service in <strong>Settings > Accessibility</strong> and navigate your application using directional controls or eyes-free navigation.</p>
+
+<h2>Checklist</h2>
+<ul>
+  <li>Make navigation intuitive</li>
+  <li>Use recommended touch target sizes</li>
+  <li>Label visual UI elements meaningfully</li>
+  <li>Provide alternatives to affordances that time out</li>
+  <li>Use standard framework controls or enable TalkBack for custom controls</li>
+  <li>Try it out yourself</li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/design/patterns/actionbar.jd b/docs/html/design/patterns/actionbar.jd
index fe77e79..ba5b400 100644
--- a/docs/html/design/patterns/actionbar.jd
+++ b/docs/html/design/patterns/actionbar.jd
@@ -3,20 +3,15 @@
 
 <img src="{@docRoot}design/media/action_bar_pattern_overview.png">
 
-<p>The <em>action bar</em> is arguably the most important structural element of an Android app. It's a
-dedicated piece of real estate at the top of each screen that is generally persistent throughout the
-app.</p>
-<p><strong>The main purpose of the action bar is to</strong>:</p>
+<p>The <em>action bar</em> is a dedicated piece of real estate at the top of each screen that is generally persistent throughout the app.</p>
+<p><strong>It provides several key functions</strong>:</p>
 <ul>
-<li>Make important actions (such as <em>New</em> or <em>Search</em>, etc) prominent and accessible in a predictable
-   way.</li>
-<li>Support consistent navigation and view switching within apps.</li>
-<li>Reduce clutter by providing an action overflow for rarely used actions.</li>
-<li>Provide a dedicated space for giving your app an identity.</li>
+  <li>Makes important actions prominent and accessible in a predictable way (such as <em>New</em> or <em>Search</em>).</li>
+  <li>Supports consistent navigation and view switching within apps.</li>
+  <li>Reduces clutter by providing an action overflow for rarely used actions.</li>
+  <li>Provides a dedicated space for giving your app an identity.</li>
 </ul>
-<p>If you're new to writing Android apps, note that the action bar is one of the most important design
-elements you can implement. Following the guidelines described here will go a long way toward making
-your app's interface consistent with the core Android apps.</p>
+<p>If you're new to writing Android apps, note that the action bar is one of the most important design elements you can implement. Following the guidelines described here will go a long way toward making your app's interface consistent with the core Android apps.</p>
 <h2 id="organization">General Organization</h2>
 
 <p>The action bar is split into four different functional areas that apply to most apps.</p>
@@ -66,7 +61,7 @@
         <p>
 
 Show the most important actions of your app in the actions section. Actions that don't fit in the
-action bar are moved automatically to the action overflow.
+action bar are moved automatically to the action overflow. Long-press on an icon to view the action's name.
 
         </p>
       </li>
@@ -141,29 +136,47 @@
 </ul>
 <p>Use CABs whenever you allow the user to select data via long press. You can control the action
 content of a CAB in order to insert the actions you would like the user to be able to perform.</p>
-<p>For more information, refer to the "Selection" pattern.</p>
-<h2 id="elements">Action Bar Elements</h2>
+<p>For more information, refer to the <a href="{@docRoot}design/patterns/selection.html">Selection
+pattern</a>.</p>
+
+<h2 id="elements">View Controls</h2>
+<p>If your app displays data in different views, the action bar has three different controls to allow users to switch between them: tabs, spinners, and drawers.</p>
 
 <h4>Tabs</h4>
-<p><em>Tabs</em> display app views concurrently and make it easy to explore and switch between them. Use tabs
-if you expect your users to switch views frequently.</p>
+<p><em>Tabs</em> display app views concurrently and make it easy to explore and switch between them. Tabs may be fixed, where all tabs are simultaneously displayed, or may scroll, allowing a larger number of views to be presented.</p>
 
 <img src="{@docRoot}design/media/tabs_youtube.png">
 
-<p>There are two types of tabs: fixed and scrollable.</p>
+<p><strong>Use tabs if</strong>:</p>
+<ul>
+<li>You expect your app's users to switch views frequently.</li>
+<li>You want the user to be highly aware of the alternate views.</li>
+</ul>
 
+<h4>Fixed tabs</h4>
 <div class="layout-content-row">
   <div class="layout-content-col span-6">
+<p><em>Fixed tabs</em> are always visible on the screen, and can't be moved out of the way like scrollable
+tabs. Fixed tabs in the main action bar can move to the top bar when the screen orientation changes.</p>
+
+<p>Use fixed tabs to support quick changes between two or three app views. Fixed tabs should always allow the user to navigate between the views by swiping left or right on the content area.</p>
+
+  </div>
+  <div class="layout-content-col span-7">
+
+    <img src="{@docRoot}design/media/action_bar_pattern_default_tabs.png">
+    <div class="figure-caption">
+      Default fixed tabs shown in Holo Dark &amp; Light.
+    </div>
+
+  </div>
+</div>
 
 <h4>Scrollable tabs</h4>
-<p><em>Scrollable tabs</em> always take up the entire width of the bar, with the currently active view item in
-the center, and therefore need to live in a dedicated bar. Scrollable tabs can themselves be
-scrolled horizontally to bring more tabs into view.</p>
-<p>Use scrollable tabs if you have a large number of views or if you're unsure how many views will be
-displayed because your app inserts views dynamically (for example, open chats in a messaging app
-that the user can navigate between). Scrollable tabs should always allow the user to navigate
-between the views by swiping left or right on the content area as well as swiping the tabs
-themselves.</p>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+<p><em>Scrollable tabs</em> always take up the entire width of the bar, with the currently active view item in the center, and therefore need to live in a dedicated bar. Scrollable tabs can themselves be scrolled horizontally to bring more tabs into view.</p>
+<p>Use scrollable tabs if you have a large number of views or if you're unsure how many views will be displayed because your app inserts views dynamically (for example, open chats in a messaging app that the user can navigate between). Scrollable tabs should always allow the user to navigate between the views by swiping left or right on the content area as well as swiping the tabs themselves.</p>
 
   </div>
   <div class="layout-content-col span-7">
@@ -184,30 +197,12 @@
 <div class="layout-content-row">
   <div class="layout-content-col span-6">
 
-<h4>Fixed tabs</h4>
-<p><em>Fixed tabs</em> are always visible on the screen, and can't be moved out of the way like scrollable
-tabs. Fixed tabs in the main action bar can move to the top bar when the screen orientation changes.</p>
-
-  </div>
-  <div class="layout-content-col span-7">
-
-    <img src="{@docRoot}design/media/action_bar_pattern_default_tabs.png">
-    <div class="figure-caption">
-      Default fixed tabs shown in Holo Dark &amp; Light.
-    </div>
-
-  </div>
-</div>
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-
 <h4>Spinners</h4>
 <p>A <em>spinner</em> is a drop-down menu that allows users to switch between views of your app. </p>
-<p><strong>Use spinners rather than tabs in the main action bar if</strong>:</p>
+<p><strong>Use a spinner in the main action bar if</strong>:</p>
 <ul>
 <li>You don't want to give up the vertical screen real estate for a dedicated tab bar.</li>
-<li>You expect your app's users to switch views infrequently.</li>
+<li>The user is switching between views of the same data set (for example: calendar events viewed by day, week, or month) or data sets of the same type (such as content for two different accounts).</li>
 </ul>
 
   </div>
@@ -221,7 +216,24 @@
   </div>
 </div>
 
-<h4>Action buttons</h4>
+<h4>Drawers</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+<p>A <em>drawer</em> is a slide-out menu that allows users to switch between views of your app. It can be opened by touching the action bar's app icon (decorated with the Up caret.) Additionally, a drawer can be revealed by an edge swipe from the left of the screen, and dismissed by swiping from the right edge of the drawer. However, because many users will rely on Up navigation to open a drawer, it is only suitable for use at the topmost level of your app's hierarchy.</p>
+
+<p><strong>Open a drawer from the main action bar if</strong>:</p>
+<ul>
+<li>You don't want to give up the vertical screen real estate for a dedicated tab bar.</li>
+<li>You want to provide direct navigation to a number of views within your app which don't have direct relationships between each other.</li>
+</ul>
+
+  </div>
+  <div class="layout-content-col span-7">
+    <img src="{@docRoot}design/media/actionbar_drawer.png">
+  </div>
+</div>
+
+<h2>Action buttons</h2>
 <p><em>Action buttons</em> on the action bar surface your app's most important activities. Think about which
 buttons will get used most often, and order them accordingly. Depending on available screen real
 estate, the system shows your most important actions as action buttons and moves the rest to the
@@ -281,7 +293,7 @@
 </p>
 <p>
 
-<a href="https://dl-ssl.google.com/android/design/Android_Design_Icons_20120229.zip">Download the Action Bar Icon Pack</a>
+<a href="{@docRoot}downloads/design/Android_Design_Icons_20120229.zip">Download the Action Bar Icon Pack</a>
 
 </p>
 
diff --git a/docs/html/design/patterns/app-structure.jd b/docs/html/design/patterns/app-structure.jd
index e2398ed..a483522 100644
--- a/docs/html/design/patterns/app-structure.jd
+++ b/docs/html/design/patterns/app-structure.jd
@@ -185,28 +185,18 @@
 in a category view.</p>
 <h2 id="details">Details</h2>
 
-<p>The detail view allows you to view and act on your data. The layout of the detail view depends on
-the data type being displayed, and therefore differs widely among apps.</p>
+<p>The detail view allows you to view and act on your data. The layout of the detail view depends on the data type being displayed, and therefore differs widely among apps.</p>
 
 <div class="layout-content-row">
   <div class="layout-content-col span-4">
 
 <h4>Layout</h4>
-<p>Consider the activities people will perform in the detail view and arrange the layout accordingly.
-For immersive content, make use of the lights-out mode to allow for distraction-free viewing of
-full-screen content.</p>
-
-    <img src="{@docRoot}design/media/app_structure_people_detail.png">
+<p>Consider the activities people will perform in the detail view and arrange the layout accordingly.</p>
 
   </div>
   <div class="layout-content-col span-9">
 
-    <img src="{@docRoot}design/media/app_structure_book_detail_page_flip.png">
-    <div class="figure-caption">
-      Google Books' detail view is all about replicating the experience of reading an actual book.
-      The page-flip animation reinforces that notion. To create an immersive experience the app
-      enters lights-out mode, which hides all system UI affordances.
-    </div>
+    <img src="{@docRoot}design/media/app_structure_people_detail.png">
 
     <div class="figure-caption">
       The purpose of the People app's detail view is to surface communication options. The list view
@@ -217,9 +207,25 @@
   </div>
 </div>
 
+<div class="layout-content-row">
+  <div class="layout-content-col span-4">
+
+<h4>Lights-out mode</h4>
+<p>Immersive content like media and games is best experienced full screen without distractions. But that doesn't mean you can't also offer actions on the content like sharing, commenting, or searching. If the user hasn't interacted with any of the controls after a short period of time, automatically fade away the action bar and all system UI affordances so the user can lean back and enjoy the content. We call this lights-out mode. Later, if the user wants to take some action, they can touch anywhere on the screen to exit lights-out mode and bring back the controls.</p>
+
+  </div>
+  <div class="layout-content-col span-9">
+
+    <img src="{@docRoot}design/media/app_structure_book_detail_page_flip.png">
+    <div class="figure-caption">
+      Google Books' detail view replicates the immersive experience of reading an actual book through lights-out mode and a page-flip animation.
+    </div>
+  </div>
+</div>
+
 <h4>Make navigation between detail views efficient</h4>
 <p>If your users are likely to want to look at multiple items in sequence, allow them to navigate
-between items from within the detail view. Use swipe views or other techniques, such as filmstrips,
+between items from within the detail view. Use swipe views or other techniques, such as thumbnail view controls,
 to achieve this.</p>
 
 <img src="{@docRoot}design/media/app_structure_gmail_swipe.png">
@@ -229,8 +235,8 @@
 
 <img src="{@docRoot}design/media/app_structure_gallery_filmstrip.png">
 <div class="figure-caption">
-  In addition to supporting swipe gestures to move left or right through images, Gallery provides a
-  filmstrip control that lets people quickly jump to specific images.
+  In addition to supporting swipe gestures to move left or right through pages, Magazines provides a
+  thumbnail view control that lets people quickly jump to specific pages.
 </div>
 
 <h2 id="checklist">Checklist</h2>
diff --git a/docs/html/design/patterns/confirming-acknowledging.jd b/docs/html/design/patterns/confirming-acknowledging.jd
new file mode 100644
index 0000000..ce0631b
--- /dev/null
+++ b/docs/html/design/patterns/confirming-acknowledging.jd
@@ -0,0 +1,69 @@
+page.title=Confirming &amp; Acknowledging
+@jd:body
+
+<p>In some situations, when a user invokes an action in your app, it's a good idea to <em>confirm</em> or <em>acknowledge</em> that action through text.</p>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/confirm_ack_confirming.png">
+    <p><strong>Confirming</strong> is asking the user to verify that they truly want to proceed with an action they just invoked. In some cases, the confirmation is presented along with a warning or critical information related to the action that they need to consider.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/confirm_ack_acknowledge.png">
+    <p><strong>Acknowledging</strong> is displaying text to let the user know that the action they just invoked has been completed. This removes uncertainty about implicit operations that the system is taking. In some cases, the acknowledgment is presented along with an option to undo the action.</p>
+  </div>
+</div>
+
+<p>Communicating to users in these ways can help alleviate uncertainty about things that have happened or will happen. Confirming or acknowledging can also prevent users from making mistakes they might regret.</p>
+
+<h2>When to Confirm or Acknowledge User Actions</h2>
+<p>Not all actions warrant a confirmation or an acknowledgment. Use this flowchart to guide your design decisions.</p>
+<img src="{@docRoot}design/media/confirm_ack_flowchart.png">
+
+<h2>Confirming</h2>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <h4>Example: Google Play Books</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_books.png">
+    <p>In this example, the user has requested to delete a book from their Google Play library. An <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">alert</a> appears to confirm this action because it's important to understand that the book will no longer be available from any device.</p>
+    <p>When crafting a confirmation dialog, make the title meaningful by echoing the requested action.</p>
+  </div>
+  <div class="layout-content-col span-7">
+    <h4>Example: Android Beam</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_beam.png">
+    <p>Confirmations don't necessarily have to be presented in an alert with two buttons. After initiating Android Beam, the user is prompted to touch the content to be shared (in this example, it's a photo). If they decide not to proceed, they simply move their phone away.</p>
+  </div>
+</div>
+
+<h2>Acknowledging</h2>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <h4>Example: Abandoned Gmail draft saved</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png">
+    <p>In this example, if the user navigates back or up from the Gmail compose screen, something possibly unexpected happens: the current draft is automatically saved. An acknowledgment in the form of a toast makes that apparent. It fades after a few seconds.</p>
+    <p>Undo isn't appropriate here because saving was initiated by the app, not the user. And it's quick and easy to resume composing the message by navigating to the list of drafts.</p>
+
+  </div>
+  <div class="layout-content-col span-6">
+    <h4>Example: Gmail conversation deleted</h4>
+    <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png">
+    <p>After the user deletes a conversation from the list in Gmail, an acknowledgment appears with an undo option. The acknowledgment remains until the user takes an unrelated action, such as scrolling the list.</p>
+  </div>
+</div>
+
+<h2>No Confirmation or Acknowledgment</h2>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <h4>Example: +1'ing</h4>
+    <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png">
+    <p><strong>Confirmation is unnecessary</strong>. If the user +1'd by accident, it's not a big deal. They can just touch the button again to undo the action.</p>
+    <p><strong>Acknowledgment is unnecessary</strong>. The user will see the +1 button bounce and turn red. That's a very clear signal.</p>
+  </div>
+  <div class="layout-content-col span-7">
+    <h4>Example: Removing an app from the Home Screen</h4>
+    <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png">
+    <p><strong>Confirmation is unnecessary</strong>. This is a deliberate action: the user must drag and drop an item onto a relatively large and isolated target. Therefore, accidents are highly unlikely. But if the user regrets the decision, it only takes a few seconds to bring it back again.</p>
+    <p><strong>Acknowledgment is unnecessary</strong>. The user will know the app is gone from the Home Screen because they made it disappear by dragging it away.</p>
+
+  </div>
+</div>
\ No newline at end of file
diff --git a/docs/html/design/patterns/help.jd b/docs/html/design/patterns/help.jd
new file mode 100644
index 0000000..cdac54d
--- /dev/null
+++ b/docs/html/design/patterns/help.jd
@@ -0,0 +1,112 @@
+page.title=Help
+@jd:body
+
+<p>We wish we could guarantee that if you follow every piece of advice on this website, everyone will be able to learn and use your app without a hitch. Sadly, that's not the case.</p>
+
+<p>Some of your users will run into questions or problems along the way. They'll be looking for answers <strong>within your app</strong>, and if they don't find them quickly, they may leave and never come back.</p>
+
+<p>This page covers design patterns for making help accessible in your app and tips for creating help content for users who are eager for assistance.</p>
+
+<h2 id="your-app">Designing Help into Your App</h2>
+
+<h3>Don't show unsolicited help, except in very limited cases</h3>
+<p>Naturally, you want everyone to quickly learn the ropes, discover the cool features, and get the most out of your app. So you might be tempted to present a one-time introductory slideshow, video, or splash screen to all new users when they first open the app. Or you might be drawn to the idea of displaying helpful text bubbles or dialogs when users interact with certain features for the first time.</p>
+<p>In almost all cases, we advise <strong>against</strong> approaches like these because:</p>
+<ul>
+  <li><strong>They're interruptions.</strong> People will be eager to start using your app, and anything you put in front of them will feel like an obstacle or possibly an annoyance, despite your good intentions. And because they didn't ask for it, they probably won't pay close attention to it.</li>
+  <li><strong>They're usually not necessary.</strong> If you have usability concerns about an aspect of your app, don't just throw help at the problem. Try to solve it in the UI. Apply Android design patterns, styles, and building blocks, and you'll go a long way in reducing the need to educate your users.</li>
+</ul>
+<p>The only reason for showing pure help content to new users unsolicited is:<br>
+<em>To teach high value functionality that's only available through a gesture.</em></p>
+
+<p>For example, we use help content to teach users how to place apps on their Home Screen. This functionality is:</p>
+<div class="layout-content-row">
+  <div class="layout-content-col span-8">
+    <ul>
+      <li><strong>High value</strong>
+      <p style="margin-top:0;">Without it, users wouldn't be able to customize the most frequently visited Android screen to meet their needs.</p></li>
+      <li><strong>Available only through a gesture</strong>
+      <p style="margin-top:0;">Because there's no button or menu for it, users might not ever discover it on their own.</p></li>
+    </ul>
+    <p>However, not all high value gesture-only functionality needs a tutorial. For example, don't teach users how to scroll content. They already know how because it's a fundamental, system-wide interaction.</p>
+  </div>
+  <div class="layout-content-col span-5">
+    <img src="{@docRoot}design/media/help_cling.png">
+    <div class="figure-caption">
+      The first time each user visits the All Apps screen, a semi-transparent overlay appears to teach an important gesture.
+    </div>
+  </div>
+  <p class="clearfix">Bottom line: when it comes to offering help in your app, it's much better to <strong>let users come to you</strong> when they need it.</p>
+</div>
+
+<h3 id="standard-design">Follow the standard design for navigating to help</h3>
+
+<p>On every screen in your app, offer help in the <a href="{@docRoot}design/patterns/actionbar.html">action overflow</a>. Always make it the very last item in the menu and label it "Help".</p>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <img src="{@docRoot}design/media/help_overflow.png">
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/help_solo_overflow.png">
+    <div class="figure-caption">
+      Even if your screen has no other action overflow items, "Help" should appear there and not be promoted to the action bar.
+    </div>
+  </div>
+  <p>We've established this standard design so that when users are desperate for help, they won't have to hunt to find it (see design principle: <a href="{@docRoot}design/get-started/principles.html#give-me-tricks">Give me tricks that work everywhere</a>).</p>
+</div>
+
+<h3 id="help-urgent">Assume that every call for help is urgent</h3>
+
+<p>In addition to help, you might want to expose other information, such as copyright info, credits, terms of service, and privacy policy.</p>
+
+<p>Let users access this information through the Help menu item, but optimize the flow for people with urgent questions about how to do something or why something is happening in your app. The smaller subset of users who are looking for legal fine print or the names of the people who created the app won't be as burdened by taking a few extra steps.</p>
+
+<p>The same is true for any communication options you might want to provide, such as contacting customer support or submitting feedback. Offer these options in a way that doesn't add an extra step before users see help. When you put the help content forward, you increase the likelihood that users will find the answers on their own, which in turn reduces your support costs.</p>
+
+<p>When someone chooses "Help":</p>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-4">
+    <img src="{@docRoot}design/media/help_dont.png">
+  </div>
+  <div class="layout-content-col span-4">
+    <img src="{@docRoot}design/media/help_better.png">
+  </div>
+  <div class="layout-content-col span-5">
+    <img src="{@docRoot}design/media/help_evenbetter.png">
+  </div>  
+</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-4">
+    <h4 class="do-dont-label bad">Don't</h4>
+    <p>Present a dialog asking them to choose between help and other options.</p>
+  </div>
+  <div class="layout-content-col span-4">
+    <h4 class="do-dont-label good">Better</h4>
+    <p>Immediately launch a web browser with help content. Place other options in a footer.</p>
+  </div>
+  <div class="layout-content-col span-5">
+    <h4 class="do-dont-label good">Even Better</h4>
+    <p>Build a help screen in your app and offer other options in the action bar. For example, you could let users contact you with questions or feedback through an action button. The action overflow is the ideal place for non-help information that users rarely need.</p>
+    <p>This requires more development work than launching a web browser, but it's a nicer experience for users because they don't leave your app to get the help they need and doesn't require a network connection.</p>
+  </div>
+</div>
+
+<h2>Principles for Writing On-Screen Help Content</h2>
+
+<h4>Help is part of the UI</h4>
+<p>On-screen help is an extension of your app's UI, not a description of it. All words on the screen from the core app to the help should follow our <a href="{@docRoot}design/style/writing.html">Writing Style</a> principles so that the end-to-end experience feels seamless and cohesive.</p>
+
+<h4>Make every pixel count</h4>
+<p>It's not necessary to document every single detail about your app, especially things that are extremely apparent just by looking at the UI, or behaviors that are standard for the platform. Surface just the key additional information that the on-screen text doesn't have room to describe, in a way that makes it easy to map to the screen.</p>
+
+<h4>Pictures are faster than words</h4>
+<p>In describing key UI elements and providing step-by-step instructions, consider combining text with icons, partial screenshots with callouts, and other imagery. You'll need fewer words to explain things, and users will absorb the information more quickly.</p>
+
+<h4>Help me scan, not read</h4>
+<p>People don't read help from start to finish. They scan around, looking for a piece of information containing the answer they need. Make it less burdensome with friendly formatting and layout choices like bold headings, bulleted and numbered lists, tables, and white space between paragraphs. And if you have a large amount of content, divide it into multiple screens to cut down on scrolling.</p>
+
+<h4>Take me straight to the answer</h4>
+<p>What's better than a screen that's easy to scan? A screen that requires no scanning at all because the answer's right there. Consider having each screen in your app navigate to help that's relevant just to that screen. We call this <em>contextual help</em>, and it's the holy grail of user assistance. If you take this approach, be sure to also provide a way to get to the rest of the help content.</p>
\ No newline at end of file
diff --git a/docs/html/design/patterns/index.jd b/docs/html/design/patterns/index.jd
index 6f88e6d..4416de1 100644
--- a/docs/html/design/patterns/index.jd
+++ b/docs/html/design/patterns/index.jd
@@ -20,10 +20,10 @@
   <div id="text-overlay">
     Design apps that behave in a consistent, predictable fashion.
     <br><br>
-    <a href="{@docRoot}design/patterns/new-4-0.html" class="landing-page-link">New in Android 4.0</a>
+    <a href="{@docRoot}design/patterns/new.html" class="landing-page-link">New in Android</a>
   </div>
 
-  <a href="{@docRoot}design/patterns/new-4-0.html">
+  <a href="{@docRoot}design/patterns/new.html">
     <img src="{@docRoot}design/media/patterns_landing.png">
   </a>
 </div>
diff --git a/docs/html/design/patterns/multi-pane-layouts.jd b/docs/html/design/patterns/multi-pane-layouts.jd
index 0e63e32..ad888e9 100644
--- a/docs/html/design/patterns/multi-pane-layouts.jd
+++ b/docs/html/design/patterns/multi-pane-layouts.jd
@@ -26,8 +26,8 @@
 relationship between the panels.</p>
 <h2 id="orientation">Compound Views and Orientation Changes</h2>
 
-<p>Screens should have the same functionality regardless of orientation. If you use a compound view in
-one orientation, don't split it up when the user rotates the screen. There are several techniques
+<p>Screens should strive to have the same functionality regardless of orientation. If you use a compound view in
+one orientation, try not to split it up when the user rotates the screen. There are several techniques
 you can use to adjust the layout after orientation change while keeping functional parity intact.</p>
 
 <div class="layout-content-row">
@@ -67,9 +67,7 @@
   <div class="layout-content-col span-5">
 
 <h4>Expand/collapse</h4>
-<p>When the device rotates, collapse the left pane view to only show the most important information.
-Provide an <em>expand</em> control that allows the user to bring the left pane content back to its original
-width and vice versa.</p>
+<p>When the device rotates, collapse the left pane view to only show the most important information.</p>
 
   </div>
 </div>
@@ -83,9 +81,7 @@
   <div class="layout-content-col span-5">
 
 <h4>Show/hide</h4>
-<p>After rotating the device, show the right pane in fullscreen view. Use the Up icon in the action bar
-to show the left panel and allow navigation to a different email. Hide the left panel by touching
-the content in the detail panel.</p>
+<p>If your screen cannot accommodate the compound view on rotation show the right pane in full screen view on rotation to portrait. Use the Up icon in action bar to show the parent screen.</p>
 
   </div>
 </div>
@@ -104,7 +100,7 @@
 <p>Look for opportunities to consolidate your views into multi-panel compound views.</p>
 </li>
 <li>
-<p>Make sure that your screens provide functional parity after the screen orientation
+<p>Make sure that your screens try to provide functional parity after the screen orientation
   changes.</p>
 </li>
 </ul>
diff --git a/docs/html/design/patterns/new-4-0.jd b/docs/html/design/patterns/new-4-0.jd
deleted file mode 100644
index 91ebba7..0000000
--- a/docs/html/design/patterns/new-4-0.jd
+++ /dev/null
@@ -1,71 +0,0 @@
-page.title=New in Android 4.0
-@jd:body
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
-
-<h4>Navigation bar</h4>
-<p>Android 4.0 removes the need for traditional hardware keys on phones by replacing them with a
-virtual navigation bar that houses the Back, Home and Recents buttons. Read the
-<a href="{@docRoot}design/patterns/compatibility.html">Compatibility</a> pattern to learn how the OS adapts to
-phones with hardware buttons and how pre-Android 3.0 apps that rely on menu keys are supported.</p>
-
-  </div>
-  <div class="layout-content-col span-6">
-
-    <img src="{@docRoot}design/media/whats_new_nav_bar.png">
-
-  </div>
-</div>
-
-<div class="vspace size-2">&nbsp;</div>
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
-
-<h4>Action bar</h4>
-<p>The action bar is the most important structural element of an Android app. It provides consistent
-navigation across the platform and allows your app to surface actions.</p>
-
-  </div>
-  <div class="layout-content-col span-6">
-
-    <img src="{@docRoot}design/media/whats_new_action_bar.png">
-
-  </div>
-</div>
-
-<div class="vspace size-2">&nbsp;</div>
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
-
-<h4>Multi-pane layouts</h4>
-<p>Creating apps that scale well across different form factors and screen sizes is important in the
-Android world. Multi-pane layouts allow you to combine different activities that show separately on
-smaller devices into richer compound views for tablets.</p>
-
-  </div>
-  <div class="layout-content-col span-6">
-
-    <img src="{@docRoot}design/media/whats_new_multipanel.png">
-
-  </div>
-</div>
-
-<div class="vspace size-2">&nbsp;</div>
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
-
-<h4>Selection</h4>
-<p>The long press gesture which was traditionally used to show contextual actions for objects is now
-used for data selection. When selecting data, contextual action bars allow you to surface actions.</p>
-
-  </div>
-  <div class="layout-content-col span-6">
-
-    <img src="{@docRoot}design/media/whats_new_multiselect.png">
-
-  </div>
-</div>
diff --git a/docs/html/design/patterns/new.jd b/docs/html/design/patterns/new.jd
new file mode 100644
index 0000000..1fc4987
--- /dev/null
+++ b/docs/html/design/patterns/new.jd
@@ -0,0 +1,114 @@
+page.title=New in Android
+@jd:body
+
+<h2>Jelly Bean - Android 4.1</h2>
+
+<h4>Notifications</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <p>Notifications have received some notable enhancements in Android 4.1:</p>
+    <ul>
+      <li>Users can act on notifications immediately from the drawer</li>
+      <li>Notifications are more flexible in size and layout</li>
+      <li>A priority flag helps sort notifications by importance</li>
+      <li>Notifications can be collapsed and expanded</li>
+    </ul>
+
+    <p>The base notification layout has not changed, so app notifications designed for versions earlier than Jelly Bean still look and work the same. Check the updated <a href="{@docRoot}design/patterns/notifications.html">Notifications</a> page for more details.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/new_notifications.png">
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<h4>Resizable Application Widgets</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <p>Widgets are an essential aspect of home screen customization, allowing "at-a-glance" views of an app's most important data and functionality right from the user's home screen. Android 4.1 introduces improved App Widgets that can <strong>automatically resize and load different content</strong> based upon a number of factors including:</p>
+    <ul>
+      <li>Where the user drops them on the home screen</li>
+      <li>The size to which the user expands them</li>
+      <li>The amount of room available on the home screen</li>
+    </ul>
+
+    <p>You can supply separate landscape and portrait layouts for your widgets, which the system inflates as appropriate when the screen orientation changes. The Application Widgets has useful details about widget types, limitations, and design considerations.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/new_widgets.png">
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<h4>Accessibility</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-11">
+    <p>One of Android's missions is to organize the world's information and make it universally accessible and useful. Our mission applies to all users-including people with disabilities such as visual impairment, color deficiency, hearing loss, and limited dexterity.</p>
+    <p>The new <a href="{@docRoot}design/patterns/accessibility.html">Accessibility</a> page provides details on how to design your app to be as accessible as possible by:</p>
+    <ul>
+      <li>Making navigation intuitive</li>
+      <li>Using recommended touch target sizes</li>
+      <li>Labeling visual UI elements meaningfully</li>
+      <li>Providing alternatives to affordances that time out</li>
+      <li>Using standard framework controls or enable TalkBack for custom controls</li>
+      <li>Trying it out yourself</li>
+    </ul>
+
+    <p>You can supply separate landscape and portrait layouts for your widgets, which the system inflates as appropriate when the screen orientation changes. The [Application Widgets] (should be link) has useful details about widget types, limitations, and design considerations.</p>
+  </div>
+  <div class="layout-content-col span-2">
+    <img src="{@docRoot}design/media/new_accessibility.png">
+  </div>
+</div>
+
+<h2>Ice Cream Sandwich - Android 4.0</h2>
+
+<h4>Navigation bar</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <p>Android 4.0 removes the need for traditional hardware keys on phones by replacing them with a
+    virtual navigation bar that houses the Back, Home and Recents buttons. Read the <a href="{@docRoot}design/patterns/compatibility.html">Compatibility</a> pattern to learn how the OS adapts to phones with hardware buttons and how pre-Android 3.0 apps that rely on menu keys are supported.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/whats_new_nav_bar.png">
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<h4>Action bar</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <p>The action bar is the most important structural element of an Android app. It provides consistent navigation across the platform and allows your app to surface actions.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/whats_new_action_bar.png">
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<h4>Multi-pane layouts</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <p>Creating apps that scale well across different form factors and screen sizes is important in the Android world. Multi-pane layouts allow you to combine different activities that show separately on smaller devices into richer compound views for tablets.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/whats_new_multipanel.png">
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<h4>Selection</h4>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <p>The long press gesture which was traditionally used to show contextual actions for objects is now used for data selection. When selecting data, contextual action bars allow you to surface actions.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/whats_new_multiselect.png">
+  </div>
+</div>
diff --git a/docs/html/design/patterns/notifications.jd b/docs/html/design/patterns/notifications.jd
index ad88a01..75bfff2 100644
--- a/docs/html/design/patterns/notifications.jd
+++ b/docs/html/design/patterns/notifications.jd
@@ -1,20 +1,160 @@
 page.title=Notifications
 @jd:body
 
-<p>The notification system allows your app to keep the user informed about important events, such as
-new messages in a chat app or a calendar event.</p>
-<p>To create an app that feels streamlined, pleasant, and respectful, it is important to design your
-notifications carefully. Notifications embody your app's voice, and contribute to your app's
-personality. Unwanted or unimportant notifications can annoy the user, so use them judiciously.</p>
+<p>The notification system allows your app to keep the user informed about events, such as new chat messages or a calendar event. Think of notifications as a news channel that alerts the user to important events as they happen or a log that chronicles events while the user is not paying attention.</p>
+
+<h4>New in Jelly Bean</h4>
+<p>In Jelly Bean, notifications received their most important structural and functional update since the beginning of Android.</p>
+<ul>
+  <li>Notifications can include actions that enable the user to immediately act on a notification from the notification drawer.</li>
+  <li>Notifications are now more flexible in size and layout. They can be expanded to show additional information details.</li>
+  <li>A priority flag was introduced that helps to sort notifications by importance rather than time only.</li>
+</ul>
+
+<h2>Anatomy of a notification</h2>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <h4>Base Layout</h4>
+    <p>At a minimum, all notifications consist of a base layout, including:</p>
+    <ul>
+      <li>the sending application's notification icon or the sender's photo</li>
+      <li>a notification title and message</li>
+      <li>a timestamp</li>
+      <li>a secondary icon to identify the sending application when the senders image is shown for the main icon</li>
+    </ul>
+    <p>The information arrangement of the base layout has not changed in Jelly Bean, so app notifications designed for versions earlier than Jelly Bean still look and work the same.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/notifications_pattern_anatomy.png">
+    <div class="figure-caption">
+      Base layout of a notification
+    </div>
+  </div>
+</div>
+
+<h4>Expanded layouts</h4>
+<p>With Jelly Bean you have the option to provide more event detail. You can use this to show the first few lines of a message or show a larger image preview. This provides the user with additional context, and - in some cases - may allow the user to read a message in its entirety. The user can pinch-zoom or two-finger glide in order to toggle between base and expanded layouts. For single event notifications, Android provides two expanded layout templates (text and image) for you to re-use in your application.</p>
+
+<img src="{@docRoot}design/media/notifications_pattern_expandable.png">
+
+<h4>Actions</h4>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <p>Starting with Jelly Bean, Android supports optional actions that are displayed at the bottom of the notification. With actions, users can handle the most common tasks for a particular notification from within the notification shade without having to open the originating application. This speeds up interaction and, in conjunction with "swipe-to-dismiss", helps users to streamline their notification triaging experience.</p>
+    <p>Be judicious with how many actions you include with a notification. The more actions you include, the more cognitive complexity you create. Limit yourself to the fewest number of actions possible by only including the most imminently important and meaningful ones.</p>
+    <p>Good candidates for actions on notifications are actions that are:</p>
+    <ul>
+      <li>essential, frequent and typical for the content type you're displaying</li>
+      <li>time-critical</li>
+      <li>not overlapping with neighboring actions</li>
+    </ul>
+    <p>Avoid actions that are:</p>
+    <ul>
+      <li>ambiguous</li>
+      <li>duplicative of the default action of the notification (such as "Read" or "Open")</li>
+    </ul>
+  </div>
+  <div class="layout-content-col span-7">
+    <img src="{@docRoot}design/media/notifications_pattern_two_actions.png">
+    <div class="figure-caption">
+      Calendar reminder notification with two actions
+    </div>
+  </div>
+</div>
+
+<p>You can specify a maximum of three actions, each consisting of an action icon and an action name. Adding actions to a simple base layout will make the notification expandable, even if the notification doesn't have an expanded layout. Since actions are only shown for expanded notifications and are otherwise hidden, you must make sure that any action a user can invoke from a notification is available from within the associated application as well.</p>
+
+<h2>Design guidelines</h2>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/notifications_pattern_personal.png">
+  </div>
+  <div class="layout-content-col span-7">
+    <h4>Make it personal</h4>
+    <p>For notifications of items sent by another user (such as a message or status update), include that person's image.</p>
+    <p>Remember to include the app icon as a secondary icon in the notification, so that the user can still identify which app posted it.</p>
+  </div>
+</div>
+
+<h4>Navigate to the right place</h4>
+<p>When the user touches the body of a notification (outside of the action buttons), open your app to the place where the user can consume and act upon the data referenced in the notification. In most cases this will be the detail view of a
+single data item such as a message, but it might also be a summary view if the notification is stacked (see <em>Stacked notifications</em> below) and references multiple items. If in any of those cases the user is taken to a hierarchy level below your app's top-level, insert navigation into your app's back stack to allow them to navigate to your app's top level using the system back key. For more
+information, see the chapter on <em>System-to-app navigation</em> in the <a href="{@docRoot}design/patterns/navigation.html">Navigation</a> design pattern.</p>
+
+<h4>Correctly set and manage notification priority</h4>
+<p>Starting with Jelly Bean, Android now supports a priority flag for notifications. It allows you to influence where your notification will appear in comparison to other notifications and help to make sure that users always see their most important notifications first. You can choose from the following priority levels when posting a notification:</p>
+
+<table>
+  <tr>
+    <th><strong>Priority</strong></th>
+    <th><strong>Use</strong></th>
+  </tr>
+  <tr>
+    <td>MAX</td>
+    <td>Use for critical and urgent notifications that alert the user to a condition that is time-critical or needs to be resolved before they can continue with a particular task.</td>
+  </tr>
+  <tr>
+    <td>HIGH</td>
+    <td>Use high priority notifications primarily for important communication, such as message or chat events with content that is particularly interesting for the user.</td>
+  </tr>
+  <tr>
+    <td>DEFAULT</td>
+    <td>The default priority. Keep all notifications that don't fall into any of the other categories at this priority level.</td>
+  </tr>
+  <tr>
+    <td>LOW</td>
+    <td>Use for notifications that you still want the user to be informed about, but that rate low in urgency.</td>
+  </tr>
+  <tr>
+    <td>MIN</td>
+    <td>Contextual/background information (e.g. weather information, contextual location information). Minimum     priority notifications will not show in the status bar. The user will only discover them when they expand the notification tray.</td>
+  </tr>
+</table>
+<img src="{@docRoot}design/media/notifications_pattern_priority.png">
+
+<h4>Stack your notifications</h4>
+<p>If your app creates a notification while another of the same type is still pending, avoid creating
+an altogether new notification object. Instead, stack the notification.</p>
+<p>A stacked notification builds a summary description and allows the user to understand how many
+notifications of a particular kind are pending.</p>
+<p><strong>Don't</strong>:</p>
+
+<img src="{@docRoot}design/media/notifications_pattern_additional_fail.png">
+
+<p><strong>Do</strong>:</p>
+
+<img src="{@docRoot}design/media/notifications_pattern_additional_win.png">
+
+<p>You can provide more detail about the individual notifications that make up a stack by using the expanded digest layout. This allows users to gain a better sense of which notifications are pending and if they are interesting enough to be read in detail within the associated app.</p>
+
+<img src="{@docRoot}design/media/notifications_expand_contract_msg.png">
+
+<h4>Make notifications optional</h4>
+<p>Users should always be in control of notifications. Allow the user to disable your apps notifications or change their alert properties, such as alert sound and whether to use vibration, by adding a notification settings item to your application settings.</p>
+<h4>Use distinct icons</h4>
+<p>By glancing at the notification area, the user should be able to discern what kinds of notifications are currently pending.</p>
+
+<div class="do-dont-label good"><strong>Do</strong></div>
+<p style="margin-top:0;">Look at the notification icons the Android apps already provide and create notification icons for your app that are sufficiently distinct in appearance.</p>
+<div class="do-dont-label good"><strong>Do</strong></div>
+<p style="margin-top:0;">Use the proper <a href="{@docRoot}design/style/iconography.html#notification">notification icon style</a> for small icons, and the Holo Dark <a href="{@docRoot}design/style/iconography.html#action-bar">action bar icon style</a> for your action icons.</p>
+<div class="do-dont-label good"><strong>Do</strong></div>
+<p style="margin-top:0;">Keep your icons visually simple and avoid excessive detail that is hard to discern.</p>
+<div class="do-dont-label bad"><strong>Don't</strong></div>
+<p style="margin-top:0;">Use color to distinguish your app from others.</p>
+
+<h4>Pulse the notification LED appropriately</h4>
+<p>Many Android devices contain a tiny lamp, called the notification <acronym title="Light-Emitting Diode">LED</acronym>, which is used to keep the user informed about events while the screen is off. Notifications with a priority level of MAX, HIGH, or DEFAULT should cause the LED to glow, while those with lower priority (LOW and MIN) should not.</p>
+
+<p>The user's control over notifications should extend to the LED. By default, the LED will glow with a white color. Your notifications shouldn't use a different color unless the user has explicitly customized it.</p>
+
+<h2>Building notifications that users care about</h2>
+<p>To create an app that feels streamlined, pleasant, and respectful, it is important to design your notifications carefully. Notifications embody your app's voice, and contribute to your app's personality. Unwanted or unimportant notifications can annoy the user, so use them judiciously.</p>
+
 <h4>When to display a notification</h4>
-<p>To create an application that people love, it's important to recognize that the user's attention and
-focus is a resource that must be protected. To use an analogy that might resonate with software
-developers, the user is not a method that can be invoked to return a value.  The user's focus is a
-resource more akin to a thread, and creating a notification momentarily blocks the user thread as
-they process and then dismiss the interruptive notification.</p>
-<p>Android's notification system has been designed to quickly inform users of events while they focus
-on a task, but it is nonetheless still important to be conscientious when deciding to create a
-notification.</p>
+<p>To create an application that people love, it's important to recognize that the user's attention and focus is a resource that must be protected. While Android's notification system has been designed to minimize the impact of notifications on the users attention, it is nonetheless still important to be aware of the fact that notifications are potentially interrupting the users task flow. As you plan your notifications, ask yourself if they are important enough to warrant an interruption. If you are unsure, allow the user to opt into a notification using your apps notification settings or adjust the notifications priority flag.</p>
+<p>Time sensitive events are great opportunities for valuable notifications with high priority, especially if these synchronous events involve other people. For instance, an incoming chat is a real time and synchronous form of communication: there is another user actively waiting on you to respond. Calendar events are another good example of when to use a notification and grab the user's attention, because the event is imminent, and calendar events often involve other people.</p>
 <p>While well behaved apps generally only speak when spoken to, there are some limited cases where an
 app actually should interrupt the user with an unprompted notification.</p>
 <p>Notifications should be used primarily for <strong>time sensitive events</strong>, and especially if these
@@ -34,27 +174,19 @@
 <p>There are however many other cases where notifications should not be used:</p>
 <ul>
 <li>
-<p>Don't notify the user of information that is not directed specifically at them, or information
-that is not truly time sensitive.  For instance the asynchronous and undirected updates flowing
-through a social network do not warrant a real time interruption.</p>
+<p>Avoid notifying the user of information that is not directed specifically at them, or information that is not truly time sensitive. For instance the asynchronous and undirected updates flowing through a social network generally do not warrant a real time interruption. For the users that do care about them, allow them to opt-in.</p>
 </li>
 <li>
-<p>Don't create a notification if the relevant new information is currently on screen. Instead, use
-the UI of the application itself to notify the user of new information directly in context. For
-instance, a chat application should not create system notifications while the user is actively
-chatting with another user.</p>
+<p>Don't create a notification if the relevant new information is currently on screen. Instead, use the UI of the application itself to notify the user of new information directly in context. For instance, a chat application should not create system notifications while the user is actively chatting with another user.</p>
 </li>
 <li>
-<p>Don't interrupt the user for low level technical operations, like saving or syncing information,
-or updating an application, if it is possible for the system to simply take care of itself without
-involving the user.</p>
+<p>Don't interrupt the user for low level technical operations, like saving or syncing information, or updating an application, if it is possible for the system to simply take care of itself without involving the user.</p>
 </li>
 <li>
-<p>Don't interrupt the user to inform them of an error if it is possible for the application to
-quickly recover from the error on its own without the user taking any action.</p>
+<p>Don't interrupt the user to inform them of an error if it is possible for the application to quickly recover from the error on its own without the user taking any action.</p>
 </li>
 <li>
-<p>Don't use notifications for services that the user cannot manually start or stop.</p>
+<p>Don't create notifications that have no true notification content and merely advertise your app. A notification should inform the user about a state and should not be used to merely launch an app.</p>
 </li>
 <li>
 <p>Don't create superfluous notifications just to get your brand in front of users. Such
@@ -66,108 +198,10 @@
 
   </div>
   <div class="layout-content-col span-6">
-
     <img src="{@docRoot}design/media/notifications_pattern_social_fail.png">
-
   </div>
 </div>
 
-<h2 id="design-guidelines">Design Guidelines</h2>
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-
-    <img src="{@docRoot}design/media/notifications_pattern_anatomy.png">
-
-  </div>
-  <div class="layout-content-col span-6">
-
-<h4>Make it personal</h4>
-<p>For notifications of items sent by another user (such as a message or status update), include that
-person's image.</p>
-<p>Remember to include the app icon as a secondary icon in the notification, so that the user can
-still identify which app posted it.</p>    
-
-  </div>
-</div>
-
-<h4>Navigate to the right place</h4>
-<p>When the user touches a notification, be open your app to the place where the user can consume and
-act upon the data referenced in the notification. In most cases this will be the detail view of a
-single data item (e.g. a message), but it might also be a summary view if the notification is
-stacked (see <em>Stacked notifications</em> below) and references multiple items. If in any of those cases
-the user is taken to a hierarchy level below your app's top-level, insert navigation into your app's
-back stack to allow them to navigate to your app's top level using the system back key. For more
-information, see the chapter on <em>System-to-app navigation</em> in the
-<a href="{@docRoot}design/patterns/navigation.html">Navigation</a> design pattern.</p>
-<h4>Timestamps for time sensitive events</h4>
-<p>By default, standard Android notifications include a timestamp in the upper right corner. Consider
-whether the timestamp is valuable in the context of your notification. If the timestamp is not
-valuable, consider if the event is important enough to warrant grabbing the user's attention with a
-notification. If the notification is important enough, decide if you would like to opt out of
-displaying the timestamp.</p>
-<p>Include a timestamp if the user likely needs to know how long ago the notification occurred. Good
-candidates for timestamps include communication notifications (email, messaging, chat, voicemail)
-where the user may need the timestamp information to understand the context of a message or to
-tailor a response.</p>
-<h4>Stack your notifications</h4>
-<p>If your app creates a notification while another of the same type is still pending, avoid creating
-an altogether new notification object. Instead, stack the notification.</p>
-<p>A stacked notification builds a summary description and allows the user to understand how many
-notifications of a particular kind are pending.</p>
-<p><strong>Don't</strong>:</p>
-
-<img src="{@docRoot}design/media/notifications_pattern_additional_fail.png">
-
-<p><strong>Do</strong>:</p>
-
-<img src="{@docRoot}design/media/notifications_pattern_additional_win.png">
-
-<p>If you keep the summary and detail information on different screens, a stacked notification may need
-to open to a different place in the app than a single notification.</p>
-<p>For example, a single email notification should always open to the content of the email, whereas a
-stacked email notification opens to the Inbox view.</p>
-<h4>Clean up after yourself</h4>
-<p>Just like calendar events, some notifications alert the user to an event that happens at a
-particular point in time. After that moment has passed, the notification is likely not important to
-the user anymore, and you should consider removing it automatically.  The same is true for active
-chat conversations or voicemail messages the user has listened to, users should not have to manually
-dismiss notifications independently from taking action on them.</p>
-
-<div class="vspace size-1">&nbsp;</div>
-
-<div class="layout-content-row">
-  <div class="layout-content-col span-7">
-
-<h4>Provide a peek into your notification</h4>
-<p>You can provide a short preview of your notification's content by providing optional ticker text.
-The ticker text is shown for a short amount of time when the notification enters the system and then
-hides automatically.</p>
-
-  </div>
-  <div class="layout-content-col span-6">
-
-    <img src="{@docRoot}design/media/notifications_pattern_phone_ticker.png">
-
-  </div>
-</div>
-
-<h4>Make notifications optional</h4>
-<p>Users should always be in control of notifications. Allow the user to silence the notifications from
-your app by adding a notification settings item to your application settings.</p>
-<h4>Use distinct icons</h4>
-<p>By glancing at the notification area, the user should be able to discern what notification types are
-currently pending.</p>
-<p><strong>Do</strong>:</p>
-<ul>
-<li>Look at the notification icons the Android apps already provide and create notification icons for
-  your app that are sufficiently distinct in appearance.</li>
-</ul>
-<p><strong>Don't</strong>:</p>
-<ul>
-<li>Use color to distinguish your app from others. Notification icons should generally be monochrome.</li>
-</ul>
-
 <h2 id="interacting-with-notifications">Interacting With Notifications</h2>
 
 <div class="layout-content-row">
@@ -178,11 +212,8 @@
   </div>
   <div class="layout-content-col span-6">
 
-<p>Notifications are indicated by icons in the notification area and can be accessed by opening the
-notification drawer.</p>
-<p>Inside the drawer, notifications are chronologically sorted with the latest one on top. Touching a
-notification opens the associated app to detailed content matching the notification. Swiping left or
-right on a notification removes it from the drawer.</p>
+  <p>Notifications are indicated by icons in the notification area and can be accessed by opening the notification drawer.</p>
+  <p>Inside the drawer, notifications are chronologically sorted with the latest one on top. Touching a notification opens the associated app to detailed content matching the notification. Swiping left or right on a notification removes it from the drawer.</p>
 
   </div>
 </div>
@@ -190,8 +221,7 @@
 <div class="layout-content-row">
   <div class="layout-content-col span-6">
 
-<p>On tablets, the notification area is integrated with the system bar at the bottom of the screen. The
-notification drawer is opened by touching anywhere inside the notification area.</p>
+<p>On tablets, the notification area is integrated with the system bar at the bottom of the screen. The notification drawer is opened by touching anywhere inside the notification area.</p>
 
   </div>
   <div class="layout-content-col span-6">
@@ -210,27 +240,14 @@
   <div class="layout-content-col span-6">
 
 <h4>Ongoing notifications</h4>
-<p>Ongoing notifications keep users informed about an ongoing process in the background. For example,
-music players announce the currently playing track in the notification system and continue to do so
-until the user stops the playback. They can also be used to show the user feedback for longer tasks
-like downloading a file, or encoding a video. Ongoing notifications cannot be manually removed from
-the notification drawer.</p>
+<p>Ongoing notifications keep users informed about an ongoing process in the background. For example, music players announce the currently playing track in the notification system and continue to do so until the user stops the playback. They can also be used to show the user feedback for longer tasks like downloading a file, or encoding a video. Ongoing notifications cannot be manually removed from the notification drawer.</p>
 
   </div>
 </div>
 
 <div class="layout-content-row">
   <div class="layout-content-col span-12">
-
-<h4>Dialogs and toasts are for feedback not notification</h4>
-<p>Your app should not create a dialog or toast if it is not currently on screen. Dialogs and Toasts
-should only be displayed as the immediate response to the user taking an action inside of your app.
-For instance, dialogs can be used to confirm that the user understands the severity of an action,
-and toasts can echo back that an action has been successfully taken.</p>
-
+    <h4>Dialogs and toasts are for feedback not notification</h4>
+    <p>Your app should not create a dialog or toast if it is not currently on screen. Dialogs and Toasts should only be displayed as the immediate response to the user taking an action inside of your app. For further guidance on the use of dialogs and toasts, refer to <a href="{@docRoot}design/patterns/confirming-acknowledging.html">Confirming &amp; Acknowledging</a>.</p>
   </div>
-</div>
-
-<div class="vspace size-1">&nbsp;</div>
-
-<img src="{@docRoot}design/media/notifications_pattern_dialog_toast.png">
+</div>
\ No newline at end of file
diff --git a/docs/html/design/patterns/selection.jd b/docs/html/design/patterns/selection.jd
index e3ee90e..612c370 100644
--- a/docs/html/design/patterns/selection.jd
+++ b/docs/html/design/patterns/selection.jd
@@ -1,8 +1,7 @@
 page.title=Selection
 @jd:body
 
-<p>Android 3.0 introduced the <em>long press</em> gesture&mdash;that is, a touch that's held in the same
-position for a moment&mdash;as the global gesture to select data. This affects the way you should
+<p>Android 3.0 changed the <em>long press</em> gesture&mdash;that is, a touch that's held in the same position for a moment&mdash;to be the global gesture to select data.. This affects the way you should
 handle multi-select and contextual actions in your apps.</p>
 
 <div class="vspace size-1">&nbsp;</div>
diff --git a/docs/html/design/patterns/settings.jd b/docs/html/design/patterns/settings.jd
index 3b28b84..d10f0d3 100644
--- a/docs/html/design/patterns/settings.jd
+++ b/docs/html/design/patterns/settings.jd
@@ -429,7 +429,7 @@
     <tbody>
       <tr>
         <td class="secondary-text">
-        After 10 minutes of activity
+        After 10 minutes of inactivity
         </td>
       </tr>
     </tbody>
@@ -551,7 +551,7 @@
     <tbody>
       <tr>
         <td class="secondary-text">
-        After 10 minutes of activity
+        After 10 minutes of inactivity
         </td>
       </tr>
     </tbody>
diff --git a/docs/html/design/patterns/swipe-views.jd b/docs/html/design/patterns/swipe-views.jd
index 95d65dd..252343d 100644
--- a/docs/html/design/patterns/swipe-views.jd
+++ b/docs/html/design/patterns/swipe-views.jd
@@ -24,7 +24,12 @@
 
 <img src="{@docRoot}design/media/swipe_views2.png">
 <div class="figure-caption">
-  Navigating between consecutive Email messages using the swipe gesture.
+  Navigating between consecutive Email messages using the swipe gesture. If a view contains content that exceeds the width of the screen such as a wide Email message, make sure the user's initial swipes will scroll horizontally within the view. Once the end of the content is reached, an additional swipe should navigate to the next view. In addition, support the use of edge swipes to immediately navigate between views when content scrolls horizontally.
+</div>
+
+<img src="{@docRoot}design/media/swipe_views3.png">
+<div class="figure-caption">
+  Scrolling within a wide Email message using the swipe gesture before navigating to the next message.
 </div>
 
 <h2 id="between-tabs">Swiping Between Tabs</h2>
@@ -46,29 +51,29 @@
 
   </div>
   <div class="layout-content-col span-8">
+    <p>If your app uses action bar tabs, use swipe to navigate between the different views.</p>
+    <div class="vspace size-1">&nbsp;</div>
 
-<p>If your app uses action bar tabs, use swipe to navigate between the different views.</p>
-<div class="vspace size-2">&nbsp;</div>
-
-<h2 id="checklist">Checklist</h2>
-
-<ul>
-<li>
-<p>Use swipe to quickly navigate between detail views or tabs.</p>
-</li>
-<li>
-<p>Transition between the views as the user performs the swipe gesture. Do not wait for the
-  gesture to complete and then transition between views.</p>
-</li>
-<li>
-<p>If you used buttons in the past for previous/next navigation, replace them with
-  the swipe gesture.</p>
-</li>
-<li>
-<p>Consider adding contextual information in your detail view that informs the user about the
-  relative list position of the currently visible item.</p>
-</li>
-</ul>
-
+    <h2 id="checklist">Checklist</h2>
+    <ul>
+      <li>
+      <p>Use swipe to quickly navigate between detail views or tabs.</p>
+      </li>
+      <li>
+      <p>Transition between the views as the user performs the swipe gesture. Do not wait for the
+        gesture to complete and then transition between views.</p>
+      </li>
+      <li>
+      <p>If you used buttons in the past for previous/next navigation, replace them with
+        the swipe gesture.</p>
+      </li>
+      <li>
+      <p>Consider adding contextual information in your detail view that informs the user about the
+        relative list position of the currently visible item.</p>
+      </li>
+      <li>
+      <p>For more details on how to build swipe views, read the developer documentation on <a href="{@docRoot}training/implementing-navigation/lateral.html#horizontal-paging">Implementing Lateral Navigation</a>.</p>
+      </li>
+    </ul>
   </div>
 </div>
diff --git a/docs/html/design/patterns/widgets.jd b/docs/html/design/patterns/widgets.jd
new file mode 100644
index 0000000..cf4c74f
--- /dev/null
+++ b/docs/html/design/patterns/widgets.jd
@@ -0,0 +1,131 @@
+page.title=Widgets
+@jd:body
+
+<p>Widgets are an essential aspect of home screen customization. You can imagine them as "at-a-glance" views of an app's most important data and functionality that is accessible right from the user's home screen. Users can move widgets across their home screen panels, and, if supported, resize them to tailor the amount of information within a widget to their preference.</p>
+
+<h2>Widget types</h2>
+<p>As you begin planning your widget, think about what kind of widget you're trying to build. Widgets typically fall into one of the following categories:</p>
+
+<h3>Information widgets</h3>
+<img style="float:right;" src="{@docRoot}design/media/widgets_info.png">
+<p>Information widgets typically display a few crucial information elements that are important to a user and track how that information changes over time. Good examples for information widgets are weather widgets, clock widgets or sports score trackers. Touching information widgets typically launches the associated app and opens a detail view of the widget information.</p>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <h3>Collection widgets</h3>
+    <p>As the name implies, collection widgets specialize on displaying multitude elements of the same type, such as a collection of pictures from a gallery app, a collection of articles from a news app or a collection of emails/messages from a communication app. Collection widgets typically focus on two use cases: browsing the collection, and opening an element of the collection to its detail view for consumption. Collection widgets can scroll vertically.</p>
+  </div>
+  <div class="layout-content-col span-3">
+    <img src="{@docRoot}design/media/widgets_collection_gmail.png">
+    <div class="figure-caption">
+      ListView widget
+    </div>
+  </div>
+  <div class="layout-content-col span-4">
+    <img src="{@docRoot}design/media/widgets_collection_bookmarks.png">
+    <div class="figure-caption">
+      GridView widget
+    </div>
+  </div>
+</div>
+
+<h3>Control widgets</h3>
+<img style="float:right;" src="{@docRoot}design/media/widgets_control.png">
+<p>The main purpose of a control widget is to display often used functions that the user can trigger right from the home screen without having to open the app first. Think of them as remote controls for an app. A typical example of control widgets are music app widgets that allow the user to play, pause or skip music tracks from outside the actual music app.</p>
+<p>Interacting with control widgets may or may not progress to an associated detail view depending on if the control widget's function generated a data set, such as in the case of a search widget.</p>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<h3>Hybrid widgets</h3>
+<img style="float:right;" src="{@docRoot}design/media/widgets_hybrid.png">
+<p>While all widgets tend to gravitate towards one of the three types described above, many widgets in reality are hybrids that combine elements of different types.</p>
+<p>For the purpose of your widget planning, center your widget around one of the base types and add elements of other types if needed.</p>
+<div class="figure-caption">
+A music player widget is primarily a control widget, but also keeps the user informed about what track is currently playing. It essentially combines a control widget with elements of an information widget type.
+</div>
+
+<h2>Widget limitations</h2>
+<p>While widgets could be understood as "mini apps", there are certain limitations that are important to understand before you start to embark on designing your widget:</p>
+
+<h3>Gestures</h3>
+<p>Because widgets live on the home screen, they have to co-exist with the navigation that is established there. This limits the gesture support that is available in a widget compared to a full-screen app. While apps for example may support a view pager that allows the user to navigate between screens laterally, that gesture is already taken on the home screen for the purpose of navigating between home panels.</p>
+<p>The only gestures available for widgets are:</p>
+<ul>
+  <li>Touch</li>
+  <li>Vertical swipe</li>
+</ul>
+<img src="{@docRoot}design/media/widgets_gestures.png">
+
+<h3>Elements</h3>
+<p>Given the above interaction limitations, some of the UI building blocks that rely on restricted gestures are not available for widgets. For a complete list of supported building blocks and more information on layout restrictions, please refer to the "Creating App Widget Layouts" section in the <a href="{@docRoot}guide/topics/appwidgets/index.html">App Widgets</a> API Guide.</p>
+
+<h2>Design guidelines</h2>
+
+<h3>Widget content</h3>
+<p>Widgets are a great mechanism to attract a user to your app by "advertising" new and interesting content that is available for consumption in your app.</p>
+<p>Just like the teasers on the front page of a newspaper, widgets should consolidate and concentrate an app's information and then provide a connection to richer detail within the app; or in other words: the widget is the information "snack" while the app is the "meal." As a bottom line, always make sure that your app shows more detail about an information item than what the widget already displays.</p>
+
+<h3>Widget navigation</h3>
+<p>Besides the pure information content, you should also consider to round out your widget's offering by providing navigation links to frequently used areas of your app. This lets users complete tasks quicker and extends the functional reach of the app to the home screen.</p>
+<p>Good candidates for navigation links to surface on widgets are:</p>
+<ul>
+  <li>Generative functions: These are the functions that allow the user to create new content for an app, such as creating a new document or a new message.</li>
+  <li>Open application at top level: Tapping on an information element will usually navigate the user to a lower level detail screen. Providing access to the top level of your application provides more navigation flexibility and can replace a dedicated app shortcut that users would otherwise use to navigate to the app from the home screen. Using your application icon as an affordance can also provide your widget with a clear identity in case the data you're displaying is ambiguous.</li>
+</ul>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <h3>Widget resizing</h3>
+    <p>With version 3.1, Android introduced resizable widgets to the platform. Resizing allows users to adjust the height and/or the width of a widget within the constraints of the home panel placement grid. You can decide if your widget is freely resizable or if it is constrained to horizontal or vertical size changes. You do not have to support resizing if your particular widget is inherently fixed-size.</p>
+    <p>Allowing users to resize widgets has important benefits:</p>
+    <ul>
+      <li>They can fine-tune how much information they want to see on each widget.</li>
+      <li>They can better influence the layout of widgets and shortcuts on their home panels.</li>
+    </ul>
+  </div>
+
+  <div class="layout-content-col span-7">
+    <img src="{@docRoot}design/media/widgets_resizing01.png">
+    <div class="figure-caption">
+      A long press and subsequent release sets resizable widgets into resize mode. Users can use the drag handles or the widget corners to set the desired size.
+    </div>
+  </div>
+</div>
+
+<p>Planning a resize strategy for your widget depends on the type of widget you're creating. List or grid-based collection widgets are usually straightforward because resizing the widget will simply expand or contract the vertical scrolling area. Regardless of the of the widget's size, the user can still scroll all information elements into view. Information widgets on the other hand require a bit more hands-on planning, since they are not scrollable and all content has to fit within a given size. You will have to dynamically adjust your widget's content and layout to the size the user defined through the resize operation.</p>
+<img src="{@docRoot}design/media/widgets_resizing02.png">
+<p>In this simple example the user can horizontally resize a weather widget in 4 steps and expose richer information about the weather at the current location as the widget grows.</p>
+<p>For each widget size determine how much of your app's information should surface. For smaller sizes concentrate on the essential and then add more contextual information as the widget grows horizontally and vertically.</p>
+
+<h3>Layout considerations</h3>
+<p>It will be tempting to layout your widgets according to the dimensions of the placement grid of a particular device that you own and develop with. This can be a useful initial approximation as you layout your widget, but keep the following in mind:</p>
+<ul>
+  <li>The number, size and spacing of cells can vary widely from device to device, and hence it is very important that your widget is flexible and can accommodate more or less space than anticipated.</li>
+  <li>In fact, as the user resizes a widget, the system will respond with a dp size range in which your widget can redraw itself. Planning your widget resizing strategy across "size buckets" rather than variable grid dimensions will give you the most reliable results.</li>
+</ul>
+
+<h3>Widget configuration</h3>
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+    <p>Sometimes widgets need to be setup before they can become useful. Think of an email widget for example, where you need to provide an account before the inbox can be displayed. Or a static photo widget where the user has to assign the picture that is to be displayed from the gallery.</p>
+    <p>Android widgets display their configuration choices right after the widget is dropped onto a home panel. Keep the widget configuration light and don't present more than 2-3 configuration elements. Use dialog-style instead of full-screen activities to present configuration choices and retain the user's context of place, even if doing so requires use of multiple dialogs.</p>
+<p>Once setup, there typically is not a lot of reason to revisit the setup. Therefore Android widgets do not show a "Setup" or "Configuration" button.</p>
+  </div>
+
+  <div class="layout-content-col span-6">
+    <img src="{@docRoot}design/media/widgets_config.png">
+    <div class="figure-caption">
+      After adding a Play widget to a home panel, the widget asks the user to specify the type of media the widget should display.
+    </div>
+  </div>
+</div>
+
+<h3>Checklist</h3>
+<ul>
+  <li>Focus on small portions of glanceable information on your widget. Expand on the information in your app.</li>
+  <li>Choose the right widget type for your purpose.</li>
+  <li>For resizable widgets, plan how the content for your widget should adapt to different sizes.</li>
+  <li>Make your widget orientation and device independent by ensuring that the layout is capable of stretching and contracting.</li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/design/style/color.jd b/docs/html/design/style/color.jd
index 9c7b6b6..5be34ac 100644
--- a/docs/html/design/style/color.jd
+++ b/docs/html/design/style/color.jd
@@ -115,7 +115,7 @@
 
 <p>Blue is the standard accent color in Android's color palette. Each color has a corresponding darker
 shade that can be used as a complement when needed.</p>
-<p><a href="https://dl-ssl.google.com/android/design/Android_Design_Color_Swatches_20120229.zip">Download the swatches</a></p>
+<p><a href="{@docRoot}downloads/design/Android_Design_Color_Swatches_20120229.zip">Download the swatches</a></p>
 
 <img src="{@docRoot}design/media/color_spectrum.png">
 
diff --git a/docs/html/design/style/iconography.jd b/docs/html/design/style/iconography.jd
index 775e45d..31274c5 100644
--- a/docs/html/design/style/iconography.jd
+++ b/docs/html/design/style/iconography.jd
@@ -110,7 +110,7 @@
 </p>
 <p>
 
-<a href="https://dl-ssl.google.com/android/design/Android_Design_Icons_20120229.zip">Download the Action Bar Icon Pack</a>
+<a href="{@docRoot}downloads/design/Android_Design_Icons_20120229.zip">Download the Action Bar Icon Pack</a>
 
 </p>
 
diff --git a/docs/html/design/style/typography.jd b/docs/html/design/style/typography.jd
index db2fb5f..a699bed 100644
--- a/docs/html/design/style/typography.jd
+++ b/docs/html/design/style/typography.jd
@@ -18,8 +18,8 @@
 
     <img src="{@docRoot}design/media/typography_alphas.png">
 
-<p><a href="https://dl-ssl.google.com/android/design/Roboto_Hinted_20111129.zip">Download Roboto</a></p>
-<p><a href="https://dl-ssl.google.com/android/design/Roboto_Specimen_Book_20111129.pdf">Specimen Book</a></p>
+<p><a href="{@docRoot}downloads/design/Roboto_Hinted_20111129.zip">Download Roboto</a></p>
+<p><a href="{@docRoot}downloads/design/Roboto_Specimen_Book_20111129.pdf">Specimen Book</a></p>
 
   </div>
 </div>
diff --git a/docs/html/design/videos/index.jd b/docs/html/design/videos/index.jd
new file mode 100644
index 0000000..272183f
--- /dev/null
+++ b/docs/html/design/videos/index.jd
@@ -0,0 +1,67 @@
+page.title=Videos
+@jd:body
+
+<p>The Android Design Team was pleased to present five fantastic design-oriented sessions at Google I/O 2012. Visit these pages to view the videos and presentations from the conference.</p>
+<img src="{@docRoot}design/media/extras_googleio_12.png">
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <h3 id="design-for-success"><a href="https://developers.google.com/events/io/sessions/gooio2012/112/">Android Design for Success</a></h3>
+    <p>You have a great idea for an Android app. You want it to stand out among hundreds of thousands. You want your users to love it and tell everyone they know. The Android User Experience team is here to help. We talk about the Android Design guide and other tricks of the trade for creating apps that delight users and help them accomplish their goals. No design background is required.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <iframe width="355" height="200" src="http://www.youtube.com/embed/2NL_83EG0no" frameborder="0" allowfullscreen=""></iframe>
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <h3 id="design-for-engineers"><a href="https://developers.google.com/events/io/sessions/gooio2012/1204/">Android Design for Engineers</a></h3>
+    <p>Design isn't black magic, it's a field that people can learn. In this talk two elite designers from Google give you an advanced crash course in interactive and visual design. Topics include mental models, natural mappings, metaphors, mode errors, visual hierarchies, typography and gestalt principles. Correctly applied, this knowledge can drastically improve the quality of your work.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <iframe width="355" height="200" src="http://www.youtube.com/embed/iJDoxOTyMdk" frameborder="0" allowfullscreen=""></iframe>
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <h3 id="navigation-in-android"><a href="https://developers.google.com/events/io/sessions/gooio2012/114/">Navigation in Android</a></h3>
+    <p>An app is useless if people can't find their way around it. Android introduced big navigation-support changes in 3.0 and 4.0. The Action Bar offers a convenient control for Up navigation, the Back key's behavior became more consistent within tasks, and the Recent Tasks UI got an overhaul. In this talk, we discuss how and why we got where we are today, how to think about navigation when designing your app's user experience, and how to write apps that offer effortless navigation in multiple Android versions.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <iframe width="355" height="200" src="http://www.youtube.com/embed/XwGHJJYBs0Q" frameborder="0" allowfullscreen=""></iframe>
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <h3 id="now-what"><a href="https://developers.google.com/events/io/sessions/gooio2012/115/">So You've Read the Design Guide&#59; Now What?</a></h3>
+    <p>The Android Design Guide describes how to design beautiful Android apps, but not how to build them. In this talk we give practical tips for how to apply fit &amp; finish as you implement your design, we show you how to avoid some common pitfalls, we describe some useful patterns, and show how tools can help.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <iframe width="355" height="200" src="http://www.youtube.com/embed/2jCVmfCse1E" frameborder="0" allowfullscreen=""></iframe>
+  </div>
+</div>
+
+<div class="vspace size-2">&nbsp;</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-7">
+    <h3 id="playing-with-patterns"><a href="https://developers.google.com/events/io/sessions/gooio2012/131/">Playing with Patterns</a></h3>
+    <p>Best-in-class application designers and developers talk about their experience in developing for Android, showing screenshots from their app, exploring the challenges they faced, and offering creative solutions congruent with the Android Design guide. Guests are invited to show examples of visual and interaction patterns in their application that manage to keep it simultaneously consistent and personal.</p>
+  </div>
+  <div class="layout-content-col span-6">
+    <iframe width="355" height="200" src="http://www.youtube.com/embed/8iUbr8RZKtg" frameborder="0" allowfullscreen=""></iframe>
+  </div>
+</div>
+
+<p>Videos for the entire Design Track can also be found on the <a href="http://www.youtube.com/playlist?list=PL54FA004D676C3EE9">Android Developers Channel</a> on YouTube.</p>
diff --git a/docs/html/develop/index.jd b/docs/html/develop/index.jd
index 6e541ee..14ab5d5 100644
--- a/docs/html/develop/index.jd
+++ b/docs/html/develop/index.jd
@@ -24,6 +24,7 @@
   </div>
 </div>
 
+
 <div class="wrap">
    <!-- Slideshow -->
    <div class="slideshow-container slideshow-develop col-16">
@@ -34,6 +35,24 @@
                <li class="item carousel-home">
                  <div class="col-8">
                    <img
+src="http://4.bp.blogspot.com/-g05If_eKKRQ/UAcrVLI-OYI/AAAAAAAAAr8/AWvunVb5S-w/s320/nexus7.png"
+class="play no-shadow no-transform" />
+                 </div>
+                <div class="content-right col-6">
+                  <p class="title-intro">From the blog:</p>
+                  <h2>Getting Your App Ready for Jelly Bean and Nexus 7</h2>
+                  <p>For many people, their first taste of Jelly Bean will be on the beautiful 
+                    Nexus 7. While most applications will run just fine on Nexus 7, who wants 
+                    their app to be just fine? Here are some tips for optimizing your application 
+                    to make the most of this device.</p>
+                  <p><a
+href="http://android-developers.blogspot.com/2012/07/getting-your-app-ready-for-jelly-bean.html" class="button">Read
+more</a></p>
+                </div>            
+              </li>
+               <li class="item carousel-home">
+                 <div class="col-8">
+                   <img
 src="http://1.bp.blogspot.com/-6qyjPxTuzv0/T6lde-Oq_fI/AAAAAAAABXc/zle7OFEGP44/s400/fddns%2Bcopy.png"
 class="play no-shadow no-transform" />
                  </div>
@@ -93,6 +112,12 @@
 			<div class="feed-frame">
                                 <!-- DEVELOPER NEWS -->
 				<ul>
+					<li><a href="http://android-developers.blogspot.com/2012/06/android-sdk-tools-revision-20.html">
+                                          <div class="feed-image" style="background:url('http://1.bp.blogspot.com/-Kp1qE5du6l8/T-xurIjfPgI/AAAAAAAABAM/kuWQwPgi0rw/s640/newactivity+(1).png') no-repeat 0 0">
+                                          </div>
+                                          <h4>Android SDK Tools, Revision 20</h4>
+                                          <p>Along with the preview of the Android 4.1 (Jelly Bean) platform, we launched Android SDK Tools R20 and ADT 20.0.0. Here are a few things...</p>
+					</a></li>
 					<li><a href="http://android-developers.blogspot.com/2012/04/faster-emulator-with-better-hardware.html">
                                           <div class="feed-image" style="background:url('../images/emulator-wvga800l.png') no-repeat 0 0">
                                           </div>
@@ -112,13 +137,7 @@
                                           <h4>Accessibility</h4>
                                           <p>We recently published some new resources to help developers make their Android applications more accessible... </p>
 					</a></li>
-					<li><a href="http://android-developers.blogspot.com/2012/04/new-seller-countries-in-google-play.html">
-                                          <div class="feed-image" style="background:url('http://developer.android.com/images/home/play_logo.png') no-repeat 0 0" >
-                                          </div>
-                                          <h4>New Seller Countries in Google Play</h4>
-                                          <p>Over the past year we’ve been working to expand the list of 
-                                            countries and currencies from which Android developers...</p>
-					</a></li>
+                                      
 				</ul>
                                 <!-- FEATURED DOCS -->
 				<ul>
@@ -161,7 +180,6 @@
 </div>
 
 <br class="clearfix"/>
-    </div>
 
       
       
@@ -294,7 +312,7 @@
  */
 var playlists = {
   'googleio' : {
-    'ids': ["734A052F802C96B9"]
+    'ids': ["4C6BCDE45E05F49E"]
   },
   'fridayreview' : {
     'ids': ["B7B9B23D864A55C3"]
diff --git a/docs/html/distribute/distribute_toc.cs b/docs/html/distribute/distribute_toc.cs
index bc028e5..f11e965 100644
--- a/docs/html/distribute/distribute_toc.cs
+++ b/docs/html/distribute/distribute_toc.cs
@@ -74,6 +74,8 @@
         <span class="en">Google Play Badges</a></li>
        <li><a href="<?cs var:toroot ?>distribute/googleplay/promote/brand.html">
         <span class="en">Brand Assets and Guidelines</a></li>
+       <li><a href="<?cs var:toroot ?>distribute/promote/device-art.html">
+        <span class="en">Device Art Generator</a></li>
      </ul>
    </li>
 
diff --git a/docs/html/distribute/googleplay/about/monetizing.jd b/docs/html/distribute/googleplay/about/monetizing.jd
index 2fa2da8..4980eda 100644
--- a/docs/html/distribute/googleplay/about/monetizing.jd
+++ b/docs/html/distribute/googleplay/about/monetizing.jd
@@ -42,7 +42,7 @@
 <h3 id="payment-methods">Convenient payment options</h3>
 
 <p>Users can purchase your products on Google Play using several convenient
-payment methods&mdash;credit cards, Direct Carrier Billing, and Google Play balance..</p>
+payment methods&mdash;credit cards, Direct Carrier Billing, and Google Play balance.</p>
 
 <p><span style="font-weight:500">Credit card</span> is the most common method of payment. Users can pay using any credit card
 that they’ve registered in Google Play. To make it easy for users to get started,
diff --git a/docs/html/distribute/googleplay/promote/brand.jd b/docs/html/distribute/googleplay/promote/brand.jd
index 8d04903..76ed619 100644
--- a/docs/html/distribute/googleplay/promote/brand.jd
+++ b/docs/html/distribute/googleplay/promote/brand.jd
@@ -150,7 +150,7 @@
                 <span style="margin-left:1em;">http://play.google.com/store/search?q=<em>yourCompanyName</em></span>
                 </li>
                 <li>A list of products published by you, for example,<br />
-                <span style="margin-left:1em;">http://play.google.com/store/search?q=<em>publisherName</em>M/span>
+                <span style="margin-left:1em;">http://play.google.com/store/search?q=<em>publisherName</em></span>
                 </li>
                 <li>A specific app product details page within Google Play, for example,<br />
                 <span style="margin-left:1em;">http://play.google.com/store/apps/details?id=<em>packageName</em></span>
@@ -171,4 +171,4 @@
 <h2>Other Brands</h2>
 
 <p>Any other brands or icons depicted on this site are <em>not</em> are the property of their
-repective owners and usage is reserved. You must seek the developer for appropriate permission to use them.</p>
+respective owners and usage is reserved. You must seek the developer for appropriate permission to use them.</p>
diff --git a/docs/html/distribute/googleplay/publish/preparing.jd b/docs/html/distribute/googleplay/publish/preparing.jd
index ab8fadf..6ea0f53 100644
--- a/docs/html/distribute/googleplay/publish/preparing.jd
+++ b/docs/html/distribute/googleplay/publish/preparing.jd
@@ -435,7 +435,6 @@
 <tr>
 <td><p>Related resources:</p>
 <ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}distribute/googleplay/promote/product-pages.html">Your Product Page</a></strong> &mdash; Tips and details on creating your product details page.</li>
 <li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113475&topic=2365760&ctx=topic">Category types
 </a></strong> &mdash; Help Center document listing available categories for apps.</li>
 <li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1078870&topic=2365760&ctx=topic">Graphic Assets for your Application
diff --git a/docs/html/distribute/googleplay/strategies/app-quality.jd b/docs/html/distribute/googleplay/strategies/app-quality.jd
index 26d71d7..6ea862b 100644
--- a/docs/html/distribute/googleplay/strategies/app-quality.jd
+++ b/docs/html/distribute/googleplay/strategies/app-quality.jd
@@ -67,7 +67,7 @@
 <p>
 A great way to improve UI performance is to minimize the complexity of your layouts. If you open up <a href="{@docRoot}tools/help/hierarchy-viewer.html">hierarchyviewer</a> and see that your layouts are more than 5 levels deep, it may be time to simplify your layout. Consider refactoring those deeply nested LinearLayouts into RelativeLayout. The impact of View objects is cumulative &mdash; each one costs about 1 to 2 KB of memory, so large view hierarchies can be a recipe for disaster, causing frequent VM garbage collection passes which block the main (UI) thread. You can learn more in <a href="http://www.youtube.com/watch?v=wDBM6wVEO70">World of ListView</a>, another session at Google I/O.</p>
 <p>
-Lastly, pointed out in the blog post <a href="http://android-developers.blogspot.com/2010/10/traceview-war-story.html">Traceview War Story</a>, tools like <a href="{@docRoot}tools/traceview.html">traceview</code> and <a href="{@docRoot}tools/ddms.html">ddms</a> can be your best friends in improving your app by profiling method calls and monitoring VM memory allocations, respectively.</p>
+Lastly, pointed out in the blog post <a href="http://android-developers.blogspot.com/2010/10/traceview-war-story.html">Traceview War Story</a>, tools like <a href="{@docRoot}tools/help/traceview.html">traceview</code> and <a href="{@docRoot}tools/help/ddms.html">ddms</a> can be your best friends in improving your app by profiling method calls and monitoring VM memory allocations, respectively.</p>
 
 
 <h2 id="usability">Improve Usability</h2>
@@ -93,7 +93,7 @@
 <p>
 There's no substitute for a real user interface designer&nbsp;&mdash;&nbsp;ideally one who's well-versed in mobile and Android, and ideally handy with both interaction and visual design. One popular venue to post openings for designers is <a href="http://jobs.smashingmagazine.com">jobs.smashingmagazine.com</a>, and leveraging social connections on Twitter and LinkedIn can surface great talent.</p>
 <p>
-If you don't have the luxury of working with a UI designer, there are some ways in which you can improve your app's appearance yourself. First, get familiar with Adobe Photoshop, Adobe Fireworks, or some other raster image editing tool. Mastering the art of the pixel in these apps takes time, but honing this skill can help build polish across your interface designs. Also, master the resources framework by studying <a href="http://android.git.kernel.org/?p=platform/frameworks/base.git;a=tree;f=core/res/res;h=a3562fe1af94134486a8a899f02a9c2f7986c8dd;hb=master">the framework UI</a> assets and layouts and reading through the new <a href="{@docRoot}guide/components/resources/available-resources.html">resources documentation</a>. Techniques such as 9-patches and resource directory qualifiers are somewhat unique to Android, and are crucial in building flexible yet aesthetic UIs.</p>
+If you don't have the luxury of working with a UI designer, there are some ways in which you can improve your app's appearance yourself. First, get familiar with Adobe Photoshop, Adobe Fireworks, or some other raster image editing tool. Mastering the art of the pixel in these apps takes time, but honing this skill can help build polish across your interface designs. Also, master the resources framework by studying <a href="http://android.git.kernel.org/?p=platform/frameworks/base.git;a=tree;f=core/res/res;h=a3562fe1af94134486a8a899f02a9c2f7986c8dd;hb=master">the framework UI</a> assets and layouts and reading through the new <a href="{@docRoot}guide/topics/resources/index.html">resources documentation</a>. Techniques such as 9-patches and resource directory qualifiers are somewhat unique to Android, and are crucial in building flexible yet aesthetic UIs.</p>
 <p>
 Before you get too far in designing your app and writing the code, make sure to visit the Android Design site and learn about the vision, the building blocks, and the tools of designing beautiful and inspiring user interfaces.</p>
 
@@ -105,7 +105,7 @@
 
 <h2 id="integrate">Integrate with the System and Third-Party apps</h2>
 <p>
-A great way to deliver a delightful user experience is to integrate tightly with the operating system. Features like <a href="{@docRoot}guide/topics/appwidgets/index.html">Home screen widgets</a>, <a href={@docRoot}design/patterns/notifications.html">rich notifications</a>, <a href="{@docRoot}guide/topics/search/index.html">global search integration</a>, and {@link android.widget.QuickContactBadge Quick Contacts} are fairly low-hanging fruit in this regard. </p>
+A great way to deliver a delightful user experience is to integrate tightly with the operating system. Features like <a href="{@docRoot}guide/topics/appwidgets/index.html">Home screen widgets</a>, <a href="{@docRoot}design/patterns/notifications.html">rich notifications</a>, <a href="{@docRoot}guide/topics/search/index.html">global search integration</a>, and {@link android.widget.QuickContactBadge Quick Contacts} are fairly low-hanging fruit in this regard. </p>
 
 <p>For some app categories, basic features like home screen widgets are par for the course. Not including them is a sure-fire way to tarnish an otherwise positive user experience. Some apps can achieve even tighter OS integration with Android's contacts, accounts, and sync APIs. </p>
 <p>
diff --git a/docs/html/distribute/index.jd b/docs/html/distribute/index.jd
index c27bc62..c0ed6a8 100644
--- a/docs/html/distribute/index.jd
+++ b/docs/html/distribute/index.jd
@@ -13,10 +13,10 @@
     <img src="/images/home/google-play.png">
   </div>
   <div class="copy" style="position:relative;left:480px;width:360;">
-    <h1>Your Apps on Google Play</h1>
+    <h1 style="margin-bottom:10px;">Your Apps on Google Play</h1>
     <p>The most visited store in the world for Android apps.  Cloud-connected and always synced, it's never been easier for users to find and download your apps.</p>
     
-    <p><a class="landing-page-link" href="http://youtu.be/g5SzWc8-X0M">Watch a video</a></p>
+    <p><a class="button" href="https://play.google.com/apps/publish/">Go to Developer Console &raquo;</a></p>
   </div>    </div>
 </div>
 <div class="distribute-features col-13" style="clear:both;margin-top:246px;">
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_back.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_back.png
new file mode 100644
index 0000000..f340a62
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_fore.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_fore.png
new file mode 100644
index 0000000..2a4e595
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_shadow.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_shadow.png
new file mode 100644
index 0000000..f3a3120
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_back.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_back.png
new file mode 100644
index 0000000..c40b37c
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_fore.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_fore.png
new file mode 100644
index 0000000..aae684b
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_shadow.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_shadow.png
new file mode 100644
index 0000000..61a0da9
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/thumb.png b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/thumb.png
new file mode 100644
index 0000000..e21a421
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/galaxy_nexus/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/land_back.png b/docs/html/distribute/promote/device-art-resources/nexus_7/land_back.png
new file mode 100644
index 0000000..2999f35
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/land_fore.png b/docs/html/distribute/promote/device-art-resources/nexus_7/land_fore.png
new file mode 100644
index 0000000..cefdd35
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/land_shadow.png b/docs/html/distribute/promote/device-art-resources/nexus_7/land_shadow.png
new file mode 100644
index 0000000..8f7aec7
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/port_back.png b/docs/html/distribute/promote/device-art-resources/nexus_7/port_back.png
new file mode 100644
index 0000000..b2908a8
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/port_fore.png b/docs/html/distribute/promote/device-art-resources/nexus_7/port_fore.png
new file mode 100644
index 0000000..7f4b0b4
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/port_shadow.png b/docs/html/distribute/promote/device-art-resources/nexus_7/port_shadow.png
new file mode 100644
index 0000000..c10bd53
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/thumb.png b/docs/html/distribute/promote/device-art-resources/nexus_7/thumb.png
new file mode 100644
index 0000000..8b5cc5a
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_7/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/land_back.png b/docs/html/distribute/promote/device-art-resources/nexus_s/land_back.png
new file mode 100644
index 0000000..f525e8e
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/land_fore.png b/docs/html/distribute/promote/device-art-resources/nexus_s/land_fore.png
new file mode 100644
index 0000000..e26bfe1
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/land_shadow.png b/docs/html/distribute/promote/device-art-resources/nexus_s/land_shadow.png
new file mode 100644
index 0000000..ea26b73
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/port_back.png b/docs/html/distribute/promote/device-art-resources/nexus_s/port_back.png
new file mode 100644
index 0000000..ed4ad0c
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/port_fore.png b/docs/html/distribute/promote/device-art-resources/nexus_s/port_fore.png
new file mode 100644
index 0000000..74bd077
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/port_shadow.png b/docs/html/distribute/promote/device-art-resources/nexus_s/port_shadow.png
new file mode 100644
index 0000000..bb4bec8
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/thumb.png b/docs/html/distribute/promote/device-art-resources/nexus_s/thumb.png
new file mode 100644
index 0000000..8b9a3d9
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/nexus_s/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/land_back.png b/docs/html/distribute/promote/device-art-resources/xoom/land_back.png
new file mode 100644
index 0000000..e1eb075
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/land_fore.png b/docs/html/distribute/promote/device-art-resources/xoom/land_fore.png
new file mode 100644
index 0000000..15e5f50
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/land_shadow.png b/docs/html/distribute/promote/device-art-resources/xoom/land_shadow.png
new file mode 100644
index 0000000..885508a
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/port_back.png b/docs/html/distribute/promote/device-art-resources/xoom/port_back.png
new file mode 100644
index 0000000..290ca35
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/port_fore.png b/docs/html/distribute/promote/device-art-resources/xoom/port_fore.png
new file mode 100644
index 0000000..8b3dca3
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/port_shadow.png b/docs/html/distribute/promote/device-art-resources/xoom/port_shadow.png
new file mode 100644
index 0000000..895b75e
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/thumb.png b/docs/html/distribute/promote/device-art-resources/xoom/thumb.png
new file mode 100644
index 0000000..8fd08a4
--- /dev/null
+++ b/docs/html/distribute/promote/device-art-resources/xoom/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art.jd b/docs/html/distribute/promote/device-art.jd
new file mode 100644
index 0000000..af36625
--- /dev/null
+++ b/docs/html/distribute/promote/device-art.jd
@@ -0,0 +1,517 @@
+page.title=Device Art Generator
+@jd:body
+
+<p>The device art generator allows you to quickly wrap your app screenshots in real device artwork.
+This provides better visual context for your app screenshots on your web site or in other
+promotional materials.</p>
+
+<p class="note"><strong>Note</strong>: Do <em>not</em> use graphics created here in your 1024x500
+feature image or screenshots for your Google Play app listing.</p>
+
+<hr>
+
+<div class="supported-browser">
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-3">
+    <h4>Step 1</h4>
+    <p>Drag a screenshot from your desktop onto a device to the right.</p>
+  </div>
+  <div class="layout-content-col span-10">
+    <ul id="device-list"></ul>
+  </div>
+</div>
+
+<hr>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-3">
+    <h4>Step 2</h4>
+    <p>Customize the generated image and drag it to your desktop to save.</p>
+    <p id="frame-customizations">
+      <input type="checkbox" id="output-shadow" checked="checked" class="form-field-checkbutton">
+      <label for="output-shadow">Shadow</label><br>
+      <input type="checkbox" id="output-glare" checked="checked" class="form-field-checkbutton">
+      <label for="output-glare">Screen Glare</label><br><br>
+      <a class="button" id="rotate-button">Rotate</a>
+    </p>
+  </div>
+  <div class="layout-content-col span-10">
+    <div id="output">No input image.</div>
+  </div>
+</div>
+
+</div>
+
+<div class="unsupported-browser" style="display: none">
+  <p class="warning"><strong>Error:</strong> This page requires 
+    <span id="unsupported-browser-reason">certain features</span>, which your web browser
+    doesn't support. To continue, navigate to this page on a supported web browser, such as
+    <strong>Google Chrome</strong>.</p>
+  <a href="https://www.google.com/chrome/" class="button">Get Google Chrome</a>
+  <br><br>
+</div>
+
+<style>
+  h4 {
+    text-transform: uppercase;
+  }
+
+  #device-list {
+    padding: 0;
+    margin: 0;
+  }
+
+  #device-list li {
+    display: inline-block;
+    vertical-align: bottom;
+    margin: 0;
+    margin-right: 20px;
+    text-align: center;
+  }
+
+  #device-list li .thumb-container {
+    display: inline-block;
+  }
+
+  #device-list li .thumb-container img {
+    margin-bottom: 8px;
+    opacity: 0.6;
+
+    -webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
+       -moz-transition:    -moz-transform 0.2s, opacity 0.2s;
+            transition:         transform 0.2s, opacity 0.2s;
+  }
+
+  #device-list li.drag-hover .thumb-container img {
+    opacity: 1;
+
+    -webkit-transform: scale(1.1);
+       -moz-transform: scale(1.1);
+            transform: scale(1.1);
+  }
+
+  #device-list li .device-details {
+    font-size: 13px;
+    line-height: 16px;
+    color: #888;
+  }
+
+  #device-list li .device-url {
+    font-weight: bold;
+  }
+
+  #output {
+    color: #f44;
+    font-style: italic;
+  }
+
+  #output img {
+    max-height: 500px;
+  }
+</style>
+<script>
+  // Global variables
+  var g_currentImage;
+  var g_currentDevice;
+
+  // Global constants
+  var MSG_INVALID_INPUT_IMAGE = 'Invalid screenshot provided. Screenshots must be PNG files '
+      + 'matching the target device\'s screen resolution in either portrait or landscape.';
+  var MSG_NO_INPUT_IMAGE = 'Drag a screenshot (in PNG format) from your desktop onto a '
+      + 'target device above.'
+  var MSG_GENERATING_IMAGE = 'Generating device art&hellip;';
+
+  var MAX_DISPLAY_HEIGHT = 126; // XOOM, to fit into 200px wide
+
+  // Device manifest.
+  var DEVICES = [
+    {
+      id: 'nexus_7',
+      title: 'Nexus 7',
+      url: 'http://www.android.com/devices/detail/nexus-7',
+      physicalSize: 7,
+      physicalHeight: 7.81,
+      density: 213,
+      landRes: ['shadow', 'back', 'fore'],
+      landOffset: [363,260],
+      portRes: ['shadow', 'back', 'fore'],
+      portOffset: [265,341],
+      portSize: [800,1280],
+    },
+    {
+      id: 'xoom',
+      title: 'Motorola XOOM',
+      url: 'http://www.google.com/phone/detail/motorola-xoom',
+      physicalSize: 10,
+      physicalHeight: 6.61,
+      density: 160,
+      landRes: ['shadow', 'back', 'fore'],
+      landOffset: [218,191],
+      portRes: ['shadow', 'back', 'fore'],
+      portOffset: [199,200],
+      portSize: [800,1280],
+    },
+    {
+      id: 'galaxy_nexus',
+      title: 'Galaxy Nexus',
+      url: 'http://www.android.com/devices/detail/galaxy-nexus',
+      physicalSize: 4.65,
+      physicalHeight: 5.33,
+      density: 320,
+      landRes: ['shadow', 'back', 'fore'],
+      landOffset: [371,199],
+      portRes: ['shadow', 'back', 'fore'],
+      portOffset: [216,353],
+      portSize: [720,1280],
+    },
+    {
+      id: 'nexus_s',
+      title: 'Nexus S',
+      url: 'http://www.google.com/phone/detail/nexus-s',
+      physicalSize: 4.0,
+      physicalHeight: 4.88,
+      density: 240,
+      landRes: ['shadow', 'back', 'fore'],
+      landOffset: [247,135],
+      portRes: ['shadow', 'back', 'fore'],
+      portOffset: [134,247],
+      portSize: [480,800],
+    }
+  ];
+
+  DEVICES = DEVICES.sort(function(x, y) { return x.physicalSize - y.physicalSize; });
+
+  var MAX_HEIGHT = 0;
+  for (var i = 0; i < DEVICES.length; i++) {
+    MAX_HEIGHT = Math.max(MAX_HEIGHT, DEVICES[i].physicalHeight);
+  }
+
+  // Setup performed once the DOM is ready.
+  $(document).ready(function() {
+    if (!checkBrowser()) {
+      return;
+    }
+
+    setupUI();
+
+    // Set up Chrome drag-out
+    $.event.props.push("dataTransfer");
+    document.body.addEventListener('dragstart', function(e) {
+      var a = e.target;
+      if (a.classList.contains('dragout')) {
+        e.dataTransfer.setData('DownloadURL', a.dataset.downloadurl);
+      }
+    }, false);
+  });
+
+  /**
+   * Returns the device from DEVICES with the given id.
+   */
+  function getDeviceById(id) {
+    for (var i = 0; i < DEVICES.length; i++) {
+      if (DEVICES[i].id == id)
+        return DEVICES[i];
+    }
+    return;
+  }
+
+  /**
+   * Checks to make sure the browser supports this page. If not,
+   * updates the UI accordingly and returns false.
+   */
+  function checkBrowser() {
+    // Check for browser support
+    var browserSupportError = null;
+
+    // Must have <canvas>
+    var elem = document.createElement('canvas');
+    if (!elem.getContext || !elem.getContext('2d')) {
+      browserSupportError = 'HTML5 canvas.';
+    }
+
+    // Must have FileReader
+    if (!window.FileReader) {
+      browserSupportError = 'desktop file access';
+    }
+
+    if (browserSupportError) {
+      $('.supported-browser').hide();
+
+      $('#unsupported-browser-reason').html(browserSupportError);
+      $('.unsupported-browser').show();
+      return false;
+    }
+
+    return true;
+  }
+
+  function setupUI() {
+    $('#output').html(MSG_NO_INPUT_IMAGE);
+
+    $('#frame-customizations').hide();
+
+    $('#output-shadow, #output-glare').click(function() {
+      createFrame(g_currentDevice, g_currentImage);
+    });
+
+    // Build device list.
+    $.each(DEVICES, function() {
+      $('<li>')
+          .append($('<div>')
+              .addClass('thumb-container')
+              .append($('<img>')
+                  .attr('src', 'device-art-resources/' + this.id + '/thumb.png')
+                  .attr('height',
+                      Math.floor(MAX_DISPLAY_HEIGHT * this.physicalHeight / MAX_HEIGHT))))
+          .append($('<div>')
+              .addClass('device-details')
+              .html((this.url
+                  ? ('<a class="device-url" href="' + this.url + '">' + this.title + '</a>')
+                  : this.title) +
+                '<br>' +  this.physicalSize + '" @ ' + this.density + 'dpi' +
+                '<br>' + this.portSize[0] + 'x' + this.portSize[1]))
+          .data('deviceId', this.id)
+          .appendTo('#device-list');
+    });
+
+    // Set up drag and drop.
+    $('#device-list li')
+        .live('dragover', function(evt) {
+          $(this).addClass('drag-hover');
+          evt.dataTransfer.dropEffect = 'link';
+          evt.preventDefault();
+        })
+        .live('dragleave', function(evt) {
+          $(this).removeClass('drag-hover');
+        })
+        .live('drop', function(evt) {
+          $('#output').empty().html(MSG_GENERATING_IMAGE);
+          $(this).removeClass('drag-hover');
+          g_currentDevice = getDeviceById($(this).closest('li').data('deviceId'));
+          evt.preventDefault();
+          loadImageFromFileList(evt.dataTransfer.files, function(data) {
+            if (data == null) {
+              $('#output').html(MSG_INVALID_INPUT_IMAGE);
+              return;
+            }
+            loadImageFromUri(data.uri, function(img) {
+              g_currentFilename = data.name;
+              g_currentImage = img;
+              createFrame();
+            });
+          });
+        });
+
+    // Set up rotate button.
+    $('#rotate-button').click(function() {
+      if (!g_currentImage) {
+        return;
+      }
+
+      var w = g_currentImage.naturalHeight;
+      var h = g_currentImage.naturalWidth;
+      var canvas = $('<canvas>')
+          .attr('width', w)
+          .attr('height', h)
+          .get(0);
+
+      var ctx = canvas.getContext('2d');
+      ctx.rotate(-Math.PI / 2);
+      ctx.translate(-h, 0);
+      ctx.drawImage(g_currentImage, 0, 0);
+
+      loadImageFromUri(canvas.toDataURL(), function(img) {
+        g_currentImage = img;
+        createFrame();
+      });
+    });
+  }
+
+  /**
+   * Generates the frame from the current selections (g_currentImage and g_currentDevice).
+   */
+  function createFrame() {
+    var port;
+    if (g_currentImage.naturalWidth  == g_currentDevice.portSize[0] &&
+        g_currentImage.naturalHeight == g_currentDevice.portSize[1]) {
+      if (!g_currentDevice.portRes) {
+        alert('No portrait frame is currently available for this device.');
+        $('#output').html(MSG_NO_INPUT_IMAGE);
+        return;
+      }
+      port = true;
+    } else if (g_currentImage.naturalWidth  == g_currentDevice.portSize[1] &&
+               g_currentImage.naturalHeight == g_currentDevice.portSize[0]) {
+      if (!g_currentDevice.landRes) {
+        alert('No landscape frame is currently available for this device.');
+        $('#output').html(MSG_NO_INPUT_IMAGE);
+        return;
+      }
+      port = false;
+    } else {
+      alert('Screenshots for ' + g_currentDevice.title + ' must be ' +
+          g_currentDevice.portSize[0] + 'x' + g_currentDevice.portSize[1] +
+          ' or ' +
+          g_currentDevice.portSize[1] + 'x' + g_currentDevice.portSize[0] + '.');
+      $('#output').html(MSG_INVALID_INPUT_IMAGE);
+      return;
+    }
+
+    // Load image resources
+    var res = port ? g_currentDevice.portRes : g_currentDevice.landRes;
+    var resList = {};
+    for (var i = 0; i < res.length; i++) {
+      resList[res[i]] = 'device-art-resources/' + g_currentDevice.id + '/' +
+          (port ? 'port_' : 'land_') + res[i] + '.png'
+    }
+
+    var resourceImages = {};
+    loadImageResources(resList, function(r) {
+      resourceImages = r;
+      continuation_();
+    });
+
+    function continuation_() {
+      var width = resourceImages['back'].naturalWidth;
+      var height = resourceImages['back'].naturalHeight;
+      var offset = port ? g_currentDevice.portOffset : g_currentDevice.landOffset;
+
+      var canvas = document.createElement('canvas');
+      canvas.width = width;
+      canvas.height = height;
+
+      var ctx = canvas.getContext('2d');
+      if (resourceImages['shadow'] && $('#output-shadow').is(':checked')) {
+        ctx.drawImage(resourceImages['shadow'], 0, 0);
+      }
+      ctx.drawImage(resourceImages['back'], 0, 0);
+      ctx.drawImage(g_currentImage, offset[0], offset[1]);
+      if (resourceImages['fore'] && $('#output-glare').is(':checked')) {
+        ctx.drawImage(resourceImages['fore'], 0, 0);
+      }
+
+      var dataUrl = canvas.toDataURL();
+      var filename = g_currentFilename
+          ? ('framed_' + g_currentFilename)
+          : 'framed_screenshot.png';
+
+      var $link = $('<a>')
+          .attr('download', filename)
+          .attr('href', dataUrl)
+          .attr('draggable', true)
+          .attr('data-downloadurl', ['image/png', filename, dataUrl].join(':'))
+          .append($('<img>').attr('src', dataUrl))
+          .appendTo($('#output').empty());
+
+      $('#frame-customizations').show();
+    }
+  }
+
+  /**
+   * Loads an image from a data URI. The callback will be called with the <img> once
+   * it loads.
+   */
+  function loadImageFromUri(uri, callback) {
+    callback = callback || function(){};
+
+    var img = document.createElement('img');
+    img.src = uri;
+    img.onload = function() {
+      callback(img);
+    };
+    img.onerror = function() {
+      callback(null);
+    }
+  }
+
+  /**
+   * Loads a set of images (organized by ID). Once all images are loaded, the callback
+   * is triggered with a dictionary of <img>'s, organized by ID.
+   */
+  function loadImageResources(images, callback) {
+    var imageResources = {};
+
+    var checkForCompletion_ = function() {
+      for (var id in images) {
+        if (!(id in imageResources))
+          return;
+      }
+      (callback || function(){})(imageResources);
+      callback = null;
+    };
+
+    for (var id in images) {
+      var img = document.createElement('img');
+      img.src = images[id];
+      (function(img, id) {
+        img.onload = function() {
+          imageResources[id] = img;
+          checkForCompletion_();
+        };
+        img.onerror = function() {
+          imageResources[id] = null;
+          checkForCompletion_();
+        }
+      })(img, id);
+    }
+  }
+
+  /**
+   * Loads the first valid image from a FileList (e.g. drag + drop source), as a data URI. This
+   * method will throw an alert() in case of errors and call back with null.
+   *
+   * @param {FileList} fileList The FileList to load.
+   * @param {Function} callback The callback to fire once image loading is done (or fails).
+   * @return Returns an object containing 'uri' representing the loaded image. There will also be
+   *      a 'name' field indicating the file name, if one is available.
+   */
+  function loadImageFromFileList(fileList, callback) {
+    fileList = fileList || [];
+
+    var file = null;
+    for (var i = 0; i < fileList.length; i++) {
+      if (fileList[i].type.toLowerCase().match(/^image\/png/)) {
+        file = fileList[i];
+        break;
+      }
+    }
+
+    if (!file) {
+      alert('Please use a valid screenshot file (PNG format).');
+      callback(null);
+      return;
+    }
+
+    var fileReader = new FileReader();
+
+    // Closure to capture the file information.
+    fileReader.onload = function(e) {
+      callback({
+        uri: e.target.result,
+        name: file.name
+      });
+    };
+    fileReader.onerror = function(e) {
+      switch(e.target.error.code) {
+        case e.target.error.NOT_FOUND_ERR:
+          alert('File not found.');
+          break;
+        case e.target.error.NOT_READABLE_ERR:
+          alert('File is not readable.');
+          break;
+        case e.target.error.ABORT_ERR:
+          break; // noop
+        default:
+          alert('An error occurred reading this file.');
+      }
+      callback(null);
+    };
+    fileReader.onabort = function(e) {
+      alert('File read cancelled.');
+      callback(null);
+    };
+
+    fileReader.readAsDataURL(file);
+  }
+</script>
diff --git a/docs/html/guide/components/bound-services.jd b/docs/html/guide/components/bound-services.jd
index 43e6e5e..8d2bba5 100644
--- a/docs/html/guide/components/bound-services.jd
+++ b/docs/html/guide/components/bound-services.jd
@@ -640,12 +640,6 @@
 
 <h2 id="Lifecycle">Managing the Lifecycle of a Bound Service</h2>
 
-<div class="figure" style="width:588px">
-<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
-<p class="img-caption"><strong>Figure 1.</strong> The lifecycle for a service that is started
-and also allows binding.</p>
-</div>
-
 <p>When a service is unbound from all clients, the Android system destroys it (unless it was also
 started with {@link android.app.Service#onStartCommand onStartCommand()}). As such, you don't have
 to manage the lifecycle of your service if it's purely a bound
@@ -667,6 +661,12 @@
 {@link android.content.ServiceConnection#onServiceConnected onServiceConnected()} callback.
 Below, figure 1 illustrates the logic for this kind of lifecycle.</p>
 
+
+<img src="{@docRoot}images/fundamentals/service_binding_tree_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figure 1.</strong> The lifecycle for a service that is started
+and also allows binding.</p>
+
+
 <p>For more information about the lifecycle of an started service, see the <a
 href="{@docRoot}guide/components/services.html#Lifecycle">Services</a> document.</p>
 
diff --git a/docs/html/guide/components/fragments.jd b/docs/html/guide/components/fragments.jd
index 938e0ab..7747b31 100644
--- a/docs/html/guide/components/fragments.jd
+++ b/docs/html/guide/components/fragments.jd
@@ -45,17 +45,10 @@
     <li>{@link android.app.FragmentManager}</li>
     <li>{@link android.app.FragmentTransaction}</li>
   </ol>
-
-  <h2>Related samples</h2>
-  <ol>
-    <li><a
-href="{@docRoot}resources/samples/HoneycombGallery/index.html">Honeycomb Gallery</a></li>
-    <li><a
-href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">ApiDemos</a></li>
-  </ol>
   
   <h2>See also</h2>
   <ol>
+    <li><a href="{@docRoot}training/basics/fragments/index.html">Building a Dynamic UI with Fragments</a></li>
     <li><a href="{@docRoot}guide/practices/tablets-and-handsets.html">Supporting Tablets
 and Handsets</a></li>
   </ol>
@@ -709,6 +702,12 @@
 lifecycle</a> also apply to fragments. What you also need to understand, though, is how the life
 of the activity affects the life of the fragment.</p>
 
+<p class="caution"><strong>Caution:</strong> If you need a {@link android.content.Context} object
+within your {@link android.app.Fragment}, you can call {@link android.app.Fragment#getActivity()}.
+However, be careful to call {@link android.app.Fragment#getActivity()} only when the fragment is
+attached to an activity. When the fragment is not yet attached, or was detached during the end of
+its lifecycle, {@link android.app.Fragment#getActivity()} will return null.</p>
+
 
 <h3 id="CoordinatingWithActivity">Coordinating with the activity lifecycle</h3>
 
@@ -828,7 +827,7 @@
 
 
 <p>For more samples using fragments (and complete source files for this example),
-see the sample code available in <a
+see the API Demos sample app available in <a
 href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/app/index.html#Fragment">
 ApiDemos</a> (available for download from the <a
 href="{@docRoot}resources/samples/get.html">Samples SDK component</a>).</p>
diff --git a/docs/html/guide/components/services.jd b/docs/html/guide/components/services.jd
index ba5e1f0..6e5dfd2 100644
--- a/docs/html/guide/components/services.jd
+++ b/docs/html/guide/components/services.jd
@@ -49,13 +49,6 @@
       LocalService}</a></li>
 </ol>
 
-<h2>Articles</h2>
-<ol>
-  <li><a href="{@docRoot}resources/articles/multitasking-android-way.html">Multitasking the Android Way</a></li>
-  <li><a href="{@docRoot}resources/articles/service-api-changes-starting-with.html">Service API changes starting
-      with Android 2.0</a></li>
-</ol>
-
 <h2>See also</h2>
 <ol>
 <li><a href="{@docRoot}guide/components/bound-services.html">Bound Services</a></li>
@@ -762,15 +755,6 @@
 changes in the service's state and perform work at the appropriate times. The following skeleton
 service demonstrates each of the lifecycle methods:</p>
 
-
-<div class="figure" style="width:432px">
-<img src="{@docRoot}images/service_lifecycle.png" alt="" />
-<p class="img-caption"><strong>Figure 2.</strong> The service lifecycle. The diagram on the left
-shows the lifecycle when the service is created with {@link android.content.Context#startService
-startService()} and the diagram on the right shows the lifecycle when the service is created
-with {@link android.content.Context#bindService bindService()}.</p>
-</div>
-
 <pre>
 public class ExampleService extends Service {
     int mStartMode;       // indicates how to behave if the service is killed
@@ -811,6 +795,12 @@
 <p class="note"><strong>Note:</strong> Unlike the activity lifecycle callback methods, you are
 <em>not</em> required to call the superclass implementation of these callback methods.</p>
 
+<img src="{@docRoot}images/service_lifecycle.png" alt="" />
+<p class="img-caption"><strong>Figure 2.</strong> The service lifecycle. The diagram on the left
+shows the lifecycle when the service is created with {@link android.content.Context#startService
+startService()} and the diagram on the right shows the lifecycle when the service is created
+with {@link android.content.Context#bindService bindService()}.</p>
+
 <p>By implementing these methods, you can monitor two nested loops of the service's lifecycle: </p>
 
 <ul>
diff --git a/docs/html/guide/google/gcm/adv.jd b/docs/html/guide/google/gcm/adv.jd
index aec8ca4..2174128 100644
--- a/docs/html/guide/google/gcm/adv.jd
+++ b/docs/html/guide/google/gcm/adv.jd
@@ -27,6 +27,7 @@
   <ol>
     <li><a href="#s2s">Send-to-sync messages</a></li>
     <li><a href="#payload">Messages with payload</a></li>
+<li><a href="#which">Which should I use?</a></li>
     </ol>
 </li>
 <li><a href="#ttl">Setting an Expiration Date for a Message</a> </li>
@@ -174,7 +175,8 @@
   <li>The end user uninstalls the application.</li>
   <li>The 3rd-party server sends a message to GCM server.</li>
   <li>The GCM server sends the message to the device.</li>
-  <li>The GCM client receives the message and queries Package Manager, which returns a &quot;package not found&quot; error.</li>
+  <li>The GCM client receives the message and queries Package Manager about whether there are broadcast receivers configured to receive it, which returns <code>false</code>.
+</li>
   <li>The GCM client informs the GCM server that the application was uninstalled.</li>
   <li>The GCM server marks the registration ID for deletion.</li>
   <li>The 3rd-party server sends a message to  GCM.</li>
@@ -185,12 +187,24 @@
 <p>Note that it might take a while for the registration ID be completely removed from GCM. Thus it is possible that messages sent during step 7 above gets a valid message ID as response, even though the message will not be delivered to the device. Eventually, the registration ID will be removed and the server will get a <code>NotRegistered</code> error, without any further action being required from the 3rd-party server (this scenario happens frequently while an application is being developed and tested).</p>
 
 <h2 id="collapsible">Send-to-Sync  vs. Messages with Payload</h2>
-<p>Every message sent in GCM, regardless of its other characteristics, is either a &quot;send-to-sync&quot; (collapsible) message or a &quot;message with payload&quot; (non-collapsible message).</p>
+
+<p>Every message sent in GCM has the following characteristics:</p>
+<ul>
+  <li>It has a payload limit of 4096 bytes.</li>
+  <li>By default, it is stored by GCM for 4 weeks.</li>
+</ul>
+
+<p>But despite these similarities, messages can behave very differently depending on their particular settings. One major distinction between messages is whether they are collapsed (where each new message replaces the preceding message) or not collapsed (where each individual message is delivered). Every message sent in GCM is either a &quot;send-to-sync&quot; (collapsible) message or a &quot;message with payload&quot; (non-collapsible message). These concepts are described in more detail in the following sections.</p>
+
 <h3 id="s2s"><strong>Send-to-sync messages</strong></h3>
-<p>A send-to-sync (collapsible) message is typically a &quot;tickle&quot; that tells a mobile application to sync data from the server. For example, suppose you have an email application. When a user receives new email on the server, the server pings the mobile application with a &quot;New mail&quot; message. This tells the application to sync to the server to pick up the new email. The server might send this message multiple times as new mail continues to accumulate, before the application has had a chance to sync. But if the user has received 25 new emails, there's no need to preserve every &quot;New mail&quot; message. One  is sufficient. This is a case where you would use the GCM <code>collapse_key</code> parameter. A <em>collapse key</em> is an arbitrary string that is used to collapse a group of like messages when the device is offline, so that only the last message gets sent to the client. For example, &quot;New mail,&quot; &quot;Updates available,&quot; and so on</p>
-<p>GCM allows a maximum of 4 different collapse keys to be used by the GCM server at any given time. In other words, the GCM server can simultaneously store 4 different send-to-sync messages, each with a different collapse key.</p>
+
+<p>A send-to-sync (collapsible) message is often a &quot;tickle&quot; that tells a mobile application to sync data from the server. For example, suppose you have an email application. When a user receives new email on the server, the server pings the mobile application with a &quot;New mail&quot; message. This tells the application to sync to the server to pick up the new email. The server might send this message multiple times as new mail continues to accumulate, before the application has had a chance to sync. But if the user has received 25 new emails, there's no need to preserve every &quot;New mail&quot; message. One is sufficient. Another example would be a sports application that updates users with the latest score. Only the most recent message is relevant, so it makes sense to have each new message replace the preceding message. </p>
+
+<p>The email and sports applications are cases where you would probably use the GCM <code>collapse_key</code> parameter. A <em>collapse key</em> is an arbitrary string that is used to collapse a group of like messages when the device is offline, so that only the most recent message gets sent to the client. For example, &quot;New mail,&quot; &quot;Updates available,&quot; and so on</p>
+<p>GCM allows a maximum of 4 different collapse keys to be used by the GCM server at any given time. In other words, the GCM server can simultaneously store 4 different send-to-sync messages, each with a different collapse key. If you exceed this number GCM will only keep 4 collapse keys, with no guarantees about which ones they will be.</p>
+
 <h3 id="payload">Messages with payload</h3>
-<p>Unlike a send-to-sync message, every &quot;message with payload&quot; (non-collapsible message) is delivered. The payload the message contains can be up to 4K. For example, here is a JSON-formatted message in an IM application in which spectators are discussing a sporting event:</p>
+<p>Unlike a send-to-sync message, every &quot;message with payload&quot; (non-collapsible message) is delivered. The payload the message contains can be up to 4kb. For example, here is a JSON-formatted message in an IM application in which spectators are discussing a sporting event:</p>
 
 <pre class="prettyprint pretty-json">{
   "registration_id" : "APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx...",
@@ -208,9 +222,10 @@
   <li><code>total_deleted</code>&mdash;The value  is a string with the number of deleted messages.</li>
 </ul>
 <p>The application should respond by syncing with the server to recover the discarded messages. </p>
-  <p class="note"><strong>Note:</strong> If your application does not need to use non-collapsible messages, collapsible messages are a better choice from a performance standpoint, because they put less of a burden on the device battery.
- 
-</p>
+
+<h3 id="which">Which should I use?</h3>
+  <p>If your application does not need to use non-collapsible messages, collapsible messages are a better choice from a performance standpoint, because they put less of a burden on the device battery.</p>
+
 <h2 dir="ltr" id="ttl">Setting an Expiration Date for a Message</h2>
 <p>The Time to Live (TTL) feature lets  the sender  specify the maximum lifespan of a message using the <code>time_to_live</code> parameter in the send request. The value of this parameter must be a duration from 0 to 2,419,200 seconds, and it corresponds to the maximum period of time for which GCM will store and try to deliver the message. Requests that don't contain this field default to the maximum period of 4 weeks.</p>
 <p>Here are some possible uses for this feature:</p>
diff --git a/docs/html/guide/google/gcm/c2dm.jd b/docs/html/guide/google/gcm/c2dm.jd
index 91c6ac5..ecc08c1 100644
--- a/docs/html/guide/google/gcm/c2dm.jd
+++ b/docs/html/guide/google/gcm/c2dm.jd
@@ -17,7 +17,11 @@
 
 <ol>
 <li><a href="#history">Historical Overview</a></li>
-<li><a href="#diffs">How is GCM Different from C2DM?</a></li>
+<li><a href="#diffs">How is GCM Different from C2DM?</a>
+  <ol>
+    <li><a href="#interop">Relationship between C2DM and GCM</a></li>
+  </ol>
+</li>
 <li><a href="#migrating">Migrating Your Apps</a>
   <ol>
     <li><a href="#client">Client changes</a></li>
@@ -72,6 +76,14 @@
 <dd>There may be situations where the server ends up with 2 registration IDs for the same device. If the GCM response contains a registration ID, simply replace the registration ID you have with the one provided. With this feature your application doesn't need to send the device ID to your server anymore. For more information, see <a href="adv.html#canonical">Advanced Topics</a>.</dd>
 </dl>
 <p>GCM also provides helper libraries (<a href="{@docRoot}guide/google/gcm/client-javadoc/index.html">client</a> and <a href="{@docRoot}guide/google/gcm/server-javadoc/index.html">server</a>) to make writing your code easier.</p>
+
+<h3 id="interop">Relationship between C2DM and GCM</h3>
+
+<p>C2DM and GCM are not interoperable. For example, you cannot post notifications from GCM to C2DM registration IDs, nor can you use C2DM registration IDs as GCM registration IDs. From your server-side application, you must keep keep track of whether a registration ID is from C2DM or GCM and use the proper endpoint. </p>
+
+<p>As you transition from C2DM to GCM, your server needs to be aware of whether a given registration ID
+contains an old C2DM sender or a new GCM project ID. This is the approach we recommend: have the new app version (the one that uses GCM) send a bit along with the registration ID. This bit tells your server that this registration ID is for GCM. If you don't get the extra bit, you mark the registration ID as C2DM. Once no more valid registration IDs are marked as C2DM, you can complete the migration.</p>
+
 <h2 id="migrating">Migrating Your Apps</h2>
 <p>This section describes how to move existing C2DM apps to GCM.</p>
 <h3 id="client">Client changes</h3>
diff --git a/docs/html/guide/google/gcm/client-javadoc/allclasses-frame.html b/docs/html/guide/google/gcm/client-javadoc/allclasses-frame.html
index 4788142..e1bed36 100644
--- a/docs/html/guide/google/gcm/client-javadoc/allclasses-frame.html
+++ b/docs/html/guide/google/gcm/client-javadoc/allclasses-frame.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 All Classes
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 
 </HEAD>
diff --git a/docs/html/guide/google/gcm/client-javadoc/allclasses-noframe.html b/docs/html/guide/google/gcm/client-javadoc/allclasses-noframe.html
index cf3b68c..dc34021 100644
--- a/docs/html/guide/google/gcm/client-javadoc/allclasses-noframe.html
+++ b/docs/html/guide/google/gcm/client-javadoc/allclasses-noframe.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 All Classes
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 
 </HEAD>
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBaseIntentService.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBaseIntentService.html
index 0b2cfad..ff15218 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBaseIntentService.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBaseIntentService.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 GCMBaseIntentService
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -107,6 +107,8 @@
  hence should run in a limited amount of time. If they execute long
  operations, they should spawn new threads, otherwise the worker thread will
  be blocked.
+ <p>
+ Subclasses must provide a public no-arg constructor.
 <P>
 
 <P>
@@ -142,11 +144,19 @@
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>protected </CODE></FONT></TD>
-<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#GCMBaseIntentService(java.lang.String)">GCMBaseIntentService</A></B>(java.lang.String&nbsp;senderId)</CODE>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#GCMBaseIntentService()">GCMBaseIntentService</A></B>()</CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Subclasses must create a public no-arg constructor and pass the
- sender id to be used for registration.</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor that does not set a sender id, useful when the sender id
+ is context-specific.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected </CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#GCMBaseIntentService(java.lang.String...)">GCMBaseIntentService</A></B>(java.lang.String...&nbsp;senderIds)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor used when the sender id(s) is fixed.</TD>
 </TR>
 </TABLE>
 &nbsp;
@@ -160,6 +170,14 @@
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected &nbsp;java.lang.String[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#getSenderIds(Context)">getSenderIds</A></B>(Context&nbsp;context)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets the sender ids.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>protected &nbsp;void</CODE></FONT></TD>
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#onDeletedMessages(Context, int)">onDeletedMessages</A></B>(Context&nbsp;context,
                   int&nbsp;total)</CODE>
@@ -263,13 +281,28 @@
 </TR>
 </TABLE>
 
-<A NAME="GCMBaseIntentService(java.lang.String)"><!-- --></A><H3>
+<A NAME="GCMBaseIntentService()"><!-- --></A><H3>
 GCMBaseIntentService</H3>
 <PRE>
-protected <B>GCMBaseIntentService</B>(java.lang.String&nbsp;senderId)</PRE>
+protected <B>GCMBaseIntentService</B>()</PRE>
 <DL>
-<DD>Subclasses must create a public no-arg constructor and pass the
- sender id to be used for registration.
+<DD>Constructor that does not set a sender id, useful when the sender id
+ is context-specific.
+ <p>
+ When using this constructor, the subclass <strong>must</strong>
+ override <A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#getSenderIds(Context)"><CODE>getSenderIds(Context)</CODE></A>, otherwise methods such as
+ <A HREF="../../../../com/google/android/gcm/GCMBaseIntentService.html#onHandleIntent(Intent)"><CODE>onHandleIntent(Intent)</CODE></A> will throw an
+ <CODE>IllegalStateException</CODE> on runtime.
+<P>
+</DL>
+<HR>
+
+<A NAME="GCMBaseIntentService(java.lang.String...)"><!-- --></A><H3>
+GCMBaseIntentService</H3>
+<PRE>
+protected <B>GCMBaseIntentService</B>(java.lang.String...&nbsp;senderIds)</PRE>
+<DL>
+<DD>Constructor used when the sender id(s) is fixed.
 <P>
 </DL>
 
@@ -283,6 +316,24 @@
 </TR>
 </TABLE>
 
+<A NAME="getSenderIds(Context)"><!-- --></A><H3>
+getSenderIds</H3>
+<PRE>
+protected java.lang.String[] <B>getSenderIds</B>(Context&nbsp;context)</PRE>
+<DL>
+<DD>Gets the sender ids.
+
+ <p>By default, it returns the sender ids passed in the constructor, but
+ it could be overridden to provide a dynamic sender id.
+<P>
+<DD><DL>
+
+<DT><B>Throws:</B>
+<DD><CODE>java.lang.IllegalStateException</CODE> - if sender id was not set on constructor.</DL>
+</DD>
+</DL>
+<HR>
+
 <A NAME="onMessage(Context, Intent)"><!-- --></A><H3>
 onMessage</H3>
 <PRE>
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBroadcastReceiver.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBroadcastReceiver.html
index f0b3e26..ae80bf7 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBroadcastReceiver.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBroadcastReceiver.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 GCMBroadcastReceiver
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMConstants.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMConstants.html
index feb2225..205bcf0 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMConstants.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMConstants.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 GCMConstants
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -177,8 +177,8 @@
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_APPLICATION_PENDING_INTENT">EXTRA_APPLICATION_PENDING_INTENT</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION"><CODE>INTENT_TO_GCM_REGISTRATION</CODE></A> to get the application
- id.</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION">"com.google.android.c2dm.intent.REGISTER"</A> to get the
+ application info.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
@@ -186,16 +186,25 @@
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_ERROR">EXTRA_ERROR</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  an error when the registration fails.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_FROM">EXTRA_FROM</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A> to indicate which
+ sender (Google API project id) sent the message.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_REGISTRATION_ID">EXTRA_REGISTRATION_ID</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  the registration id when the registration succeeds.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
@@ -204,8 +213,8 @@
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_SENDER">EXTRA_SENDER</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION"><CODE>INTENT_TO_GCM_REGISTRATION</CODE></A> to indicate the sender
- account (a Google email) that owns the application.</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION">"com.google.android.c2dm.intent.REGISTER"</A> to indicate which
+ senders (Google API project ids) can send messages to the application.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
@@ -213,7 +222,7 @@
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_SPECIAL_MESSAGE">EXTRA_SPECIAL_MESSAGE</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type of message present in the <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE"><CODE>INTENT_FROM_GCM_MESSAGE</CODE></A> intent.</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type of message present in the <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A> intent.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
@@ -229,7 +238,7 @@
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMConstants.html#EXTRA_UNREGISTERED">EXTRA_UNREGISTERED</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  that the application has been unregistered.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
@@ -388,8 +397,8 @@
 <PRE>
 public static final java.lang.String <B>EXTRA_SENDER</B></PRE>
 <DL>
-<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION"><CODE>INTENT_TO_GCM_REGISTRATION</CODE></A> to indicate the sender
- account (a Google email) that owns the application.
+<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION">"com.google.android.c2dm.intent.REGISTER"</A> to indicate which
+ senders (Google API project ids) can send messages to the application.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.google.android.gcm.GCMConstants.EXTRA_SENDER">Constant Field Values</A></DL>
@@ -401,8 +410,8 @@
 <PRE>
 public static final java.lang.String <B>EXTRA_APPLICATION_PENDING_INTENT</B></PRE>
 <DL>
-<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION"><CODE>INTENT_TO_GCM_REGISTRATION</CODE></A> to get the application
- id.
+<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION">"com.google.android.c2dm.intent.REGISTER"</A> to get the
+ application info.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.google.android.gcm.GCMConstants.EXTRA_APPLICATION_PENDING_INTENT">Constant Field Values</A></DL>
@@ -414,7 +423,7 @@
 <PRE>
 public static final java.lang.String <B>EXTRA_UNREGISTERED</B></PRE>
 <DL>
-<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  that the application has been unregistered.
 <P>
 <DL>
@@ -427,7 +436,7 @@
 <PRE>
 public static final java.lang.String <B>EXTRA_ERROR</B></PRE>
 <DL>
-<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  an error when the registration fails. See constants starting with ERROR_
  for possible values.
 <P>
@@ -441,7 +450,7 @@
 <PRE>
 public static final java.lang.String <B>EXTRA_REGISTRATION_ID</B></PRE>
 <DL>
-<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  the registration id when the registration succeeds.
 <P>
 <DL>
@@ -454,7 +463,7 @@
 <PRE>
 public static final java.lang.String <B>EXTRA_SPECIAL_MESSAGE</B></PRE>
 <DL>
-<DD>Type of message present in the <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE"><CODE>INTENT_FROM_GCM_MESSAGE</CODE></A> intent.
+<DD>Type of message present in the <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A> intent.
  This extra is only set for special messages sent from GCM, not for
  messages originated from the application.
 <P>
@@ -482,13 +491,26 @@
 <DL>
 <DD>Number of messages deleted by the server because the device was idle.
  Present only on messages of special type
- <A HREF="../../../../com/google/android/gcm/GCMConstants.html#VALUE_DELETED_MESSAGES"><CODE>VALUE_DELETED_MESSAGES</CODE></A>
+ <A HREF="../../../../com/google/android/gcm/GCMConstants.html#VALUE_DELETED_MESSAGES">"deleted_messages"</A>
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.google.android.gcm.GCMConstants.EXTRA_TOTAL_DELETED">Constant Field Values</A></DL>
 </DL>
 <HR>
 
+<A NAME="EXTRA_FROM"><!-- --></A><H3>
+EXTRA_FROM</H3>
+<PRE>
+public static final java.lang.String <B>EXTRA_FROM</B></PRE>
+<DL>
+<DD>Extra used on <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A> to indicate which
+ sender (Google API project id) sent the message.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.google.android.gcm.GCMConstants.EXTRA_FROM">Constant Field Values</A></DL>
+</DL>
+<HR>
+
 <A NAME="PERMISSION_GCM_INTENTS"><!-- --></A><H3>
 PERMISSION_GCM_INTENTS</H3>
 <PRE>
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMRegistrar.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMRegistrar.html
index a933bc6..c29bf90 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMRegistrar.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMRegistrar.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 GCMRegistrar
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -74,9 +74,9 @@
 </TR>
 <TR>
 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
-  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
-DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
 </TR>
 </TABLE>
 <A NAME="skip-navbar_top"></A>
@@ -109,7 +109,25 @@
 <HR>
 
 <P>
+<!-- =========== FIELD SUMMARY =========== -->
 
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;long</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS">DEFAULT_ON_SERVER_LIFESPAN_MS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default lifespan (7 days) of the <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(Context)"><CODE>isRegisteredOnServer(Context)</CODE></A>
+ flag until it is considered expired.</TD>
+</TR>
+</TABLE>
+&nbsp;
 <!-- ========== METHOD SUMMARY =========== -->
 
 <A NAME="method_summary"><!-- --></A>
@@ -136,6 +154,15 @@
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;long</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#getRegisterOnServerLifespan(Context)">getRegisterOnServerLifespan</A></B>(Context&nbsp;context)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets how long (in milliseconds) the <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegistered(Context)"><CODE>isRegistered(Context)</CODE></A>
+ property is valid.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#getRegistrationId(Context)">getRegistrationId</A></B>(Context&nbsp;context)</CODE>
 
@@ -157,7 +184,8 @@
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(Context)">isRegisteredOnServer</A></B>(Context&nbsp;context)</CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Checks whether the device was successfully registered in the server side.</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Checks whether the device was successfully registered in the server side,
+ as set by <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(Context, boolean)"><CODE>setRegisteredOnServer(Context, boolean)</CODE></A>.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
@@ -188,6 +216,16 @@
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>static&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#setRegisterOnServerLifespan(Context, long)">setRegisterOnServerLifespan</A></B>(Context&nbsp;context,
+                            long&nbsp;lifespan)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets how long (in milliseconds) the <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegistered(Context)"><CODE>isRegistered(Context)</CODE></A>
+ flag is valid.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;void</CODE></FONT></TD>
 <TD><CODE><B><A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#unregister(Context)">unregister</A></B>(Context&nbsp;context)</CODE>
 
 <BR>
@@ -206,6 +244,28 @@
 &nbsp;
 <P>
 
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="DEFAULT_ON_SERVER_LIFESPAN_MS"><!-- --></A><H3>
+DEFAULT_ON_SERVER_LIFESPAN_MS</H3>
+<PRE>
+public static final long <B>DEFAULT_ON_SERVER_LIFESPAN_MS</B></PRE>
+<DL>
+<DD>Default lifespan (7 days) of the <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(Context)"><CODE>isRegisteredOnServer(Context)</CODE></A>
+ flag until it is considered expired.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.google.android.gcm.GCMRegistrar.DEFAULT_ON_SERVER_LIFESPAN_MS">Constant Field Values</A></DL>
+</DL>
+
 <!-- ============ METHOD DETAIL ========== -->
 
 <A NAME="method_detail"><!-- --></A>
@@ -248,11 +308,12 @@
     <li>It defines at least one <CODE>BroadcastReceiver</CODE> with category
       <code>PACKAGE_NAME</code>.
     <li>The <CODE>BroadcastReceiver</CODE>(s) uses the
-       permission.
-    <li>The <CODE>BroadcastReceiver</CODE>(s) handles the 3 GCM intents
-      (,
-      ,
-      and ).
+      <A HREF="../../../../com/google/android/gcm/GCMConstants.html#PERMISSION_GCM_INTENTS">"com.google.android.c2dm.permission.SEND"</A>
+      permission.
+    <li>The <CODE>BroadcastReceiver</CODE>(s) handles the 2 GCM intents
+      (<A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A>
+      and
+      <A HREF="../../../../com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A>).
  </ol>
  ...where <code>PACKAGE_NAME</code> is the application package.
  <p>
@@ -375,7 +436,44 @@
 <PRE>
 public static boolean <B>isRegisteredOnServer</B>(Context&nbsp;context)</PRE>
 <DL>
-<DD>Checks whether the device was successfully registered in the server side.
+<DD>Checks whether the device was successfully registered in the server side,
+ as set by <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(Context, boolean)"><CODE>setRegisteredOnServer(Context, boolean)</CODE></A>.
+
+ <p>To avoid the scenario where the device sends the registration to the
+ server but the server loses it, this flag has an expiration date, which
+ is <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS"><CODE>DEFAULT_ON_SERVER_LIFESPAN_MS</CODE></A> by default (but can be changed
+ by <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#setRegisterOnServerLifespan(Context, long)"><CODE>setRegisterOnServerLifespan(Context, long)</CODE></A>).
+<P>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getRegisterOnServerLifespan(Context)"><!-- --></A><H3>
+getRegisterOnServerLifespan</H3>
+<PRE>
+public static long <B>getRegisterOnServerLifespan</B>(Context&nbsp;context)</PRE>
+<DL>
+<DD>Gets how long (in milliseconds) the <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegistered(Context)"><CODE>isRegistered(Context)</CODE></A>
+ property is valid.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>value set by <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(Context, boolean)"><CODE>setRegisteredOnServer(Context, boolean)</CODE></A> or
+      <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS"><CODE>DEFAULT_ON_SERVER_LIFESPAN_MS</CODE></A> if not set.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setRegisterOnServerLifespan(Context, long)"><!-- --></A><H3>
+setRegisterOnServerLifespan</H3>
+<PRE>
+public static void <B>setRegisterOnServerLifespan</B>(Context&nbsp;context,
+                                               long&nbsp;lifespan)</PRE>
+<DL>
+<DD>Sets how long (in milliseconds) the <A HREF="../../../../com/google/android/gcm/GCMRegistrar.html#isRegistered(Context)"><CODE>isRegistered(Context)</CODE></A>
+ flag is valid.
 <P>
 <DD><DL>
 </DL>
@@ -431,9 +529,9 @@
 </TR>
 <TR>
 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
-  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
-DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
 </TR>
 </TABLE>
 <A NAME="skip-navbar_bottom"></A>
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-frame.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-frame.html
index 9dc665f..a2a599d 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-frame.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-frame.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 com.google.android.gcm
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 
 </HEAD>
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-summary.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-summary.html
index 2b15b81..c8e0341 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-summary.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-summary.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 com.google.android.gcm
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-tree.html b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-tree.html
index f36a8a6..0e27efe 100644
--- a/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-tree.html
+++ b/docs/html/guide/google/gcm/client-javadoc/com/google/android/gcm/package-tree.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 com.google.android.gcm Class Hierarchy
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/client-javadoc/constant-values.html b/docs/html/guide/google/gcm/client-javadoc/constant-values.html
index 171c6a1..796d196 100644
--- a/docs/html/guide/google/gcm/client-javadoc/constant-values.html
+++ b/docs/html/guide/google/gcm/client-javadoc/constant-values.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 Constant Field Values
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -173,6 +173,12 @@
 <TD ALIGN="right"><CODE>"error"</CODE></TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="com.google.android.gcm.GCMConstants.EXTRA_FROM"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/GCMConstants.html#EXTRA_FROM">EXTRA_FROM</A></CODE></TD>
+<TD ALIGN="right"><CODE>"from"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
 <A NAME="com.google.android.gcm.GCMConstants.EXTRA_REGISTRATION_ID"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
 <CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
 <TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/GCMConstants.html#EXTRA_REGISTRATION_ID">EXTRA_REGISTRATION_ID</A></CODE></TD>
@@ -251,6 +257,24 @@
 <P>
 
 <P>
+
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="3">com.google.android.gcm.<A HREF="com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="com.google.android.gcm.GCMRegistrar.DEFAULT_ON_SERVER_LIFESPAN_MS"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;long</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS">DEFAULT_ON_SERVER_LIFESPAN_MS</A></CODE></TD>
+<TD ALIGN="right"><CODE>604800000L</CODE></TD>
+</TR>
+</FONT></TD>
+</TR>
+</TABLE>
+
+<P>
+
+<P>
 <HR>
 
 
diff --git a/docs/html/guide/google/gcm/client-javadoc/default.css b/docs/html/guide/google/gcm/client-javadoc/default.css
new file mode 100644
index 0000000..f11daf7
--- /dev/null
+++ b/docs/html/guide/google/gcm/client-javadoc/default.css
@@ -0,0 +1,4160 @@
+/* color definitions */
+/* 16 column layout */
+/* clearfix idiom */
+/* common mixins */
+/* page layout + top-level styles */
+::-webkit-selection,
+::-moz-selection,
+::selection {
+  background-color: #0099cc;
+  color: #fff; }
+
+html, body {
+  height: 100%;
+  margin: 0;
+  padding: 0;
+  background-color:#F9F9F9;
+  -webkit-font-smoothing: antialiased;
+  /* prevent subpixel antialiasing, which thickens the text */
+  /* text-rendering: optimizeLegibility; */
+  /* turned off ligatures due to bug 5945455 */ }
+
+body {
+  color: #222;
+  font: 14px/19px Roboto, sans-serif;
+  font-weight: 400;
+  letter-spacing:.1;
+  padding:0 10px; }
+
+#page-container {
+  width: 940px;
+  margin: 0 40px; }
+
+#page-header {
+  height: 80px;
+  margin-bottom: 20px;
+  font-size: 48px;
+  line-height: 48px;
+  font-weight: 100;
+  padding-left: 10px; }
+  #page-header a {
+    display: block;
+    position: relative;
+    top: 20px;
+    text-decoration: none;
+    color: #555555 !important; }
+
+#main-row {
+  display: inline-block; }
+  #main-row:after {
+    content: ".";
+    display: block;
+    height: 0;
+    clear: both;
+    visibility: hidden; }
+  * html #main-row {
+    height: 1px; }
+
+#page-footer {
+  margin-left: 190px;
+  margin-top: 80px;
+  color: #999999;
+  padding-bottom: 40px;
+  font-size: 12px;
+  line-height: 15px; }
+  #page-footer a {
+    color: #777777; }
+  #page-footer #copyright {
+    margin-bottom: 10px; }
+
+#nav-container {
+  width: 160px;
+  min-height: 10px;
+  margin-right: 20px;
+  float: left; }
+
+#nav {
+  margin:0;
+  padding:0 0 30px;
+}
+
+#side-nav {
+  min-height:5px; /* silly way to avoid doc floating left when nav goes fixed */
+  margin-bottom:1px;
+}
+#devdoc-nav {
+  outline:none;
+  width:auto;
+  margin: 20px 0 0; }
+  
+#devdoc-nav h2 {
+  border:0;
+}
+
+#devdoc-nav.fixed {
+  position: fixed;
+  margin:0;
+  top: 20px; }
+
+#content {
+  width: 760px;
+  float: left; }
+
+a:hover,
+acronym:hover {
+  color: #7aa1b0 !important; }
+
+a:focus,
+a:active {
+  color: #33b5e5 !important; }
+
+img {
+  border: none; }
+#jd-content img {
+  margin-bottom:15px;
+}
+
+ul {
+  margin: 0;
+  padding: 0; }
+
+strong {
+  font-weight: 500; }
+
+em {
+  font-style: italic; }
+
+acronym {
+  border-bottom: 1px dotted #555555;
+  cursor: help; }
+
+acronym:hover {
+  border-bottom-color: #7aa1b0; }
+
+img.with-shadow,
+video.with-shadow {
+  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25); }
+
+/* disclosures mixin */
+/* content layout */
+.layout-content-row {
+  display: inline-block;
+  margin-bottom: 10px; }
+  .layout-content-row:after {
+    content: ".";
+    display: block;
+    height: 0;
+    clear: both;
+    visibility: hidden; }
+  * html .layout-content-row {
+    height: 1px; }
+
+.layout-content-col {
+  float: left;
+  margin-left: 20px; }
+  .layout-content-col:first-child {
+    margin-left: 0; }
+  .layout-content-col h3,
+  .layout-content-col h4 {
+    margin-top:0; }
+
+.layout-content-col.span-1 {
+  width: 40px; }
+
+.layout-content-col.span-2 {
+  width: 100px; }
+
+.layout-content-col.span-3 {
+  width: 160px; }
+
+.layout-content-col.span-4 {
+  width: 220px; }
+
+.layout-content-col.span-5 {
+  width: 280px; }
+
+.layout-content-col.span-6 {
+  width: 340px; }
+
+.layout-content-col.span-7 {
+  width: 400px; }
+
+.layout-content-col.span-8 {
+  width: 460px; }
+
+.layout-content-col.span-9 {
+  width: 520px; }
+
+.layout-content-col.span-10 {
+  width: 580px; }
+
+.layout-content-col.span-11 {
+  width: 640px; }
+
+.layout-content-col.span-12 {
+  width: 700px; }
+
+.layout-content-col.span-13 {
+  width: 760px; }
+
+.vspace.size-1 {
+  height: 10px; }
+
+.vspace.size-2 {
+  height: 20px; }
+
+.vspace.size-3 {
+  height: 30px; }
+
+.vspace.size-4 {
+  height: 40px; }
+
+.vspace.size-5 {
+  height: 50px; }
+
+.vspace.size-6 {
+  height: 60px; }
+
+.vspace.size-7 {
+  height: 70px; }
+
+.vspace.size-8 {
+  height: 80px; }
+
+.vspace.size-9 {
+  height: 90px; }
+
+.vspace.size-10 {
+  height: 100px; }
+
+.vspace.size-11 {
+  height: 110px; }
+
+.vspace.size-12 {
+  height: 120px; }
+
+.vspace.size-13 {
+  height: 130px; }
+
+.vspace.size-14 {
+  height: 140px; }
+
+.vspace.size-15 {
+  height: 150px; }
+
+.vspace.size-16 {
+  height: 160px; }
+
+/* nav */
+#nav {
+  /* section header divs */
+  /* expanded section header divs */
+  /* sublinks */ }
+  #nav li {
+    list-style-type: none;
+    font-size: 14px;
+    margin:0;
+    padding:0;
+    line-height: 15px; }
+  #nav a {
+    color: #555555;
+    text-decoration: none; }
+  #nav .nav-section-header {
+    position: relative;
+    margin-bottom: 1px;
+    padding: 0 30px 0 0; }
+  #nav li.selected a, #nav li.selected > .nav-section-header > a {
+    color: #09C;
+  }
+  #nav li.selected ul li a {
+  /* don't highlight child items */
+    color: #555555; }
+  #nav .nav-section .nav-section .nav-section-header {
+    /* no white line between second level sections */
+    margin-bottom: 0; }
+    /* section header links */
+    #nav > li > div > a {
+      display: block;
+      color: #333333;
+      font-weight: 500;
+      padding: 10px 0 10px 10px; }
+    #nav .nav-section-header:after {
+      content: '';
+      background: transparent url(../images/styles/disclosure_down.png) no-repeat scroll 50% 50%;
+      width: 34px;
+      height: 34px;
+      display: block;
+      position: absolute;
+      top: 0;
+      right: 0; }
+    #nav .nav-section-header.empty:after {
+      display: none; }
+    /* nested nav headers */
+    #nav .nav-section .nav-section {
+      position: relative;
+      padding: 0;
+      margin: 0; }
+    #nav .nav-section li a {
+    /* first gen child (2nd level li) */
+      display:block;
+      font-weight: normal;
+      text-transform: none;
+      padding: 7px 5px 7px 10px;
+       }
+    #nav .nav-section li li a {
+    /* second gen child (3rd level li) */
+      padding: 5px 5px 5px 10px;
+       }
+  #nav li.expanded .nav-section-header {
+    background:#e9e9e9;
+    background: rgba(0, 0, 0, 0.05); }
+  #nav li.expanded li .nav-section-header {
+    background: transparent; }
+  #nav li.expanded li ul {
+  /* 3rd level ul */
+    padding:0 10px;
+  }
+    #nav li.expanded > .nav-section-header:after {
+      content: '';
+      background: transparent url(../images/styles/disclosure_up.png) no-repeat scroll 50% 50%;
+      width: 34px;
+      height: 34px; }
+  #nav li ul {
+    display:none;
+    overflow: hidden;
+    margin: 0; }
+    #nav li ul.animate-height-in {
+      -webkit-transition: height 0.25s ease-in;
+      -moz-transition: height 0.25s ease-in;
+      transition: height 0.25s ease-in; }
+    #nav li ul.animate-height-out {
+      -webkit-transition: height 0.25s ease-out;
+      -moz-transition: height 0.25s ease-out;
+      transition: height 0.25s ease-out; }
+    #nav li ul li {
+      padding: 0; }
+      #nav li li li {
+        padding: 0; }
+  #nav li.expanded ul {
+    }
+    #nav li ul > li {
+      padding:0;
+    }
+    #nav li ul > li:last-child {
+      padding-bottom:5px;
+    }
+    #nav li.expanded ul > li {
+      background:#efefef;
+      background: rgba(0, 0, 0, 0.03); }
+    #nav li.expanded ul > li li {
+      background:inherit; }
+
+.new,
+.new-child {
+  font-size: .78em;
+  font-weight: bold;
+  color: #ff3d3d;
+  vertical-align:top;
+  white-space:nowrap;
+}
+
+/* content header */
+.content-header {
+  height: 30px;
+  margin:20px 0 25px;
+  padding:0 0 10px;}
+.content-header.just-links {
+  margin-bottom:0;
+  padding-bottom:0;}
+    
+.content-header h1 {
+  color:#000;
+  margin:0;
+  border-bottom:0;
+  padding:0;
+}
+
+.content-footer {
+  border-top: 1px solid #ccc;
+  margin-top: 10px;
+  padding-top:10px;
+  height: 30px; }
+
+.content-footer .col-9 {
+  margin-left:0;
+}
+.content-footer .col-4 {
+  margin-right:0;
+}
+.content-footer.wrap {
+  width:940px;
+}
+
+.paging-links {
+  position: relative; }
+  .paging-links a {
+    position: absolute; }
+  .paging-links a,
+  .training-nav-top a {
+    font-size: 14px;
+    line-height: 30px;
+    color: #555555;
+    text-decoration: none;
+    text-transform: uppercase; }
+  .paging-links .prev-page-link,
+  .training-nav-top .prev-page-link {
+    left: -5px; }
+    .paging-links .prev-page-link:before,
+    .training-nav-top .prev-page-link:before {
+      content: '';
+      background: transparent url(../images/styles/disclosure_left.png) no-repeat scroll 50% 50%;
+      width: 10px;
+      height: 10px;
+      display: inline-block;
+      margin-right: 5px; }
+  .paging-links .next-page-link,
+  .training-nav-top .next-page-link,
+    .training-nav-top .start-class-link,
+    .training-nav-top .start-course-link {
+    right: 10px; }
+    .next-page-link:after,
+    .start-class-link:after,
+    .start-course-link:after,
+    .next-class-link:after {
+      content: '';
+      background: transparent url(../images/styles/disclosure_right.png) no-repeat scroll 50% 50%;
+      width: 10px;
+      height: 10px;
+      display: inline-block;
+      margin-left: 5px; }
+      
+      
+  .training-nav-top a {
+    display:block;
+    float:left;
+    width:108px;
+    height:28px;
+    padding: 8px 15px;
+    line-height:28px;
+    text-align:center;
+    border:1px solid #DADADA;
+    border-bottom:0;
+  }
+      
+  .training-nav-top a.next-page-link {
+    border-left:0;
+    width:109px;
+  }
+      
+  .training-nav-top a.disabled,
+  .content-footer a.disabled {
+    color:#999;
+  }
+      
+  .training-nav-top a.disabled:hover,
+  .content-footer a.disabled:hover {
+    cursor:default;
+    color:#999 !important;
+  }
+      
+  .training-nav-top a.start-class-link,
+  .training-nav-top a.start-course-link {
+    width:248px;
+  }
+  
+  .hide {
+    display:none !important;
+  }
+  
+  .content-footer.next-class {
+    display:block;
+    border:0;
+    margin-top:0;
+    padding-top:0;
+  }
+  
+  .content-footer.next-class a.next-class-link {
+    display:block;
+    float:right;
+    text-transform:uppercase;
+  }
+
+/* content body */
+@-webkit-keyframes glowheader {
+  from {
+    background-color: #33b5e5;
+    color: #000;
+    border-bottom-color: #000; }
+
+  to {
+    background-color: transparent;
+    color: #33b5e5;
+    border-bottom-color: #33b5e5; } }
+
+@-moz-keyframes glowheader {
+  from {
+    background-color: #33b5e5;
+    color: #000;
+    border-bottom-color: #000; }
+
+  to {
+    background-color: transparent;
+    color: #33b5e5;
+    border-bottom-color: #33b5e5; } }
+
+@keyframes glowheader {
+  from {
+    background-color: #33b5e5;
+    color: #000;
+    border-bottom-color: #000; }
+
+  to {
+    background-color: transparent;
+    color: #33b5e5;
+    border-bottom-color: #33b5e5; } }
+
+h2:target,
+h3:target {
+    -webkit-animation-name: glowheader;
+    -moz-animation-name: glowheader;
+    animation-name: glowheader;
+    -webkit-animation-duration: 0.7s;
+    -moz-animation-duration: 0.7s;
+    animation-duration: 0.7s;
+    -webkit-animation-timing-function: ease-out;
+    -moz-animation-timing-function: ease-out;
+    animation-timing-function: ease-out; }
+
+.design ol h4 {
+  margin-bottom:0;
+}
+.design ol {
+  counter-reset: item; }
+  .design ol>li {
+    font-size: 14px;
+    line-height: 20px;
+    list-style-type: none;
+    position: relative; }
+    .design ol>li:before {
+      content: counter(item) ". ";
+      counter-increment: item;
+      position: absolute;
+      left: -20px;
+      top: 0; }
+    .design ol li.value-1:before {
+      content: "1. "; }
+    .design ol li.value-2:before {
+      content: "2. "; }
+    .design ol li.value-3:before {
+      content: "3. "; }
+    .design ol li.value-4:before {
+      content: "4. "; }
+    .design ol li.value-5:before {
+      content: "5. "; }
+    .design ol li.value-6:before {
+      content: "6. "; }
+    .design ol li.value-7:before {
+      content: "7. "; }
+    .design ol li.value-8:before {
+      content: "8. "; }
+    .design ol li.value-9:before {
+      content: "9. "; }
+    .design ol li.value-10:before {
+      content: "10. "; }
+.design .with-callouts ol>li {
+  list-style-position: inside;
+  margin-left: 0; }
+  .design .with-callouts ol>li:before {
+    display: inline;
+    left: -20px;
+    float: left;
+    width: 17px;
+    color: #33b5e5;
+    font-weight: 500; }
+.design .with-callouts ul>li {
+  list-style-position: outside; }
+
+/* special list items */
+li.no-bullet {
+  list-style-type: none !important; }
+li.no-bullet *{
+  margin:0; }
+
+.design li.with-icon {
+  position: relative;
+  margin-left: 20px;
+  min-height: 30px; }
+  .design li.with-icon p {
+    margin-left: 0 !important; }
+  .design li.with-icon:before {
+    position: absolute;
+    left: -40px;
+    top: 0;
+    content: '';
+    width: 30px;
+    height: 30px; }
+  .design li.with-icon.tablet:before {
+    background-image: url(../images/styles/ico_phone_tablet.png); }
+  .design li.with-icon.web:before {
+    background-image: url(../images/styles/ico_web.png); }
+  .design li.with-icon.action:before {
+    background-image: url(../images/styles/ico_action.png); }
+  .design li.with-icon.use:before {
+    background-image: url(../images/styles/ico_use.png); }
+
+/* figures and callouts */
+.figure {
+  position: relative; }
+  .figure.pad-below {
+    margin-bottom: 20px; }
+  .figure .figure-callout {
+    position: absolute;
+    color: #fff;
+    font-weight: 500;
+    font-size: 16px;
+    line-height: 23px;
+    text-align: center;
+    background: transparent url(../images/styles/callout.png) no-repeat scroll 50% 50%;
+    padding-right: 2px;
+    width: 30px;
+    height: 29px;
+    z-index: 1000; }
+    .figure .figure-callout.top {
+      top: -9px; }
+    .figure .figure-callout.right {
+      right: -5px; }
+
+.figure-caption {
+  margin: 0 10px 20px 0;
+  font-size: 14px;
+  line-height: 20px;
+  font-style: italic; }
+
+/* rows of figures */
+.figure-row {
+  font-size: 0;
+  line-height: 0;
+  /* to prevent space between figures */ }
+  .figure-row .figure {
+    display: inline-block;
+    vertical-align: top; }
+  .figure-row .figure + .figure {
+    margin-left: 10px;
+    /* reintroduce space between figures */ }
+
+/* video  containers */
+.framed-galaxynexus-land-span-13 {
+  background: transparent url(../images/styles/device_galaxynexus_blank_land_span13.png) no-repeat
+scroll top left;
+  padding: 42px 122px 62px 126px;
+  overflow: hidden; }
+  .framed-galaxynexus-land-span-13, .framed-galaxynexus-land-span-13 video,
+.framed-galaxynexus-land-span-13 img {
+    width: 512px;
+    height: 286px; }
+
+.framed-galaxynexus-port-span-9 {
+  background: transparent url(../images/styles/device_galaxynexus_blank_port_span9.png) no-repeat
+scroll top left;
+  padding: 95px 122px 107px 124px;
+  overflow: hidden; }
+  .framed-galaxynexus-port-span-9, .framed-galaxynexus-port-span-9 video,
+.framed-galaxynexus-port-span-9 img {
+    width: 274px;
+    height: 488px; }
+
+.framed-galaxynexus-port-span-5 {
+  background: transparent url(../images/styles/device_galaxynexus_blank_port_span5.png) no-repeat
+scroll top left;
+  padding: 75px 31px 76px 33px;
+  overflow: hidden; }
+  .framed-galaxynexus-port-span-5, .framed-galaxynexus-port-span-5 video,
+.framed-galaxynexus-port-span-5 img {
+    width: 216px;
+    height: 384px; }
+
+/* landing page disclosures */
+.landing-page-link {
+  text-decoration: none;
+  font-weight: 500;
+  color: #333333; }
+  .landing-page-link:after {
+    content: '';
+    background: transparent url(../images/styles/disclosure_right.png) no-repeat scroll 50% 50%;
+    width: 10px;
+    height: 10px;
+    display: inline-block;
+    margin-left: 5px; }
+
+/* tooltips */
+.tooltip-box {
+  position: absolute;
+  background-color: rgba(0, 0, 0, 0.9);
+  border-radius: 2px;
+  font-size: 14px;
+  line-height: 20px;
+  color: #fff;
+  padding: 6px 10px;
+  max-width: 250px;
+  z-index: 10000; }
+  .tooltip-box.below:after {
+    position: absolute;
+    content: '';
+    line-height: 0;
+    display: block;
+    top: -10px;
+    left: 5px;
+    border: 5px solid transparent;
+    border-bottom-color: rgba(0, 0, 0, 0.9); }
+
+/* video note */
+.video-instructions {
+  margin-top: 10px;
+  margin-bottom: 10px; }
+  .video-instructions:before {
+    content: '';
+    background: transparent url(../images/styles/ico_movie_inline.png) no-repeat scroll top left;
+    display: inline-block;
+    width: 12px;
+    height: 12px;
+    margin-right: 8px; }
+  .video-instructions:after {
+    content: 'Click device screen to replay movie.'; }
+
+/* download buttons */
+.download-button {
+  display: block;
+  margin-bottom: 5px;
+  text-decoration: none;
+  background-color: #33b5e5;
+  color: #fff !important;
+  font-weight: 500;
+  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12);
+  padding: 6px 12px;
+  border-radius: 2px; }
+  .download-button:hover, .download-button:focus {
+    background-color: #0099cc;
+    color: #fff !important; }
+  .download-button:active {
+    background-color: #006699; }
+
+/* UI tables and other things found in Writing style and Settings pattern */
+.ui-table {
+  width: 100%;
+  background-color: #282828;
+  color: #fff;
+  border-radius: 2px;
+  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
+  border-collapse: separate; }
+  .ui-table th,
+  .ui-table td {
+    padding: 5px 10px;
+    background-color: inherit; 
+    border:0;}
+  .ui-table thead th {
+    font-weight: bold; }
+  .ui-table tfoot td {
+    border-top: 1px solid #494949;
+    border-right: 1px solid #494949;
+    text-align: center; }
+    .ui-table tfoot td:last-child {
+      border-right: 0; }
+
+.layout-with-list-item-margins {
+  margin-left: 30px !important; }
+
+.emulate-content-left-padding {
+  margin-left: 10px; }
+
+.do-dont-label {
+  margin-bottom: 10px;
+  padding-left: 20px;
+  background: transparent none no-repeat scroll 0px 3px; }
+  .do-dont-label.bad {
+    background-image: url(../images/styles/ico_wrong.png); }
+  .do-dont-label.good {
+    background-image: url(../images/styles/ico_good.png); }
+    
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/***** PREVIOUSLY style.css ******************/
+
+
+
+
+
+@media screen, projection, print {
+[dir='rtl'] {
+    direction: rtl;
+}
+html {
+    line-height: 20px;
+}
+pre, table, input, textarea, code {
+    font-size: 1em;
+}
+address, abbr, cite {
+    font-style: normal;
+}
+[dir='rtl'] th {
+    text-align: right;
+}
+html[lang^=ja] blockquote, html[lang^=ja] q, html[lang^=ko] blockquote, html[lang^=ko] q,
+html[lang^=zh] blockquote, html[lang^=zh] q {
+    font-style: normal;
+}
+q {
+    font-style: italic;
+}
+fieldset, iframe, img {
+    border: 0;
+}
+img { 
+	-ms-interpolation-mode: bicubic;
+	vertical-align: middle;
+	max-width: 100%;
+}
+q {
+    quotes: none;
+}
+sup, sub {
+    font-size: 11px;
+    line-height: 0;
+}
+}
+
+@media screen, projection {
+
+table, fieldset {
+    margin: 0;
+}
+h1 {
+    color:#333;
+    font-size: 22px;
+    margin: 20px 0 20px;
+    padding:0 0 10px;
+}
+h1, h2 {
+    line-height: 32px;
+}
+h1.short {
+  margin-right:320px;
+}
+h1.short {
+  margin-right:320px;
+}
+h1.super {
+    font-size: 37px;	
+}
+h2 {
+    color:#333;
+    font-size: 20px;
+    margin: 20px 0 20px;
+    padding:0;
+}
+h3 {
+    color:#333;
+    font-size: 18px;
+}
+h3, h4 {
+    color:#333;
+    line-height: 20px;
+    margin: 10px 0;
+}
+h4 {
+	font-size: 16px;
+}
+h5 {
+	font-size: 14px;	
+}
+h5, h6 {
+	margin: 5px 0;
+}
+h6 {
+	font-size: 12px;	
+}
+hr { /* applied to the bottom of h2 elements */
+	height: 1px;
+	margin: 5px 0 20px;
+	border: 0;
+	background: #ccc;
+}
+p, pre, table, form {
+    margin: 0 0 15px;
+}
+small {
+	font-size: 11.5px;
+	color: #000;
+}
+ul, ol {
+    margin: 0 0 15px 18px;
+    padding: 0;
+}
+[dir='rtl'] ul, [dir='rtl'] ol {
+    margin: 10px 30px 10px 10px;
+}
+ul ul, ul ol, ol ul, ol ol {
+    margin-bottom: 0;
+    margin-top: 0;
+}
+li {
+  margin:0 0 4px;
+}
+dd {
+  margin:0 0 10px 30px;
+}
+dd p {
+  margin:10px 0 0;
+}
+ul p,
+ol p {
+  margin:10px 0 0;
+}
+pre strong, pre b, a strong, a b, a code {
+    color: inherit;
+}
+pre, code {
+    color: #060;
+    font: 14px/1.5 'courier new', courier, monospace;
+}
+code {
+    font-weight:bold;
+}
+
+legend {
+    display: none;
+}
+a:link, a:visited {
+  color: #258aaf;
+  text-decoration: none;
+}
+a:focus, a:hover, a:active {
+  color: #33B5E5;
+  text-decoration: none;
+}
+strong, b {
+  font-weight:bold;
+  color: #222;
+}
+table {
+  border-collapse: collapse;
+  border-spacing: 0;
+  border:0;
+  margin: .5em 1em 1em 0;
+  width:100%; /* consistent table widths; within IE's quirks */
+  background-color:#f7f7f7;
+}
+th, td {
+  padding: 4px 12px;
+  vertical-align: top;
+  text-align: left;
+}
+td {
+  background-color:inherit;
+  border:solid 1px #DDD;
+}
+th {
+  background-color: #999;
+  color: #fff;
+  border:solid 1px #DDD;
+  font-weight: normal;
+}
+tr:first-of-type th:first-of-type:empty {
+    visibility: hidden;
+}
+/* --------------------------------------------------------------------------
+Footer
+*/
+.line {
+    clear: both;
+    background: #acbc00;
+    background: -moz-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #acbc00),
+color-stop(50%, #acbc00), color-stop(50%, #bdde00), color-stop(100%, #bdde00));
+    background: -webkit-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: -o-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: -ms-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    height: 2px;
+    margin-top: 150px;
+    position: relative;
+    z-index: 11;
+}
+#footer {
+    font-size:11px;
+    clear: both;
+    color: #999;
+    padding: 15px 0;
+    margin-top:10px;
+    width:auto;
+}
+#footer-local ul {
+	list-style: none;
+	margin: 5px 0 30px 0;
+}
+#footer-local li {
+    display: inline;
+}
+#footer-local li+li:before {
+    content: '|';
+    padding: 0 3px;
+	color: #e5e5e5;
+}
+#footer-global {
+    padding: 10px 15px;
+	background: #f5f5f5;
+}
+#footer-global {
+    border-top: 1px solid #ebebeb;
+    font-size: 11.5px;
+    line-height: 1.8;
+    list-style: none;
+}
+#footer-global ul {
+    margin: 0;
+}
+#footer-global li {
+    display: inline;
+    font-weight: bold;
+}
+#footer-global li+li:before {
+    content: '¬?';
+    padding: 0 3px;
+}
+* html #footer-global li {
+    margin: 0 13px 0 0;
+}
+* [dir='rtl'] #footer-global li {
+    margin: 0 0 0 13px;
+}
+*+html #footer-global li {
+    margin: 0 13px 0 0;
+}
+*+[dir='rtl'] #footer-global li {
+    margin: 0 0 0 13px;
+}
+#footer-global li a {
+    font-weight: normal;
+}
+.locales {
+  margin: 10px 0 0 0px;
+}
+[dir='rtl'] .locales {
+    background-position: right center;
+    float: left;
+    padding: 0 24px 0 0;
+}
+.locales form {
+    margin: 0;	
+}
+.locales select, .sites select {
+  line-height: 3.08;
+  margin: 0px 0;
+  border: solid 1px #EBEBEB;
+  -webkit-appearance: none;
+  background: white url('../images/arrows-up-down.png') right center no-repeat;
+  height: 30px;
+  color: #222;
+  line-height: normal;
+  padding: 5px;
+  width: 230px;
+}
+}
+
+/* =============================================================================
+   Print Only
+   ========================================================================== */
+@media print {
+  /* configure printed page */
+  @page {
+      margin: 0.75in 1in;
+      widows: 4;
+      orphans: 4;
+  }
+
+  /* reset spacing metrics */
+  html, body, .wrap {
+      margin: 0 !important;
+      padding: 0 !important;
+      width: auto !important;
+  }
+
+  /* leave enough space on the left for bullets */
+  body {
+      padding-left: 20px !important;
+  }
+  #doc-col {
+      margin-left: 0;
+  }
+
+  /* hide a bunch of non-content elements */
+  #header, #footer, #nav-x, #side-nav,
+  .training-nav-top, .training-nav-bottom,
+  #doc-col .content-footer,
+  .nav-x, .nav-y,
+  .paging-links,
+  a.totop {
+      display: none !important;
+  }
+
+  /* remove extra space above page titles */
+  #doc-col .content-header {
+      margin-top: 0;
+  }
+
+  /* bump up spacing above subheadings */
+  h2 {
+      margin-top: 40px !important;
+  }
+
+  /* print link URLs where possible and give links default text color */
+  p a:after {
+      content: " (" attr(href) ")";
+      font-size: 80%;
+  }
+  p a {
+      word-wrap: break-word;
+  }
+  a {
+      color: inherit;
+  }
+
+  /* syntax highlighting rules */
+  .str { color: #060; }
+  .kwd { color: #006; font-weight: bold; }
+  .com { color: #600; font-style: italic; }
+  .typ { color: #404; font-weight: bold; }
+  .lit { color: #044; }
+  .pun { color: #440; }
+  .pln { color: #000; }
+  .tag { color: #006; font-weight: bold; }
+  .atn { color: #404; }
+  .atv { color: #060; }
+}
+
+/* =============================================================================
+   Columns
+   ========================================================================== */
+
+@media screen, projection, print {
+.full {
+	padding: 2.5em 0;
+	border-top: solid 1px #ddd;
+	border-bottom: solid 1px #ddd;
+	background: #f7f7f7;	
+}
+.wrap {
+	margin: 0 auto;
+	width: 940px;
+	clear: both;
+}
+.cols {
+    height: 1%;
+    margin: 0 -1.533742331288343558282%;
+    width: 103.06748466257669%}
+*+html .cols {
+    margin-bottom: 20px;
+}
+.cols:after {
+    clear: both;
+    content: ' ';
+    display: block;
+    height: 0;
+    visibility: hidden;
+}
+.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
+.col-13, .col-14, .col-15, .col-16 {
+    display: inline;
+	float: left;
+	margin-left: 10px;
+	margin-right: 10px;
+}
+/*
+* html .col-1, * html .col-2, * html .col-3, * html .col-4, * html .col-5, * html .col-6, * html
+.col-7, * html .col-8, * html .col-9, * html .col-10, * html .col-11, * html .col-12  {
+    margin: 0;
+    padding: 0 1.4% 20px;
+}
+[dir='rtl'] .col-1, [dir='rtl'] .col-2, [dir='rtl'] .col-3, [dir='rtl'] .col-4, [dir='rtl'] .col-5,
+[dir='rtl'] .col-6, [dir='rtl'] .col-7, [dir='rtl'] .col-8, [dir='rtl'] .col-9, [dir='rtl'] .col-10,
+[dir='rtl'] .col-11, [dir='rtl'] .col-12 {
+    float: right;
+}
+*/
+.col-1 { width: 40px }
+.col-2 { width: 100px }
+.col-3 { width: 160px }
+.col-4 { width: 220px }
+.col-5 { width: 280px }
+.col-6 { width: 340px }
+.col-7 { width: 400px }
+.col-8 { width: 460px }
+.col-9 { width: 520px }
+.col-10 { width: 580px }
+.col-11 { width: 640px }
+.col-12 { width: 700px }
+.col-13 { width: 760px }
+.col-14 { width: 820px }
+.col-15 { width: 880px }
+.col-16 { width: 940px }
+}
+
+.col-right {
+  margin-right:0px;
+}
+
+@media screen and (max-width:772px) {
+.col-5, .col-6, .col-7 {
+    clear: both;
+    width: 97.0238096%}
+}
+
+/* =============================================================================
+   Layout
+   ========================================================================== */
+@media screen, projection, print {
+
+/* --------------------------------------------------------------------------
+Header, Login, Nav-X, Search
+*/
+#header {
+	padding: 2.2em 0 0.2em 0;
+}
+#header:before, #header:after {
+	content: "";
+	display: table;
+	clear: both
+}
+.logo, .nav-x {
+    float: left;
+}
+.nav-x {
+    margin-top: -2px;
+	list-style-type: none;
+}
+.nav-x a {
+    color: #333;
+    font-size: 16px;
+}
+.design a.selected {
+    color: #33b5e5;
+}
+.develop a.selected {
+    color: #F80;
+}
+.distribute a.selected {
+    color: #9C0;
+}
+
+
+
+.nav-x li {
+    display: inline;
+    margin-right: 45px;
+}
+.search {
+	float: right;
+	position: relative;
+	width: 220px
+}
+.search .bottom, .search .left, .search .right {
+	position: absolute;
+	background-color: #a3a3a3;
+}
+.search .bottom {
+	width: 220px;
+	height: 1px;
+	top: 24px;
+	left: 0
+}
+.search .left, .search .right {	
+	height: 5px;
+	width: 1px
+}
+.search .left {	top: 19px; left: 0 }
+.search .right { top: 19px; right: 0 }
+.search form {
+	float: left;
+	margin-top: 2px;
+	width: inherit;
+}
+.search .close,
+#player-frame .close {
+  position: absolute;
+  right: 8px;
+  bottom: 4px;
+  width: 16px;
+  height: 16px;
+  margin: 0;
+  text-indent: -1000em;
+  background: url(../images/close.png) no-repeat 0 0;
+  z-index:9999;
+}
+.search .close:hover, .search .close:focus,
+#player-frame .close:hover, #player-frame .close:focus {
+  background-position: -16px 0;
+  cursor:pointer;
+}
+#player-frame .close {
+  top: 6px;
+}
+.search form input {
+	color: #999;
+	font-size: 1em;
+	width: inherit;
+	border: none;
+	margin: 0;
+	padding:0 0 0 6px;
+	z-index: 1500;
+	background-color: transparent
+}
+.search:hover .bottom, .search:hover .left, .search:hover .right {
+	background-color: #33b5e5;
+}
+.search:hover .icon {
+	background-position: -8px 0
+}
+.search form input:focus {
+	color: #222;
+	font-weight: bold;
+	outline:0;
+}
+/* Search Dropdown */
+.search-dropdown {
+	padding: 15px;
+	width: 192px;
+	border: solid 1px #c5c5c5;
+	background: #fff;
+	position: absolute;
+	top: 35px;
+	left: 0;
+	-moz-box-shadow: 0 0 10px rgba(0,0,0,0.2);
+	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.2);
+	box-shadow: 0  0 10px rgba(0,0,0,0.2)
+}
+.search-dropdown ul, .search-dropdown ul li {
+	list-style-type: none;
+	margin: 0;
+	padding: 0
+}
+.search-dropdown ul li {
+	clear: both	
+}
+.search-dropdown img {
+	float: left;
+	margin: 0 10px 10px 0
+}
+.search-dropdown h6 {
+	color: #222;
+	margin: 0;
+	line-height: normal
+}
+.search-dropdown .desc {
+	color: #999;
+	font-size: 11.5px;
+	line-height: normal;
+	margin: 0;
+}
+.search-dropdown li a:hover h6, .search-dropdown li a:hover .desc {
+	color: #33b5e5
+}
+/* --------------------------------------------------------------------------
+Buttons
+*/
+.button, a.button, .button-secondary, a.button-secondary {
+	border-image: initial;
+    -webkit-border-radius: 2px;
+    -moz-border-radius: 2px;
+    border-radius: 2px;
+    cursor: pointer;
+}
+.button, a.button {
+    background-color: #09c;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#2faddb), to(#09c));
+    background-image: -webkit-linear-gradient(top, #2faddb, #09c);
+    background-image: -moz-linear-gradient(top, #2faddb, #09c);
+    background-image: -ms-linear-gradient(top, #2faddb, #09c);
+    background-image: -o-linear-gradient(top, #2faddb, #09c);
+    background-image: linear-gradient(top, #2faddb, #09c);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#2faddb', EndColorStr='#0099cc',GradientType=0);
+    border: 1px solid #3990ab;
+    color: #fff;
+}
+.button-secondary, a.button-secondary {
+    background-color: #f3f3f3;
+    border: 1px solid #dcdcdc;
+    color: #444;
+}
+a.button, a.button:visited, a.button-secondary, a.button-secondary:visited {
+    height: 28px;
+    line-height: 28px;
+    margin-right: 16px;
+	font-weight: 400;
+    min-width: 54px;
+    outline: 0;
+    padding: 8px 15px;
+    text-align: center;
+}
+.button, .button-secondary {
+    height: 34px;
+    line-height: 34px;
+    margin-right: 16px;
+	font-weight: 400;
+    min-width: 54px;
+    outline: 0;
+    padding: 0 15px;
+    text-align: center;
+}
+.button:hover, a.button:hover {
+    border-color: #09c;
+    background-color: #4cadcb;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#5dbcd9), to(#4cadcb));
+    background-image: -webkit-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: -moz-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: -ms-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: -o-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: linear-gradient(top, #5dbcd9, #4cadcb);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#5dbcd9',
+EndColorStr='#4cadcb',GradientType=0);
+    color: #fff !important;
+}
+.button:active, a.button:active {
+    background-color: #1e799a;
+    background-image: none;
+    border-color: #30b7e6;
+}
+.button-secondary:hover, a.button-secondary:hover {
+    border-color: #dbdbdb;
+    background-color: #f3f3f3;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));
+    background-image: -webkit-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -moz-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -ms-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -o-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: linear-gradient(top, #f9f9f9, #ececec);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f9f9f9',
+EndColorStr='#ececec');
+    color: #33B5E5 !important;
+}
+.button-secondary:active, a.button-secondary:active {
+    border-color: #dadada;
+	background: #ebebeb; /* Old browsers */
+	/* IE9 SVG, needs conditional override of 'filter' to 'none' */
+	background:
+url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/
+Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0Jv
+eD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+
+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIg
+eDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ViZWJl
+YiIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjEwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2ZhZmFmYSIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjkwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNmY2ZjYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFy
+R3JhZGllbnQ+
+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIg
+Lz4KPC9zdmc+);
+	background: -moz-linear-gradient(top,  #ebebeb 0%, #f9f9f9 5%, #fafafa 50%, #f9f9f9 90%,
+#ffffff 100%); /* FF3.6+ */
+	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ebebeb),
+color-stop(5%,#f9f9f9), color-stop(50%,#fafafa), color-stop(90%,#f9f9f9), color-stop(100%,#ffffff));
+/* Chrome,Safari4+ */
+	background: -webkit-linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9
+90%,#ffffff 100%); /* Chrome10+,Safari5.1+ */
+	background: -o-linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9 90%,#ffffff
+100%); /* Opera 11.10+ */
+	background: -ms-linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9 90%,#ffffff
+100%); /* IE10+ */
+	background: linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9 90%,#ffffff
+100%); /* W3C */
+	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb',
+endColorstr='#ffffff',GradientType=0 ); /* IE6-8 */
+	-webkit-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	-moz-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05); 
+	color: #258AAF !important;
+}
+.button.big {
+  font-size:20px;
+  display:inline-block;
+}
+
+.button.disabled,
+.button.disabled:hover,
+.button.disabled:active {
+  background:#ebebeb;
+  color:#999;
+  border-color:#999;
+  cursor:default;
+}
+
+.training-nav-top a.button-secondary,
+.training-nav-bottom a.button-secondary {
+  display:block;
+  float:left;
+  margin:0;
+  width:130px;
+  text-transform:uppercase;
+  font-weight:bold;
+  
+    background-color: #f3f3f3;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));
+    background-image: -webkit-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -moz-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -ms-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -o-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: linear-gradient(top, #f9f9f9, #ececec);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f9f9f9',
+EndColorStr='#ececec');
+    color: #33B5E5;
+}
+
+.training-nav-top a.button-secondary:hover,
+.training-nav-bottom a.button-secondary:hover {
+    background-color: #09c;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#2faddb), to(#09c));
+    background-image: -webkit-linear-gradient(top, #2faddb, #09c);
+    background-image: -moz-linear-gradient(top, #2faddb, #09c);
+    background-image: -ms-linear-gradient(top, #2faddb, #09c);
+    background-image: -o-linear-gradient(top, #2faddb, #09c);
+    background-image: linear-gradient(top, #2faddb, #09c);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#2faddb', EndColorStr='#09c');
+    border: 1px solid #3990ab;
+    color: #fff !important;
+}
+
+.training-nav-top a.button-secondary.last,
+.training-nav-bottom a.button-secondary.last {
+  border-left:0;
+}
+
+.training-nav-top a.button-secondary.double-size,
+.training-nav-bottom a.button-secondary.double-size {
+  width:291px;
+}
+
+.training-nav-top,
+.training-nav-bottom {
+  float:right;
+  margin:0 0 0 20px;
+}
+
+.training-nav-bottom {
+  padding:0 0 20px;
+}
+
+#tb-wrapper,
+#qv-wrapper {
+  float:right;
+  clear:right;
+  margin:-27px 0 0 20px; /* negative top-margin to counter the content-header bottom margin */
+  padding:0 0 20px;
+}
+
+#tb,
+#qv {
+  font-size:13px;
+  line-height:18px;
+  width:238px;
+  border:1px solid #ccc;
+  float:right;
+}
+
+#tb {
+  width:278px;
+}
+
+#tb h2,
+#qv h2 {
+  margin:10px 15px;
+  padding:0;
+  text-transform:uppercase;
+  border-bottom:1px solid gainsboro;
+}
+
+#tb *,
+#qv * {
+  font-size:inherit;
+}
+
+#tb .download-box {
+  padding:0 0 0 15px;
+}
+
+#tb .download-box .filename {
+  font-size:11px;
+  margin:4px 4px 10px;
+  color:#666;
+}
+
+
+/* Dev guide quicknav */
+
+.sidebox-wrapper {
+  float:right;
+  clear:right;
+  margin:0 0 0 20px;
+  padding:0 0 20px;
+}
+
+.sidebox {
+  width:226px;
+  font-size:13px;
+  line-height:18px;
+  border-left:4px solid #99CC00;
+  float:right;
+  padding:0 0 0 10px;
+}
+
+.sidebox h2,
+.sidebox h3,
+.sidebox h4,
+.sidebox h5 {
+  font-weight:bold;
+  margin:0 0 10px;
+}
+
+.sidebox * {
+  font-size:inherit;
+}
+
+#tb ol,
+#tb ul,
+#qv ul {
+  margin:0 15px 10px 35px;
+}
+
+#qv ol {
+  list-style:none;
+  margin:0 15px 15px;
+  font-size:inherit;
+  line-height:inherit;
+}
+
+#tb ol ol,
+#tb ul ul,
+#qv ol ol,
+#qv ul ul,
+.sidebox ol ol,
+.sidebox ul ul {
+  margin-bottom:0;
+}
+
+#qv ol ol {
+  margin:3px 0 3px 15px;
+}
+
+.sidebox p,
+#qv p,
+#tb p {
+  margin: 0 0 10px;
+}
+
+
+/* --------------------------------------------------------------------------
+Form
+*/
+.article form {
+    margin: 0 0 20px;
+}
+.article form .form-required {
+    color: #dd4b39;
+}
+.article form fieldset {
+    margin: 0 0 20px;
+    padding: 0;
+}
+.article form legend {
+    display: block;
+    line-height: 1.5;
+    margin: 0;
+    padding: 0;
+}
+/*
+.article form ol, .article form ul {
+    margin: 0 0 0 1em;
+    padding: 0 0 0 1em;
+}
+[dir='rtl'] .article form ol, [dir='rtl'] .article form ul {
+    margin: 0 1em 0 0;
+    padding: 0 1em 0 0;
+}
+.article form ol ul, .article form ul ul, [dir='rtl'] .article form ol ul, [dir='rtl'] .article form
+ul ul {
+    list-style: none;
+    margin: 0;
+    padding: 0;
+}
+.article form li {
+    margin: 0 0 20px;
+}
+.article form li li {
+    margin: 0 0 5px;
+}
+*/
+.article form label {
+    display: block;
+    margin: 0 0 5px;
+    padding: 0;
+}
+.article form input[type='text'], .article form select, .article form textarea, .article form
+.checkbox-group, .article form .radio-group {
+    margin-bottom: 15px;
+}
+.checkbox-group input {
+	width: 13px;
+	height: 13px;
+	background: #fff;
+	border: solid 1px #c6c6c6;
+	float: left;
+}
+.article form .checkbox-group, .article form .radio-group {
+	display: block
+}
+.article form select {
+    border: solid 1px #ebebeb;
+    border-top-color: #ddd;
+    -webkit-appearance: none;
+    background: #f3f3f3 url(../images/arrows-up-down.png) right center no-repeat;
+    height: 30px;
+    color: #222;
+    line-height: normal;
+    padding: 5px;
+    width: 130px;
+}
+    
+.article form .browse .browse-msg {
+	font-size: 11.5px;	
+}
+.article form .browse .button-secondary {
+	height: auto;
+	line-height: 25px;
+	font-size: 11px;
+	padding: 0 8px;
+	margin: 0 10px 15px 0;
+}
+.article form input[type='text'], .article form textarea {
+    border: 1px solid #ebebeb;
+    border-top-color: #dcdcdc;
+    color: #222;
+    line-height: normal;
+    padding: 6px 10px;
+    width: 300px;	
+}
+.article form textarea {
+    height: 150px;
+}
+.article form input[type='text']:focus, .article form textarea:focus {
+    border-color: #33B5E5;
+    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    -o-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    outline: 0;
+}
+.article form input[disabled], .article form textarea[disabled], .article form label.form-disabled {
+    color: #999;
+}
+.article form input[type='text'][disabled], .article form textarea[disabled] {
+    background-color: #ebebeb;
+}
+form .form-error input[type='text'], form .form-error textarea {
+    border-color: #dd4b39;
+	margin-right: 20px;
+}
+.aside {
+    -moz-border-radius: 2px;
+    -webkit-border-radius: 2px;
+    border-radius: 2px;
+    margin: 10px 0;
+    padding: 20px;
+	color: #666;
+    position: relative;
+	background: #f9f9f9;
+}
+/*
+.aside, .notification, .promo {
+    -moz-border-radius: 2px;
+    -webkit-border-radius: 2px;
+    border-radius: 2px;
+    margin: 10px 0;
+    padding: 10px;
+    position: relative;
+}
+.aside>:first-child, .notification>:first-child, .promo>:first-child {
+    margin-top: 0;
+}
+.aside>:last-child, .notification>:last-child, .promo>:last-child {
+    margin-bottom: 0;
+}
+.aside {
+    background: #f9f9f9;
+}
+.notification {
+    background: #fffbe4;
+    border-color: #f8f6e6;
+}
+.promo {
+    background: #f6f9ff;
+    border-color: #eff2f9;
+}
+*/
+/* --------------------------------------------------------------------------
+Code Style
+*/
+pre {
+	margin: 1em 0;
+	padding: 1em;
+	overflow: auto;
+	border: solid 1px #ddd;
+	background: #f7f7f7;	
+}
+.str { color: #080; }
+.kwd { color: #008; }
+.com { color: #800; }
+.typ { color: #606; }
+.lit { color: #066; }
+.pun { color: #660; }
+.pln { color: #000; }
+.tag { color: #008; }
+.atn { color: #828; }
+.atv { color: #080; }
+.dec { color: #606; }
+
+/* --------------------------------------------------------------------------
+Three-Pane
+*/
+/* Package Nav & Classes Nav */
+.three-pane {
+	position: relative;
+	border-top: solid 1px #ebebeb;
+}
+#packages-nav .js-pane,
+#classes-nav .js-pane {
+  overflow:visible;
+}
+#packages-nav {
+        height:270px;
+	max-height: inherit;
+	overflow: hidden;
+	position: relative;	
+}
+#classes-nav {
+	overflow: hidden;
+	position: relative;	
+}
+#packages-nav ul, #classes-nav ul {
+	list-style-type: none;
+	margin: 10px 0 20px 0;
+	padding: 0;	
+}
+#classes-nav li {
+	font-weight: bold;
+	margin: 5px 0;
+}
+#packages-nav li,
+#classes-nav li li {
+	margin: 0;
+}
+#packages-nav li a, #packages-nav li a:active, #packages-nav li a:visited,
+#classes-nav li a, #classes-nav li a:active, #classes-nav li a:visited {
+	padding: 0 0 0 4px;
+}
+#packages-nav li a, #packages-nav li a:active, #packages-nav li a:visited,
+#classes-nav li li a, #classes-nav li li a:active, #classes-nav li li a:visited,
+#nav-tree li a, #nav-tree li a:active, #nav-tree li a:visited {
+	color: #222;
+	font-weight: normal;	
+}
+#packages-nav li a, #packages-nav li a:active, #packages-nav li a:visited,
+#classes-nav li li a, #classes-nav li li a:active, #classes-nav li li a:visited {
+	display: block;
+}
+#packages-nav li.selected a, #packages-nav li.selected a:active, #packages-nav li.selected
+a:visited,
+#classes-nav li li.selected a, #classes-nav li li.selected a:active, #classes-nav li li.selected
+a:visited,
+#nav-tree li div.selected {
+    font-weight: 500;
+    color: #0099cc;
+    background-color:#fff; }
+  #packages-nav li.selected ul li a,
+  #classes-nav li.selected ul li a {
+  /* don't highlight child items */
+    color: #555555; }
+#nav-tree li div.selected a {
+    font-weight: 500;
+    color: #0099cc;
+}
+#nav-swap {
+  height:30px;
+  border-top:1px solid #ccc;
+}
+#nav-swap a {
+  display:inline-block;
+  height:100%;
+  color: #222;
+  font-size: 12px;
+  padding: 5px 0 5px 5px;
+}
+
+#nav-swap .fullscreen {
+  float: right;
+  width: 24px;
+  height: 24px;
+  text-indent: -1000em;
+  padding:0;
+  margin:3px 5px 0;
+  background: url(../images/fullscreen.png) no-repeat -24px 0;
+}
+#nav-swap .fullscreen.disabled {
+  background-position: 0 0;
+}
+#nav-swap .fullscreen:hover, 
+#nav-swap .fullscreen:focus {
+  cursor:pointer;
+}
+
+
+/* nav tree */
+#side-nav, #devdoc-nav, #swapper,
+#nav-tree, #tree-list {
+  overflow:hidden;
+  margin-left:0;
+}
+
+#nav-tree ul {
+  list-style:none;
+  padding:0;
+  margin:10px 0;
+}
+
+#nav-tree ul li div {
+  padding:0 0 0 4px;
+}
+
+#side-nav #nav-tree ul li a,
+#side-nav #nav-tree ul li span.no-children {
+  padding: 0;
+  margin: 0;
+}
+
+#nav-tree .plus {
+  margin: 0 3px 0 0;
+}
+
+#nav-tree ul ul {
+  list-style: none;
+  margin: 0;
+  padding: 0 0 0 0;
+}
+
+#nav-tree ul li {
+  margin: 0;
+  padding: 0 0 0 0;
+  white-space: nowrap;
+}
+
+#nav-tree .children_ul {
+  padding:0;
+  margin:0;
+}
+#nav-tree .children_ul li div {
+  padding:0 0 0 10px;
+}
+#nav-tree .children_ul .children_ul li div {
+  padding:0 0 0 20px;
+}
+
+#nav-tree a.nolink {
+  color: #222;
+  text-decoration: none;
+}
+
+#nav-tree span.label {
+  width: 100%;
+}
+
+#nav-tree {
+  overflow-x: auto;
+  overflow-y: scroll;
+  outline:0;
+}
+
+
+/* Content */
+#doc-col {
+  margin-right:0;
+}
+#doc-content-container {
+	margin-left: 291px	
+}
+#doc-header, #doc-content {
+	padding: 1em 2em;
+}
+#doc-header {
+	background: #f7f7f7;	
+}
+#doc-header h1 {
+	line-height: 0;
+	margin-bottom: 15px;
+}
+#api-info-block {
+	float: right;
+	font-weight: bold;
+}
+#api-info-block a, #api-info-block a:active, #api-info-block a:visited {
+	color: #222;
+}
+#api-info-block a:hover, #api-info-block a:focus {
+	color: #33B5E5;
+}
+#api-nav-header {
+  height:19px; /* plus 16px padding = 35; same as #nav li */
+  font-size:14px;
+  padding: 8px 0;
+  margin: 0;
+  border-bottom: 1px solid #CCC;
+  background:#e9e9e9;
+  background: rgba(0, 0, 0, 0.05); /* matches #nav li.expanded */
+
+}
+#api-nav-title {
+  padding:0 5px;
+  white-space:nowrap;
+}
+
+#api-level-toggle {
+  float:right;
+  padding:0 5px;
+}
+
+#api-level-toggle label {
+  margin:0;
+  vertical-align:top;
+  line-height: 19px;
+  font-size:13px;
+  height: 19px;
+}
+
+#api-level-toggle .select-wrapper {
+  width: 35px;
+  display: inline-block;
+  overflow: hidden;
+}
+#api-level-toggle select {
+  border: 0;
+  appearance:none;
+  -moz-appearance:none;
+  -webkit-appearance: none;
+  background: transparent url(../images/arrows-up-down.png) 23px 5px no-repeat;
+  color: #222;
+  height: 19px;
+  line-height: 19px;
+  padding: 0;
+  margin:1px 0 0 0;
+  width:150%;
+  font-size:13px;
+  vertical-align:top;
+  outline:0;
+}
+
+
+/* Toggle for revision notes and stuff */
+div.toggle-content.closed .toggle-content-toggleme {
+  display:none;
+}
+
+#jd-content img.toggle-content-img {
+  margin:0 5px 5px 0;
+}
+div.toggle-content p {
+  margin:10px 0 0;
+}
+div.toggle-content-toggleme {
+  padding:0 0 0 15px;
+}
+
+
+/* API LEVEL FILTERED MEMBERS */
+
+.absent,
+.absent a:link,
+.absent a:visited,
+.absent a:hover,
+.absent * {
+  color:#bbb !important;
+  cursor:default !important;
+  text-decoration:none !important;
+}
+#devdoc-nav li.absent.selected,
+#devdoc-nav li.absent.selected *,
+#devdoc-nav div.label.absent.selected,
+#devdoc-nav div.label.absent.selected * {
+  background-color:#eaeaea !important;
+}
+.absent h4.jd-details-title,
+.absent h4.jd-details-title * {
+  background-color:#f6f6f6 !important;
+}
+.absent img {
+  opacity: .3;
+  filter: alpha(opacity=30);
+  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
+}
+
+
+
+
+
+
+
+
+
+/* JQUERY RESIZABLE STYLES */
+.ui-resizable { position: relative; }
+.ui-resizable-handle { position: absolute; display: none; font-size: 0.1px; z-index:1; }
+.ui-resizable .ui-resizable-handle { display: block; border-bottom: 1px solid #e4e4e4; }
+/*body .ui-resizable-disabled .ui-resizable-handle { display: none; }
+body .ui-resizable-autohide .ui-resizable-handle { display: none; }*/
+.ui-resizable-s { cursor: s-resize; height: 10px; width: 100% !important; bottom: -11px; left: 0;
+border-bottom: solid 1px #ededed;
+  background: #f7f7f7 url("../images/resizable-s2.png") no-repeat scroll center center; }
+/*
+.ui-resizable-e { 
+cursor: e-resize; width: 10px; right: 0; top: 0; height: 100%; border-right: solid
+1px #ededed;background: #f7f7f7 url("../images/resizable-e2.png") no-repeat scroll center center; }
+*/
+
+/* --------------------------------------------------------------------------
+Lightbox
+*/
+.lightbox {	
+	width: 769px;
+	padding: 1.5em;
+	margin: 0 auto;
+	border: solid 1px #dcdcdc;
+	background: #fff;
+	-moz-box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
+	-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
+	box-shadow: 1px 1px 5px rgba(0,0,0,0.1)
+}
+.lightbox .header {
+	float: left;
+	width: 720px;
+	margin: -10px 20px 10px 0;	
+}
+.lightbox .close {
+	float: right;
+	width: 10px;
+	height: 10px;
+	margin: -10px -10px 10px 0;
+	text-indent: -1000em;
+	background: url(../images/close.png) no-repeat 0 0;
+}
+.lightbox .close:hover, .lightbox .close:focus {
+	background-position: -10px 0;
+}
+
+/* --------------------------------------------------------------------------
+Misc
+*/
+
+
+.clearfix:before, .clearfix:after {
+	content: "";
+	display: table
+}
+.clearfix:after {
+	clear: both
+}
+.clearfix {
+	*zoom: 1
+}
+table.blank th, table.blank td {
+    border: 0;
+	background: none
+}
+.caption {
+	margin: 0.5em 0 2em 0;
+	color: #000;
+	font-size: 11.5px;	
+}
+
+.nolist {
+  list-style:none;
+  margin-left:0;
+}
+
+
+pre.classic {
+  background-color:transparent;
+  border:none;
+  padding:0;
+}
+
+p.img-caption {
+  margin: -10px 0 20px;
+  font-size:13px;
+  color:#666;
+}
+
+div.figure {
+  float:right;
+  clear:right;
+  margin:10px 0 0 0;
+  padding:0 0 0 20px;
+  /* width must be defined w/ an inline style matching the image width */
+}
+
+p.table-caption {
+  margin: 0 0 4px 0; /* matches default table left-margin */
+  font-size:13px;
+  color:#666;
+}
+
+div.note, 
+div.caution, 
+div.warning {
+  margin: 0 0 15px;
+}
+
+p.note, div.note, 
+p.caution, div.caution, 
+p.warning, div.warning {
+  padding: 0 0 0 10px;
+  border-left: 4px solid;
+}
+
+p.note {
+  border-color: #258AAF;
+}
+
+p.caution {
+  border-color: #FF8800;
+}
+
+p.warning {
+  border-color: #ff4443;
+}
+
+div.note.design {
+  border-left: 4px solid #33B5E5;
+}
+
+div.note.develop {
+  border-left: 4px solid #F80;
+}
+
+div.note.distribute {
+  border-left: 4px solid #9C0;
+}
+
+.note p, .caution p, .warning p {
+  margin:0 0 5px;
+}
+
+.note p:last-child, .caution p:last-child, .warning p:last-child {
+  margin-bottom:0;
+}
+
+blockquote {
+  display:block;
+  float:right;
+  width:280px;
+  font-size:20px;
+  font-style:italic;
+  line-height:24px;
+  color:#33B5E5;
+  margin:0 0 20px 30px;
+}
+
+div.design-announce p {
+  margin:0 0 10px;
+}
+
+#devdoc-nav a.totop {
+  display:block;
+  top:0;
+  width:inherit;
+  background: transparent url(../images/styles/gototop.png) no-repeat scroll 50% 50%;
+  text-indent:-9999em;
+}
+#devdoc-nav a.totop {
+  position:fixed;
+  display:none;
+}
+#devdoc-nav a.totop:hover {
+  background-color:#33B5E5;
+}
+
+.content-footer a.totop {
+  text-transform:uppercase;
+  line-height:30px;
+}
+
+/* -----------------------------------------------
+Dialog box for popup messages 
+*/
+
+div.dialog {
+  height:0;
+  margin:0 auto;
+}
+
+div.dialog>div {
+  z-index:99;
+  position:fixed;
+  margin:70px 0;
+  width: 391px;
+  height: 200px;
+  background: #F7F7F7;
+-moz-box-shadow: 0 0 15px rgba(0,0,0,0.5);
+-webkit-box-shadow: 0 0 15px rgba(0,0,0,0.5);
+box-shadow: 0 0 15px rgba(0,0,0,0.5);
+}
+/* IE6 can't position fixed */
+* html div.dialog div { position:absolute; }
+
+
+div#deprecatedSticker {
+  display:none;
+  z-index:99;
+  position:fixed;
+  right:15px;
+  top:114px;
+  margin:0;
+  padding:1em;
+  background:#FFF;
+  border:1px solid #dddd00;
+  box-shadow:-5px 5px 10px #ccc;
+  -moz-box-shadow:-5px 5px 10px #ccc;
+  -webkit-box-shadow:-5px 5px 10px #ccc;
+}
+
+div#naMessage {
+  display:none;
+  width:555px;
+  height:0;
+  margin:0 auto;
+}
+
+div#naMessage div {
+  z-index:99;
+  width:450px;
+  position:fixed;
+  margin:50px 0;
+  padding:4em 4em 3em;
+  background:#FFF;
+  border:1px solid #999;
+  box-shadow:-10px 10px 40px #888;
+  -moz-box-shadow:-10px 10px 40px #888;
+  -webkit-box-shadow:-10px 10px 40px #888;
+}
+/* IE6 can't position fixed */
+* html div#naMessage div { position:absolute; }
+
+div#naMessage strong {
+  font-size:1.1em;
+}
+
+
+/* --------------------------------------------------------------------------
+Slideshow Controls & Next/Prev 
+*/
+.slideshow-next, .slideshow-prev {	
+	width: 20px;
+	height: 36px;
+	text-indent: -1000em;
+}
+.slideshow-container {
+	margin: 2em 0;
+}
+.slideshow-container:before, .slideshow-container:after {
+	content: "";
+	display: table;
+	clear: both;
+}
+a.slideshow-next, a.slideshow-next:visited {
+
+	float: right;
+
+	background: url(../images/arrow-right.png) no-repeat 0 0
+
+}
+
+a.slideshow-prev, a.slideshow-prev:visited {
+
+	float: left;	
+
+	background: url(../images/arrow-left.png) no-repeat 0 0
+
+}
+
+.slideshow-next:hover, .slideshow-prev:hover, .slideshow-next:focus, .slideshow-prev:focus {
+
+	background-position: 0 -36px	
+
+}
+
+.slideshow-next:active, .slideshow-prev:active {
+
+	background-position: 0 -72px	
+
+}
+.slideshow-nav {
+	width: 74px;
+	margin: 0 auto;		
+}
+.slideshow-nav a, .slideshow-nav a:visited {
+	display: inline-block;
+	width: 12px;
+	height: 12px;
+	margin: 0 2px 20px 2px;
+	background: #ccc;
+	-webkit-border-radius: 50%;
+	-moz-border-radius: 50%;
+	border-radius: 50%;
+}
+.slideshow-nav a:hover, .slideshow-nav a:focus {
+
+	background: #33B5E5
+}
+
+.slideshow-nav a:active {
+
+	background: #1e799a;
+	background: #ebebeb;	
+	-webkit-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	-moz-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+}
+.slideshow-nav a.active, .slideshow-nav a.active:active, .slideshow-nav a.active:visited {
+	background: #33B5E5
+}
+/* --------------------------------------------------------------------------
+Tabs
+*/
+ul.tabs {
+	padding: 0;
+	margin: 2em 0 0 0;	
+}
+ul.tabs:before, ul.tabs:after {
+	content: "";
+	display: table;
+	clear: both;
+}
+ul.tabs li {
+	list-style-type: none;
+	float: left;	
+}
+ul.tabs li a, ul.tabs li a:active, ul.tabs li a:visited {
+	display: block;
+	height: 36px;
+	line-height: 36px;
+	padding: 0 15px;
+	margin-right: 2px;
+	color: #222;
+	-moz-border-radius-topleft: 2px;
+	-moz-border-radius-topright: 2px;
+	-moz-border-radius-bottomright: px;
+	-moz-border-radius-bottomleft: px;
+	-webkit-border-radius: 2px 2px px px;
+	border-radius: 2px 2px px px; 
+	border-top: solid 1px #ebebeb;
+	border-left: solid 1px #ebebeb;
+	border-right: solid 1px #ebebeb;
+	background-color: #fff;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#fafafa));
+    background-image: -webkit-linear-gradient(top, #ffffff, #fafafa);
+    background-image: -moz-linear-gradient(top, #ffffff, #fafafa);
+    background-image: -ms-linear-gradient(top, #ffffff, #fafafa);
+    background-image: -o-linear-gradient(top, #ffffff, #fafafa);
+    background-image: linear-gradient(top, #ffffff, #fafafa);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',
+EndColorStr='#fafafa');
+}
+ul.tabs li a:hover {
+	color: #33B5E5;	
+}
+ul.tabs li a.selected {
+	height: 37px;
+	color: #33B5E5;
+	background-color: #f7f7f7;
+	background-image: none;
+	border-color: #ddd;
+}
+.tab-content {
+	padding: 1.2em;
+	margin: -1px 0 2em 0;
+	-webkit-border-radius: 2px;
+    -moz-border-radius: 2px;
+    border-radius: 2px;
+	border: solid 1px #ddd;
+	background: #f7f7f7;
+}
+/* --------------------------------------------------------------------------
+Feature Boxes
+*/
+.feature-box {
+  width: 291px;
+  height: 200px;
+  position: relative;
+  background: #F7F7F7;
+}
+.box-border .top, .box-border .bottom, .box-border .left, .box-border .right {
+	z-index: 100;
+	position: absolute;
+	background-color: #aaa;
+}
+.box-border .top, .box-border .bottom {
+	width: 291px;
+	height: 1px;
+}
+.dialog .box-border .top,
+.dialog .box-border .bottom { width:391px; }
+
+.box-border .left, .box-border .right {	
+	width: 1px;
+	height: 8px;		
+}
+.box-border .top { top: 0; left: 0 }
+.box-border .top .left { top: 1px; left: 0 }
+.box-border .top .right { top: 1px; right: 0 }
+.box-border .bottom .left { top: -8px; left: 0 }
+.box-border .bottom { top: 200px; left: 0 }
+.box-border .bottom .right { top: -8px; right: 0 }
+
+.feature-box h4,
+.dialog h4 {
+    margin: 15px 18px 10px;
+    padding:0;
+}
+
+.feature-box p,
+.dialog p {
+    margin: 10px 18px;
+    padding:0;
+}
+.feature-box .link,
+.dialog .link {
+    border-top: 1px solid #dedede;
+    bottom: 0;
+    position: absolute;
+    width: inherit;
+}
+.feature-box a, .feature-box h4,
+.dialog a, .dialog h4 {
+    -webkit-transition: color .4s ease;
+    -moz-transition: color .4s ease;
+    -o-transition: color .4s ease;
+    transition: color .4s ease;
+}
+.feature-box:hover {
+	cursor: pointer;	
+}
+.feature-box:hover .box-border .top, .feature-box:hover .box-border .bottom, .feature-box:hover
+.left, .feature-box:hover .right {	
+	background-color: #33B5E5;
+}
+.feature-box:hover h4, .feature-box:hover a {
+	color: #33B5E5;
+}
+/* --------------------------------------------------------------------------
+Page-Specific Styles
+*/
+.colors { 
+	position: relative;
+	float: left;
+	width: 92px;
+	margin: 40px 0 20px;
+}
+.colors div {
+	color: #fff;
+	font-size: 11.5px;
+	width: 82px;
+	height: 82px;
+	margin-top:-30px;
+	line-height: 82px;
+	text-align: center;
+	border: solid 5px #fff;
+	-webkit-border-radius: 50%;
+	-moz-border-radius: 50%;
+	border-radius: 50%;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* ########### REFERENCE DOCS ################## */
+
+#packages-nav h2,
+#classes-nav h2 {
+  font-size:18px;
+  margin:0;
+  padding:0 0 0 4px;
+}
+
+#jd-header {
+  padding: 0 0 5px;
+  margin: 20px 0 10px;
+  font-size:13px;
+  border-bottom:solid 1px #ccc;
+}
+
+#jd-header h1 {
+  margin:0;
+  padding:0;
+}
+
+/* page-top-right container for reference pages (holds
+links to summary tables) */
+#api-info-block {
+  font-size:13px;
+  margin:20px 0 0;
+  padding:0 10px 6px;
+  font-weight:normal;
+  float:right;
+  text-align:right;
+  color:#999;
+  max-width:70%;
+}
+
+#api-info-block div.api-level {
+  font-weight:bold;
+  font-size:inherit;
+  float:none;
+  color:#222;
+  padding:0;
+  margin:0;
+}
+
+/* inheritance table */
+.jd-inheritance-table {
+  border-spacing:0;
+  margin:0;
+  padding:0;
+  font-size:13px;
+  background-color:transparent;
+}
+.jd-inheritance-table tr td {
+  border: none;
+  margin: 0;
+  padding: 0;
+  background-color:transparent;
+}
+.jd-inheritance-table .jd-inheritance-space {
+  font-weight:bold;
+  width:1em;
+}
+.jd-inheritance-table .jd-inheritance-interface-cell {
+  padding-left: 17px;
+}
+
+
+
+.jd-sumtable a {
+  text-decoration:none;
+}
+
+.jd-sumtable a:hover {
+  text-decoration:underline;
+}
+
+/* the link inside a sumtable for "Show All/Hide All" */
+.toggle-all {
+  display:block;
+  float:right;
+  font-weight:normal;
+  font-size:0.9em;
+}
+
+/* adjustments for in/direct subclasses tables */
+.jd-sumtable.jd-sumtable-subclasses {
+  margin: 1em 0 0 0;
+  max-width:968px;
+  background-color:transparent;
+  font-size:13px;
+}
+
+/* extra space between end of method name and open-paren */
+.sympad {
+  margin-right: 2px;
+}
+
+/* right alignment for the return type in sumtable */
+.jd-sumtable .jd-typecol {
+  text-align:right;
+}
+
+/* adjustments for the expando table-in-table */
+.jd-sumtable-expando {
+  margin:.5em 0;
+  padding:0;
+}
+
+/* a div that holds a short description */
+.jd-descrdiv {
+  padding:3px 1em 0 1em;
+  margin:0;
+  border:0;
+}
+
+#jd-content img.jd-expando-trigger-img {
+  padding:0 4px 4px 0;
+  margin:0;
+}
+
+.jd-sumtable-subclasses div#subclasses-direct,
+.jd-sumtable-subclasses div#subclasses-indirect {
+  margin:0 0 0 13px;
+}
+
+
+
+/********* MEMBER REF *************/
+
+
+.jd-details {
+/*  border:1px solid #669999;
+  padding:4px; */
+  margin:0 0 1em;
+}
+
+/* API reference: a container for the
+.tagdata blocks that make up the detailed
+description */
+.jd-details-descr {
+  padding:0;
+  margin:.5em .25em;
+}
+
+/* API reference: a block containing
+a detailed description, a params table,
+seealso list, etc */
+.jd-tagdata {
+  margin:.5em 1em;
+}
+
+.jd-tagdata p {
+  margin:0 0 1em 1em;
+}
+
+/* API reference: adjustments to
+the detailed description block */
+.jd-tagdescr {
+  margin:.25em 0 .75em 0;
+}
+
+.jd-tagdescr ol,
+.jd-tagdescr ul {
+  margin:0 2.5em;
+  padding:0;
+}
+
+.jd-tagdescr table,
+.jd-tagdescr img {
+  margin:.25em 1em;
+}
+
+.jd-tagdescr li {
+margin:0 0 .25em 0;
+padding:0;
+}
+
+/* API reference: heading marking
+the details section for constants,
+attrs, methods, etc. */
+h4.jd-details-title {
+  font-size:1.15em;
+  background-color: #E2E2E2;
+  margin:1.5em 0 .6em;
+  padding:3px 95px 3px 3px; /* room for api-level */
+}
+
+h4.jd-tagtitle {
+  margin:0;
+}
+
+h4 .normal {
+  font-weight:normal;
+}
+
+/* API reference: heading for "Parameters", "See Also", etc.,
+in details sections */
+h5.jd-tagtitle {
+  margin:0 0 .25em 0;
+  font-size:1em;
+}
+
+.jd-tagtable {
+  margin:0;
+  background-color:transparent;
+  width:auto;
+}
+
+.jd-tagtable td,
+.jd-tagtable th {
+  border:none;
+  background-color:#fff;
+  vertical-align:top;
+  font-weight:normal;
+  padding:2px 10px;
+}
+
+.jd-tagtable th {
+  font-style:italic;
+}
+
+/* Inline api level indicator for methods */
+div.api-level {
+  font-size:.8em;
+  font-weight:normal;
+  color:#999;
+  float:right;
+  padding:0 8px 0;
+  margin-top:-30px;
+}
+
+table.jd-tagtable td,
+table.jd-tagtable th {
+  background-color:transparent;
+}
+
+table.jd-tagtable th {
+  color:inherit;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* SEARCH FILTER */
+
+#search_autocomplete {
+  font-weight:normal;
+}
+
+#search_filtered_wrapper {
+  width: 193px;
+  float: right;
+}
+#search_filtered_div {
+  position:absolute;
+  z-index:9999;
+  min-width:171px; /* +padding and border makes this match input width */
+  padding:5px;
+  border: solid 1px #C5C5C5;
+  background: white;
+  top: 35px;
+  -moz-box-shadow: 0 0 10px rgba(0,0,0,0.2);
+  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
+  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
+}
+
+ul#search_filtered {
+  min-width:100%;
+  margin:0;
+  list-style: none;
+  margin: 0;
+  padding: 0;
+}
+
+
+#search_filtered li{
+  line-height:1.5em;
+  margin: 0 0 2px;
+  padding: 0;
+}
+
+#search_filtered li a {
+  padding:0 5px;
+  color:#222 !important;
+}
+
+#search_filtered .jd-selected {
+  background-color: #33B5E5;
+  cursor:pointer;
+}
+#search_filtered .jd-selected,
+#search_filtered .jd-selected a {
+  color:#f7f7f7 !important;
+}
+
+.no-display {
+  display: none;
+}
+
+.jd-autocomplete {
+  padding-left: 6px;
+  padding-right: 6px;
+  padding-top: 1px;
+  padding-bottom: 1px;
+  font-size: 0.81em;
+  border: none;
+  margin: 0;
+  line-height: 1.05em;
+}
+
+.show-item {
+  display: table-row;
+}
+.hide-item {
+  display: hidden;
+}
+
+
+
+
+
+/* SEARCH RESULTS */
+
+
+#leftSearchControl .gsc-twiddle {
+  background-image : none;
+}
+
+#leftSearchControl td, #searchForm td {
+  border: 0px solid #000;
+  padding:0;
+}
+
+#leftSearchControl .gsc-resultsHeader .gsc-title {
+  padding-left : 0px;
+  font-weight : bold;
+  font-size : 13px;
+  color:#006699;
+  display : none;
+}
+
+#leftSearchControl .gsc-resultsHeader div.gsc-results-selector {
+  display : none;
+}
+
+#leftSearchControl .gsc-resultsRoot {
+  padding-top : 6px;
+}
+
+#leftSearchControl div.gs-visibleUrl-long {
+  display : block;
+  color:#006699;
+}
+
+#leftSearchControl .gsc-webResult {
+  padding:0 0 20px 0;
+}
+
+.gsc-webResult div.gs-visibleUrl-short,
+table.gsc-branding,
+.gsc-clear-button {
+  display : none;
+}
+
+.gsc-cursor-box .gsc-cursor div.gsc-cursor-page,
+.gsc-cursor-box .gsc-trailing-more-results a.gsc-trailing-more-results,
+#leftSearchControl a,
+#leftSearchControl a b {
+  color:#006699;
+}
+
+.gsc-resultsHeader {
+  display: none;
+}
+
+/* Disable built in search forms */
+.gsc-control form.gsc-search-box {
+  display : none;
+}
+table.gsc-search-box {
+  margin:6px 0 0 0;
+  border-collapse:collapse;
+}
+
+td.gsc-input {
+  padding:0 2px;
+  width:100%;
+  vertical-align:middle;
+}
+
+input.gsc-input {
+  border:1px solid #BCCDF0;
+  width:99%;
+  padding-left:2px;
+  font-size:.95em;
+}
+
+td.gsc-search-button {
+  text-align: right;
+  padding:0;
+  vertical-align:top;
+}
+
+
+#searchResults {
+  overflow:hidden; /* because the repositioned page links makes the section think it needs to scroll
+(it doesn't) */
+  height:auto;
+}
+
+#searchResults .gsc-control {
+  position:relative;
+  width:auto;
+  padding:0 0 10px;
+}
+
+#searchResults .gsc-tabsArea {
+  position:relative;
+  white-space:nowrap;
+  float:left;
+  width:200px;
+}
+
+#searchResults .gsc-above-wrapper-area {
+  display:none;
+}
+
+#searchResults .gsc-resultsbox-visible {
+  float:left;
+  width:720px;
+  margin-left:20px;
+}
+
+#searchResults .gsc-tabHeader {
+  padding: 3px 6px;
+  position:relative;
+  width:auto;
+  display:block;
+}
+
+#searchResults h2#searchTitle {
+  padding:0;
+  margin:5px 0;
+  border:none;
+}
+
+#searchResults h2#searchTitle em {
+  font-style:normal;
+  color:#33B5E5;
+}
+
+#searchResults .gsc-table-result {
+  margin:5px 0 10px 0;
+  background-color:transparent;
+}
+#searchResults .gs-web-image-box, .gs-promotion-image-box {
+  width:120px;
+}
+#searchResults .gs-web-image-box img.gs-image, .gs-promotion-image-box img.gs-promotion-image {
+  max-width:120px;
+}
+
+#searchResults .gsc-table-result .gsc-thumbnail {
+  padding:0 20px 0 0;
+}
+
+#searchResults td {
+  background-color:transparent;
+}
+
+#searchResults .gsc-expansionArea {
+  position:relative;
+}
+#searchResults .gsc-tabsArea .gsc-cursor-box {
+  width:200px;
+  padding:20px 0 0 1px;
+}
+#searchResults .gsc-cursor-page {
+  display:inline-block;
+  float:left;
+  margin:-1px 0 0 -1px;
+  padding:0;
+  height:27px;
+  width:27px;
+  text-align:center;
+  line-height:2;
+}
+
+#searchResults .gsc-tabHeader.gsc-tabhInactive,
+#searchResults .gsc-cursor-page {
+  text-decoration:none;
+  color:#258AAF;
+  border: solid 1px #DADADA;
+}
+
+#searchResults .gsc-tabHeader.gsc-tabhInactive:hover,
+#searchResults .gsc-cursor-page:hover {
+  border-color: #DBDBDB;
+  background-color: #F3F3F3;
+  background-image: -webkit-gradient(linear, left top, left bottom, from(#F9F9F9), to(#ECECEC));
+  background-image: -webkit-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: -moz-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: -ms-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: -o-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: linear-gradient(top, #F9F9F9, #ECECEC);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f9f9f9',
+EndColorStr='#ececec');
+  color: #33B5E5;
+}
+
+#searchResults .gsc-tabHeader.gsc-tabhActive,
+#searchResults .gsc-tabHeader.gsc-tabhActive:hover,
+#searchResults .gsc-cursor-page.gsc-cursor-current-page,
+#searchResults .gsc-cursor-page.gsc-cursor-current-page:hover {
+  color:#fff;
+  background-color: #09C;
+  background-image: -webkit-gradient(linear, left top, left bottom, from(#2FADDB), to(#09C));
+  background-image: -webkit-linear-gradient(top, #2FADDB, #09C);
+  background-image: -moz-linear-gradient(top, #2FADDB, #09C);
+  background-image: -ms-linear-gradient(top, #2FADDB, #09C);
+  background-image: -o-linear-gradient(top, #2FADDB, #09C);
+  background-image: linear-gradient(top, #2FADDB, #09C);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#2faddb', EndColorStr='#09c');
+  border: 1px solid #3990AB;
+  z-index:100;
+}
+
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+/*********** PREVIOUSLY dac-styles.css ***************/
+
+
+
+
+
+::-webkit-selection,
+::-moz-selection,
+::selection {
+  background-color: #0099cc;
+  color: #fff; }
+
+#header {
+  border-bottom:0;
+}
+
+#header .wrap {
+  max-width:940px;
+  height:41px;
+  border-bottom:1px solid;
+  border-color: #ccc;
+  position:relative;
+}
+
+.about #header .wrap {
+  border-color: #9933CC;
+}
+
+.design #header .wrap {
+  border-color: #33b5e5;
+}
+
+.develop #header .wrap {
+  border-color: #F80;
+}
+
+.distribute #header .wrap {
+  border-color: #9C0;
+}
+
+.logo a {
+  width:123px;
+  float:left;
+}
+
+#header .logo {
+  margin-top: -6px;
+  margin-left: 0px;
+  margin-bottom:0px;
+  width: 160px;
+  padding-right:10px;
+}
+
+.search {
+  height:25px;
+  margin-top: -3px;
+  margin-bottom: 0px;
+}
+
+
+
+/* Quicknav */
+.btn-quicknav {
+  width:20px;
+  height:28px;
+  float:left;
+  margin-left:6px;
+  padding-right:10px;
+  position:relative;
+  cursor:pointer;
+  border-right:1px solid #CCC;
+}
+
+.btn-quicknav a {
+  zoom:1;
+  position:absolute;
+  top:13px;
+  left:5px;
+  display:block;
+  text-indent:-9999em;
+  width:10px;
+  height:5px;
+  background:url(../images/quicknav_arrow.png) no-repeat;
+}
+
+.btn-quicknav a.arrow-active {
+  background-position: 0 -5px;
+  display:none;
+}
+
+#header-wrap.quicknav a.arrow-inactive {
+  display:none;
+}
+
+.btn-quicknav.active a.arrow-active {
+  display:block;
+}
+
+.nav-x li {
+  display:block;
+  float:left;
+  margin-right:45px;
+  -webkit-transition: all 0.25s linear;
+      -moz-transition: all 0.25s linear;
+       -ms-transition: all 0.25s linear;
+        -o-transition: all 0.25s linear;
+           transition: all 0.25s linear;
+}
+
+#header-wrap.quicknav .nav-x li {
+  min-width:160px;
+  margin-right:20px;
+}
+
+#header-wrap.quicknav li.last {
+  margin-right:0px;
+}
+
+#quicknav {
+ float:none; 
+ clear:both;
+ margin-left:180px;
+ margin-top:-30px;
+ display:none;
+ overflow:hidden;
+}
+
+#header-wrap.quicknav #quicknav {
+
+}
+
+#quicknav ul {
+  margin:10px 0;
+  padding:0;
+}
+
+#quicknav ul li.design {
+  border-top:1px solid #33b5e5;
+}
+
+#quicknav ul li.develop {
+  border-top:1px solid #FF8800;
+}
+
+#quicknav ul li.distribute {
+  border-top:1px solid #99cc00;
+}
+
+#quicknav ul li {
+  display:block;
+  float:left;
+  margin:0 20px 0 0;
+  min-width:140px;
+}
+
+#quicknav ul li.last {
+  margin-right:0px;
+}
+
+#quicknav ul li ul li {
+  float:none;
+}
+
+#quicknav ul li ul li a {
+  color:#222;
+}
+
+#quicknav ul li li ul,
+#quicknav ul li li ul li {
+  margin:0;
+}
+
+#quicknav ul li li ul li:before {
+  content:"\21B3";
+}
+
+#header-wrap {
+   -webkit-transition: all 0.25s ease-out;
+      -moz-transition: all 0.25s ease-out;
+       -ms-transition: all 0.25s ease-out;
+        -o-transition: all 0.25s ease-out;
+           transition: all 0.25s ease-out;
+
+}
+
+#header-wrap.quicknav {
+  height:170px;
+  
+}
+
+/* SEARCH AND MORE */
+.search {
+  position: absolute;
+  width: 50px;
+  height:28px;
+  display: block;
+  margin-top:-3px;
+  margin-bottom:7px;
+  overflow:hidden;
+  z-index:100;
+  right:54px;
+  -webkit-transition: width 0.4s ease;
+     -moz-transition: width 0.4s ease;
+       -o-transition: width 0.4s ease;
+          transition: width 0.4s ease;
+}
+
+.search #search-btn {
+  width:50px;
+  height:28px;
+  background:url(../images/icon_search.png) no-repeat;
+  float:left;
+}
+
+.search-inner {
+  width:245px;
+}
+
+.search:hover, .search.active {
+  width:245px;
+}
+
+.search .bottom, .search .left, .search .right {
+	position: absolute;
+	background-color: #a2a2a2
+}
+
+.search .bottom {
+	width: 214px;
+	height: 1px;
+	top: 24px;
+	left: 0
+}
+
+.search .left, .search .right {	
+	height: 5px;
+	width: 1px
+}
+
+.search .left {
+  top: 22px;
+  left: 56px;
+  background-color:#CCC;
+}
+
+.search .right {
+  top: 22px;
+  left: 238px;
+  background-color:#CCC;
+}
+
+.search form {
+	margin-top: 2px;
+	width: 162px;
+	float:left;
+}
+
+.search form input {
+	color: #2f2f2f;
+	font-size: 0.95em;
+	width: 178px;  
+	border: none;
+	margin-left: 6px;  
+	z-index: 1500;  
+  position: relative;
+	background-color: transparent;
+	border-bottom:1px solid #CCC;
+	padding:0 0 0 4px;
+	outline:none;
+	height:24px;
+}
+
+.search:hover form input {
+  border-bottom:1px solid #33B5E5;
+}
+
+.search:hover .bottom, .search:hover .left, .search:hover .right {
+	background-color: #33b5e5;
+}
+
+.search:hover #search-btn {
+	background-position: 0 -28px
+}
+
+.search form input:focus {
+	color: #222;
+	font-weight: bold
+}
+
+.moremenu {
+  float: right;
+	position: relative;
+	width: 50px;
+	height:28px;
+  display: block;
+  margin-top:-3px;
+  margin-bottom:7px;
+  overflow:hidden;
+  -webkit-transition: width 0.25s ease;
+     -moz-transition: width 0.25s ease;
+       -o-transition: width 0.25s ease;
+          transition: width 0.25s ease;
+}
+
+.moremenu #more-btn {
+  width:40px;
+  height:28px;
+  background:url(../images/icon_more.png) no-repeat;
+  border-left:1px solid #CCC;
+  float:left;
+  cursor:pointer;
+}
+
+.moremenu:hover #more-btn {
+  background-position:0 -28px;
+}
+
+.morehover {
+  position:absolute;
+  right:6px;
+  top:-9px;
+  width:40px;
+  height:35px;
+  z-index:99;
+  overflow:hidden;
+
+  -webkit-opacity:0;
+     -moz-opacity:0;
+       -o-opacity:0;
+          opacity:0;
+
+  -webkit-transform-origin:100% 0%;
+     -moz-transform-origin:100% 0%; 
+       -o-transform-origin:100% 0%;
+          transform-origin:100% 0%;
+  
+  -webkit-transition-property: -webkit-opacity;
+  -webkit-transition-duration: .25s;
+  -webkit-transition-timing-function:ease;
+
+  -moz-transition-property: -webkit-opacity;
+  -moz-transition-duration: .25s;
+  -moz-transition-timing-function:ease;
+
+  -o-transition-property: -webkit-opacity;
+  -o-transition-duration: .25s;
+  -o-transition-timing-function:ease;
+  
+  -transition-property: -webkit-opacity;
+  -transition-duration: .25s;
+  -transition-timing-function:ease;
+}
+
+.morehover:hover {
+  opacity:1;
+  height:385px;
+  width:268px;
+  -webkit-transition-property:height,  -webkit-opacity;
+}
+
+.morehover .top {
+  width:268px;
+  height:39px;
+  background:url(../images/more_top.png) no-repeat;
+}
+
+.morehover .mid {
+  width:228px;
+  background:url(../images/more_mid.png) repeat-y;
+  padding:10px 20px 0 20px;
+}
+
+.morehover .mid .header {
+  border-bottom:1px solid #ccc;
+  font-weight:bold;
+}
+
+.morehover .bottom {
+  width:268px;
+  height:6px;
+  background:url(../images/more_bottom.png) no-repeat;
+}
+
+.morehover ul {
+  margin:10px 10px 20px 0;
+}
+
+.morehover ul li {
+  list-style:none;
+}
+
+.morehover ul li.active a,
+.morehover ul li.active a:hover {
+  color:#222 !important;
+}
+
+.morehover ul li.active img {
+  margin-right:4px;
+}
+
+
+
+
+/* MARQUEE */
+.slideshow-container {
+	width:100%;
+	overflow:hidden;
+	position:relative;
+}
+.slideshow-container .slideshow-prev {
+	position:absolute;
+	top:50%;
+	left:0px;
+	margin-top:-36px;
+	z-index:99;
+}
+.slideshow-container .slideshow-next {
+	position:absolute;
+	top:50%;
+	margin-top:-36px;
+	z-index:99;
+	right:0px;
+}
+
+.slideshow-container .pagination {
+	position:absolute;
+	bottom:20px;
+	width:100%;
+	text-align:center;
+	z-index:99;
+}
+.slideshow-container .pagination ul {
+	margin:0;
+}
+.slideshow-container .pagination ul li{
+	display: inline-block;
+	width:12px;
+	height:12px;
+	text-indent:-8000px;
+	list-style:none;
+	margin: 0 2px;
+	border-radius:6px;
+	background-color:#ccc;
+	cursor:pointer;
+        -webkit-transition:color .5s ease-in;  
+        -moz-transition:color .5s ease-in;  
+        -o-transition:color .5s ease-in;  
+        transition:color .5s ease-in;
+}
+.slideshow-container .pagination ul li:hover {
+	background-color:#999;
+}
+.slideshow-container .pagination ul li.active {
+	background-color:#33b5e5;
+}
+.slideshow-container .pagination ul li.active:hover {
+	background-color:#33b5e5;
+}
+.slideshow-container ul li {
+	display:inline;
+	list-style:none;
+}
+
+
+
+
+a.download-sdk {
+    float:right;
+    margin:-10px 0;
+    height:30px;
+    padding-top:4px;
+    padding-bottom:0px;
+}
+
+#nav-x {
+  padding-top: 14px;
+}
+
+#nav-x .wrap {
+  min-height:34px;
+}
+
+#nav-x .wrap,
+#searchResults.wrap {
+    max-width:940px;
+    border-bottom:1px solid #CCC;
+}
+
+#searchResults.wrap #leftSearchControl {
+  min-height:700px
+}
+.nav-x {
+    margin-left:0;
+    margin-bottom:0;
+}
+
+
+
+
+
+
+
+
+
+
+/*
+ * CSS Styles that are needed by jScrollPane for it to operate correctly.
+ */
+
+.jspContainer {
+  overflow: hidden;
+  position: relative;
+}
+
+.jspPane {
+  position: absolute;
+  overflow: hidden;
+  width:auto !important; /* to avoid cut-off api names in reference in horiz scroll */
+}
+
+.jspVerticalBar {
+  position: absolute;
+  top: 0;
+  right: 0;
+  width: 4px;
+  height: 100%;
+  background: #f5f5f5;
+}
+
+.jspHorizontalBar {
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  width: 100%;
+  height: 4px;
+  background: #f5f5f5;
+}
+
+.jspVerticalBar *,
+.jspHorizontalBar * {
+  margin: 0;
+  padding: 0;
+}
+.jspCap {
+  display: block;
+}
+
+.jspVerticalBar .jspCap {
+  height: 4px;
+}
+
+.jspHorizontalBar .jspCap {
+  width: 0;
+  height: 100%;
+}
+
+.jspHorizontalBar .jspCap {
+  float: left;
+}
+
+.jspTrack {
+  position: relative;
+}
+
+.jspDrag {
+  background: #bbb;
+  position: relative;
+  top: 0;
+  left: 0;
+  cursor: pointer;
+}
+
+.jspDrag:hover,
+.jspDrag:active {
+  border-color: #09c;
+  background-color: #4cadcb;
+  background-image: -webkit-gradient(linear, left top, right top, from(#5dbcd9), to(#4cadcb));
+  background-image: -webkit-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: -moz-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: -ms-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: -o-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: linear-gradient(left, #5dbcd9, #4cadcb);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#5dbcd9', EndColorStr='#4cadcb');	
+}
+
+.jspHorizontalBar .jspTrack,
+.jspHorizontalBar .jspDrag {
+  float: left;
+  height: 100%;
+}
+
+.jspArrow {
+  background: #999;
+  text-indent: -20000px;
+  display: block;
+  cursor: pointer;
+}
+
+.jspArrow.jspDisabled {
+  cursor: default;
+  background: #ccc;
+}
+
+.jspVerticalBar .jspArrow {
+  height: 16px;
+}
+
+.jspHorizontalBar .jspArrow {
+  width: 16px;
+  float: left;
+  height: 100%;
+}
+
+.jspVerticalBar .jspArrow:focus {
+  outline: none;
+}
+
+.jspCorner {
+  float: left;
+  height: 100%;
+}
+
+/* Yuk! CSS Hack for IE6 3 pixel bug :( */
+* html .jspCorner {
+  margin: 0 -3px 0 0;
+}
+/******* end of jscrollpane *********/
+
+
+
+
+
+/************ DEVELOP HOMEPAGE ******************/
+
+/* Slideshow */
+.slideshow-develop {
+  height: 300px;
+  width: 940px;
+  position: relative;
+  overflow:hidden;
+}
+.slideshow-develop .frame {
+  width: 940px;
+  height: 300px;
+}
+.slideshow-develop img.play {
+  max-width:350px;
+  max-height:240px;
+  margin:20px 0 0 90px;
+  -webkit-transform: perspective(800px ) rotateY( 35deg );
+  box-shadow: -16px 20px 40px rgba(0, 0, 0, 0.3);
+  -moz-box-shadow: -16px 20px 40px rgba(0, 0, 0, 0.3);
+  -webkit-box-shadow: -16px 20px 40px rgba(0, 0, 0, 0.3);
+}
+.slideshow-develop img.play.no-shadow {
+    box-shadow: none;
+    -moz-box-shadow: none;
+    -webkit-box-shadow: none;
+}
+.slideshow-develop img.play.no-transform {
+  -webkit-transform: none;
+}
+.slideshow-develop a.slideshow-next {
+  background: url(../images/arrow-right-develop.png);
+}
+.slideshow-develop a.slideshow-prev {
+  background: url(../images/arrow-left-develop.png);
+}
+.slideshow-develop .content-right {
+  float: left;
+}
+.slideshow-develop .content-right p.title-intro {
+  position:absolute;
+  margin:0;
+}
+.slideshow-develop .content-right h2 {
+  padding:0;
+  margin-bottom:10px;
+  border:none;
+}
+.slideshow-develop .item {
+  height: 300px;
+  width: 940px;
+}
+.slideshow-develop .pagination ul li.active {
+  background-color: #F80;
+}
+.slideshow-develop .pagination ul li.active:hover {
+  background-color: #F80;
+}
+
+/* Feeds */
+.feed ul {
+  margin: 0;
+}
+.feed .feed-nav {
+  height: 25px;
+  border-bottom: 1px solid #CCC;
+}
+.feed .feed-nav li {
+  list-style: none;
+  float: left;
+  height: 21px; /* +4px bottom border = 25px; same as .feed-nav */
+  margin-right: 25px;
+  cursor: pointer;
+}
+.feed .feed-nav li.active {
+  color: #000;
+  border-bottom: 4px solid #F80;
+}
+.feed .feed-container {
+  overflow: hidden;
+  width: 460px;
+}
+.feed .feed-container .feed-frame {
+  width: 1000px;
+}
+.feed .feed-container .feed-frame ul {
+  float: left;
+  width:460px;
+}
+.feed .feed-container .feed-frame ul ul {
+  float: none;
+  margin:10px 0 0 30px;
+}
+.feed .feed-container .feed-frame li {
+  list-style: none;
+  margin: 20px 0 20px 0;
+  width: 460px;
+  height:93px;
+}
+.feed .feed-container .feed-frame li.playlist {
+  height:auto;
+}
+.feed .feed-container .feed-frame li.playlist a {
+  height:93px;
+  display:block;
+}
+.feed .feed-container .feed-frame li.more {
+  height:20px;
+  margin:10px 0 5px 5px;
+}
+.feed .feed-container .feed-frame li.more a {
+  height:inherit;
+}
+.feed .feed-container .feed-frame li.playlist-video {
+  list-style: none;
+  margin: 0;
+  width: 460px;
+  height:55px;
+  font-size:12px;
+}
+.feed .feed-container .feed-frame li.playlist-video a {
+  height:45px;
+  padding:5px;
+}
+.feed .feed-container .feed-frame li.playlist-video h5 {
+  font-size:12px;
+  line-height:13px;
+  margin:0;
+}
+.feed .feed-container .feed-frame li.playlist-video p {
+  margin:5px 0 0;
+  line-height:15px;
+}
+.feed-container .feed-frame div.feed-image {
+  float: left;
+  border: 1px solid #999;
+  margin:0 20px 0 0;
+  width:122px;
+  height:92px;
+  background:url('../images/blog-default.png') no-repeat 0 0;
+  background-size:180px;
+}
+#jd-content .feed .feed-container .feed-frame li img {
+  float: left;
+  border: 1px solid #999;
+  margin:0 20px 0 0;
+  width:122px;
+  height:92px;
+}
+#jd-content .feed .feed-container .feed-frame li.playlist-video img {
+  width:inherit;
+  height:inherit;
+}
+
+.feed .feed-container .feed-frame li a,
+.feed .feed-container .feed-frame li a:active {
+  color:#555 !important;
+}
+
+.feed .feed-container .feed-frame li a:hover,
+.feed .feed-container .feed-frame li a:hover * {
+  color:#7AA1B0 !important;
+}
+
+/* Video player */
+#player-wrapper {
+  display:none;
+  margin: -1px auto 0;
+  position: relative;
+  width: 940px;
+  height: 0px;
+}
+#player-frame {
+  background: #EFEFEF;
+  border: 1px solid #CCC;
+  padding: 0px 207px;
+  z-index: 10; /* stay above marque, but below search suggestions */
+  width: 525px;
+  height: 330px;
+  position: relative;
+}
+
+
+
+/************ DISTRIBUTE HOMEPAGE ***************/
+
+.marquee {
+  width: 760px;
+}
+.marquee .main-img {
+  float: left;
+  margin-top: 20px;
+  width: 490px;
+}
+.marquee .copy {
+  width: 270px;
+  float: left;
+  margin-top: 30px;
+}
+.distribute-features {
+  margin: 0;
+}
+.distribute-features ul {
+  margin: 0;
+}
+.distribute-features ul li {
+  list-style: none;
+  float: left;
+  border-top: 1px solid #9C0;
+  width: 220px;
+  margin-right: 50px;
+}
+.distribute-features ul li.last {
+  margin-right: 0px;
+}
+
+
+/************ DEVELOP TOPIC CONTAINERS ************/
+
+.landing-banner,
+.landing-docs {
+  margin:20px 0 0;
+}
+.landing-banner .col-6:first-child,
+.landing-docs .col-6:first-child,
+.landing-docs .col-12 {
+  margin-left:0;
+  min-height:280px;
+}
+.landing-banner .col-6:last-child,
+.landing-docs .col-6:last-child,
+.landing-docs .col-12 {
+  margin-right:0;
+}
+
+.landing-banner h1 {
+  margin-top:0;
+}
+.landing-docs {
+  clear:left;
+}
+.landing-docs h3 {
+  font-size:14px;
+  line-height:21px;
+  color:#555;
+  text-transform:uppercase;
+  border-bottom:1px solid #CCC;
+  margin:0 0 20px;
+}
+.landing-docs a {
+  color:#333 !important;
+}
+.landing-docs a:hover,
+.landing-docs a:hover * {
+  color:#7AA1B0 !important
+}
+
+.plusone {
+  float:right;
+}
+
+
+
+/************* HOME/LANDING PAGE *****************/
+
+.slideshow-home {
+  height: 500px;
+  width: 940px;
+  border-bottom: 1px solid #CCC;
+  position: relative;
+  margin: 0;
+}
+.slideshow-home .frame {
+  width: 940px;
+  height: 500px;
+}
+.slideshow-home .content-left {
+  float: left;
+  text-align: center;
+  vertical-align: center;
+  margin: 0 0 0 35px;
+}
+.slideshow-home .content-right {
+  margin: 80px 0 0 0;
+}
+.slideshow-home .content-right p {
+  margin-bottom: 10px;
+}
+.slideshow-home .content-right p:last-child {
+  margin-top: 15px;
+}
+.slideshow-home .content-right h1 {
+  padding:0;
+}
+.slideshow-home .item {
+  height: 500px;
+  width: 940px;
+}
+.home-sections {
+  padding: 30px 20px 20px;
+  margin: 20px 0;
+  background: -webkit-linear-gradient(top, #F6F6F6,#F9F9F9);
+}
+.home-sections ul {
+  margin: 0;
+}
+.home-sections ul li {
+  float: left;
+  display: block;
+  list-style: none;
+  width: 170px;
+  height: 35px;
+  border: 1px solid #ccc;
+  background: white;
+  margin-right: 10px;
+  border-radius: 1px;
+  -webkit-border-radius: 1px;
+  -moz-border-radius: 1px;
+  box-shadow: 1px 1px 5px #EEE;
+  -webkit-box-shadow: 1px 1px 5px #EEE;
+  -moz-box-shadow: 1px 1px 5px #EEE;
+  background: white;
+}
+.home-sections ul li:hover {
+  background: #F9F9F9;
+  border: 1px solid #CCC;
+}
+.home-sections ul li a,
+.home-sections ul li a:hover {
+  font-weight: bold;
+  margin-top: 8px;
+  line-height: 18px;
+  float: left;
+  width: 100%;
+  text-align: center;
+  color: #09c !important;
+}
+.home-sections ul li a {
+  font-weight: bold;
+  margin-top: 8px;
+  line-height: 18px;
+  float: left;
+  width:100%;
+  text-align:center;
+}
+.home-sections ul li img {
+  float: left;
+  margin: -8px 0 0 10px;
+}
+.home-sections ul li.last {
+  margin-right: 0px;
+}
+#footer {
+  margin-top: -40px;
+}
diff --git a/docs/html/guide/google/gcm/client-javadoc/deprecated-list.html b/docs/html/guide/google/gcm/client-javadoc/deprecated-list.html
index ebdcc26..d9a63c5 100644
--- a/docs/html/guide/google/gcm/client-javadoc/deprecated-list.html
+++ b/docs/html/guide/google/gcm/client-javadoc/deprecated-list.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 Deprecated List
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/client-javadoc/help-doc.html b/docs/html/guide/google/gcm/client-javadoc/help-doc.html
index 0dc47eb..af1bca8 100644
--- a/docs/html/guide/google/gcm/client-javadoc/help-doc.html
+++ b/docs/html/guide/google/gcm/client-javadoc/help-doc.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 API Help
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/client-javadoc/index-all.html b/docs/html/guide/google/gcm/client-javadoc/index-all.html
index 43b8e4e..408edee 100644
--- a/docs/html/guide/google/gcm/client-javadoc/index-all.html
+++ b/docs/html/guide/google/gcm/client-javadoc/index-all.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 Index
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="./stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="./default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -94,6 +94,10 @@
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#DEFAULT_INTENT_SERVICE_CLASS_NAME"><B>DEFAULT_INTENT_SERVICE_CLASS_NAME</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
 <DD>&nbsp;
+<DT><A HREF="./com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS"><B>DEFAULT_ON_SERVER_LIFESPAN_MS</B></A> - 
+Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A>
+<DD>Default lifespan (7 days) of the <A HREF="./com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(Context)"><CODE>isRegisteredOnServer(Context)</CODE></A>
+ flag until it is considered expired.
 </DL>
 <HR>
 <A NAME="_E_"><!-- --></A><H2>
@@ -120,29 +124,33 @@
  server that can be retried later.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_APPLICATION_PENDING_INTENT"><B>EXTRA_APPLICATION_PENDING_INTENT</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
-<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION"><CODE>GCMConstants.INTENT_TO_GCM_REGISTRATION</CODE></A> to get the application
- id.
+<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION">"com.google.android.c2dm.intent.REGISTER"</A> to get the
+ application info.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_ERROR"><B>EXTRA_ERROR</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
-<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>GCMConstants.INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  an error when the registration fails.
+<DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_FROM"><B>EXTRA_FROM</B></A> - 
+Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
+<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A> to indicate which
+ sender (Google API project id) sent the message.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_REGISTRATION_ID"><B>EXTRA_REGISTRATION_ID</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
-<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>GCMConstants.INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  the registration id when the registration succeeds.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_SENDER"><B>EXTRA_SENDER</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
-<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION"><CODE>GCMConstants.INTENT_TO_GCM_REGISTRATION</CODE></A> to indicate the sender
- account (a Google email) that owns the application.
+<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_TO_GCM_REGISTRATION">"com.google.android.c2dm.intent.REGISTER"</A> to indicate which
+ senders (Google API project ids) can send messages to the application.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_SPECIAL_MESSAGE"><B>EXTRA_SPECIAL_MESSAGE</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
-<DD>Type of message present in the <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE"><CODE>GCMConstants.INTENT_FROM_GCM_MESSAGE</CODE></A> intent.
+<DD>Type of message present in the <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">"com.google.android.c2dm.intent.RECEIVE"</A> intent.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_TOTAL_DELETED"><B>EXTRA_TOTAL_DELETED</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
 <DD>Number of messages deleted by the server because the device was idle.
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html#EXTRA_UNREGISTERED"><B>EXTRA_UNREGISTERED</B></A> - 
 Static variable in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm">GCMConstants</A>
-<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK"><CODE>GCMConstants.INTENT_FROM_GCM_REGISTRATION_CALLBACK</CODE></A> to indicate
+<DD>Extra used on <A HREF="./com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">"com.google.android.c2dm.intent.REGISTRATION"</A> to indicate
  that the application has been unregistered.
 </DL>
 <HR>
@@ -150,10 +158,13 @@
 <B>G</B></H2>
 <DL>
 <DT><A HREF="./com/google/android/gcm/GCMBaseIntentService.html" title="class in com.google.android.gcm"><B>GCMBaseIntentService</B></A> - Class in <A HREF="./com/google/android/gcm/package-summary.html">com.google.android.gcm</A><DD>Skeleton for application-specific <CODE>IntentService</CODE>s responsible for
- handling communication from Google Cloud Messaging service.<DT><A HREF="./com/google/android/gcm/GCMBaseIntentService.html#GCMBaseIntentService(java.lang.String)"><B>GCMBaseIntentService(String)</B></A> - 
+ handling communication from Google Cloud Messaging service.<DT><A HREF="./com/google/android/gcm/GCMBaseIntentService.html#GCMBaseIntentService()"><B>GCMBaseIntentService()</B></A> - 
 Constructor for class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMBaseIntentService.html" title="class in com.google.android.gcm">GCMBaseIntentService</A>
-<DD>Subclasses must create a public no-arg constructor and pass the
- sender id to be used for registration.
+<DD>Constructor that does not set a sender id, useful when the sender id
+ is context-specific.
+<DT><A HREF="./com/google/android/gcm/GCMBaseIntentService.html#GCMBaseIntentService(java.lang.String...)"><B>GCMBaseIntentService(String...)</B></A> - 
+Constructor for class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMBaseIntentService.html" title="class in com.google.android.gcm">GCMBaseIntentService</A>
+<DD>Constructor used when the sender id(s) is fixed.
 <DT><A HREF="./com/google/android/gcm/GCMBroadcastReceiver.html" title="class in com.google.android.gcm"><B>GCMBroadcastReceiver</B></A> - Class in <A HREF="./com/google/android/gcm/package-summary.html">com.google.android.gcm</A><DD><CODE>BroadcastReceiver</CODE> that receives GCM messages and delivers them to
  an application-specific <A HREF="./com/google/android/gcm/GCMBaseIntentService.html" title="class in com.google.android.gcm"><CODE>GCMBaseIntentService</CODE></A> subclass.<DT><A HREF="./com/google/android/gcm/GCMBroadcastReceiver.html#GCMBroadcastReceiver()"><B>GCMBroadcastReceiver()</B></A> - 
 Constructor for class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMBroadcastReceiver.html" title="class in com.google.android.gcm">GCMBroadcastReceiver</A>
@@ -161,9 +172,16 @@
 <DT><A HREF="./com/google/android/gcm/GCMConstants.html" title="class in com.google.android.gcm"><B>GCMConstants</B></A> - Class in <A HREF="./com/google/android/gcm/package-summary.html">com.google.android.gcm</A><DD>Constants used by the GCM library.<DT><A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm"><B>GCMRegistrar</B></A> - Class in <A HREF="./com/google/android/gcm/package-summary.html">com.google.android.gcm</A><DD>Utilities for device registration.<DT><A HREF="./com/google/android/gcm/GCMBroadcastReceiver.html#getGCMIntentServiceClassName(Context)"><B>getGCMIntentServiceClassName(Context)</B></A> - 
 Method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMBroadcastReceiver.html" title="class in com.google.android.gcm">GCMBroadcastReceiver</A>
 <DD>Gets the class name of the intent service that will handle GCM messages.
+<DT><A HREF="./com/google/android/gcm/GCMRegistrar.html#getRegisterOnServerLifespan(Context)"><B>getRegisterOnServerLifespan(Context)</B></A> - 
+Static method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A>
+<DD>Gets how long (in milliseconds) the <A HREF="./com/google/android/gcm/GCMRegistrar.html#isRegistered(Context)"><CODE>isRegistered(Context)</CODE></A>
+ property is valid.
 <DT><A HREF="./com/google/android/gcm/GCMRegistrar.html#getRegistrationId(Context)"><B>getRegistrationId(Context)</B></A> - 
 Static method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A>
 <DD>Gets the current registration id for application on GCM service.
+<DT><A HREF="./com/google/android/gcm/GCMBaseIntentService.html#getSenderIds(Context)"><B>getSenderIds(Context)</B></A> - 
+Method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMBaseIntentService.html" title="class in com.google.android.gcm">GCMBaseIntentService</A>
+<DD>Gets the sender ids.
 </DL>
 <HR>
 <A NAME="_I_"><!-- --></A><H2>
@@ -191,7 +209,8 @@
  service.
 <DT><A HREF="./com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(Context)"><B>isRegisteredOnServer(Context)</B></A> - 
 Static method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A>
-<DD>Checks whether the device was successfully registered in the server side.
+<DD>Checks whether the device was successfully registered in the server side,
+ as set by <A HREF="./com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(Context, boolean)"><CODE>setRegisteredOnServer(Context, boolean)</CODE></A>.
 </DL>
 <HR>
 <A NAME="_O_"><!-- --></A><H2>
@@ -249,6 +268,10 @@
 <DT><A HREF="./com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(Context, boolean)"><B>setRegisteredOnServer(Context, boolean)</B></A> - 
 Static method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A>
 <DD>Sets whether the device was successfully registered in the server side.
+<DT><A HREF="./com/google/android/gcm/GCMRegistrar.html#setRegisterOnServerLifespan(Context, long)"><B>setRegisterOnServerLifespan(Context, long)</B></A> - 
+Static method in class com.google.android.gcm.<A HREF="./com/google/android/gcm/GCMRegistrar.html" title="class in com.google.android.gcm">GCMRegistrar</A>
+<DD>Sets how long (in milliseconds) the <A HREF="./com/google/android/gcm/GCMRegistrar.html#isRegistered(Context)"><CODE>isRegistered(Context)</CODE></A>
+ flag is valid.
 </DL>
 <HR>
 <A NAME="_T_"><!-- --></A><H2>
diff --git a/docs/html/guide/google/gcm/client-javadoc/index.html b/docs/html/guide/google/gcm/client-javadoc/index.html
index a7753f7..fa7af90 100644
--- a/docs/html/guide/google/gcm/client-javadoc/index.html
+++ b/docs/html/guide/google/gcm/client-javadoc/index.html
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc on Thu Jun 21 12:06:25 PDT 2012-->
+<!-- Generated by javadoc on Wed Aug 22 13:22:47 PDT 2012-->
 <TITLE>
 Generated Documentation (Untitled)
 </TITLE>
-
-
 <SCRIPT type="text/javascript">
     targetPage = "" + window.location.search;
     if (targetPage != "" && targetPage != "undefined")
diff --git a/docs/html/guide/google/gcm/client-javadoc/overview-tree.html b/docs/html/guide/google/gcm/client-javadoc/overview-tree.html
index 6ea6fb3..392f3e0 100644
--- a/docs/html/guide/google/gcm/client-javadoc/overview-tree.html
+++ b/docs/html/guide/google/gcm/client-javadoc/overview-tree.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:06:25 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Wed Aug 22 13:22:47 PDT 2012 -->
 <TITLE>
 Class Hierarchy
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-08-22">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/demo.jd b/docs/html/guide/google/gcm/demo.jd
index 2e1e975..d66cbbc 100644
--- a/docs/html/guide/google/gcm/demo.jd
+++ b/docs/html/guide/google/gcm/demo.jd
@@ -43,6 +43,9 @@
   <li><a href="{@docRoot}guide/google/gcm/client-javadoc/index.html">Client Reference</a></li>
   <li><a href="{@docRoot}guide/google/gcm/server-javadoc/index.html">Server Reference</a></li>
 </ul>
+
+<p>The sections below describe how to download the demo code and helper libraries from the SDK Manager. The demo code and helper libraries are also available at the <a href="http://code.google.com/p/gcm">open source site</a>.
+
 <h2 id="requirements">Requirements</h2>
 <p>For the web server:</p>
 <ul>
@@ -74,11 +77,13 @@
   <li> From the SDK Manager, install <strong>Extras &gt; Google Cloud Messaging for Android Library</strong>.
     
     
-    <p>This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google/</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-demo-appengine</code>, <code>gcm-demo-client</code>, <code>gcm-demo-server</code>, and <code>gcm-server</code>.</p>
+    <p>This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google/</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-server</code>, <code>samples/gcm-demo-client</code>, <code>samples/gcm-demo-server</code>, and <code>samples/gcm-demo-appengine</code>.</p>
+
+<p class="note"><strong>Note:</strong> If you don't see <strong>Extras &gt; Google Cloud Messaging for Android Library</strong> in the SDK Manager, make sure you are running version 20 or higher. Be sure to restart the SDK Manager after updating it.</p>
   </li>
 
-  <li>In a text editor, edit the <code>gcm-demo-server/WebContent/WEB-INF/classes/api.key</code> and replace the existing text with the API key obtained above.</li>
-  <li>In a shell window, go to the <code>gcm-demo-server</code> directory.</li>
+  <li>In a text editor, edit the <code>samples/gcm-demo-server/WebContent/WEB-INF/classes/api.key</code> and replace the existing text with the API key obtained above.</li>
+  <li>In a shell window, go to the <code>samples/gcm-demo-server</code> directory.</li>
   <li>Generate the server's WAR file by running <code>ant war</code>:</li>
   
   <pre class="prettyprint">$ ant war
@@ -112,13 +117,13 @@
 <p>To set up the server using a standard App Engine for Java:</p>
 <ol>
   <li> From the SDK Manager, install <strong>Extras &gt; Google Cloud Messaging for Android Library</strong>.
-    <p>This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google/</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-demo-appengine</code>, <code>gcm-demo-client</code>, <code>gcm-demo-server</code>, and <code>gcm-server</code>.</p>
+    <p>This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google/</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-server</code>, <code>samples/gcm-demo-client</code>, <code>samples/gcm-demo-server</code>, and <code>samples/gcm-demo-appengine</code>.</p>
   </li>
-  <li>In a text editor, edit the <code>gcm-demo-appengine/src/com/google/android/gcm/demo/server/ApiKeyInitializer.java</code> and replace the existing text with the API key obtained above.
+  <li>In a text editor, edit <code>samples/gcm-demo-appengine/src/com/google/android/gcm/demo/server/ApiKeyInitializer.java</code> and replace the existing text with the API key obtained above.
   <p class="note"><strong>Note:</strong> The API key value set in that class will be used just once to create a persistent entity on App Engine. If you deploy the application, you can use App Engine's <code>Datastore Viewer</code> to change it later.</p>
   
   </li>
-  <li>In a shell window, go to the <code>gcm-api-server</code> directory.</li>
+  <li>In a shell window, go to the <code>samples/gcm-demo-appengine</code> directory.</li>
   <li>Start the development App Engine server by <code>ant runserver</code>, using the <code>-Dsdk.dir</code> to indicate the location of the App Engine SDK and <code>-Dserver.host</code> to set your server's hostname or IP address:</li>
 
 <pre class="prettyprint">
@@ -163,9 +168,9 @@
 <p>To set up the device:</p>
 <ol>
   <li> From the SDK Manager, install <strong>Extras &gt; Google Cloud Messaging for Android Library</strong>.
-    <p>This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-demo-appengine</code>, <code>gcm-demo-client</code>, <code>gcm-demo-server</code>, <code>gcm-server</code>, and <code>source.properties</code>.</p>
+    <p>This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-server</code>, <code>samples/gcm-demo-client</code>, <code>samples/gcm-demo-server</code>, and <code>samples/gcm-demo-appengine</code>.</p>
   </li>
-  <li>Using a text editor, open  <code>gcm-demo-client/src/com/google/android/gcm/demo/app/CommonUtilities.java</code> and set the proper values for the <code>SENDER_ID</code> and <code>SERVER_URL</code> constants. For example:</li>
+  <li>Using a text editor, open  <code>samples/gcm-demo-client/src/com/google/android/gcm/demo/app/CommonUtilities.java</code> and set the proper values for the <code>SENDER_ID</code> and <code>SERVER_URL</code> constants. For example:</li>
 
 <pre class="prettyprint pretty-java">
 static final String SERVER_URL = &quot;http://192.168.1.10:8080/gcm-demo&quot;;
diff --git a/docs/html/guide/google/gcm/gcm.jd b/docs/html/guide/google/gcm/gcm.jd
index d871fb4..5515f31 100644
--- a/docs/html/guide/google/gcm/gcm.jd
+++ b/docs/html/guide/google/gcm/gcm.jd
@@ -56,7 +56,7 @@
 </div>
 </div>
 
-<p>Google Cloud Messaging for Android (GCM) is a service that helps
+<p>Google Cloud Messaging for Android (GCM) is a free service that helps
 developers  send data from servers to their Android applications on  Android devices. This could be a lightweight message telling the Android application that there is new data to be fetched from the server (for instance, a movie uploaded by a friend), or it could be a message containing up to 4kb of payload data (so apps like instant messaging can consume the message directly). The GCM service handles all aspects  of queueing of
   messages and delivery to the target Android application running  on the target
   device.</p>
@@ -203,7 +203,7 @@
 <p>The registration ID lasts until the Android application explicitly unregisters
 itself, or until Google refreshes the registration ID for your Android application.</p>
 
-<p class="note"><strong>Note:</strong> When users uninstall an application, it is not automatically unregistered on GCM. It is only  unregistered when the GCM server tries to send a message to the device and the device answers that the application is uninstalled. At that point, you server should mark the device as unregistered (the server will receive a <code><a href="#unreg_device">NotRegistered</a></code> error).
+<p class="note"><strong>Note:</strong> When users uninstall an application, it is not automatically unregistered on GCM. It is only  unregistered when the GCM server tries to send a message to the device and the device answers that the application is uninstalled or it does not have a broadcast receiver configured to receive <code>com.google.android.c2dm.intent.RECEIVE</code> intents. At that point, you server should mark the device as unregistered (the server will receive a <code><a href="#unreg_device">NotRegistered</a></code> error).
   <p>
 Note that it might take a few minutes for the registration ID to be completed removed from the GCM server. So if the 3rd party server sends a message during this time, it will get a valid message ID, even though the message will not be delivered to the device.</p>
 </p>
@@ -545,7 +545,8 @@
 <p>The <code>com.google.android.c2dm.intent.RECEIVE</code> intent is used by GCM to 
 deliver the messages sent by the 3rd-party server to the application running in the device.
 If the server included key-pair values in the <code>data</code> parameter, they are available as 
-extras in this intent, with the keys being the extra names.
+extras in this intent, with the keys being the extra names. GCM also includes an  extra called 
+<code>from</code> which contains the sender ID as an string, and another called <code>collapse_key</code> containing the collapse key (when in use).
 
 <p>Here is an example, again using the <code>MyIntentReceiver</code> class:</p>
 
@@ -620,7 +621,7 @@
 Authorization:key=AIzaSyB-1uEai2WiUapxCs2Q0GZYzPu7Udno5aA
 
 {
-  "registration_id" : "APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx...",
+  "registration_ids" : ["APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx..."],
   "data" : {
     ...
   },
@@ -651,8 +652,9 @@
   <tr>
     <td><code>data</code></td>
     <td>A JSON object whose fields represents the key-value pairs of the message's payload data. If present, the payload data it will be
-included in the Intent as application data, with the key being the extra's name. For instance, <code>"data":{"score":"3x1"}</code> would result in an intent extra named <code>score</code> whose value is the string <code>3x1</code>
-There is no limit on the number of key/value pairs, though there is a limit on the total size of the message. Optional.</td>
+included in the Intent as application data, with the key being the extra's name. For instance, <code>"data":{"score":"3x1"}</code> would result in an intent extra named <code>score</code> whose value is the string <code>3x1</code>. 
+There is no limit on the number of key/value pairs, though there is a limit on the total size of the message (4kb). The values could be any JSON object, but we recommend using strings, since the values will be converted to strings in the GCM server anyway. If you want to include objects or other non-string data types (such as integers or booleans), you have to do the conversion to string yourself. Also note that the key cannot be a reserved word (<code>from</code> or any word starting with <code>google.</code>). To complicate things slightly, there are some reserved words (such as <code>collapse_key</code>) that are technically allowed in payload data. However, if the request also contains the word, the value in the request will overwrite the value in the payload data. Hence using words that are defined as field names in this table is not recommended, even in cases where they are technically allowed. Optional.</td>
+
   </tr>
   <tr>
     <td><code>delay_while_idle</code></td>
@@ -683,7 +685,8 @@
   </tr>
   <tr>
     <td><code>data.&lt;key&gt;</code></td>
-    <td>Payload data, expressed as parameters prefixed with <code>data.</code> and suffixed as the key. For instance, a parameter of <code>data.score=3x1</code> would result in an intent extra named <code>score</code> whose value is the string <code>3x1</code>. There is no limit on the number of key/value parameters, though there is a limit on the total size of the  message. Optional.</td>
+    <td>Payload data, expressed as parameters prefixed with <code>data.</code> and suffixed as the key. For instance, a parameter of <code>data.score=3x1</code> would result in an intent extra named <code>score</code> whose value is the string <code>3x1</code>. There is no limit on the number of key/value parameters, though there is a limit on the total size of the  message. Also note that the key cannot be a reserved word (<code>from</code> or any word starting with 
+<code>google.</code>). To complicate things slightly, there are some reserved words (such as <code>collapse_key</code>) that are technically allowed in payload data. However, if the request also contains the word, the value in the request will overwrite the value in the payload data. Hence using words that are defined as field names in this table is not recommended, even in cases where they are technically allowed. Optional.</td>
   </tr>
   <tr>
     <td><code>delay_while_idle</code></td>
@@ -695,7 +698,7 @@
   </tr>
 </table>
 
-
+<p>If you want to test your request (either JSON or plain text) without delivering the message to the devices, you can set an optional HTTP parameter called <code>dry_run</code> with the value <code>true</code>. The result will be almost identical to running the request without this parameter, except that the message will not be delivered to the devices. Consequently, the response will contain fake IDs for the message and multicast fields (see <a href="#response">Response format</a>).</p>
 
   <h4 id="example-requests">Example requests</h4>
   <p>Here is the smallest possible request (a message without any parameters and just one recipient) using JSON:</p>
@@ -814,7 +817,7 @@
   <li>Otherwise, get the value of <code>error</code>:
     <ul>
       <li>If it is <code>Unavailable</code>, you could retry to send it in another request.</li>
-      <li>If it is <code>NotRegistered</code>, you should remove the registration ID from your server database because the application was uninstalled from the device.</li>
+      <li>If it is <code>NotRegistered</code>, you should remove the registration ID from your server database because the application was uninstalled from the device or it does not have a broadcast receiver configured to receive <code>com.google.android.c2dm.intent.RECEIVE</code> intents.</li>
       <li>Otherwise, there is something wrong in the registration ID passed in the request; it is probably a non-recoverable error that will also require removing the registration from the server database. See <a href="#error_codes">Interpreting an error response</a> for all possible error values.</li>
     </ul>
   </li>
@@ -844,38 +847,103 @@
 <dt id="missing_reg"><strong>Missing Registration ID</strong></dt>
 <dd>Check that the request contains a registration ID (either in the <code>registration_id</code> parameter in a plain text message, or in the <code>registration_ids</code> field in JSON). 
 <br/>Happens when error code is <code>MissingRegistration</code>.</dd>
+
 <dt id="invalid_reg"><strong>Invalid Registration ID</strong></dt>
 <dd>Check the formatting of the registration ID that you pass to the server. Make sure it matches the registration ID the phone receives in the <code>com.google.android.c2dm.intent.REGISTRATION</code> intent and that you're not truncating it or adding additional characters. 
 <br/>Happens when error code is <code>InvalidRegistration</code>.</dd>
+
 <dt id="mismatched_sender"><strong>Mismatched Sender</strong></dt>
 <dd>A registration ID is tied to a certain group of senders. When an application registers for GCM usage, it must specify which senders are allowed to send messages. Make sure you're using one of those when trying to send messages to the device. If you switch to a different sender, the existing registration IDs won't work. 
 Happens when error code is <code>MismatchSenderId</code>.</dd>
+
 <dt id="unreg_device"><strong>Unregistered Device</strong></dt>
 <dd>An existing registration ID may cease to be valid in a number of scenarios, including:
 <ul>
   <li>If the application manually unregisters by issuing a <span class="prettyprint pretty-java"><code>com.google.android.c2dm.intent.UNREGISTER</code></span><code> </code>intent.</li>
   <li>If the application is automatically unregistered, which can happen (but is not guaranteed) if the user uninstalls the application.</li>
   <li>If the registration ID expires. Google might decide to refresh registration IDs. </li>
+  <li>If the application is updated but the new version does not have a broadcast receiver configured to receive <code>com.google.android.c2dm.intent.RECEIVE</code> intents.</li>
 </ul>
 For all these cases, you should remove this registration ID from the 3rd-party server and stop using it to send 
 messages. 
 <br/>Happens when error code is <code>NotRegistered</code>.</dd>
-  <dt id="big_msg"><strong>Message Too Big</strong></dt>
+
+<dt id="big_msg"><strong>Message Too Big</strong></dt>
   <dd>The total size of the payload data that is included in a message can't exceed 4096 bytes. Note that this includes both the size of the keys as well as the values. 
 <br/>Happens when error code is <code>MessageTooBig</code>.</dd>
-  <dt id="auth_error"><strong>Authentication Error</strong></dt>
-  <dd>The sender account that you're trying to use to send a message couldn't be authenticated. Possible causes are: request could not be parsed as JSON, or it contained invalid fields (for instance, passing a string where a number was expected).  The exact failure reason is described in the response and the problem should be addressed before the request can be retried. Possible causes are: authorization header missing or with invalid syntax, invalid project ID sent as key, key valid but with GCM service disabled, and so on. Check that the Sender Auth Token you're sending inside the <code>Authorization</code> header is the correct API key associated with your project. 
-<br/>Happens when the HTTP status code is 401.
-  </dd>
-  <dt id="internal_error"><strong>Internal Server Error/Timeout</strong></dt>
-  <dd>The server encountered an error while trying to process the request or couldn't finish in time. You can retry the same request, but you MUST obey the following requirements:  
-<ul>
-  <li>Honor the <code>Retry-After</code> header if it's included in the response from the GCM server.</li>
-  <li>Implement exponential back-off in your retry mechanism. This means an exponentially increasing delay after each failed retry (e.g. if you waited one second before the first retry, wait at least two second before the next one, then 4 seconds and so on). If you're sending multiple messages, delay each one independently by an additional random amount to avoid issuing a new request for all messages at the same time.</li>
-</ul>
-Senders that cause problems risk being blacklisted.
-<br/>Happens when the HTTP status code is 500 or 503; or when the <code>error</code> field of a JSON object in the <code>results</code> array is <code>Unavailable</code>.
+
+<dt id="invalid_datakey"><strong>Invalid Data Key</strong></dt>
+<dd>The payload data contains a key (such as <code>from</code> or any value prefixed by <code>google.</code>) that is used internally by GCM in the  <code>com.google.android.c2dm.intent.RECEIVE</code> Intent and cannot be used. Note that some words (such as <code>collapse_key</code>) are also used by GCM but are allowed in the payload, in which case the payload value will be overridden by the GCM value. 
+<br />
+Happens when the error code is <code>InvalidDataKey</code>.</dd>
+
+<dt id="ttl_error"><strong>Invalid Time To Live</strong></dt>
+  <dd>The value for the Time to Live field must be an integer representing a duration in seconds between 0 and 2,419,200 (4 weeks). Happens when error code is <code>InvalidTtl</code>.
 </dd>
+
+  <dt id="auth_error"><strong>Authentication Error</strong></dt>
+  <dd>The sender account that you're trying to use to send a message couldn't be authenticated. Possible causes are: <ul>
+<li>Authorization header missing or with invalid syntax.</li>
+<li>Invalid project ID sent as key.</li>
+<li>Key valid but with GCM service disabled.</li>
+<li>Request originated from a server not whitelisted in the Server Key IPs.</li>
+
+</ul>
+Check that the token you're sending inside the <code>Authorization</code> header is the correct API key associated with your project. You can check the validity of your API key by running the following command:<br/>
+
+
+<pre># api_key=YOUR_API_KEY
+
+# curl --header "Authorization: key=$api_key" --header Content-Type:"application/json" https://android.googleapis.com/gcm/send  -d "{\"registration_ids\":[\"ABC\"]}"</pre>
+
+
+
+If you receive a 401 HTTP status code, your API key is not valid. Otherwise you should see something like this:<br/>
+
+<pre>
+{"multicast_id":6782339717028231855,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}
+</pre>
+If you want to confirm the validity of a registration ID, you can do so by replacing "ABC" with the registration ID.
+<br/>
+Happens when the HTTP status code is 401.
+
+  <dt id="timeout"><strong>Timeout</strong></dt>
+
+<dd>The server couldn't process the request in time. You should retry the
+same request, but you MUST obey the following requirements:
+
+<ul>
+
+<li>Honor the <code>Retry-After</code> header if it's included in the response from the GCM server.</li>
+        
+        
+<li>Implement exponential back-off in your retry mechanism. This means an
+exponentially increasing delay after each failed retry (e.g. if you waited one
+second before the first retry, wait at least two second before the next one,
+then 4 seconds and so on). If you're sending multiple messages, delay each one
+independently by an additional random amount to avoid issuing a new request for
+all messages at the same time.</li>
+    
+
+Senders that cause problems risk being blacklisted. 
+<br />
+Happens when the HTTP status code is 503, or when the <code>error</code> field of a JSON object in the results array is <code>Unavailable</code>.
+</dd>
+
+<dt id="internal_error"><strong>Internal Server Error</strong></dt>
+
+<dd>
+The server encountered an error while trying to process the request. You
+could retry the same request (obeying the requirements listed in the <strong>Timeout</strong>
+section), but if the error persists, please report the problem in the <a href="https://groups.google.com/forum/?fromgroups#!forum/android-gcm">android-gcm group</a>.
+<br /> 
+Senders that cause problems risk being blacklisted. 
+<br />
+Happens when the HTTP status code is 500, or when the <code>error</code> field of a JSON
+object in the results array is <code>InternalServerError</code>.
+</dd>
+
+
 </dl>
 <h4>Example responses</h4>
 <p>This section shows a few examples of responses indicating messages that were processed successfully. See <a href="#example-requests">Example requests</a> for the requests these responses are based on.</p>
@@ -930,7 +998,7 @@
 
 <p>To view  statistics and any error messages for your GCM applications:</p>
 <ol>
-  <li> Go to <code><a href="http://play.google.com/apps/publish">play.google.com/apps/publish</a></code>.</li>
+  <li> Go to the <code><a href="http://play.google.com/apps/publish">Android Developer Console</a></code>.</li>
   <li>Login with your developer account. 
   <p>You will see a page that has a list of all of your apps.</p></li>
   <li> Click on the &quot;statistics&quot; link next to the app for which you want to view GCM stats. 
@@ -938,6 +1006,8 @@
   <li>Go to the drop-down menu and select the GCM metric you want to view. 
   </li>
 </ol>
+<p class="note"><strong>Note:</strong> Stats on the Google API Console are not enabled for GCM. You must use the <a href="http://play.google.com/apps/publish">Android Developer Console</a>.</p>
+
 <h2 id="example">Examples</h2>
 <p>See the <a href="demo.html">GCM Demo Application</a> document.</p>
 
diff --git a/docs/html/guide/google/gcm/gs.jd b/docs/html/guide/google/gcm/gs.jd
index 5e426c2..6f8598f 100644
--- a/docs/html/guide/google/gcm/gs.jd
+++ b/docs/html/guide/google/gcm/gs.jd
@@ -63,7 +63,7 @@
 </div>
 </div>
 
-  <li>Click  <strong>Create new Server key</strong>. The following screen appears:</li><br />
+  <li>Click  <strong>Create new Server key</strong>. Either a server key or a browser key should work. The advantage to using a server key is that it allows you to whitelist IP addresses. The following screen appears:</li><br />
 
 <div style="width:408px;margin:1.5em;">
 <div style="width:410px;border:1px solid #DDD;">
@@ -85,7 +85,10 @@
 <p class="note"><strong>Note:</strong> If you need to rotate the key, click  <strong>Generate new key</strong>. A new key  will be created while the old one will still be active for up to 24 hours. If you want to get rid of the old key immediately (for example, if you feel it was compromised), click <strong>Delete key</strong>.</p>
 
 <h2 id="libs">Install the Helper Libraries</h2>
-<p>To perform the steps described in the following sections, you must first install the helper libraries (reference: <a href="{@docRoot}guide/google/gcm/client-javadoc/index.html">client</a> and <a href="{@docRoot}guide/google/gcm/server-javadoc/index.html">server</a>). From the SDK Manager, install <strong>Extras &gt; Google Cloud Messaging for Android Library</strong>. This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google/</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-demo-appengine</code>, <code>gcm-demo-client</code>, <code>gcm-demo-server</code>, and <code>gcm-server</code>.</p>
+<p>To perform the steps described in the following sections, you must first install the helper libraries (reference: <a href="{@docRoot}guide/google/gcm/client-javadoc/index.html">client</a> and <a href="{@docRoot}guide/google/gcm/server-javadoc/index.html">server</a>). From the SDK Manager, install <strong>Extras &gt; Google Cloud Messaging for Android Library</strong>. This creates a <code>gcm</code> directory under <code><em>YOUR_SDK_ROOT</em>/extras/google/</code> containing these subdirectories: <code>gcm-client</code>, <code>gcm-server</code>, <code>samples/gcm-demo-client</code>, <code>samples/gcm-demo-server</code>, and <code>samples/gcm-demo-appengine</code>.</p>
+
+<p class="note"><strong>Note:</strong> If you don't see <strong>Extras &gt; Google Cloud Messaging for Android Library</strong> in the SDK Manager, make sure you are running version 20 or higher. Be sure to restart the SDK Manager after updating it.</p>
+
 <h2 id="android-app">Writing the Android Application</h2>
 <p>This section describes the steps involved in writing an Android application that uses GCM.</p>
 <h4>Step 1: Copy the gcm.jar file into your application classpath</h4>
@@ -104,9 +107,16 @@
 <p> This permission must be called <code>my_app_package.permission.C2D_MESSAGE</code> (where <code>my_app_package</code> is the package name of your app as defined by the manifest tag), otherwise it will not  work.</p>
 <p class="note"><strong>Note:</strong> This permission is not required if you are targeting your application to 4.1 or above (i.e., minSdkVersion 16)</p>
 
-  <li>Add the permission to receive GCM messages:</li>
+  <li>Add the following permissions:</li>
 
-<pre class="prettyprint pretty-xml">&lt;uses-permission android:name=&quot;com.google.android.c2dm.permission.RECEIVE&quot; /&gt;</pre>
+<pre class="prettyprint pretty-xml">&lt;!-- App receives GCM messages. --&gt;
+&lt;uses-permission android:name=&quot;com.google.android.c2dm.permission.RECEIVE&quot; /&gt;
+&lt;!-- GCM connects to Google Services. --&gt;
+&lt;uses-permission android:name=&quot;android.permission.INTERNET&quot; /&gt; 
+&lt;!-- GCM requires a Google account. --&gt;
+&lt;uses-permission android:name=&quot;android.permission.GET_ACCOUNTS&quot; /&gt;
+&lt;!-- Keeps the processor from sleeping when a message is received. --&gt;
+&lt;uses-permission android:name=&quot;android.permission.WAKE_LOCK&quot; /&gt;</pre>
 
   <li>Add the following broadcast receiver:</li>
 
@@ -127,7 +137,7 @@
  <pre class="prettyprint pretty-xml">&lt;service android:name=&quot;.GCMIntentService&quot; /&gt;</pre>
 
 </ol>
-<p> This intent service will be called by the <code>GCMBroadcastReceiver</code> (which is is provided by GCM library), as shown in the next step. It must be named <code>my_app_package.GCMIntentService</code>, unless you use a subclass of <code>GCMBroadcastReceiver</code> that overrides the method used to name the service.</p>
+<p>This intent service will be called by the <code>GCMBroadcastReceiver</code> (which is is provided by GCM library), as shown in the next step. It must be a subclass of <code>com.google.android.gcm.GCMBaseIntentService</code>, must contain a public constructor, and should be named <code>my_app_package.GCMIntentService</code> (unless you use a subclass of <code>GCMBroadcastReceiver</code> that overrides the method used to name the service).</p>
 <h4><br>
   Step 3: Write the my_app_package.GCMIntentService class</h4>
 <p>Next write the <code>my_app_package.GCMIntentService</code> class, overriding the following callback methods (which are called by <code>GCMBroadcastReceiver</code>):<br>
@@ -168,14 +178,14 @@
   <li>Create a servlet (or other server-side mechanism) that can be used by the Android application to send the registration ID received by GCM . The application might also need to send other information&mdash;such as the user's email address or username&mdash;so that the server can associate the registration ID with the user owning the device.</li>
   <li>Similarly, create a servlet used to unregister registration IDs.<br>
     </li>
-  <li>When the server needs to send a message to the device, it can use the <code>com.google.android.gcm.server.Sender</code> helper class from the GCM library. For example:</li>
+<li>When the server needs to send a message to the registration ID, it can use the <code>com.google.android.gcm.server.Sender</code> helper class from the GCM library. For example:</li>
 </ol>
 
 <pre class="prettyprint pretty-java">import com.google.android.gcm.server.*;
 
 Sender sender = new Sender(myApiKey);
-Message message = new Message.Builder(regId).build();
-Result result = sender.send(message, 5);</pre>
+Message message = new Message.Builder().build();
+MulticastResult result = sender.send(message, devices, 5);</pre>
 
 <p> The snippet above does the following:
 <ul>
diff --git a/docs/html/guide/google/gcm/index.jd b/docs/html/guide/google/gcm/index.jd
index cba8d0b..8079eba 100644
--- a/docs/html/guide/google/gcm/index.jd
+++ b/docs/html/guide/google/gcm/index.jd
@@ -5,7 +5,9 @@
 <p><img src="{@docRoot}images/gcm/gcm-logo.png" /></p>
 <p>Google Cloud Messaging for Android (GCM) is a service that helps developers send data from servers to their Android applications on Android devices. This could be a lightweight message telling the Android application that there is new data to be fetched from the server (for instance, a movie uploaded by a friend), or it could be a message containing up to 4kb of payload data (so apps like instant messaging can consume the message directly). The GCM service handles all aspects of queueing of messages and delivery to the target Android application running on the target device.</p>
 
-<p>To learn more about GCM, read the following documents:</p>
+<p>GCM is completely free no matter how big your messaging needs are, and there are no quotas.</p>
+
+<p>To learn more about GCM, you can join the <a href="https://groups.google.com/forum/?fromgroups#!forum/android-gcm">android-gcm group</a> and read the following documents:</p>
 
 <dl>
   <dt><strong><a href="{@docRoot}guide/google/gcm/gs.html">Getting Started</a></strong></dt>
@@ -23,3 +25,4 @@
 <p>GCM also provides helper libraries for <a href="{@docRoot}guide/google/gcm/client-javadoc/index.html"><strong>client</strong></a> and <a href="{@docRoot}guide/google/gcm/server-javadoc/index.html"><strong>server</strong></a> development.</p>
 
 
+
diff --git a/docs/html/guide/google/gcm/server-javadoc/allclasses-frame.html b/docs/html/guide/google/gcm/server-javadoc/allclasses-frame.html
index d2fe43d..cf7dc28 100644
--- a/docs/html/guide/google/gcm/server-javadoc/allclasses-frame.html
+++ b/docs/html/guide/google/gcm/server-javadoc/allclasses-frame.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 All Classes
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 
 </HEAD>
diff --git a/docs/html/guide/google/gcm/server-javadoc/allclasses-noframe.html b/docs/html/guide/google/gcm/server-javadoc/allclasses-noframe.html
index 0f0dc96..299085c 100644
--- a/docs/html/guide/google/gcm/server-javadoc/allclasses-noframe.html
+++ b/docs/html/guide/google/gcm/server-javadoc/allclasses-noframe.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 All Classes
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 
 </HEAD>
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Constants.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Constants.html
index 09ac011..7384dfd 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Constants.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Constants.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:56 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:09 PDT 2012 -->
 <TITLE>
 Constants
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -125,6 +125,15 @@
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../com/google/android/gcm/server/Constants.html#ERROR_INTERNAL_SERVER_ERROR">ERROR_INTERNAL_SERVER_ERROR</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A particular message could not be sent because the GCM servers encountered
+ an error.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
 <TD><CODE><B><A HREF="../../../../../com/google/android/gcm/server/Constants.html#ERROR_INVALID_REGISTRATION">ERROR_INVALID_REGISTRATION</A></B></CODE>
 
 <BR>
@@ -133,6 +142,14 @@
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 <CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../com/google/android/gcm/server/Constants.html#ERROR_INVALID_TTL">ERROR_INVALID_TTL</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Time to Live value passed is less than zero or more than maximum.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
 <TD><CODE><B><A HREF="../../../../../com/google/android/gcm/server/Constants.html#ERROR_MESSAGE_TOO_BIG">ERROR_MESSAGE_TOO_BIG</A></B></CODE>
 
 <BR>
@@ -185,8 +202,8 @@
 <TD><CODE><B><A HREF="../../../../../com/google/android/gcm/server/Constants.html#ERROR_UNAVAILABLE">ERROR_UNAVAILABLE</A></B></CODE>
 
 <BR>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Used to indicate that a particular message could not be sent because
- the GCM servers were not available.</TD>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A particular message could not be sent because the GCM servers were not
+ available.</TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
@@ -547,15 +564,41 @@
 <PRE>
 public static final java.lang.String <B>ERROR_UNAVAILABLE</B></PRE>
 <DL>
-<DD>Used to indicate that a particular message could not be sent because
- the GCM servers were not available. Used only on JSON requests, as in
- plain text requests unavailability is indicated by a 503 response.
+<DD>A particular message could not be sent because the GCM servers were not
+ available. Used only on JSON requests, as in plain text requests
+ unavailability is indicated by a 503 response.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#com.google.android.gcm.server.Constants.ERROR_UNAVAILABLE">Constant Field Values</A></DL>
 </DL>
 <HR>
 
+<A NAME="ERROR_INTERNAL_SERVER_ERROR"><!-- --></A><H3>
+ERROR_INTERNAL_SERVER_ERROR</H3>
+<PRE>
+public static final java.lang.String <B>ERROR_INTERNAL_SERVER_ERROR</B></PRE>
+<DL>
+<DD>A particular message could not be sent because the GCM servers encountered
+ an error. Used only on JSON requests, as in plain text requests internal
+ errors are indicated by a 500 response.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#com.google.android.gcm.server.Constants.ERROR_INTERNAL_SERVER_ERROR">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="ERROR_INVALID_TTL"><!-- --></A><H3>
+ERROR_INVALID_TTL</H3>
+<PRE>
+public static final java.lang.String <B>ERROR_INVALID_TTL</B></PRE>
+<DL>
+<DD>Time to Live value passed is less than zero or more than maximum.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#com.google.android.gcm.server.Constants.ERROR_INVALID_TTL">Constant Field Values</A></DL>
+</DL>
+<HR>
+
 <A NAME="TOKEN_MESSAGE_ID"><!-- --></A><H3>
 TOKEN_MESSAGE_ID</H3>
 <PRE>
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/InvalidRequestException.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/InvalidRequestException.html
index 4b3271c..56de783 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/InvalidRequestException.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/InvalidRequestException.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:56 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 InvalidRequestException
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.Builder.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.Builder.html
index 5952e87..7d5110c 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.Builder.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.Builder.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Message.Builder
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.html
index 0773686..37a8a74 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Message
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/MulticastResult.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/MulticastResult.html
index f9df609..21752ca 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/MulticastResult.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/MulticastResult.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 MulticastResult
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Result.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Result.html
index 14d4b34..512b8f5 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Result.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Result.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Result
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Sender.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Sender.html
index 4f1a2ac..5224e15 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Sender.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Sender.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Sender
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-frame.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-frame.html
index 8312f46..9f099b3 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-frame.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-frame.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 com.google.android.gcm.server
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 
 </HEAD>
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-summary.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-summary.html
index 27b0564..eddcca1 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-summary.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-summary.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 com.google.android.gcm.server
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-tree.html b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-tree.html
index 81efcef..d3d1c43 100644
--- a/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-tree.html
+++ b/docs/html/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-tree.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 com.google.android.gcm.server Class Hierarchy
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/constant-values.html b/docs/html/guide/google/gcm/server-javadoc/constant-values.html
index 5efe6f5..66df664 100644
--- a/docs/html/guide/google/gcm/server-javadoc/constant-values.html
+++ b/docs/html/guide/google/gcm/server-javadoc/constant-values.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Constant Field Values
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -107,12 +107,24 @@
 <TD ALIGN="right"><CODE>"DeviceQuotaExceeded"</CODE></TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="com.google.android.gcm.server.Constants.ERROR_INTERNAL_SERVER_ERROR"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/server/Constants.html#ERROR_INTERNAL_SERVER_ERROR">ERROR_INTERNAL_SERVER_ERROR</A></CODE></TD>
+<TD ALIGN="right"><CODE>"InternalServerError"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
 <A NAME="com.google.android.gcm.server.Constants.ERROR_INVALID_REGISTRATION"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
 <CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
 <TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/server/Constants.html#ERROR_INVALID_REGISTRATION">ERROR_INVALID_REGISTRATION</A></CODE></TD>
 <TD ALIGN="right"><CODE>"InvalidRegistration"</CODE></TD>
 </TR>
 <TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="com.google.android.gcm.server.Constants.ERROR_INVALID_TTL"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/server/Constants.html#ERROR_INVALID_TTL">ERROR_INVALID_TTL</A></CODE></TD>
+<TD ALIGN="right"><CODE>"InvalidTtl"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
 <A NAME="com.google.android.gcm.server.Constants.ERROR_MESSAGE_TOO_BIG"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
 <CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
 <TD ALIGN="left"><CODE><A HREF="com/google/android/gcm/server/Constants.html#ERROR_MESSAGE_TOO_BIG">ERROR_MESSAGE_TOO_BIG</A></CODE></TD>
diff --git a/docs/html/guide/google/gcm/server-javadoc/default.css b/docs/html/guide/google/gcm/server-javadoc/default.css
new file mode 100644
index 0000000..2513e69
--- /dev/null
+++ b/docs/html/guide/google/gcm/server-javadoc/default.css
@@ -0,0 +1,4005 @@
+/* color definitions */
+/* 16 column layout */
+/* clearfix idiom */
+/* common mixins */
+/* page layout + top-level styles */
+::-webkit-selection,
+::-moz-selection,
+::selection {
+  background-color: #0099cc;
+  color: #fff; }
+
+html, body {
+  height: 100%;
+  margin: 0;
+  padding: 0;
+  background-color:#F9F9F9;
+  -webkit-font-smoothing: antialiased;
+  /* prevent subpixel antialiasing, which thickens the text */
+  /* text-rendering: optimizeLegibility; */
+  /* turned off ligatures due to bug 5945455 */ }
+
+body {
+  color: #222;
+  font: 14px/19px Roboto, sans-serif;
+  font-weight: 400;
+  letter-spacing:.1;
+  padding:0 10px; }
+
+#page-container {
+  width: 940px;
+  margin: 0 40px; }
+
+#page-header {
+  height: 80px;
+  margin-bottom: 20px;
+  font-size: 48px;
+  line-height: 48px;
+  font-weight: 100;
+  padding-left: 10px; }
+  #page-header a {
+    display: block;
+    position: relative;
+    top: 20px;
+    text-decoration: none;
+    color: #555555 !important; }
+
+#main-row {
+  display: inline-block; }
+  #main-row:after {
+    content: ".";
+    display: block;
+    height: 0;
+    clear: both;
+    visibility: hidden; }
+  * html #main-row {
+    height: 1px; }
+
+#page-footer {
+  margin-left: 190px;
+  margin-top: 80px;
+  color: #999999;
+  padding-bottom: 40px;
+  font-size: 12px;
+  line-height: 15px; }
+  #page-footer a {
+    color: #777777; }
+  #page-footer #copyright {
+    margin-bottom: 10px; }
+
+#nav-container {
+  width: 160px;
+  min-height: 10px;
+  margin-right: 20px;
+  float: left; }
+
+#nav {
+  margin:0;
+  padding:0 0 30px;
+}
+
+#side-nav {
+  min-height:5px; /* silly way to avoid doc floating left when nav goes fixed */
+  margin-bottom:1px;
+}
+#devdoc-nav {
+  outline:none;
+  width:auto;
+  margin: 20px 0 0; }
+  
+#devdoc-nav h2 {
+  border:0;
+}
+
+#devdoc-nav.fixed {
+  position: fixed;
+  margin:0;
+  top: 20px; }
+
+#content {
+  width: 760px;
+  float: left; }
+
+a:hover,
+acronym:hover {
+  color: #7aa1b0 !important; }
+
+a:focus,
+a:active {
+  color: #33b5e5 !important; }
+
+img {
+  border: none; }
+#jd-content img {
+  margin-bottom:15px;
+}
+
+ul {
+  margin: 0;
+  padding: 0; }
+
+strong {
+  font-weight: 500; }
+
+em {
+  font-style: italic; }
+
+acronym {
+  border-bottom: 1px dotted #555555;
+  cursor: help; }
+
+acronym:hover {
+  border-bottom-color: #7aa1b0; }
+
+img.with-shadow,
+video.with-shadow {
+  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25); }
+
+/* disclosures mixin */
+/* content layout */
+.layout-content-row {
+  display: inline-block;
+  margin-bottom: 10px; }
+  .layout-content-row:after {
+    content: ".";
+    display: block;
+    height: 0;
+    clear: both;
+    visibility: hidden; }
+  * html .layout-content-row {
+    height: 1px; }
+
+.layout-content-col {
+  float: left;
+  margin-left: 20px; }
+  .layout-content-col:first-child {
+    margin-left: 0; }
+  .layout-content-col h3,
+  .layout-content-col h4 {
+    margin-top:0; }
+
+.layout-content-col.span-1 {
+  width: 40px; }
+
+.layout-content-col.span-2 {
+  width: 100px; }
+
+.layout-content-col.span-3 {
+  width: 160px; }
+
+.layout-content-col.span-4 {
+  width: 220px; }
+
+.layout-content-col.span-5 {
+  width: 280px; }
+
+.layout-content-col.span-6 {
+  width: 340px; }
+
+.layout-content-col.span-7 {
+  width: 400px; }
+
+.layout-content-col.span-8 {
+  width: 460px; }
+
+.layout-content-col.span-9 {
+  width: 520px; }
+
+.layout-content-col.span-10 {
+  width: 580px; }
+
+.layout-content-col.span-11 {
+  width: 640px; }
+
+.layout-content-col.span-12 {
+  width: 700px; }
+
+.layout-content-col.span-13 {
+  width: 760px; }
+
+.vspace.size-1 {
+  height: 10px; }
+
+.vspace.size-2 {
+  height: 20px; }
+
+.vspace.size-3 {
+  height: 30px; }
+
+.vspace.size-4 {
+  height: 40px; }
+
+.vspace.size-5 {
+  height: 50px; }
+
+.vspace.size-6 {
+  height: 60px; }
+
+.vspace.size-7 {
+  height: 70px; }
+
+.vspace.size-8 {
+  height: 80px; }
+
+.vspace.size-9 {
+  height: 90px; }
+
+.vspace.size-10 {
+  height: 100px; }
+
+.vspace.size-11 {
+  height: 110px; }
+
+.vspace.size-12 {
+  height: 120px; }
+
+.vspace.size-13 {
+  height: 130px; }
+
+.vspace.size-14 {
+  height: 140px; }
+
+.vspace.size-15 {
+  height: 150px; }
+
+.vspace.size-16 {
+  height: 160px; }
+
+/* nav */
+#nav {
+  /* section header divs */
+  /* expanded section header divs */
+  /* sublinks */ }
+  #nav li {
+    list-style-type: none;
+    font-size: 14px;
+    margin:0;
+    padding:0;
+    line-height: 15px; }
+  #nav a {
+    color: #555555;
+    text-decoration: none; }
+  #nav .nav-section-header {
+    position: relative;
+    margin-bottom: 1px;
+    padding: 0 30px 0 0; }
+  #nav li.selected a, #nav li.selected > .nav-section-header > a {
+    color: #09C;
+  }
+  #nav li.selected ul li a {
+  /* don't highlight child items */
+    color: #555555; }
+  #nav .nav-section .nav-section .nav-section-header {
+    /* no white line between second level sections */
+    margin-bottom: 0; }
+    /* section header links */
+    #nav > li > div > a {
+      display: block;
+      color: #333333;
+      font-weight: 500;
+      padding: 10px 0 10px 10px; }
+    #nav .nav-section-header:after {
+      content: '';
+      background: transparent url(../images/styles/disclosure_down.png) no-repeat scroll 50% 50%;
+      width: 34px;
+      height: 34px;
+      display: block;
+      position: absolute;
+      top: 0;
+      right: 0; }
+    #nav .nav-section-header.empty:after {
+      display: none; }
+    /* nested nav headers */
+    #nav .nav-section .nav-section {
+      position: relative;
+      padding: 0;
+      margin: 0; }
+    #nav .nav-section li a {
+    /* first gen child (2nd level li) */
+      display:block;
+      font-weight: normal;
+      text-transform: none;
+      padding: 7px 5px 7px 10px;
+       }
+    #nav .nav-section li li a {
+    /* second gen child (3rd level li) */
+      padding: 5px 5px 5px 10px;
+       }
+  #nav li.expanded .nav-section-header {
+    background:#e9e9e9;
+    background: rgba(0, 0, 0, 0.05); }
+  #nav li.expanded li .nav-section-header {
+    background: transparent; }
+  #nav li.expanded li ul {
+  /* 3rd level ul */
+    padding:0 10px;
+  }
+    #nav li.expanded > .nav-section-header:after {
+      content: '';
+      background: transparent url(../images/styles/disclosure_up.png) no-repeat scroll 50% 50%;
+      width: 34px;
+      height: 34px; }
+  #nav li ul {
+    display:none;
+    overflow: hidden;
+    margin: 0; }
+    #nav li ul.animate-height-in {
+      -webkit-transition: height 0.25s ease-in;
+      -moz-transition: height 0.25s ease-in;
+      transition: height 0.25s ease-in; }
+    #nav li ul.animate-height-out {
+      -webkit-transition: height 0.25s ease-out;
+      -moz-transition: height 0.25s ease-out;
+      transition: height 0.25s ease-out; }
+    #nav li ul li {
+      padding: 0; }
+      #nav li li li {
+        padding: 0; }
+  #nav li.expanded ul {
+    }
+    #nav li ul > li {
+      padding:0;
+    }
+    #nav li ul > li:last-child {
+      padding-bottom:5px;
+    }
+    #nav li.expanded ul > li {
+      background:#efefef;
+      background: rgba(0, 0, 0, 0.03); }
+    #nav li.expanded ul > li li {
+      background:inherit; }
+
+.new,
+.new-child {
+  font-size: .78em;
+  font-weight: bold;
+  color: #ff3d3d;
+  vertical-align:top;
+  white-space:nowrap;
+}
+
+/* content header */
+.content-header {
+  height: 30px;
+  margin:20px 0 25px;
+  padding:0 0 10px;}
+.content-header.just-links {
+  margin-bottom:0;
+  padding-bottom:0;}
+    
+.content-header h1 {
+  color:#000;
+  margin:0;
+  border-bottom:0;
+  padding:0;
+}
+
+.content-footer {
+  border-top: 1px solid #ccc;
+  margin-top: 10px;
+  padding-top:10px;
+  height: 30px; }
+
+.content-footer .col-9 {
+  margin-left:0;
+}
+.content-footer .col-4 {
+  margin-right:0;
+}
+.content-footer.wrap {
+  width:940px;
+}
+
+.paging-links {
+  position: relative; }
+  .paging-links a {
+    position: absolute; }
+  .paging-links a,
+  .training-nav-top a {
+    font-size: 14px;
+    line-height: 30px;
+    color: #555555;
+    text-decoration: none;
+    text-transform: uppercase; }
+  .paging-links .prev-page-link,
+  .training-nav-top .prev-page-link {
+    left: -5px; }
+    .paging-links .prev-page-link:before,
+    .training-nav-top .prev-page-link:before {
+      content: '';
+      background: transparent url(../images/styles/disclosure_left.png) no-repeat scroll 50% 50%;
+      width: 10px;
+      height: 10px;
+      display: inline-block;
+      margin-right: 5px; }
+  .paging-links .next-page-link,
+  .training-nav-top .next-page-link,
+    .training-nav-top .start-class-link,
+    .training-nav-top .start-course-link {
+    right: 10px; }
+    .next-page-link:after,
+    .start-class-link:after,
+    .start-course-link:after,
+    .next-class-link:after {
+      content: '';
+      background: transparent url(../images/styles/disclosure_right.png) no-repeat scroll 50% 50%;
+      width: 10px;
+      height: 10px;
+      display: inline-block;
+      margin-left: 5px; }
+      
+      
+  .training-nav-top a {
+    display:block;
+    float:left;
+    width:108px;
+    height:28px;
+    padding: 8px 15px;
+    line-height:28px;
+    text-align:center;
+    border:1px solid #DADADA;
+    border-bottom:0;
+  }
+      
+  .training-nav-top a.next-page-link {
+    border-left:0;
+    width:109px;
+  }
+      
+  .training-nav-top a.disabled,
+  .content-footer a.disabled {
+    color:#999;
+  }
+      
+  .training-nav-top a.disabled:hover,
+  .content-footer a.disabled:hover {
+    cursor:default;
+    color:#999 !important;
+  }
+      
+  .training-nav-top a.start-class-link,
+  .training-nav-top a.start-course-link {
+    width:248px;
+  }
+  
+  .hide {
+    display:none !important;
+  }
+  
+  .content-footer.next-class {
+    display:block;
+    border:0;
+    margin-top:0;
+    padding-top:0;
+  }
+  
+  .content-footer.next-class a.next-class-link {
+    display:block;
+    float:right;
+    text-transform:uppercase;
+  }
+
+/* content body */
+@-webkit-keyframes glowheader {
+  from {
+    background-color: #33b5e5;
+    color: #000;
+    border-bottom-color: #000; }
+
+  to {
+    background-color: transparent;
+    color: #33b5e5;
+    border-bottom-color: #33b5e5; } }
+
+@-moz-keyframes glowheader {
+  from {
+    background-color: #33b5e5;
+    color: #000;
+    border-bottom-color: #000; }
+
+  to {
+    background-color: transparent;
+    color: #33b5e5;
+    border-bottom-color: #33b5e5; } }
+
+@keyframes glowheader {
+  from {
+    background-color: #33b5e5;
+    color: #000;
+    border-bottom-color: #000; }
+
+  to {
+    background-color: transparent;
+    color: #33b5e5;
+    border-bottom-color: #33b5e5; } }
+
+h2:target,
+h3:target {
+    -webkit-animation-name: glowheader;
+    -moz-animation-name: glowheader;
+    animation-name: glowheader;
+    -webkit-animation-duration: 0.7s;
+    -moz-animation-duration: 0.7s;
+    animation-duration: 0.7s;
+    -webkit-animation-timing-function: ease-out;
+    -moz-animation-timing-function: ease-out;
+    animation-timing-function: ease-out; }
+
+.design ol h4 {
+  margin-bottom:0;
+}
+.design ol {
+  counter-reset: item; }
+  .design ol li {
+    font-size: 14px;
+    line-height: 20px;
+    list-style-type: none;
+    position: relative; }
+    .design ol li:before {
+      content: counter(item) ". ";
+      counter-increment: item;
+      position: absolute;
+      left: -20px;
+      top: 0; }
+    .design ol li.value-1:before {
+      content: "1. "; }
+    .design ol li.value-2:before {
+      content: "2. "; }
+    .design ol li.value-3:before {
+      content: "3. "; }
+    .design ol li.value-4:before {
+      content: "4. "; }
+    .design ol li.value-5:before {
+      content: "5. "; }
+    .design ol li.value-6:before {
+      content: "6. "; }
+    .design ol li.value-7:before {
+      content: "7. "; }
+    .design ol li.value-8:before {
+      content: "8. "; }
+    .design ol li.value-9:before {
+      content: "9. "; }
+    .design ol li.value-10:before {
+      content: "10. "; }
+.design .with-callouts ol li {
+  list-style-position: inside;
+  margin-left: 0; }
+  .design .with-callouts ol li:before {
+    display: inline;
+    left: -20px;
+    float: left;
+    width: 17px;
+    color: #33b5e5;
+    font-weight: 500; }
+
+/* special list items */
+li.no-bullet {
+  list-style-type: none !important; }
+li.no-bullet *{
+  margin:0; }
+
+.design li.with-icon {
+  position: relative;
+  margin-left: 20px;
+  min-height: 30px; }
+  .design li.with-icon p {
+    margin-left: 0 !important; }
+  .design li.with-icon:before {
+    position: absolute;
+    left: -40px;
+    top: 0;
+    content: '';
+    width: 30px;
+    height: 30px; }
+  .design li.with-icon.tablet:before {
+    background-image: url(../images/styles/ico_phone_tablet.png); }
+  .design li.with-icon.web:before {
+    background-image: url(../images/styles/ico_web.png); }
+  .design li.with-icon.action:before {
+    background-image: url(../images/styles/ico_action.png); }
+  .design li.with-icon.use:before {
+    background-image: url(../images/styles/ico_use.png); }
+
+/* figures and callouts */
+.figure {
+  position: relative; }
+  .figure.pad-below {
+    margin-bottom: 20px; }
+  .figure .figure-callout {
+    position: absolute;
+    color: #fff;
+    font-weight: 500;
+    font-size: 16px;
+    line-height: 23px;
+    text-align: center;
+    background: transparent url(../images/styles/callout.png) no-repeat scroll 50% 50%;
+    padding-right: 2px;
+    width: 30px;
+    height: 29px;
+    z-index: 1000; }
+    .figure .figure-callout.top {
+      top: -9px; }
+    .figure .figure-callout.right {
+      right: -5px; }
+
+.figure-caption {
+  margin: 0 10px 20px 0;
+  font-size: 14px;
+  line-height: 20px;
+  font-style: italic; }
+
+/* rows of figures */
+.figure-row {
+  font-size: 0;
+  line-height: 0;
+  /* to prevent space between figures */ }
+  .figure-row .figure {
+    display: inline-block;
+    vertical-align: top; }
+  .figure-row .figure + .figure {
+    margin-left: 10px;
+    /* reintroduce space between figures */ }
+
+/* video  containers */
+.framed-galaxynexus-land-span-13 {
+  background: transparent url(../images/styles/device_galaxynexus_blank_land_span13.png) no-repeat
+scroll top left;
+  padding: 42px 122px 62px 126px;
+  overflow: hidden; }
+  .framed-galaxynexus-land-span-13, .framed-galaxynexus-land-span-13 video,
+.framed-galaxynexus-land-span-13 img {
+    width: 512px;
+    height: 286px; }
+
+.framed-galaxynexus-port-span-9 {
+  background: transparent url(../images/styles/device_galaxynexus_blank_port_span9.png) no-repeat
+scroll top left;
+  padding: 95px 122px 107px 124px;
+  overflow: hidden; }
+  .framed-galaxynexus-port-span-9, .framed-galaxynexus-port-span-9 video,
+.framed-galaxynexus-port-span-9 img {
+    width: 274px;
+    height: 488px; }
+
+.framed-galaxynexus-port-span-5 {
+  background: transparent url(../images/styles/device_galaxynexus_blank_port_span5.png) no-repeat
+scroll top left;
+  padding: 75px 31px 76px 33px;
+  overflow: hidden; }
+  .framed-galaxynexus-port-span-5, .framed-galaxynexus-port-span-5 video,
+.framed-galaxynexus-port-span-5 img {
+    width: 216px;
+    height: 384px; }
+
+/* landing page disclosures */
+.landing-page-link {
+  text-decoration: none;
+  font-weight: 500;
+  color: #333333; }
+  .landing-page-link:after {
+    content: '';
+    background: transparent url(../images/styles/disclosure_right.png) no-repeat scroll 50% 50%;
+    width: 10px;
+    height: 10px;
+    display: inline-block;
+    margin-left: 5px; }
+
+/* tooltips */
+.tooltip-box {
+  position: absolute;
+  background-color: rgba(0, 0, 0, 0.9);
+  border-radius: 2px;
+  font-size: 14px;
+  line-height: 20px;
+  color: #fff;
+  padding: 6px 10px;
+  max-width: 250px;
+  z-index: 10000; }
+  .tooltip-box.below:after {
+    position: absolute;
+    content: '';
+    line-height: 0;
+    display: block;
+    top: -10px;
+    left: 5px;
+    border: 5px solid transparent;
+    border-bottom-color: rgba(0, 0, 0, 0.9); }
+
+/* video note */
+.video-instructions {
+  margin-top: 10px;
+  margin-bottom: 10px; }
+  .video-instructions:before {
+    content: '';
+    background: transparent url(../images/styles/ico_movie_inline.png) no-repeat scroll top left;
+    display: inline-block;
+    width: 12px;
+    height: 12px;
+    margin-right: 8px; }
+  .video-instructions:after {
+    content: 'Click device screen to replay movie.'; }
+
+/* download buttons */
+.download-button {
+  display: block;
+  margin-bottom: 5px;
+  text-decoration: none;
+  background-color: #33b5e5;
+  color: #fff !important;
+  font-weight: 500;
+  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12);
+  padding: 6px 12px;
+  border-radius: 2px; }
+  .download-button:hover, .download-button:focus {
+    background-color: #0099cc;
+    color: #fff !important; }
+  .download-button:active {
+    background-color: #006699; }
+
+/* UI tables and other things found in Writing style and Settings pattern */
+.ui-table {
+  width: 100%;
+  background-color: #282828;
+  color: #fff;
+  border-radius: 2px;
+  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
+  border-collapse: separate; }
+  .ui-table th,
+  .ui-table td {
+    padding: 5px 10px;
+    background-color: inherit; 
+    border:0;}
+  .ui-table thead th {
+    font-weight: bold; }
+  .ui-table tfoot td {
+    border-top: 1px solid #494949;
+    border-right: 1px solid #494949;
+    text-align: center; }
+    .ui-table tfoot td:last-child {
+      border-right: 0; }
+
+.layout-with-list-item-margins {
+  margin-left: 30px !important; }
+
+.emulate-content-left-padding {
+  margin-left: 10px; }
+
+.do-dont-label {
+  margin-bottom: 10px;
+  padding-left: 20px;
+  background: transparent none no-repeat scroll 0px 3px; }
+  .do-dont-label.bad {
+    background-image: url(../images/styles/ico_wrong.png); }
+  .do-dont-label.good {
+    background-image: url(../images/styles/ico_good.png); }
+    
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/***** PREVIOUSLY style.css ******************/
+
+
+
+
+
+@media screen, projection, print {
+[dir='rtl'] {
+    direction: rtl;
+}
+html {
+    line-height: 20px;
+}
+pre, table, input, textarea, code {
+    font-size: 1em;
+}
+address, abbr, cite {
+    font-style: normal;
+}
+[dir='rtl'] th {
+    text-align: right;
+}
+html[lang^=ja] blockquote, html[lang^=ja] q, html[lang^=ko] blockquote, html[lang^=ko] q,
+html[lang^=zh] blockquote, html[lang^=zh] q {
+    font-style: normal;
+}
+q {
+    font-style: italic;
+}
+fieldset, iframe, img {
+    border: 0;
+}
+img { 
+	-ms-interpolation-mode: bicubic;
+	vertical-align: middle;
+	max-width: 100%;
+}
+q {
+    quotes: none;
+}
+sup, sub {
+    font-size: 11px;
+    line-height: 0;
+}
+}
+
+@media screen, projection {
+
+table, fieldset {
+    margin: 0;
+}
+h1 {
+    color:#333;
+    font-size: 22px;
+    margin: 20px 0 20px;
+    padding:0 0 10px;
+}
+h1, h2 {
+    line-height: 32px;
+}
+h1.short {
+  margin-right:320px;
+}
+h1.short {
+  margin-right:320px;
+}
+h1.super {
+    font-size: 37px;	
+}
+h2 {
+    color:#333;
+    font-size: 20px;
+    margin: 20px 0 20px;
+    padding:0;
+}
+h3 {
+    color:#333;
+    font-size: 18px;
+}
+h3, h4 {
+    color:#333;
+    line-height: 20px;
+    margin: 10px 0;
+}
+h4 {
+	font-size: 16px;
+}
+h5 {
+	font-size: 14px;	
+}
+h5, h6 {
+	margin: 5px 0;
+}
+h6 {
+	font-size: 12px;	
+}
+hr { /* applied to the bottom of h2 elements */
+	height: 1px;
+	margin: 5px 0 20px;
+	border: 0;
+	background: #ccc;
+}
+p, pre, table, form {
+    margin: 0 0 15px;
+}
+small {
+	font-size: 11.5px;
+	color: #000;
+}
+ul, ol {
+    margin: 0 0 15px 18px;
+    padding: 0;
+}
+[dir='rtl'] ul, [dir='rtl'] ol {
+    margin: 10px 30px 10px 10px;
+}
+ul ul, ul ol, ol ul, ol ol {
+    margin-bottom: 0;
+    margin-top: 0;
+}
+li {
+  margin:0 0 4px;
+}
+dd {
+  margin:0 0 10px 30px;
+}
+dd p {
+  margin:10px 0 0;
+}
+ul p,
+ol p {
+  margin:10px 0 0;
+}
+pre strong, pre b, a strong, a b, a code {
+    color: inherit;
+}
+pre, code {
+    color: #060;
+    font: 14px/1.5 'courier new', courier, monospace;
+}
+code {
+    font-weight:bold;
+}
+
+legend {
+    display: none;
+}
+a:link, a:visited {
+  color: #258aaf;
+  text-decoration: none;
+}
+a:focus, a:hover, a:active {
+  color: #33B5E5;
+  text-decoration: none;
+}
+strong, b {
+  font-weight:bold;
+  color: #222;
+}
+table {
+  border-collapse: collapse;
+  border-spacing: 0;
+  border:0;
+  margin: .5em 1em 1em 0;
+  width:100%; /* consistent table widths; within IE's quirks */
+  background-color:#f7f7f7;
+}
+th, td {
+  padding: 4px 12px;
+  vertical-align: top;
+  text-align: left;
+}
+td {
+  background-color:inherit;
+  border:solid 1px #DDD;
+}
+th {
+  background-color: #999;
+  color: #fff;
+  border:solid 1px #DDD;
+  font-weight: normal;
+}
+tr:first-of-type th:first-of-type:empty {
+    visibility: hidden;
+}
+/* --------------------------------------------------------------------------
+Footer
+*/
+.line {
+    clear: both;
+    background: #acbc00;
+    background: -moz-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #acbc00),
+color-stop(50%, #acbc00), color-stop(50%, #bdde00), color-stop(100%, #bdde00));
+    background: -webkit-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: -o-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: -ms-linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    background: linear-gradient(top, #acbc00 0, #acbc00 50%, #bdde00 50%, #bdde00 100%);
+    height: 2px;
+    margin-top: 150px;
+    position: relative;
+    z-index: 11;
+}
+#footer {
+    font-size:11px;
+    clear: both;
+    color: #999;
+    padding: 15px 0;
+    margin-top:10px;
+    width:auto;
+}
+#footer-local ul {
+	list-style: none;
+	margin: 5px 0 30px 0;
+}
+#footer-local li {
+    display: inline;
+}
+#footer-local li+li:before {
+    content: '|';
+    padding: 0 3px;
+	color: #e5e5e5;
+}
+#footer-global {
+    padding: 10px 15px;
+	background: #f5f5f5;
+}
+#footer-global {
+    border-top: 1px solid #ebebeb;
+    font-size: 11.5px;
+    line-height: 1.8;
+    list-style: none;
+}
+#footer-global ul {
+    margin: 0;
+}
+#footer-global li {
+    display: inline;
+    font-weight: bold;
+}
+#footer-global li+li:before {
+    content: '¬?';
+    padding: 0 3px;
+}
+* html #footer-global li {
+    margin: 0 13px 0 0;
+}
+* [dir='rtl'] #footer-global li {
+    margin: 0 0 0 13px;
+}
+*+html #footer-global li {
+    margin: 0 13px 0 0;
+}
+*+[dir='rtl'] #footer-global li {
+    margin: 0 0 0 13px;
+}
+#footer-global li a {
+    font-weight: normal;
+}
+.locales {
+  margin: 10px 0 0 0px;
+}
+[dir='rtl'] .locales {
+    background-position: right center;
+    float: left;
+    padding: 0 24px 0 0;
+}
+.locales form {
+    margin: 0;	
+}
+.locales select, .sites select {
+  line-height: 3.08;
+  margin: 0px 0;
+  border: solid 1px #EBEBEB;
+  -webkit-appearance: none;
+  background: white url('../images/arrows-up-down.png') right center no-repeat;
+  height: 30px;
+  color: #222;
+  line-height: normal;
+  padding: 5px;
+  width: 230px;
+}
+}
+
+/* =============================================================================
+   Print Only
+   ========================================================================== */
+@media print {
+a {
+    color: inherit;
+}
+.nav-x, .nav-y {
+    display: none;
+}
+.str { color: #060; }
+.kwd { color: #006; font-weight: bold; }
+.com { color: #600; font-style: italic; }
+.typ { color: #404; font-weight: bold; }
+.lit { color: #044; }
+.pun { color: #440; }
+.pln { color: #000; }
+.tag { color: #006; font-weight: bold; }
+.atn { color: #404; }
+.atv { color: #060; }
+}
+
+/* =============================================================================
+   Columns
+   ========================================================================== */
+
+@media screen, projection, print {
+.full {
+	padding: 2.5em 0;
+	border-top: solid 1px #ddd;
+	border-bottom: solid 1px #ddd;
+	background: #f7f7f7;	
+}
+.wrap {
+	margin: 0 auto;
+	width: 940px;
+	clear: both;
+}
+.cols {
+    height: 1%;
+    margin: 0 -1.533742331288343558282%;
+    width: 103.06748466257669%}
+*+html .cols {
+    margin-bottom: 20px;
+}
+.cols:after {
+    clear: both;
+    content: ' ';
+    display: block;
+    height: 0;
+    visibility: hidden;
+}
+.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
+.col-13, .col-14, .col-15, .col-16 {
+    display: inline;
+	float: left;
+	margin-left: 10px;
+	margin-right: 10px;
+}
+/*
+* html .col-1, * html .col-2, * html .col-3, * html .col-4, * html .col-5, * html .col-6, * html
+.col-7, * html .col-8, * html .col-9, * html .col-10, * html .col-11, * html .col-12  {
+    margin: 0;
+    padding: 0 1.4% 20px;
+}
+[dir='rtl'] .col-1, [dir='rtl'] .col-2, [dir='rtl'] .col-3, [dir='rtl'] .col-4, [dir='rtl'] .col-5,
+[dir='rtl'] .col-6, [dir='rtl'] .col-7, [dir='rtl'] .col-8, [dir='rtl'] .col-9, [dir='rtl'] .col-10,
+[dir='rtl'] .col-11, [dir='rtl'] .col-12 {
+    float: right;
+}
+*/
+.col-1 { width: 40px }
+.col-2 { width: 100px }
+.col-3 { width: 160px }
+.col-4 { width: 220px }
+.col-5 { width: 280px }
+.col-6 { width: 340px }
+.col-7 { width: 400px }
+.col-8 { width: 460px }
+.col-9 { width: 520px }
+.col-10 { width: 580px }
+.col-11 { width: 640px }
+.col-12 { width: 700px }
+.col-13 { width: 760px }
+.col-14 { width: 820px }
+.col-15 { width: 880px }
+.col-16 { width: 940px }
+}
+
+.col-right {
+  margin-right:0px;
+}
+
+@media screen and (max-width:772px) {
+.col-5, .col-6, .col-7 {
+    clear: both;
+    width: 97.0238096%}
+}
+
+/* =============================================================================
+   Layout
+   ========================================================================== */
+@media screen, projection, print {
+
+/* --------------------------------------------------------------------------
+Header, Login, Nav-X, Search
+*/
+#header {
+	padding: 2.2em 0 0.2em 0;
+}
+#header:before, #header:after {
+	content: "";
+	display: table;
+	clear: both
+}
+.logo, .nav-x {
+    float: left;
+}
+.nav-x {
+    margin-top: -2px;
+	list-style-type: none;
+}
+.nav-x a {
+    color: #333;
+    font-size: 16px;
+}
+.design a.selected {
+    color: #33b5e5;
+}
+.develop a.selected {
+    color: #F80;
+}
+.distribute a.selected {
+    color: #9C0;
+}
+
+
+
+.nav-x li {
+    display: inline;
+    margin-right: 45px;
+}
+.search {
+	float: right;
+	position: relative;
+	width: 220px
+}
+.search .bottom, .search .left, .search .right {
+	position: absolute;
+	background-color: #a3a3a3;
+}
+.search .bottom {
+	width: 220px;
+	height: 1px;
+	top: 24px;
+	left: 0
+}
+.search .left, .search .right {	
+	height: 5px;
+	width: 1px
+}
+.search .left {	top: 19px; left: 0 }
+.search .right { top: 19px; right: 0 }
+.search form {
+	float: left;
+	margin-top: 2px;
+	width: inherit;
+}
+.search .close,
+#player-frame .close {
+  position: absolute;
+  right: 8px;
+  bottom: 4px;
+  width: 16px;
+  height: 16px;
+  margin: 0;
+  text-indent: -1000em;
+  background: url(../images/close.png) no-repeat 0 0;
+  z-index:9999;
+}
+.search .close:hover, .search .close:focus,
+#player-frame .close:hover, #player-frame .close:focus {
+  background-position: -16px 0;
+  cursor:pointer;
+}
+#player-frame .close {
+  top: 6px;
+}
+.search form input {
+	color: #999;
+	font-size: 1em;
+	width: inherit;
+	border: none;
+	margin: 0;
+	padding:0 0 0 6px;
+	z-index: 1500;
+	background-color: transparent
+}
+.search:hover .bottom, .search:hover .left, .search:hover .right {
+	background-color: #33b5e5;
+}
+.search:hover .icon {
+	background-position: -8px 0
+}
+.search form input:focus {
+	color: #222;
+	font-weight: bold;
+	outline:0;
+}
+/* Search Dropdown */
+.search-dropdown {
+	padding: 15px;
+	width: 192px;
+	border: solid 1px #c5c5c5;
+	background: #fff;
+	position: absolute;
+	top: 35px;
+	left: 0;
+	-moz-box-shadow: 0 0 10px rgba(0,0,0,0.2);
+	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.2);
+	box-shadow: 0  0 10px rgba(0,0,0,0.2)
+}
+.search-dropdown ul, .search-dropdown ul li {
+	list-style-type: none;
+	margin: 0;
+	padding: 0
+}
+.search-dropdown ul li {
+	clear: both	
+}
+.search-dropdown img {
+	float: left;
+	margin: 0 10px 10px 0
+}
+.search-dropdown h6 {
+	color: #222;
+	margin: 0;
+	line-height: normal
+}
+.search-dropdown .desc {
+	color: #999;
+	font-size: 11.5px;
+	line-height: normal;
+	margin: 0;
+}
+.search-dropdown li a:hover h6, .search-dropdown li a:hover .desc {
+	color: #33b5e5
+}
+/* --------------------------------------------------------------------------
+Buttons
+*/
+.button, a.button, .button-secondary, a.button-secondary {
+	border-image: initial;
+    -webkit-border-radius: 2px;
+    -moz-border-radius: 2px;
+    border-radius: 2px;
+    cursor: pointer;
+}
+.button, a.button {
+    background-color: #09c;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#2faddb), to(#09c));
+    background-image: -webkit-linear-gradient(top, #2faddb, #09c);
+    background-image: -moz-linear-gradient(top, #2faddb, #09c);
+    background-image: -ms-linear-gradient(top, #2faddb, #09c);
+    background-image: -o-linear-gradient(top, #2faddb, #09c);
+    background-image: linear-gradient(top, #2faddb, #09c);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#2faddb', EndColorStr='#0099cc',GradientType=0);
+    border: 1px solid #3990ab;
+    color: #fff;
+}
+.button-secondary, a.button-secondary {
+    background-color: #f3f3f3;
+    border: 1px solid #dcdcdc;
+    color: #444;
+}
+a.button, a.button:visited, a.button-secondary, a.button-secondary:visited {
+    height: 28px;
+    line-height: 28px;
+    margin-right: 16px;
+	font-weight: 400;
+    min-width: 54px;
+    outline: 0;
+    padding: 8px 15px;
+    text-align: center;
+}
+.button, .button-secondary {
+    height: 34px;
+    line-height: 34px;
+    margin-right: 16px;
+	font-weight: 400;
+    min-width: 54px;
+    outline: 0;
+    padding: 0 15px;
+    text-align: center;
+}
+.button:hover, a.button:hover {
+    border-color: #09c;
+    background-color: #4cadcb;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#5dbcd9), to(#4cadcb));
+    background-image: -webkit-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: -moz-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: -ms-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: -o-linear-gradient(top, #5dbcd9, #4cadcb);
+    background-image: linear-gradient(top, #5dbcd9, #4cadcb);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#5dbcd9',
+EndColorStr='#4cadcb',GradientType=0);
+    color: #fff !important;
+}
+.button:active, a.button:active {
+    background-color: #1e799a;
+    background-image: none;
+    border-color: #30b7e6;
+}
+.button-secondary:hover, a.button-secondary:hover {
+    border-color: #dbdbdb;
+    background-color: #f3f3f3;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));
+    background-image: -webkit-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -moz-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -ms-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -o-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: linear-gradient(top, #f9f9f9, #ececec);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f9f9f9',
+EndColorStr='#ececec');
+    color: #33B5E5 !important;
+}
+.button-secondary:active, a.button-secondary:active {
+    border-color: #dadada;
+	background: #ebebeb; /* Old browsers */
+	/* IE9 SVG, needs conditional override of 'filter' to 'none' */
+	background:
+url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/
+Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0Jv
+eD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+
+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIg
+eDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ViZWJl
+YiIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjEwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2ZhZmFmYSIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjkwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+
+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNmY2ZjYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFy
+R3JhZGllbnQ+
+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIg
+Lz4KPC9zdmc+);
+	background: -moz-linear-gradient(top,  #ebebeb 0%, #f9f9f9 5%, #fafafa 50%, #f9f9f9 90%,
+#ffffff 100%); /* FF3.6+ */
+	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ebebeb),
+color-stop(5%,#f9f9f9), color-stop(50%,#fafafa), color-stop(90%,#f9f9f9), color-stop(100%,#ffffff));
+/* Chrome,Safari4+ */
+	background: -webkit-linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9
+90%,#ffffff 100%); /* Chrome10+,Safari5.1+ */
+	background: -o-linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9 90%,#ffffff
+100%); /* Opera 11.10+ */
+	background: -ms-linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9 90%,#ffffff
+100%); /* IE10+ */
+	background: linear-gradient(top,  #ebebeb 0%,#f9f9f9 5%,#fafafa 50%,#f9f9f9 90%,#ffffff
+100%); /* W3C */
+	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb',
+endColorstr='#ffffff',GradientType=0 ); /* IE6-8 */
+	-webkit-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	-moz-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05); 
+	color: #258AAF !important;
+}
+.button.big {
+  font-size:20px;
+  display:inline-block;
+}
+
+.button.disabled,
+.button.disabled:hover,
+.button.disabled:active {
+  background:#ebebeb;
+  color:#999;
+  border-color:#999;
+  cursor:default;
+}
+
+.training-nav-top a.button-secondary,
+.training-nav-bottom a.button-secondary {
+  display:block;
+  float:left;
+  margin:0;
+  width:130px;
+  text-transform:uppercase;
+  font-weight:bold;
+  
+    background-color: #f3f3f3;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));
+    background-image: -webkit-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -moz-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -ms-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: -o-linear-gradient(top, #f9f9f9, #ececec);
+    background-image: linear-gradient(top, #f9f9f9, #ececec);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f9f9f9',
+EndColorStr='#ececec');
+    color: #33B5E5;
+}
+
+.training-nav-top a.button-secondary:hover,
+.training-nav-bottom a.button-secondary:hover {
+    background-color: #09c;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#2faddb), to(#09c));
+    background-image: -webkit-linear-gradient(top, #2faddb, #09c);
+    background-image: -moz-linear-gradient(top, #2faddb, #09c);
+    background-image: -ms-linear-gradient(top, #2faddb, #09c);
+    background-image: -o-linear-gradient(top, #2faddb, #09c);
+    background-image: linear-gradient(top, #2faddb, #09c);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#2faddb', EndColorStr='#09c');
+    border: 1px solid #3990ab;
+    color: #fff !important;
+}
+
+.training-nav-top a.button-secondary.last,
+.training-nav-bottom a.button-secondary.last {
+  border-left:0;
+}
+
+.training-nav-top a.button-secondary.double-size,
+.training-nav-bottom a.button-secondary.double-size {
+  width:291px;
+}
+
+.training-nav-top,
+.training-nav-bottom {
+  float:right;
+  margin:0 0 0 20px;
+}
+
+.training-nav-bottom {
+  padding:0 0 20px;
+}
+
+#tb-wrapper,
+#qv-wrapper {
+  float:right;
+  clear:right;
+  margin:-27px 0 0 20px; /* negative top-margin to counter the content-header bottom margin */
+  padding:0 0 20px;
+}
+
+#tb,
+#qv {
+  font-size:13px;
+  line-height:18px;
+  width:238px;
+  border:1px solid #ccc;
+  float:right;
+}
+
+#tb {
+  width:278px;
+}
+
+#tb h2,
+#qv h2 {
+  margin:10px 15px;
+  padding:0;
+  text-transform:uppercase;
+  border-bottom:1px solid gainsboro;
+}
+
+#tb *,
+#qv * {
+  font-size:inherit;
+}
+
+#tb .download-box {
+  padding:0 0 0 15px;
+}
+
+#tb .download-box .filename {
+  font-size:11px;
+  margin:4px 4px 10px;
+  color:#666;
+}
+
+
+/* Dev guide quicknav */
+
+.sidebox-wrapper {
+  float:right;
+  clear:right;
+  margin:0 0 0 20px;
+  padding:0 0 20px;
+}
+
+.sidebox {
+  width:226px;
+  font-size:13px;
+  line-height:18px;
+  border-left:4px solid #99CC00;
+  float:right;
+  padding:0 0 0 10px;
+}
+
+.sidebox h2,
+.sidebox h3,
+.sidebox h4,
+.sidebox h5 {
+  font-weight:bold;
+  margin:0 0 10px;
+}
+
+.sidebox * {
+  font-size:inherit;
+}
+
+#tb ol,
+#tb ul,
+#qv ul {
+  margin:0 15px 10px 35px;
+}
+
+#qv ol {
+  list-style:none;
+  margin:0 15px 15px;
+  font-size:inherit;
+  line-height:inherit;
+}
+
+#tb ol ol,
+#tb ul ul,
+#qv ol ol,
+#qv ul ul,
+.sidebox ol ol,
+.sidebox ul ul {
+  margin-bottom:0;
+}
+
+#qv ol ol {
+  margin:3px 0 3px 15px;
+}
+
+.sidebox p,
+#qv p,
+#tb p {
+  margin: 0 0 10px;
+}
+
+
+/* --------------------------------------------------------------------------
+Form
+*/
+.article form {
+    margin: 0 0 20px;
+}
+.article form .form-required {
+    color: #dd4b39;
+}
+.article form fieldset {
+    margin: 0 0 20px;
+    padding: 0;
+}
+.article form legend {
+    display: block;
+    line-height: 1.5;
+    margin: 0;
+    padding: 0;
+}
+/*
+.article form ol, .article form ul {
+    margin: 0 0 0 1em;
+    padding: 0 0 0 1em;
+}
+[dir='rtl'] .article form ol, [dir='rtl'] .article form ul {
+    margin: 0 1em 0 0;
+    padding: 0 1em 0 0;
+}
+.article form ol ul, .article form ul ul, [dir='rtl'] .article form ol ul, [dir='rtl'] .article form
+ul ul {
+    list-style: none;
+    margin: 0;
+    padding: 0;
+}
+.article form li {
+    margin: 0 0 20px;
+}
+.article form li li {
+    margin: 0 0 5px;
+}
+*/
+.article form label {
+    display: block;
+    margin: 0 0 5px;
+    padding: 0;
+}
+.article form input[type='text'], .article form select, .article form textarea, .article form
+.checkbox-group, .article form .radio-group {
+    margin-bottom: 15px;
+}
+.checkbox-group input {
+	width: 13px;
+	height: 13px;
+	background: #fff;
+	border: solid 1px #c6c6c6;
+	float: left;
+}
+.article form .checkbox-group, .article form .radio-group {
+	display: block
+}
+.article form select {
+    border: solid 1px #ebebeb;
+    border-top-color: #ddd;
+    -webkit-appearance: none;
+    background: #f3f3f3 url(../images/arrows-up-down.png) right center no-repeat;
+    height: 30px;
+    color: #222;
+    line-height: normal;
+    padding: 5px;
+    width: 130px;
+}
+    
+.article form .browse .browse-msg {
+	font-size: 11.5px;	
+}
+.article form .browse .button-secondary {
+	height: auto;
+	line-height: 25px;
+	font-size: 11px;
+	padding: 0 8px;
+	margin: 0 10px 15px 0;
+}
+.article form input[type='text'], .article form textarea {
+    border: 1px solid #ebebeb;
+    border-top-color: #dcdcdc;
+    color: #222;
+    line-height: normal;
+    padding: 6px 10px;
+    width: 300px;	
+}
+.article form textarea {
+    height: 150px;
+}
+.article form input[type='text']:focus, .article form textarea:focus {
+    border-color: #33B5E5;
+    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    -o-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
+    outline: 0;
+}
+.article form input[disabled], .article form textarea[disabled], .article form label.form-disabled {
+    color: #999;
+}
+.article form input[type='text'][disabled], .article form textarea[disabled] {
+    background-color: #ebebeb;
+}
+form .form-error input[type='text'], form .form-error textarea {
+    border-color: #dd4b39;
+	margin-right: 20px;
+}
+.aside {
+    -moz-border-radius: 2px;
+    -webkit-border-radius: 2px;
+    border-radius: 2px;
+    margin: 10px 0;
+    padding: 20px;
+	color: #666;
+    position: relative;
+	background: #f9f9f9;
+}
+/*
+.aside, .notification, .promo {
+    -moz-border-radius: 2px;
+    -webkit-border-radius: 2px;
+    border-radius: 2px;
+    margin: 10px 0;
+    padding: 10px;
+    position: relative;
+}
+.aside>:first-child, .notification>:first-child, .promo>:first-child {
+    margin-top: 0;
+}
+.aside>:last-child, .notification>:last-child, .promo>:last-child {
+    margin-bottom: 0;
+}
+.aside {
+    background: #f9f9f9;
+}
+.notification {
+    background: #fffbe4;
+    border-color: #f8f6e6;
+}
+.promo {
+    background: #f6f9ff;
+    border-color: #eff2f9;
+}
+*/
+/* --------------------------------------------------------------------------
+Code Style
+*/
+pre {
+	margin: 1em 0;
+	padding: 1em;
+	overflow: auto;
+	border: solid 1px #ddd;
+	background: #f7f7f7;	
+}
+.str { color: #080; }
+.kwd { color: #008; }
+.com { color: #800; }
+.typ { color: #606; }
+.lit { color: #066; }
+.pun { color: #660; }
+.pln { color: #000; }
+.tag { color: #008; }
+.atn { color: #828; }
+.atv { color: #080; }
+.dec { color: #606; }
+
+/* --------------------------------------------------------------------------
+Three-Pane
+*/
+/* Package Nav & Classes Nav */
+.three-pane {
+	position: relative;
+	border-top: solid 1px #ebebeb;
+}
+#packages-nav .js-pane,
+#classes-nav .js-pane {
+  overflow:visible;
+}
+#packages-nav {
+        height:270px;
+	max-height: inherit;
+	overflow: hidden;
+	position: relative;	
+}
+#classes-nav {
+	overflow: hidden;
+	position: relative;	
+}
+#packages-nav ul, #classes-nav ul {
+	list-style-type: none;
+	margin: 10px 0 20px 0;
+	padding: 0;	
+}
+#classes-nav li {
+	font-weight: bold;
+	margin: 5px 0;
+}
+#packages-nav li,
+#classes-nav li li {
+	margin: 0;
+}
+#packages-nav li a, #packages-nav li a:active, #packages-nav li a:visited,
+#classes-nav li a, #classes-nav li a:active, #classes-nav li a:visited {
+	padding: 0 0 0 4px;
+}
+#packages-nav li a, #packages-nav li a:active, #packages-nav li a:visited,
+#classes-nav li li a, #classes-nav li li a:active, #classes-nav li li a:visited,
+#nav-tree li a, #nav-tree li a:active, #nav-tree li a:visited {
+	color: #222;
+	font-weight: normal;	
+}
+#packages-nav li a, #packages-nav li a:active, #packages-nav li a:visited,
+#classes-nav li li a, #classes-nav li li a:active, #classes-nav li li a:visited {
+	display: block;
+}
+#packages-nav li.selected a, #packages-nav li.selected a:active, #packages-nav li.selected
+a:visited,
+#classes-nav li li.selected a, #classes-nav li li.selected a:active, #classes-nav li li.selected
+a:visited,
+#nav-tree li div.selected {
+    font-weight: 500;
+    color: #0099cc;
+    background-color:#fff; }
+  #packages-nav li.selected ul li a,
+  #classes-nav li.selected ul li a {
+  /* don't highlight child items */
+    color: #555555; }
+#nav-tree li div.selected a {
+    font-weight: 500;
+    color: #0099cc;
+}
+#nav-swap {
+  height:30px;
+  border-top:1px solid #ccc;
+}
+#nav-swap a {
+  display:inline-block;
+  height:100%;
+  color: #222;
+  font-size: 12px;
+  padding: 5px 0 5px 5px;
+}
+
+#nav-swap .fullscreen {
+  float: right;
+  width: 24px;
+  height: 24px;
+  text-indent: -1000em;
+  padding:0;
+  margin:3px 5px 0;
+  background: url(../images/fullscreen.png) no-repeat -24px 0;
+}
+#nav-swap .fullscreen.disabled {
+  background-position: 0 0;
+}
+#nav-swap .fullscreen:hover, 
+#nav-swap .fullscreen:focus {
+  cursor:pointer;
+}
+
+
+/* nav tree */
+#side-nav, #devdoc-nav, #swapper,
+#nav-tree, #tree-list {
+  overflow:hidden;
+  margin-left:0;
+}
+
+#nav-tree ul {
+  list-style:none;
+  padding:0;
+  margin:10px 0;
+}
+
+#nav-tree ul li div {
+  padding:0 0 0 4px;
+}
+
+#side-nav #nav-tree ul li a,
+#side-nav #nav-tree ul li span.no-children {
+  padding: 0;
+  margin: 0;
+}
+
+#nav-tree .plus {
+  margin: 0 3px 0 0;
+}
+
+#nav-tree ul ul {
+  list-style: none;
+  margin: 0;
+  padding: 0 0 0 0;
+}
+
+#nav-tree ul li {
+  margin: 0;
+  padding: 0 0 0 0;
+  white-space: nowrap;
+}
+
+#nav-tree .children_ul {
+  padding:0;
+  margin:0;
+}
+#nav-tree .children_ul li div {
+  padding:0 0 0 10px;
+}
+#nav-tree .children_ul .children_ul li div {
+  padding:0 0 0 20px;
+}
+
+#nav-tree a.nolink {
+  color: #222;
+  text-decoration: none;
+}
+
+#nav-tree span.label {
+  width: 100%;
+}
+
+#nav-tree {
+  overflow-x: auto;
+  overflow-y: scroll;
+  outline:0;
+}
+
+
+/* Content */
+#doc-col {
+  margin-right:0;
+}
+#doc-content-container {
+	margin-left: 291px	
+}
+#doc-header, #doc-content {
+	padding: 1em 2em;
+}
+#doc-header {
+	background: #f7f7f7;	
+}
+#doc-header h1 {
+	line-height: 0;
+	margin-bottom: 15px;
+}
+#api-info-block {
+	float: right;
+	font-weight: bold;
+}
+#api-info-block a, #api-info-block a:active, #api-info-block a:visited {
+	color: #222;
+}
+#api-info-block a:hover, #api-info-block a:focus {
+	color: #33B5E5;
+}
+#api-nav-header {
+  height:19px; /* plus 16px padding = 35; same as #nav li */
+  font-size:14px;
+  padding: 8px 0;
+  margin: 0;
+  border-bottom: 1px solid #CCC;
+  background:#e9e9e9;
+  background: rgba(0, 0, 0, 0.05); /* matches #nav li.expanded */
+
+}
+#api-nav-title {
+  padding:0 5px;
+  white-space:nowrap;
+}
+
+#api-level-toggle {
+  float:right;
+  padding:0 5px;
+}
+
+#api-level-toggle label {
+  margin:0;
+  vertical-align:top;
+  line-height: 19px;
+  font-size:13px;
+  height: 19px;
+}
+
+#api-level-toggle .select-wrapper {
+  width: 35px;
+  display: inline-block;
+  overflow: hidden;
+}
+#api-level-toggle select {
+  border: 0;
+  appearance:none;
+  -moz-appearance:none;
+  -webkit-appearance: none;
+  background: transparent url(../images/arrows-up-down.png) 23px 5px no-repeat;
+  color: #222;
+  height: 19px;
+  line-height: 19px;
+  padding: 0;
+  margin:1px 0 0 0;
+  width:150%;
+  font-size:13px;
+  vertical-align:top;
+  outline:0;
+}
+
+
+/* Toggle for revision notes and stuff */
+div.toggle-content.closed .toggle-content-toggleme {
+  display:none;
+}
+
+#jd-content img.toggle-content-img {
+  margin:0 5px 5px 0;
+}
+div.toggle-content > p {
+  padding:0 0 5px;
+}
+
+
+/* API LEVEL FILTERED MEMBERS */
+
+.absent,
+.absent a:link,
+.absent a:visited,
+.absent a:hover,
+.absent * {
+  color:#bbb !important;
+  cursor:default !important;
+  text-decoration:none !important;
+}
+#devdoc-nav li.absent.selected,
+#devdoc-nav li.absent.selected *,
+#devdoc-nav div.label.absent.selected,
+#devdoc-nav div.label.absent.selected * {
+  background-color:#eaeaea !important;
+}
+.absent h4.jd-details-title,
+.absent h4.jd-details-title * {
+  background-color:#f6f6f6 !important;
+}
+.absent img {
+  opacity: .3;
+  filter: alpha(opacity=30);
+  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
+}
+
+
+
+
+
+
+
+
+
+/* JQUERY RESIZABLE STYLES */
+.ui-resizable { position: relative; }
+.ui-resizable-handle { position: absolute; display: none; font-size: 0.1px; z-index:1; }
+.ui-resizable .ui-resizable-handle { display: block; border-bottom: 1px solid #e4e4e4; }
+/*body .ui-resizable-disabled .ui-resizable-handle { display: none; }
+body .ui-resizable-autohide .ui-resizable-handle { display: none; }*/
+.ui-resizable-s { cursor: s-resize; height: 10px; width: 100% !important; bottom: -11px; left: 0;
+border-bottom: solid 1px #ededed;
+  background: #f7f7f7 url("../images/resizable-s2.png") no-repeat scroll center center; }
+/*
+.ui-resizable-e { 
+cursor: e-resize; width: 10px; right: 0; top: 0; height: 100%; border-right: solid
+1px #ededed;background: #f7f7f7 url("../images/resizable-e2.png") no-repeat scroll center center; }
+*/
+
+/* --------------------------------------------------------------------------
+Lightbox
+*/
+.lightbox {	
+	width: 769px;
+	padding: 1.5em;
+	margin: 0 auto;
+	border: solid 1px #dcdcdc;
+	background: #fff;
+	-moz-box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
+	-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
+	box-shadow: 1px 1px 5px rgba(0,0,0,0.1)
+}
+.lightbox .header {
+	float: left;
+	width: 720px;
+	margin: -10px 20px 10px 0;	
+}
+.lightbox .close {
+	float: right;
+	width: 10px;
+	height: 10px;
+	margin: -10px -10px 10px 0;
+	text-indent: -1000em;
+	background: url(../images/close.png) no-repeat 0 0;
+}
+.lightbox .close:hover, .lightbox .close:focus {
+	background-position: -10px 0;
+}
+
+/* --------------------------------------------------------------------------
+Misc
+*/
+
+
+.clearfix:before, .clearfix:after {
+	content: "";
+	display: table
+}
+.clearfix:after {
+	clear: both
+}
+.clearfix {
+	*zoom: 1
+}
+table.blank th, table.blank td {
+    border: 0;
+	background: none
+}
+.caption {
+	margin: 0.5em 0 2em 0;
+	color: #000;
+	font-size: 11.5px;	
+}
+
+.nolist {
+  list-style:none;
+  padding:0;
+  margin:0 0 1em 1em;
+}
+
+.nolist li {
+  padding:0 0 2px;
+  margin:0;
+}
+
+pre.classic {
+  background-color:transparent;
+  border:none;
+  padding:0;
+}
+
+p.img-caption {
+  margin: -10px 0 20px;
+  font-size:13px;
+  color:#666;
+}
+
+div.figure {
+  float:right;
+  clear:right;
+  margin:10px 0 0 0;
+  padding:0 0 0 20px;
+  /* width must be defined w/ an inline style matching the image width */
+}
+
+p.table-caption {
+  margin: 0 0 4px 0; /* matches default table left-margin */
+  font-size:13px;
+  color:#666;
+}
+
+p.note, div.note, 
+p.caution, div.caution, 
+p.warning, div.warning {
+  padding: 0 0 0 10px;
+  border-left: 4px solid;
+}
+
+p.note {
+  border-color: #258AAF;
+}
+
+p.caution {
+  border-color: #FF8800;
+}
+
+p.warning {
+  border-color: #ff4443;
+}
+
+div.note.design {
+  border-left: 4px solid #33B5E5;
+}
+
+div.note.develop {
+  border-left: 4px solid #F80;
+}
+
+div.note.distribute {
+  border-left: 4px solid #9C0;
+}
+
+.note p, .caution p, .warning p {
+  margin:0 0 5px;
+}
+
+.note p:last-child, .caution p:last-child, .warning p:last-child {
+  margin-bottom:0;
+}
+
+blockquote {
+  display:block;
+  float:right;
+  width:280px;
+  font-size:20px;
+  font-style:italic;
+  line-height:24px;
+  color:#33B5E5;
+  margin:0 0 20px 30px;
+}
+
+div.design-announce p {
+  margin:0 0 10px;
+}
+
+#devdoc-nav a.totop {
+  display:block;
+  top:0;
+  width:inherit;
+  background: transparent url(../images/styles/gototop.png) no-repeat scroll 50% 50%;
+  text-indent:-9999em;
+}
+#devdoc-nav a.totop {
+  position:fixed;
+  display:none;
+}
+#devdoc-nav a.totop:hover {
+  background-color:#33B5E5;
+}
+
+.content-footer a.totop {
+  text-transform:uppercase;
+  line-height:30px;
+}
+
+/* -----------------------------------------------
+Dialog box for popup messages 
+*/
+
+div.dialog {
+  height:0;
+  margin:0 auto;
+}
+
+div.dialog>div {
+  z-index:99;
+  position:fixed;
+  margin:70px 0;
+  width: 391px;
+  height: 200px;
+  background: #F7F7F7;
+-moz-box-shadow: 0 0 15px rgba(0,0,0,0.5);
+-webkit-box-shadow: 0 0 15px rgba(0,0,0,0.5);
+box-shadow: 0 0 15px rgba(0,0,0,0.5);
+}
+/* IE6 can't position fixed */
+* html div.dialog div { position:absolute; }
+
+
+div#deprecatedSticker {
+  display:none;
+  z-index:99;
+  position:fixed;
+  right:15px;
+  top:114px;
+  margin:0;
+  padding:1em;
+  background:#FFF;
+  border:1px solid #dddd00;
+  box-shadow:-5px 5px 10px #ccc;
+  -moz-box-shadow:-5px 5px 10px #ccc;
+  -webkit-box-shadow:-5px 5px 10px #ccc;
+}
+
+div#naMessage {
+  display:none;
+  width:555px;
+  height:0;
+  margin:0 auto;
+}
+
+div#naMessage div {
+  z-index:99;
+  width:450px;
+  position:fixed;
+  margin:50px 0;
+  padding:4em 4em 3em;
+  background:#FFF;
+  border:1px solid #999;
+  box-shadow:-10px 10px 40px #888;
+  -moz-box-shadow:-10px 10px 40px #888;
+  -webkit-box-shadow:-10px 10px 40px #888;
+}
+/* IE6 can't position fixed */
+* html div#naMessage div { position:absolute; }
+
+div#naMessage strong {
+  font-size:1.1em;
+}
+
+
+/* --------------------------------------------------------------------------
+Slideshow Controls & Next/Prev 
+*/
+.slideshow-next, .slideshow-prev {	
+	width: 20px;
+	height: 36px;
+	text-indent: -1000em;
+}
+.slideshow-container {
+	margin: 2em 0;
+}
+.slideshow-container:before, .slideshow-container:after {
+	content: "";
+	display: table;
+	clear: both;
+}
+a.slideshow-next, a.slideshow-next:visited {
+
+	float: right;
+
+	background: url(../images/arrow-right.png) no-repeat 0 0
+
+}
+
+a.slideshow-prev, a.slideshow-prev:visited {
+
+	float: left;	
+
+	background: url(../images/arrow-left.png) no-repeat 0 0
+
+}
+
+.slideshow-next:hover, .slideshow-prev:hover, .slideshow-next:focus, .slideshow-prev:focus {
+
+	background-position: 0 -36px	
+
+}
+
+.slideshow-next:active, .slideshow-prev:active {
+
+	background-position: 0 -72px	
+
+}
+.slideshow-nav {
+	width: 74px;
+	margin: 0 auto;		
+}
+.slideshow-nav a, .slideshow-nav a:visited {
+	display: inline-block;
+	width: 12px;
+	height: 12px;
+	margin: 0 2px 20px 2px;
+	background: #ccc;
+	-webkit-border-radius: 50%;
+	-moz-border-radius: 50%;
+	border-radius: 50%;
+}
+.slideshow-nav a:hover, .slideshow-nav a:focus {
+
+	background: #33B5E5
+}
+
+.slideshow-nav a:active {
+
+	background: #1e799a;
+	background: #ebebeb;	
+	-webkit-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	-moz-box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+	box-shadow: inset 0px 0px 5px 2px rgba(0, 0, 0, .05);
+}
+.slideshow-nav a.active, .slideshow-nav a.active:active, .slideshow-nav a.active:visited {
+	background: #33B5E5
+}
+/* --------------------------------------------------------------------------
+Tabs
+*/
+ul.tabs {
+	padding: 0;
+	margin: 2em 0 0 0;	
+}
+ul.tabs:before, ul.tabs:after {
+	content: "";
+	display: table;
+	clear: both;
+}
+ul.tabs li {
+	list-style-type: none;
+	float: left;	
+}
+ul.tabs li a, ul.tabs li a:active, ul.tabs li a:visited {
+	display: block;
+	height: 36px;
+	line-height: 36px;
+	padding: 0 15px;
+	margin-right: 2px;
+	color: #222;
+	-moz-border-radius-topleft: 2px;
+	-moz-border-radius-topright: 2px;
+	-moz-border-radius-bottomright: px;
+	-moz-border-radius-bottomleft: px;
+	-webkit-border-radius: 2px 2px px px;
+	border-radius: 2px 2px px px; 
+	border-top: solid 1px #ebebeb;
+	border-left: solid 1px #ebebeb;
+	border-right: solid 1px #ebebeb;
+	background-color: #fff;
+    background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#fafafa));
+    background-image: -webkit-linear-gradient(top, #ffffff, #fafafa);
+    background-image: -moz-linear-gradient(top, #ffffff, #fafafa);
+    background-image: -ms-linear-gradient(top, #ffffff, #fafafa);
+    background-image: -o-linear-gradient(top, #ffffff, #fafafa);
+    background-image: linear-gradient(top, #ffffff, #fafafa);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',
+EndColorStr='#fafafa');
+}
+ul.tabs li a:hover {
+	color: #33B5E5;	
+}
+ul.tabs li a.selected {
+	height: 37px;
+	color: #33B5E5;
+	background-color: #f7f7f7;
+	background-image: none;
+	border-color: #ddd;
+}
+.tab-content {
+	padding: 1.2em;
+	margin: -1px 0 2em 0;
+	-webkit-border-radius: 2px;
+    -moz-border-radius: 2px;
+    border-radius: 2px;
+	border: solid 1px #ddd;
+	background: #f7f7f7;
+}
+/* --------------------------------------------------------------------------
+Feature Boxes
+*/
+.feature-box {
+  width: 291px;
+  height: 200px;
+  position: relative;
+  background: #F7F7F7;
+}
+.box-border .top, .box-border .bottom, .box-border .left, .box-border .right {
+	z-index: 100;
+	position: absolute;
+	background-color: #aaa;
+}
+.box-border .top, .box-border .bottom {
+	width: 291px;
+	height: 1px;
+}
+.dialog .box-border .top,
+.dialog .box-border .bottom { width:391px; }
+
+.box-border .left, .box-border .right {	
+	width: 1px;
+	height: 8px;		
+}
+.box-border .top { top: 0; left: 0 }
+.box-border .top .left { top: 1px; left: 0 }
+.box-border .top .right { top: 1px; right: 0 }
+.box-border .bottom .left { top: -8px; left: 0 }
+.box-border .bottom { top: 200px; left: 0 }
+.box-border .bottom .right { top: -8px; right: 0 }
+
+.feature-box h4,
+.dialog h4 {
+    margin: 15px 18px 10px;
+    padding:0;
+}
+
+.feature-box p,
+.dialog p {
+    margin: 10px 18px;
+    padding:0;
+}
+.feature-box .link,
+.dialog .link {
+    border-top: 1px solid #dedede;
+    bottom: 0;
+    position: absolute;
+    width: inherit;
+}
+.feature-box a, .feature-box h4,
+.dialog a, .dialog h4 {
+    -webkit-transition: color .4s ease;
+    -moz-transition: color .4s ease;
+    -o-transition: color .4s ease;
+    transition: color .4s ease;
+}
+.feature-box:hover {
+	cursor: pointer;	
+}
+.feature-box:hover .box-border .top, .feature-box:hover .box-border .bottom, .feature-box:hover
+.left, .feature-box:hover .right {	
+	background-color: #33B5E5;
+}
+.feature-box:hover h4, .feature-box:hover a {
+	color: #33B5E5;
+}
+/* --------------------------------------------------------------------------
+Page-Specific Styles
+*/
+.colors { 
+	position: relative;
+	float: left;
+	width: 92px;
+	margin: 40px 0 20px;
+}
+.colors div {
+	color: #fff;
+	font-size: 11.5px;
+	width: 82px;
+	height: 82px;
+	margin-top:-30px;
+	line-height: 82px;
+	text-align: center;
+	border: solid 5px #fff;
+	-webkit-border-radius: 50%;
+	-moz-border-radius: 50%;
+	border-radius: 50%;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* ########### REFERENCE DOCS ################## */
+
+#packages-nav h2,
+#classes-nav h2 {
+  font-size:18px;
+  margin:0;
+  padding:0 0 0 4px;
+}
+
+#jd-header {
+  padding: 0 0 5px;
+  margin: 20px 0 10px;
+  font-size:13px;
+  border-bottom:solid 1px #ccc;
+}
+
+#jd-header h1 {
+  margin:0;
+  padding:0;
+}
+
+/* page-top-right container for reference pages (holds
+links to summary tables) */
+#api-info-block {
+  font-size:13px;
+  margin:20px 0 0;
+  padding:0 10px 6px;
+  font-weight:normal;
+  float:right;
+  text-align:right;
+  color:#999;
+  max-width:70%;
+}
+
+#api-info-block div.api-level {
+  font-weight:bold;
+  font-size:inherit;
+  float:none;
+  color:#222;
+  padding:0;
+  margin:0;
+}
+
+/* inheritance table */
+.jd-inheritance-table {
+  border-spacing:0;
+  margin:0;
+  padding:0;
+  font-size:13px;
+  background-color:transparent;
+}
+.jd-inheritance-table tr td {
+  border: none;
+  margin: 0;
+  padding: 0;
+  background-color:transparent;
+}
+.jd-inheritance-table .jd-inheritance-space {
+  font-weight:bold;
+  width:1em;
+}
+.jd-inheritance-table .jd-inheritance-interface-cell {
+  padding-left: 17px;
+}
+
+
+
+.jd-sumtable a {
+  text-decoration:none;
+}
+
+.jd-sumtable a:hover {
+  text-decoration:underline;
+}
+
+/* the link inside a sumtable for "Show All/Hide All" */
+.toggle-all {
+  display:block;
+  float:right;
+  font-weight:normal;
+  font-size:0.9em;
+}
+
+/* adjustments for in/direct subclasses tables */
+.jd-sumtable.jd-sumtable-subclasses {
+  margin: 1em 0 0 0;
+  max-width:968px;
+  background-color:transparent;
+  font-size:13px;
+}
+
+/* extra space between end of method name and open-paren */
+.sympad {
+  margin-right: 2px;
+}
+
+/* right alignment for the return type in sumtable */
+.jd-sumtable .jd-typecol {
+  text-align:right;
+}
+
+/* adjustments for the expando table-in-table */
+.jd-sumtable-expando {
+  margin:.5em 0;
+  padding:0;
+}
+
+/* a div that holds a short description */
+.jd-descrdiv {
+  padding:3px 1em 0 1em;
+  margin:0;
+  border:0;
+}
+
+#jd-content img.jd-expando-trigger-img {
+  padding:0 4px 4px 0;
+  margin:0;
+}
+
+.jd-sumtable-subclasses div#subclasses-direct,
+.jd-sumtable-subclasses div#subclasses-indirect {
+  margin:0 0 0 13px;
+}
+
+
+
+/********* MEMBER REF *************/
+
+
+.jd-details {
+/*  border:1px solid #669999;
+  padding:4px; */
+  margin:0 0 1em;
+}
+
+/* API reference: a container for the
+.tagdata blocks that make up the detailed
+description */
+.jd-details-descr {
+  padding:0;
+  margin:.5em .25em;
+}
+
+/* API reference: a block containing
+a detailed description, a params table,
+seealso list, etc */
+.jd-tagdata {
+  margin:.5em 1em;
+}
+
+.jd-tagdata p {
+  margin:0 0 1em 1em;
+}
+
+/* API reference: adjustments to
+the detailed description block */
+.jd-tagdescr {
+  margin:.25em 0 .75em 0;
+}
+
+.jd-tagdescr ol,
+.jd-tagdescr ul {
+  margin:0 2.5em;
+  padding:0;
+}
+
+.jd-tagdescr table,
+.jd-tagdescr img {
+  margin:.25em 1em;
+}
+
+.jd-tagdescr li {
+margin:0 0 .25em 0;
+padding:0;
+}
+
+/* API reference: heading marking
+the details section for constants,
+attrs, methods, etc. */
+h4.jd-details-title {
+  font-size:1.15em;
+  background-color: #E2E2E2;
+  margin:1.5em 0 .6em;
+  padding:3px 95px 3px 3px; /* room for api-level */
+}
+
+h4.jd-tagtitle {
+  margin:0;
+}
+
+h4 .normal {
+  font-weight:normal;
+}
+
+/* API reference: heading for "Parameters", "See Also", etc.,
+in details sections */
+h5.jd-tagtitle {
+  margin:0 0 .25em 0;
+  font-size:1em;
+}
+
+.jd-tagtable {
+  margin:0;
+  background-color:transparent;
+  width:auto;
+}
+
+.jd-tagtable td,
+.jd-tagtable th {
+  border:none;
+  background-color:#fff;
+  vertical-align:top;
+  font-weight:normal;
+  padding:2px 10px;
+}
+
+.jd-tagtable th {
+  font-style:italic;
+}
+
+/* Inline api level indicator for methods */
+div.api-level {
+  font-size:.8em;
+  font-weight:normal;
+  color:#999;
+  float:right;
+  padding:0 8px 0;
+  margin-top:-30px;
+}
+
+table.jd-tagtable td,
+table.jd-tagtable th {
+  background-color:transparent;
+}
+
+table.jd-tagtable th {
+  color:inherit;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* SEARCH FILTER */
+
+#search_autocomplete {
+  font-weight:normal;
+}
+
+#search_filtered_wrapper {
+  width: 193px;
+  float: right;
+}
+#search_filtered_div {
+  position:absolute;
+  z-index:9999;
+  min-width:171px; /* +padding and border makes this match input width */
+  padding:5px;
+  border: solid 1px #C5C5C5;
+  background: white;
+  top: 35px;
+  -moz-box-shadow: 0 0 10px rgba(0,0,0,0.2);
+  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
+  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
+}
+
+ul#search_filtered {
+  min-width:100%;
+  margin:0;
+  list-style: none;
+  margin: 0;
+  padding: 0;
+}
+
+
+#search_filtered li{
+  line-height:1.5em;
+  margin: 0 0 2px;
+  padding: 0;
+}
+
+#search_filtered li a {
+  padding:0 5px;
+  color:#222 !important;
+}
+
+#search_filtered .jd-selected {
+  background-color: #33B5E5;
+  cursor:pointer;
+}
+#search_filtered .jd-selected,
+#search_filtered .jd-selected a {
+  color:#f7f7f7 !important;
+}
+
+.no-display {
+  display: none;
+}
+
+.jd-autocomplete {
+  padding-left: 6px;
+  padding-right: 6px;
+  padding-top: 1px;
+  padding-bottom: 1px;
+  font-size: 0.81em;
+  border: none;
+  margin: 0;
+  line-height: 1.05em;
+}
+
+.show-item {
+  display: table-row;
+}
+.hide-item {
+  display: hidden;
+}
+
+
+
+
+
+/* SEARCH RESULTS */
+
+/* disable twiddle and size selectors for left column */
+#leftSearchControl div {
+  padding:0;
+}
+
+#leftSearchControl .gsc-twiddle {
+  background-image : none;
+}
+
+#leftSearchControl td, #searchForm td {
+  border: 0px solid #000;
+  padding:0;
+}
+
+#leftSearchControl .gsc-resultsHeader .gsc-title {
+  padding-left : 0px;
+  font-weight : bold;
+  font-size : 13px;
+  color:#006699;
+  display : none;
+}
+
+#leftSearchControl .gsc-resultsHeader div.gsc-results-selector {
+  display : none;
+}
+
+#leftSearchControl .gsc-resultsRoot {
+  padding-top : 6px;
+}
+
+#leftSearchControl div.gs-visibleUrl-long {
+  display : block;
+  color:#006699;
+}
+
+#leftSearchControl .gsc-webResult {
+  padding:0 0 20px 0;
+}
+
+.gsc-webResult div.gs-visibleUrl-short,
+table.gsc-branding,
+.gsc-clear-button {
+  display : none;
+}
+
+.gsc-cursor-box .gsc-cursor div.gsc-cursor-page,
+.gsc-cursor-box .gsc-trailing-more-results a.gsc-trailing-more-results,
+#leftSearchControl a,
+#leftSearchControl a b {
+  color:#006699;
+}
+
+.gsc-resultsHeader {
+  display: none;
+}
+
+/* Disable built in search forms */
+.gsc-control form.gsc-search-box {
+  display : none;
+}
+table.gsc-search-box {
+  margin:6px 0 0 0;
+  border-collapse:collapse;
+}
+
+td.gsc-input {
+  padding:0 2px;
+  width:100%;
+  vertical-align:middle;
+}
+
+input.gsc-input {
+  border:1px solid #BCCDF0;
+  width:99%;
+  padding-left:2px;
+  font-size:.95em;
+}
+
+td.gsc-search-button {
+  text-align: right;
+  padding:0;
+  vertical-align:top;
+}
+
+
+#searchResults {
+  overflow:hidden; /* because the repositioned page links makes the section think it needs to scroll
+(it doesn't) */
+  height:auto;
+}
+
+#searchResults .gsc-control {
+  position:relative;
+  width:auto;
+  padding:0 0 10px;
+}
+
+#searchResults .gsc-tabsArea {
+  position:relative;
+  white-space:nowrap;
+  float:left;
+  width:200px;
+}
+
+#searchResults .gsc-above-wrapper-area {
+  display:none;
+}
+
+#searchResults .gsc-resultsbox-visible {
+  float:left;
+  width:720px;
+  margin-left:20px;
+}
+
+#searchResults .gsc-tabHeader {
+  padding: 3px 6px;
+  position:relative;
+  width:auto;
+  display:block;
+}
+
+#searchResults h2#searchTitle {
+  padding:0;
+  margin:5px 0;
+  border:none;
+}
+
+#searchResults h2#searchTitle em {
+  font-style:normal;
+  color:#33B5E5;
+}
+
+#searchResults .gsc-table-result {
+  margin:5px 0 10px 0;
+  background-color:transparent;
+}
+#searchResults .gs-web-image-box, .gs-promotion-image-box {
+  width:120px;
+}
+#searchResults .gs-web-image-box img.gs-image, .gs-promotion-image-box img.gs-promotion-image {
+  max-width:120px;
+}
+
+#searchResults .gsc-table-result .gsc-thumbnail {
+  padding:0 20px 0 0;
+}
+
+#searchResults td {
+  background-color:transparent;
+}
+
+#searchResults .gsc-expansionArea {
+  position:relative;
+}
+#searchResults .gsc-tabsArea .gsc-cursor-box {
+  width:200px;
+  padding:20px 0 0 1px;
+}
+#searchResults .gsc-cursor-page {
+  display:inline-block;
+  float:left;
+  margin:-1px 0 0 -1px;
+  padding:0;
+  height:27px;
+  width:27px;
+  text-align:center;
+  line-height:2;
+}
+
+#searchResults .gsc-tabHeader.gsc-tabhInactive,
+#searchResults .gsc-cursor-page {
+  text-decoration:none;
+  color:#258AAF;
+  border: solid 1px #DADADA;
+}
+
+#searchResults .gsc-tabHeader.gsc-tabhInactive:hover,
+#searchResults .gsc-cursor-page:hover {
+  border-color: #DBDBDB;
+  background-color: #F3F3F3;
+  background-image: -webkit-gradient(linear, left top, left bottom, from(#F9F9F9), to(#ECECEC));
+  background-image: -webkit-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: -moz-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: -ms-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: -o-linear-gradient(top, #F9F9F9, #ECECEC);
+  background-image: linear-gradient(top, #F9F9F9, #ECECEC);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f9f9f9',
+EndColorStr='#ececec');
+  color: #33B5E5;
+}
+
+#searchResults .gsc-tabHeader.gsc-tabhActive,
+#searchResults .gsc-tabHeader.gsc-tabhActive:hover,
+#searchResults .gsc-cursor-page.gsc-cursor-current-page,
+#searchResults .gsc-cursor-page.gsc-cursor-current-page:hover {
+  color:#fff;
+  background-color: #09C;
+  background-image: -webkit-gradient(linear, left top, left bottom, from(#2FADDB), to(#09C));
+  background-image: -webkit-linear-gradient(top, #2FADDB, #09C);
+  background-image: -moz-linear-gradient(top, #2FADDB, #09C);
+  background-image: -ms-linear-gradient(top, #2FADDB, #09C);
+  background-image: -o-linear-gradient(top, #2FADDB, #09C);
+  background-image: linear-gradient(top, #2FADDB, #09C);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#2faddb', EndColorStr='#09c');
+  border: 1px solid #3990AB;
+  z-index:100;
+}
+
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+/*********** PREVIOUSLY dac-styles.css ***************/
+
+
+
+
+
+::-webkit-selection,
+::-moz-selection,
+::selection {
+  background-color: #0099cc;
+  color: #fff; }
+
+#header {
+  border-bottom:0;
+}
+
+#header .wrap {
+  max-width:940px;
+  height:41px;
+  border-bottom:1px solid;
+  border-color: #ccc;
+  position:relative;
+}
+
+.about #header .wrap {
+  border-color: #9933CC;
+}
+
+.design #header .wrap {
+  border-color: #33b5e5;
+}
+
+.develop #header .wrap {
+  border-color: #F80;
+}
+
+.distribute #header .wrap {
+  border-color: #9C0;
+}
+
+.logo a {
+  width:123px;
+  float:left;
+}
+
+#header .logo {
+  margin-top: -6px;
+  margin-left: 0px;
+  margin-bottom:0px;
+  width: 160px;
+  padding-right:10px;
+}
+
+.search {
+  height:25px;
+  margin-top: -3px;
+  margin-bottom: 0px;
+}
+
+
+
+/* Quicknav */
+.btn-quicknav {
+  width:20px;
+  height:28px;
+  float:left;
+  margin-left:6px;
+  padding-right:10px;
+  position:relative;
+  cursor:pointer;
+  border-right:1px solid #CCC;
+}
+
+.btn-quicknav a {
+  zoom:1;
+  position:absolute;
+  top:13px;
+  left:5px;
+  display:block;
+  text-indent:-9999em;
+  width:10px;
+  height:5px;
+  background:url(../images/quicknav_arrow.png) no-repeat;
+}
+
+.btn-quicknav a.arrow-active {
+  background-position: 0 -5px;
+  display:none;
+}
+
+#header-wrap.quicknav a.arrow-inactive {
+  display:none;
+}
+
+.btn-quicknav.active a.arrow-active {
+  display:block;
+}
+
+.nav-x li {
+  display:block;
+  float:left;
+  margin-right:45px;
+  -webkit-transition: all 0.25s linear;
+      -moz-transition: all 0.25s linear;
+       -ms-transition: all 0.25s linear;
+        -o-transition: all 0.25s linear;
+           transition: all 0.25s linear;
+}
+
+#header-wrap.quicknav .nav-x li {
+  min-width:160px;
+  margin-right:20px;
+}
+
+#header-wrap.quicknav li.last {
+  margin-right:0px;
+}
+
+#quicknav {
+ float:none; 
+ clear:both;
+ margin-left:180px;
+ margin-top:-30px;
+ display:none;
+ overflow:hidden;
+}
+
+#header-wrap.quicknav #quicknav {
+
+}
+
+#quicknav ul {
+  margin:10px 0;
+  padding:0;
+}
+
+#quicknav ul li.design {
+  border-top:1px solid #33b5e5;
+}
+
+#quicknav ul li.develop {
+  border-top:1px solid #FF8800;
+}
+
+#quicknav ul li.distribute {
+  border-top:1px solid #99cc00;
+}
+
+#quicknav ul li {
+  display:block;
+  float:left;
+  margin:0 20px 0 0;
+  min-width:140px;
+}
+
+#quicknav ul li.last {
+  margin-right:0px;
+}
+
+#quicknav ul li ul li {
+  float:none;
+}
+
+#quicknav ul li ul li a {
+  color:#222;
+}
+
+#quicknav ul li li ul,
+#quicknav ul li li ul li {
+  margin:0;
+}
+
+#quicknav ul li li ul li:before {
+  content:"\21B3";
+}
+
+#header-wrap {
+   -webkit-transition: all 0.25s ease-out;
+      -moz-transition: all 0.25s ease-out;
+       -ms-transition: all 0.25s ease-out;
+        -o-transition: all 0.25s ease-out;
+           transition: all 0.25s ease-out;
+
+}
+
+#header-wrap.quicknav {
+  height:170px;
+  
+}
+
+/* SEARCH AND MORE */
+.search {
+  position: absolute;
+  width: 50px;
+  height:28px;
+  display: block;
+  margin-top:-3px;
+  margin-bottom:7px;
+  overflow:hidden;
+  z-index:100;
+  right:54px;
+  -webkit-transition: width 0.4s ease;
+     -moz-transition: width 0.4s ease;
+       -o-transition: width 0.4s ease;
+          transition: width 0.4s ease;
+}
+
+.search #search-btn {
+  width:50px;
+  height:28px;
+  background:url(../images/icon_search.png) no-repeat;
+  float:left;
+}
+
+.search-inner {
+  width:245px;
+}
+
+.search:hover, .search.active {
+  width:245px;
+}
+
+.search .bottom, .search .left, .search .right {
+	position: absolute;
+	background-color: #a2a2a2
+}
+
+.search .bottom {
+	width: 214px;
+	height: 1px;
+	top: 24px;
+	left: 0
+}
+
+.search .left, .search .right {	
+	height: 5px;
+	width: 1px
+}
+
+.search .left {
+  top: 22px;
+  left: 56px;
+  background-color:#CCC;
+}
+
+.search .right {
+  top: 22px;
+  left: 238px;
+  background-color:#CCC;
+}
+
+.search form {
+	margin-top: 2px;
+	width: 162px;
+	float:left;
+}
+
+.search form input {
+	color: #2f2f2f;
+	font-size: 0.95em;
+	width: 178px;  
+	border: none;
+	margin-left: 6px;  
+	z-index: 1500;  
+  position: relative;
+	background-color: transparent;
+	border-bottom:1px solid #CCC;
+	padding:0 0 0 4px;
+	outline:none;
+	height:24px;
+}
+
+.search:hover form input {
+  border-bottom:1px solid #33B5E5;
+}
+
+.search:hover .bottom, .search:hover .left, .search:hover .right {
+	background-color: #33b5e5;
+}
+
+.search:hover #search-btn {
+	background-position: 0 -28px
+}
+
+.search form input:focus {
+	color: #222;
+	font-weight: bold
+}
+
+.moremenu {
+  float: right;
+	position: relative;
+	width: 50px;
+	height:28px;
+  display: block;
+  margin-top:-3px;
+  margin-bottom:7px;
+  overflow:hidden;
+  -webkit-transition: width 0.25s ease;
+     -moz-transition: width 0.25s ease;
+       -o-transition: width 0.25s ease;
+          transition: width 0.25s ease;
+}
+
+.moremenu #more-btn {
+  width:40px;
+  height:28px;
+  background:url(../images/icon_more.png) no-repeat;
+  border-left:1px solid #CCC;
+  float:left;
+  cursor:pointer;
+}
+
+.moremenu:hover #more-btn {
+  background-position:0 -28px;
+}
+
+.morehover {
+  position:absolute;
+  right:6px;
+  top:-9px;
+  width:40px;
+  height:35px;
+  z-index:99;
+  overflow:hidden;
+
+  -webkit-opacity:0;
+     -moz-opacity:0;
+       -o-opacity:0;
+          opacity:0;
+
+  -webkit-transform-origin:100% 0%;
+     -moz-transform-origin:100% 0%; 
+       -o-transform-origin:100% 0%;
+          transform-origin:100% 0%;
+  
+  -webkit-transition-property: -webkit-opacity;
+  -webkit-transition-duration: .25s;
+  -webkit-transition-timing-function:ease;
+
+  -moz-transition-property: -webkit-opacity;
+  -moz-transition-duration: .25s;
+  -moz-transition-timing-function:ease;
+
+  -o-transition-property: -webkit-opacity;
+  -o-transition-duration: .25s;
+  -o-transition-timing-function:ease;
+  
+  -transition-property: -webkit-opacity;
+  -transition-duration: .25s;
+  -transition-timing-function:ease;
+}
+
+.morehover:hover {
+  opacity:1;
+  height:345px;
+  width:268px;
+  -webkit-transition-property:height,  -webkit-opacity;
+}
+
+.morehover .top {
+  width:268px;
+  height:39px;
+  background:url(../images/more_top.png) no-repeat;
+}
+
+.morehover .mid {
+  width:228px;
+  background:url(../images/more_mid.png) repeat-y;
+  padding:10px 20px 10px 20px;
+}
+
+.morehover .mid .header {
+  border-bottom:1px solid #ccc;
+  font-weight:bold;
+}
+
+.morehover .bottom {
+  width:268px;
+  height:6px;
+  background:url(../images/more_bottom.png) no-repeat;
+}
+
+.morehover ul {
+  margin:10px 10px 20px 0;
+}
+
+.morehover ul li {
+  list-style:none;
+}
+
+.morehover ul li.active a,
+.morehover ul li.active a:hover {
+  color:#222 !important;
+}
+
+.morehover ul li.active img {
+  margin-right:4px;
+}
+
+
+
+
+/* MARQUEE */
+.slideshow-container {
+	width:100%;
+	overflow:hidden;
+	position:relative;
+}
+.slideshow-container .slideshow-prev {
+	position:absolute;
+	top:50%;
+	left:0px;
+	margin-top:-36px;
+	z-index:99;
+}
+.slideshow-container .slideshow-next {
+	position:absolute;
+	top:50%;
+	margin-top:-36px;
+	z-index:99;
+	right:0px;
+}
+
+.slideshow-container .pagination {
+	position:absolute;
+	bottom:20px;
+	width:100%;
+	text-align:center;
+	z-index:99;
+}
+.slideshow-container .pagination ul {
+	margin:0;
+}
+.slideshow-container .pagination ul li{
+	display: inline-block;
+	width:12px;
+	height:12px;
+	text-indent:-8000px;
+	list-style:none;
+	margin: 0 2px;
+	border-radius:6px;
+	background-color:#ccc;
+	cursor:pointer;
+        -webkit-transition:color .5s ease-in;  
+        -moz-transition:color .5s ease-in;  
+        -o-transition:color .5s ease-in;  
+        transition:color .5s ease-in;
+}
+.slideshow-container .pagination ul li:hover {
+	background-color:#999;
+}
+.slideshow-container .pagination ul li.active {
+	background-color:#33b5e5;
+}
+.slideshow-container .pagination ul li.active:hover {
+	background-color:#33b5e5;
+}
+.slideshow-container ul li {
+	display:inline;
+	list-style:none;
+}
+
+
+
+
+a.download-sdk {
+    float:right;
+    margin:-10px 0;
+    height:30px;
+    padding-top:4px;
+    padding-bottom:0px;
+}
+
+#nav-x {
+  padding-top: 14px;
+}
+
+#nav-x .wrap,
+#searchResults.wrap {
+    max-width:940px;
+    border-bottom:1px solid #CCC;
+    min-height:34px;
+    
+}
+
+
+.nav-x {
+    margin-left:0;
+    margin-bottom:0;
+}
+
+
+
+
+
+
+
+
+
+
+/*
+ * CSS Styles that are needed by jScrollPane for it to operate correctly.
+ */
+
+.jspContainer {
+  overflow: hidden;
+  position: relative;
+}
+
+.jspPane {
+  position: absolute;
+  overflow: hidden;
+  width:auto !important; /* to avoid cut-off api names in reference in horiz scroll */
+}
+
+.jspVerticalBar {
+  position: absolute;
+  top: 0;
+  right: 0;
+  width: 4px;
+  height: 100%;
+  background: #f5f5f5;
+}
+
+.jspHorizontalBar {
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  width: 100%;
+  height: 4px;
+  background: #f5f5f5;
+}
+
+.jspVerticalBar *,
+.jspHorizontalBar * {
+  margin: 0;
+  padding: 0;
+}
+.jspCap {
+  display: block;
+}
+
+.jspVerticalBar .jspCap {
+  height: 4px;
+}
+
+.jspHorizontalBar .jspCap {
+  width: 0;
+  height: 100%;
+}
+
+.jspHorizontalBar .jspCap {
+  float: left;
+}
+
+.jspTrack {
+  position: relative;
+}
+
+.jspDrag {
+  background: #bbb;
+  position: relative;
+  top: 0;
+  left: 0;
+  cursor: pointer;
+}
+
+.jspDrag:hover,
+.jspDrag:active {
+  border-color: #09c;
+  background-color: #4cadcb;
+  background-image: -webkit-gradient(linear, left top, right top, from(#5dbcd9), to(#4cadcb));
+  background-image: -webkit-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: -moz-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: -ms-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: -o-linear-gradient(left, #5dbcd9, #4cadcb);
+  background-image: linear-gradient(left, #5dbcd9, #4cadcb);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#5dbcd9', EndColorStr='#4cadcb');	
+}
+
+.jspHorizontalBar .jspTrack,
+.jspHorizontalBar .jspDrag {
+  float: left;
+  height: 100%;
+}
+
+.jspArrow {
+  background: #999;
+  text-indent: -20000px;
+  display: block;
+  cursor: pointer;
+}
+
+.jspArrow.jspDisabled {
+  cursor: default;
+  background: #ccc;
+}
+
+.jspVerticalBar .jspArrow {
+  height: 16px;
+}
+
+.jspHorizontalBar .jspArrow {
+  width: 16px;
+  float: left;
+  height: 100%;
+}
+
+.jspVerticalBar .jspArrow:focus {
+  outline: none;
+}
+
+.jspCorner {
+  float: left;
+  height: 100%;
+}
+
+/* Yuk! CSS Hack for IE6 3 pixel bug :( */
+* html .jspCorner {
+  margin: 0 -3px 0 0;
+}
+/******* end of jscrollpane *********/
+
+
+
+
+
+/************ DEVELOP HOMEPAGE ******************/
+
+/* Slideshow */
+.slideshow-develop {
+  height: 300px;
+  width: 940px;
+  position: relative;
+  overflow:hidden;
+}
+.slideshow-develop .frame {
+  width: 940px;
+  height: 300px;
+}
+.slideshow-develop img.play {
+  width:350px;
+  margin:20px 0 0 90px;
+  -webkit-transform: perspective(800px ) rotateY( 35deg );
+  box-shadow: -16px 20px 40px rgba(0, 0, 0, 0.3);
+  -moz-box-shadow: -16px 20px 40px rgba(0, 0, 0, 0.3);
+  -webkit-box-shadow: -16px 20px 40px rgba(0, 0, 0, 0.3);
+}
+.slideshow-develop img.play.no-shadow {
+    box-shadow: none;
+    -moz-box-shadow: none;
+    -webkit-box-shadow: none;
+}
+.slideshow-develop img.play.no-transform {
+  -webkit-transform: none;
+}
+.slideshow-develop a.slideshow-next {
+  background: url(../images/arrow-right-develop.png);
+}
+.slideshow-develop a.slideshow-prev {
+  background: url(../images/arrow-left-develop.png);
+}
+.slideshow-develop .content-right {
+  float: left;
+}
+.slideshow-develop .content-right p.title-intro {
+  position:absolute;
+  margin:0;
+}
+.slideshow-develop .content-right h2 {
+  padding:0;
+  margin-bottom:10px;
+  border:none;
+}
+.slideshow-develop .item {
+  height: 300px;
+  width: 940px;
+}
+.slideshow-develop .pagination ul li.active {
+  background-color: #F80;
+}
+.slideshow-develop .pagination ul li.active:hover {
+  background-color: #F80;
+}
+
+/* Feeds */
+.feed ul {
+  margin: 0;
+}
+.feed .feed-nav {
+  height: 25px;
+  border-bottom: 1px solid #CCC;
+}
+.feed .feed-nav li {
+  list-style: none;
+  float: left;
+  margin-right: 25px;
+  cursor: pointer;
+}
+.feed .feed-nav li.active {
+  color: #000;
+  border-bottom: 4px solid #F80;
+}
+.feed .feed-container {
+  overflow: hidden;
+  width: 460px;
+}
+.feed .feed-container .feed-frame {
+  width: 1000px;
+}
+.feed .feed-container .feed-frame ul {
+  float: left;
+  width:460px;
+}
+.feed .feed-container .feed-frame ul ul {
+  float: none;
+  margin:10px 0 0 30px;
+}
+.feed .feed-container .feed-frame li {
+  list-style: none;
+  margin: 20px 0 20px 0;
+  width: 460px;
+  height:93px;
+}
+.feed .feed-container .feed-frame li.playlist {
+  height:auto;
+}
+.feed .feed-container .feed-frame li.playlist a {
+  height:93px;
+  display:block;
+}
+.feed .feed-container .feed-frame li.more {
+  height:20px;
+  margin:10px 0 5px 5px;
+}
+.feed .feed-container .feed-frame li.more a {
+  height:inherit;
+}
+.feed .feed-container .feed-frame li.playlist-video {
+  list-style: none;
+  margin: 0;
+  width: 460px;
+  height:55px;
+  font-size:12px;
+}
+.feed .feed-container .feed-frame li.playlist-video a {
+  height:45px;
+  padding:5px;
+}
+.feed .feed-container .feed-frame li.playlist-video h5 {
+  font-size:12px;
+  line-height:13px;
+  margin:0;
+}
+.feed .feed-container .feed-frame li.playlist-video p {
+  margin:5px 0 0;
+  line-height:15px;
+}
+.feed-container .feed-frame div.feed-image {
+  float: left;
+  border: 1px solid #999;
+  margin:0 20px 0 0;
+  width:122px;
+  height:92px;
+  background:url('../images/blog-default.png') no-repeat 0 0;
+  background-size:180px;
+}
+#jd-content .feed .feed-container .feed-frame li img {
+  float: left;
+  border: 1px solid #999;
+  margin:0 20px 0 0;
+  width:122px;
+  height:92px;
+}
+#jd-content .feed .feed-container .feed-frame li.playlist-video img {
+  width:inherit;
+  height:inherit;
+}
+
+.feed .feed-container .feed-frame li a,
+.feed .feed-container .feed-frame li a:active {
+  color:#555 !important;
+}
+
+.feed .feed-container .feed-frame li a:hover,
+.feed .feed-container .feed-frame li a:hover * {
+  color:#7AA1B0 !important;
+}
+
+/* Video player */
+#player-wrapper {
+  display:none;
+  margin: -1px auto 0;
+  position: relative;
+  width: 940px;
+  height: 0px;
+}
+#player-frame {
+  background: #EFEFEF;
+  border: 1px solid #CCC;
+  padding: 0px 207px;
+  z-index: 10; /* stay above marque, but below search suggestions */
+  width: 525px;
+  height: 330px;
+  position: relative;
+}
+
+
+
+/************ DISTRIBUTE HOMEPAGE ***************/
+
+.marquee {
+  width: 760px;
+}
+.marquee .main-img {
+  float: left;
+  margin-top: 20px;
+  width: 490px;
+}
+.marquee .copy {
+  width: 270px;
+  float: left;
+  margin-top: 30px;
+}
+.distribute-features {
+  margin: 0;
+}
+.distribute-features ul {
+  margin: 0;
+}
+.distribute-features ul li {
+  list-style: none;
+  float: left;
+  border-top: 1px solid #9C0;
+  width: 220px;
+  margin-right: 50px;
+}
+.distribute-features ul li.last {
+  margin-right: 0px;
+}
+
+
+/************ DEVELOP TOPIC CONTAINERS ************/
+
+.landing-banner,
+.landing-docs {
+  margin:20px 0 0;
+}
+.landing-banner {
+  height:280px;
+}
+.landing-banner .col-6:first-child,
+.landing-docs .col-6:first-child {
+  margin-left:0;
+}
+.landing-banner .col-6:last-child,
+.landing-docs .col-6:last-child {
+  margin-right:0;
+}
+
+.landing-banner h1 {
+  margin-top:0;
+}
+.landing-docs h3 {
+  font-size:14px;
+  line-height:21px;
+  color:#555;
+  text-transform:uppercase;
+  border-bottom:1px solid #CCC;
+  margin:0 0 20px;
+}
+.landing-docs a {
+  color:#333 !important;
+}
+.landing-docs a:hover,
+.landing-docs a:hover * {
+  color:#7AA1B0 !important
+}
+
+.plusone {
+  float:right;
+}
\ No newline at end of file
diff --git a/docs/html/guide/google/gcm/server-javadoc/deprecated-list.html b/docs/html/guide/google/gcm/server-javadoc/deprecated-list.html
index 0082614..729b2bf 100644
--- a/docs/html/guide/google/gcm/server-javadoc/deprecated-list.html
+++ b/docs/html/guide/google/gcm/server-javadoc/deprecated-list.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Deprecated List
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/help-doc.html b/docs/html/guide/google/gcm/server-javadoc/help-doc.html
index 72f9fb2..7f5286c 100644
--- a/docs/html/guide/google/gcm/server-javadoc/help-doc.html
+++ b/docs/html/guide/google/gcm/server-javadoc/help-doc.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 API Help
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/index-all.html b/docs/html/guide/google/gcm/server-javadoc/index-all.html
index e6325cb..0b095ec 100644
--- a/docs/html/guide/google/gcm/server-javadoc/index-all.html
+++ b/docs/html/guide/google/gcm/server-javadoc/index-all.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Index
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="./stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="./default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
@@ -121,9 +121,16 @@
 <DT><A HREF="./com/google/android/gcm/server/Constants.html#ERROR_DEVICE_QUOTA_EXCEEDED"><B>ERROR_DEVICE_QUOTA_EXCEEDED</B></A> - 
 Static variable in class com.google.android.gcm.server.<A HREF="./com/google/android/gcm/server/Constants.html" title="class in com.google.android.gcm.server">Constants</A>
 <DD>Too many messages sent by the sender to a specific device.
+<DT><A HREF="./com/google/android/gcm/server/Constants.html#ERROR_INTERNAL_SERVER_ERROR"><B>ERROR_INTERNAL_SERVER_ERROR</B></A> - 
+Static variable in class com.google.android.gcm.server.<A HREF="./com/google/android/gcm/server/Constants.html" title="class in com.google.android.gcm.server">Constants</A>
+<DD>A particular message could not be sent because the GCM servers encountered
+ an error.
 <DT><A HREF="./com/google/android/gcm/server/Constants.html#ERROR_INVALID_REGISTRATION"><B>ERROR_INVALID_REGISTRATION</B></A> - 
 Static variable in class com.google.android.gcm.server.<A HREF="./com/google/android/gcm/server/Constants.html" title="class in com.google.android.gcm.server">Constants</A>
 <DD>Bad registration_id.
+<DT><A HREF="./com/google/android/gcm/server/Constants.html#ERROR_INVALID_TTL"><B>ERROR_INVALID_TTL</B></A> - 
+Static variable in class com.google.android.gcm.server.<A HREF="./com/google/android/gcm/server/Constants.html" title="class in com.google.android.gcm.server">Constants</A>
+<DD>Time to Live value passed is less than zero or more than maximum.
 <DT><A HREF="./com/google/android/gcm/server/Constants.html#ERROR_MESSAGE_TOO_BIG"><B>ERROR_MESSAGE_TOO_BIG</B></A> - 
 Static variable in class com.google.android.gcm.server.<A HREF="./com/google/android/gcm/server/Constants.html" title="class in com.google.android.gcm.server">Constants</A>
 <DD>The payload of the message is too big, see the limitations.
@@ -145,8 +152,8 @@
 <DD>Too many messages sent by the sender.
 <DT><A HREF="./com/google/android/gcm/server/Constants.html#ERROR_UNAVAILABLE"><B>ERROR_UNAVAILABLE</B></A> - 
 Static variable in class com.google.android.gcm.server.<A HREF="./com/google/android/gcm/server/Constants.html" title="class in com.google.android.gcm.server">Constants</A>
-<DD>Used to indicate that a particular message could not be sent because
- the GCM servers were not available.
+<DD>A particular message could not be sent because the GCM servers were not
+ available.
 </DL>
 <HR>
 <A NAME="_G_"><!-- --></A><H2>
diff --git a/docs/html/guide/google/gcm/server-javadoc/index.html b/docs/html/guide/google/gcm/server-javadoc/index.html
index efcce9e..d8ba0ef 100644
--- a/docs/html/guide/google/gcm/server-javadoc/index.html
+++ b/docs/html/guide/google/gcm/server-javadoc/index.html
@@ -2,7 +2,7 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc on Thu Jun 21 12:04:57 PDT 2012-->
+<!-- Generated by javadoc on Mon Jul 16 14:12:10 PDT 2012-->
 <TITLE>
 Generated Documentation (Untitled)
 </TITLE>
diff --git a/docs/html/guide/google/gcm/server-javadoc/overview-tree.html b/docs/html/guide/google/gcm/server-javadoc/overview-tree.html
index 034838b..b8e28ad 100644
--- a/docs/html/guide/google/gcm/server-javadoc/overview-tree.html
+++ b/docs/html/guide/google/gcm/server-javadoc/overview-tree.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Class Hierarchy
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/gcm/server-javadoc/serialized-form.html b/docs/html/guide/google/gcm/server-javadoc/serialized-form.html
index 86cd61a..7a1378f 100644
--- a/docs/html/guide/google/gcm/server-javadoc/serialized-form.html
+++ b/docs/html/guide/google/gcm/server-javadoc/serialized-form.html
@@ -2,14 +2,14 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_20) on Thu Jun 21 12:04:57 PDT 2012 -->
+<!-- Generated by javadoc (build 1.6.0_26) on Mon Jul 16 14:12:10 PDT 2012 -->
 <TITLE>
 Serialized Form
 </TITLE>
 
-<META NAME="date" CONTENT="2012-06-21">
+<META NAME="date" CONTENT="2012-07-16">
 
-<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+<LINK REL ="stylesheet" TYPE="text/css" HREF="default.css" TITLE="Style">
 
 <SCRIPT type="text/javascript">
 function windowTitle()
diff --git a/docs/html/guide/google/play/billing/billing_best_practices.jd b/docs/html/guide/google/play/billing/billing_best_practices.jd
index 49d2a29..850c661 100755
--- a/docs/html/guide/google/play/billing/billing_best_practices.jd
+++ b/docs/html/guide/google/play/billing/billing_best_practices.jd
@@ -58,7 +58,7 @@
 <p>You should obfuscate your in-app billing code so it is difficult for an attacker to reverse
 engineer security protocols and other application components. At a minimum, we recommend that you
 run an  obfuscation tool like <a
-href="http://developer.android.com/tools/proguard.html">Proguard</a> on your
+href="{@docRoot}tools/help/proguard.html">Proguard</a> on your
 code.</p>
 <p>In addition to running an obfuscation program, we recommend that you use the following techniques
 to obfuscate your in-app billing code.</p>
diff --git a/docs/html/guide/google/play/billing/billing_overview.jd b/docs/html/guide/google/play/billing/billing_overview.jd
index 05139b4..82f6cf4 100755
--- a/docs/html/guide/google/play/billing/billing_overview.jd
+++ b/docs/html/guide/google/play/billing/billing_overview.jd
@@ -353,8 +353,9 @@
 
 <p>The <code>RESTORE_TRANSACTIONS</code> request type also triggers a
 <code>PURCHASE_STATE_CHANGED</code> broadcast intent, which contains the same type of transaction
-information that is sent during a purchase request, although you do not need to respond to this
-intent with a <code>CONFIRM_NOTIFICATIONS</code> message.</p>
+information that is sent during a purchase request. Unlike with a purchase request, however, the transactions
+are given without any associated notification IDs, so you do not need to respond to this
+intent with a <code>CONFIRM_NOTIFICATIONS</code> message. </p>
 
 <p class="note"><strong>Note:</strong> You should use the <code>RESTORE_TRANSACTIONS</code> request
 type only when your application is installed for the first time on a device or when your
diff --git a/docs/html/guide/google/play/billing/billing_reference.jd b/docs/html/guide/google/play/billing/billing_reference.jd
index f8c6967..c5541fa 100755
--- a/docs/html/guide/google/play/billing/billing_reference.jd
+++ b/docs/html/guide/google/play/billing/billing_reference.jd
@@ -450,9 +450,7 @@
 <p>The In-app Billing API is versioned, with each version offering
 additional features to your app. At run time, your app can query the Google Play app to determine
 what version of the API it supports and what features are available. Typically, the Google Play app
-will be updated and will support the latest version of the API. For a summary of versions see
-<a href="{@docRoot}guide/google/play/billing/billing_reference.html#billing-versions">In-app Billing
-API Versions</a>.</p>
+will be updated and will support the latest version of the API. 
 
 <p>The sections below list the supported versions of the In-app Billing API.
 Versions are specified in the <code>API_VERSION</code> key of the Bundle object
diff --git a/docs/html/guide/google/play/billing/billing_subscriptions.jd b/docs/html/guide/google/play/billing/billing_subscriptions.jd
index 3cf9777..ae12951 100755
--- a/docs/html/guide/google/play/billing/billing_subscriptions.jd
+++ b/docs/html/guide/google/play/billing/billing_subscriptions.jd
@@ -241,9 +241,10 @@
 it to validate or cancel the subscription remotely using the <a
 href="#play-dev-api">Google Play Android Developer API</a>.</p>
 
-<p>In the case of billing errors, such as could happen if the customer’s credit
-card becomes invalid, Google Play notifies your app of the change in purchase
-state.</p>
+<p>If a recurring payment fails, such as could happen if the customer’s credit
+card has become invalid, the subscription does not renew. Google Play notifies your
+app at the end of the active cycle that the purchase state of the subscription is now "Expired".
+Your app does not need to grant the user further access to the subscription content.</p>
 
 <p>As a best practice, we recommend that your app includes business logic to
 notify your backend servers of subscription purchases, tokens, and any billing
@@ -626,13 +627,13 @@
 content.</p>
 
 <p>With In-app Billing, you validate a subscription by keeping track of its
-purchase state, such as purchased or cancelled, and then checking the state
-whenever needed. Google Play provides two ways to let you know when the purchase
+purchase state and then checking the state whenever needed. Google Play 
+provides two ways to let you know when the purchase
 state of a subscription changes:</p>
 
 <ul>
   <li><em>In-app Billing Notifications</em>. Google Play pushes a notification
-  to your app whenever  the purchase state of a subscription changes. Your app can
+  to your app to indicate a change in the purchase state of a subscription. Your app can
   store the most recent purchase state for a given purchase token and then check
   that state at run time, as needed.</li>
   <li><em>Google Play Android Developer API</em>. You can use this HTTP-based
@@ -689,7 +690,8 @@
 <td>Purchased successfully</td><td><code>0</code></td><td>Sent at original purchase only (not at recurring billing cycles).</td></tr>
 <td>Cancelled</td><td><code>1</code></td><td>Sent at original purchase only if the purchase has failed for some reason. </td></tr>
 <td>Refunded</td><td><code>2</code></td><td>The purchase was refunded.</code></td></tr>
-<td>Subscription expired</td><td><code>3</code></td><td>Sent if a subscription expires because of non-payment or user cancelation.</td></tr>
+<td>Subscription expired</td><td><code>3</code></td><td>Sent at the end of a billing cycle to indicate that the subscription expired without renewal because of non-payment or user-cancellation. Your app does not need to grant continued access to the subscription content. 
+</td></tr>
 </table>
 
 
@@ -718,7 +720,7 @@
 <p>For more information, see 
   <a href="{@docRoot}distribute/googleplay/promote/linking.html">Linking to Your Products</a>.</p>
 
-<h3 id="purchase-state-changes">Recurring billing and changes in purchase state</h3>
+<h3 id="purchase-state-changes">Recurring billing, cancellation, and changes in purchase state</h3>
 
 <p>Google Play notifies your app when the user completes the purchase of a
 subscription, but the purchase state does not change over time, provided that
@@ -730,6 +732,19 @@
 recurring billing events &mdash; those are all handled by Google Play and they
 are transparent to your application if billing is successful.</p>
 
+<p>When the user cancels a subscription during an active billing cycle, Google
+Play <em>does not</em> notify your app immediately of the change in purchase
+state. Instead, it waits until the end of the active billing cycle and then
+notifies your app that the purchase state has changed to "Expired". </p>
+
+<p>Similarly, if payment for the next billing cycle fails, Google Play waits
+until the end of the active billing cycle and then notifies your app at that time that the
+purchase state has changed to "Expired".</p>
+
+<p>Your app can handle user cancellation and non-payment in the same way, since both cause
+a change to the same "Expired" purchase state. Once the purchase state has become "Expired",
+your app does not need to grant further access to the subscription content.</p>
+
 <h3 id="modifying">Modifying your app for subscriptions</h3>
 
 <p>For subscriptions, you make the same types of modifications to your app as
diff --git a/docs/html/guide/google/play/expansion-files.jd b/docs/html/guide/google/play/expansion-files.jd
index 62ca1e2..750e958 100644
--- a/docs/html/guide/google/play/expansion-files.jd
+++ b/docs/html/guide/google/play/expansion-files.jd
@@ -262,7 +262,7 @@
 href="{@docRoot}guide/google/play/licensing/index.html">Application Licensing</a> service to request URLs
 for the expansion files, then download and save them.
     <p>To greatly reduce the amount of code you must write and ensure a good user experience
-during the download, we recommend you use the <a href="AboutLibraries">Downloader
+during the download, we recommend you use the <a href="#AboutLibraries">Downloader
 Library</a> to implement your download behavior.</p>
     <p>If you build your own download service instead of using the library, be aware that you
 must not change the name of the expansion files and must save them to the proper
diff --git a/docs/html/guide/google/play/licensing/adding-licensing.jd b/docs/html/guide/google/play/licensing/adding-licensing.jd
index 49375c2..4a45de3 100644
--- a/docs/html/guide/google/play/licensing/adding-licensing.jd
+++ b/docs/html/guide/google/play/licensing/adding-licensing.jd
@@ -699,7 +699,7 @@
 retryable. For a list of such errors, see <a
 href="{@docRoot}guide/google/play/licensing/licensing-reference.html#server-response-codes">Server
 Response Codes</a> in the <a
-href="guide/google/play/licensing/licensing-reference.html">Licensing Reference</a>. You can implement
+href="{@docRoot}guide/google/play/licensing/licensing-reference.html">Licensing Reference</a>. You can implement
 the method in any way needed. In most cases, the
 method should log the error code and call <code>dontAllow()</code>.</p>
 
diff --git a/docs/html/guide/guide_toc.cs b/docs/html/guide/guide_toc.cs
index 94b9773..9465f18 100644
--- a/docs/html/guide/guide_toc.cs
+++ b/docs/html/guide/guide_toc.cs
@@ -197,6 +197,9 @@
       <li><a href="<?cs var:toroot ?>guide/topics/ui/actionbar.html">
            <span class="en">Action Bar</span>
           </a></li>
+      <li><a href="<?cs var:toroot ?>guide/topics/ui/settings.html">
+            <span class="en">Settings</span>
+          </a></li>
       <li class="nav-section">
           <div class="nav-section-header"><a href="<?cs var:toroot ?>guide/topics/ui/notifiers/index.html">
               <span class="en">Notifications</span>
diff --git a/docs/html/guide/practices/index.jd b/docs/html/guide/practices/index.jd
index e218b50..04a43c5 100644
--- a/docs/html/guide/practices/index.jd
+++ b/docs/html/guide/practices/index.jd
@@ -10,7 +10,7 @@
   <div class="col-12">
     <h3>Blog Articles</h3>
     
-    <a href="android-developers.blogspot.com/2010/10/improving-app-quality.html">
+    <a href="http://android-developers.blogspot.com/2010/10/improving-app-quality.html">
       <h4>Improving App Quality</h4>
       <p>One way of improving your app’s visibility in the ecosystem is by deploying well-targeted
 mobile advertising campaigns and cross-app promotions. However, there’s another time-tested method
@@ -23,7 +23,7 @@
 your designs to the action bar in order to promote a consistent Android user experience.</p>
     </a>
     
-    <a href="android-developers.blogspot.com/2011/07/new-tools-for-managing-screen-sizes.html">
+    <a href="http://android-developers.blogspot.com/2011/07/new-tools-for-managing-screen-sizes.html">
       <h4>New Tools For Managing Screen Sizes</h4>
       <p>Android 3.2 includes new tools for supporting devices with a wide range of screen sizes.
 One important result is better support for a new size of screen; what is typically called a “7-inch”
@@ -31,7 +31,7 @@
 different screen sizes.</p>
     </a>
     
-    <a href="android-developers.blogspot.com/2011/03/identifying-app-installations.html">
+    <a href="http://android-developers.blogspot.com/2011/03/identifying-app-installations.html">
       <h4>Identifying App Installations</h4>
       <p>It is very common, and perfectly reasonable, for a developer to want to track individual
 installations of their apps. It sounds plausible just to call TelephonyManager.getDeviceId() and use
diff --git a/docs/html/guide/practices/optimizing-for-3.0.jd b/docs/html/guide/practices/optimizing-for-3.0.jd
index 65c5674..0dd92d9 100644
--- a/docs/html/guide/practices/optimizing-for-3.0.jd
+++ b/docs/html/guide/practices/optimizing-for-3.0.jd
@@ -118,7 +118,7 @@
       <li>Samples for SDK API 11</li>
     </ul>
   </li>
-  <li><a href="{@docRoot}guide/developing/other-ide.html#AVD">Create an AVD</a> for a tablet-type
+  <li><a href="{@docRoot}tools/devices/managing-avds.html">Create an AVD</a> for a tablet-type
 device:
   <p>Set the target to "Android 3.0" and the skin to "WXGA" (the default skin).</p></li>
 </ol>
diff --git a/docs/html/guide/practices/security.jd b/docs/html/guide/practices/security.jd
index 48ccdeb..ce59a9d 100644
--- a/docs/html/guide/practices/security.jd
+++ b/docs/html/guide/practices/security.jd
@@ -134,9 +134,8 @@
 
 <p>To provide additional protection for sensitive data, some applications
 choose to encrypt local files using a key that is not accessible to the
-application. (For example, a key can be placed in a <code><a
-href="{@docRoot}reference/java/security/KeyStore.html">KeyStore</a></code> and
-protected with a user password that is not stored on the device).  While this
+application. (For example, a key can be placed in a {@link java.security.KeyStore}
+and protected with a user password that is not stored on the device).  While this
 does not protect data from a root compromise that can monitor the user
 inputting the password,  it can provide protection for a lost device without <a
 href="http://source.android.com/tech/encryption/index.html">file system
@@ -716,8 +715,7 @@
 AccountManager</a></code> using <code><a
 href="{@docRoot}reference/android/content/pm/PackageManager.html#checkSignatures(java.lang.String,%20java.lang.String)">checkSignature()</a></code>.
 Alternatively, if only one application will use the credential, you might use a
-<code><a
-href={@docRoot}reference/java/security/KeyStore.html">KeyStore</a></code> for
+{@link java.security.KeyStore} for
 storage.</p>
 
 <a name="Crypto"></a>
@@ -751,8 +749,8 @@
 number generator significantly weakens the strength of the algorithm, and may
 allow offline attacks.</p>
 
-<p>If you need to store a key for repeated use, use a mechanism like <code><a
-href="{@docRoot}reference/java/security/KeyStore.html">KeyStore</a></code> that
+<p>If you need to store a key for repeated use, use a mechanism like
+  {@link java.security.KeyStore} that
 provides a mechanism for long term storage and retrieval of cryptographic
 keys.</p>
 
diff --git a/docs/html/guide/practices/ui_guidelines/icon_design_launcher_archive.jd b/docs/html/guide/practices/ui_guidelines/icon_design_launcher_archive.jd
index f6c2247..4529797 100644
--- a/docs/html/guide/practices/ui_guidelines/icon_design_launcher_archive.jd
+++ b/docs/html/guide/practices/ui_guidelines/icon_design_launcher_archive.jd
@@ -58,7 +58,7 @@
 
 <h2 id="market">Application Icons on Google Play</h2>
 
-<p>If you are <a href="{@docRoot}tools/publishing/publishing.html">publishing
+<p>If you are <a href="{@docRoot}distribute/index.html">publishing
 your application on Google Play</a>, you will also need to provide a 512x512
 pixel, high-resolution application icon in the <a
 href="http://play.google.com/apps/publish">developer console</a> at upload-time.
diff --git a/docs/html/guide/samples/index.html b/docs/html/guide/samples/index.html
index f4acdbf..959eaf5 100644
--- a/docs/html/guide/samples/index.html
+++ b/docs/html/guide/samples/index.html
@@ -1,10 +1,10 @@
 <html>
 <head>
-<meta http-equiv="refresh" content="0;url=http://developer.android.com/resources/browser.html?tag=sample">
+<meta http-equiv="refresh" content="0;url=http://developer.android.com/tools/samples/index.html">
 <title>Redirecting...</title>
 </head>
 <body>
 <p>You should have been redirected. Please <a
-href="http://developer.android.com/resources/browser.html?tag=sample">click here</a>.</p>
+href="http://developer.android.com/tools/samples/index.html">click here</a>.</p>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/html/guide/topics/data/backup.jd b/docs/html/guide/topics/data/backup.jd
index 602b6e8..598b08a 100644
--- a/docs/html/guide/topics/data/backup.jd
+++ b/docs/html/guide/topics/data/backup.jd
@@ -187,10 +187,7 @@
 available only on devices running API Level 8 (Android 2.2) or greater, so you should also
 set your <a
 href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code android:minSdkVersion}</a>
-attribute to "8". However, if you implement proper <a
-href="{@docRoot}resources/articles/backward-compatibility.html">backward compatibility</a> in
-your application, you can support this feature for devices running API Level 8 or greater, while
-remaining compatible with older devices.</p>
+attribute to "8".</p>
 
 
 
diff --git a/docs/html/guide/topics/data/install-location.jd b/docs/html/guide/topics/data/install-location.jd
index 19c4b39..5abdced 100644
--- a/docs/html/guide/topics/data/install-location.jd
+++ b/docs/html/guide/topics/data/install-location.jd
@@ -111,10 +111,7 @@
 <p class="caution"><strong>Caution:</strong> Although XML markup such as this will be ignored by
 older platforms, you must be careful not to use programming APIs introduced in API Level 8
 while your {@code minSdkVersion} is less than "8", unless you perform the work necessary to
-provide backward compatibility in your code. For information about building
-backward compatibility in your application code, see the <a
-href="{@docRoot}resources/articles/backward-compatibility.html">Backward Compatibility</a>
-article.</p>
+provide backward compatibility in your code.</p>
 
 
 
@@ -141,17 +138,13 @@
     <dd>Your alarms registered with {@link android.app.AlarmManager} will be cancelled. You must
 manually re-register any alarms when external storage is remounted.</dd>
   <dt>Input Method Engines</dt>
-    <dd>Your <a href="{@docRoot}resources/articles/on-screen-inputs.html">IME</a> will be
+    <dd>Your <a href="{@docRoot}guide/topics/text/creating-input-method.html">IME</a> will be
 replaced by the default IME. When external storage is remounted, the user can open system settings
 to enable your IME again.</dd>
   <dt>Live Wallpapers</dt>
-    <dd>Your running <a href="{@docRoot}resources/articles/live-wallpapers.html">Live Wallpaper</a>
+    <dd>Your running <a href="http://android-developers.blogspot.com/2010/02/live-wallpapers.html">Live Wallpaper</a>
 will be replaced by the default Live Wallpaper. When external storage is remounted, the user can
 select your Live Wallpaper again.</dd>
-  <dt>Live Folders</dt>
-    <dd>Your <a href="{@docRoot}resources/articles/live-folders.html">Live Folder</a> will be
-removed from the home screen. When external storage is remounted, the user can add your Live Folder
-to the home screen again.</dd>
   <dt>App Widgets</dt>
     <dd>Your <a href="{@docRoot}guide/topics/appwidgets/index.html">App Widget</a> will be removed
 from the home screen. When external storage is remounted, your App Widget will <em>not</em> be
@@ -174,7 +167,7 @@
   <dt>Copy Protection</dt>
     <dd>Your application cannot be installed to a device's SD card if it uses Google Play's 
       Copy Protection feature. However, if you use Google Play's 
-      <a href="{@docRoot}guide/google/play/licensing.html">Application Licensing</a> instead, your 
+      <a href="{@docRoot}guide/google/play/licensing/index.html">Application Licensing</a> instead, your 
       application <em>can</em> be installed to internal or external storage, including SD cards.</dd>
 </dl>
 
diff --git a/docs/html/guide/topics/graphics/opengl.jd b/docs/html/guide/topics/graphics/opengl.jd
index a9fedb7..6114a4a 100644
--- a/docs/html/guide/topics/graphics/opengl.jd
+++ b/docs/html/guide/topics/graphics/opengl.jd
@@ -84,11 +84,8 @@
     this class by creating an instance of {@link android.opengl.GLSurfaceView} and adding your
     {@link android.opengl.GLSurfaceView.Renderer Renderer} to it. However, if you want to capture
     touch screen events, you should extend the {@link android.opengl.GLSurfaceView} class to
-    implement the touch listeners, as shown in OpenGL Tutorials for
-    <a href="{@docRoot}resources/tutorials/opengl/opengl-es10.html#touch">ES 1.0</a>,
-    <a href="{@docRoot}resources/tutorials/opengl/opengl-es20.html#touch">ES 2.0</a> and the <a
-href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchRotateActivity.html"
->TouchRotateActivity</a> sample.</dd>
+    implement the touch listeners, as shown in OpenGL training lesson,
+    <a href="{@docRoot}training/graphics/opengl/touch.html">Responding to Touch Events</a>.</dd>
 
   <dt><strong>{@link android.opengl.GLSurfaceView.Renderer}</strong></dt>
   <dd>This interface defines the methods required for drawing graphics in an OpenGL {@link
@@ -164,9 +161,8 @@
   </li>
 </ul>
 
-<p>If you'd like to start building an app with OpenGL right away, have a look at the tutorials for
-<a href="{@docRoot}resources/tutorials/opengl/opengl-es10.html">OpenGL ES 1.0</a> or
-<a href="{@docRoot}resources/tutorials/opengl/opengl-es20.html">OpenGL ES 2.0</a>!
+<p>If you'd like to start building an app with OpenGL right away, follow the
+<a href="{@docRoot}training/graphics/opengl/index.html">Displaying Graphics with OpenGL ES</a> class.
 </p>
 
 <h2 id="manifest">Declaring OpenGL Requirements</h2>
@@ -277,10 +273,6 @@
 </li>
 </ol>
 
-<p>For a complete example of how to apply projection and camera views with OpenGL ES 1.0, see the <a
-href="{@docRoot}resources/tutorials/opengl/opengl-es10.html#projection-and-views">OpenGL ES 1.0
-tutorial</a>.</p>
-
 
 <h3 id="proj-es2">Projection and camera view in OpenGL ES 2.0</h3>
 <p>In the ES 2.0 API, you apply projection and camera view by first adding a matrix member to
@@ -382,8 +374,7 @@
 </li>
 </ol>
 <p>For a complete example of how to apply projection and camera view with OpenGL ES 2.0, see the <a
-href="{@docRoot}resources/tutorials/opengl/opengl-es20.html#projection-and-views">OpenGL ES 2.0
-tutorial</a>.</p>
+href="{@docRoot}training/graphics/opengl/index.html">Displaying Graphics with OpenGL ES</a> class.</p>
 
 <h2 id="faces-winding">Shape Faces and Winding</h2>
 
diff --git a/docs/html/guide/topics/manifest/application-element.jd b/docs/html/guide/topics/manifest/application-element.jd
index 8a91ec8..2105a50 100644
--- a/docs/html/guide/topics/manifest/application-element.jd
+++ b/docs/html/guide/topics/manifest/application-element.jd
@@ -57,9 +57,9 @@
 <dt><a name="reparent"></a>{@code android:allowTaskReparenting}</dt>
 <dd>Whether or not activities that the application defines can move from 
 the task that started them to the task they have an affinity for when that task 
-is next brought to the front &mdash; "{@code true}" if they can move, and 
-"{@code false}" if they must remain with the task where they started.  
-The default value is "{@code false}".
+is next brought to the front &mdash; {@code "true"} if they can move, and 
+{@code "false"} if they must remain with the task where they started.  
+The default value is {@code "false"}.
 
 <p>
 The 
@@ -73,9 +73,9 @@
 <dt><a name="agent"></a>{@code android:backupAgent}</dt>
 <dd>The name of the class that implement's the application's backup agent,
 a subclass of {@link android.app.backup.BackupAgent}.  The attribute value should be
-a fully qualified  class name (such as, "{@code com.example.project.MyBackupAgent}").  
+a fully qualified  class name (such as, {@code "com.example.project.MyBackupAgent"}).  
 However, as a shorthand, if the first character of the name is a period 
-(for example, "{@code .MyBackupAgent}"), it is appended to the 
+(for example, {@code ".MyBackupAgent"}), it is appended to the 
 package name specified in the 
 <code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code> 
 element.
@@ -86,29 +86,29 @@
 
 <dt><a name="debug"></a>{@code android:debuggable}</dt>
 <dd>Whether or not the application can be debugged, even when running 
-on a device in user mode &mdash; "{@code true}" if it can be, and "{@code false}"
-if not.  The default value is "{@code false}".</dd> 
+on a device in user mode &mdash; {@code "true"} if it can be, and {@code "false"}
+if not.  The default value is {@code "false"}.</dd> 
 
 <dt><a name="desc"></a>{@code android:description}</dt>
 <dd>User-readable text about the application, longer and more descriptive than the application label.  The value must be set as a reference to a string resource.  Unlike the label, it cannot be a raw string.  There is no default value.</dd>
 
 <dt><a name="enabled"></a>{@code android:enabled}</dt>
 <dd>Whether or not the Android system can instantiate components of 
-the application &mdash; "{@code true}" if it can, and "{@code false}" 
-if not.  If the value is "{@code true}", each component's 
+the application &mdash; {@code "true"} if it can, and {@code "false"} 
+if not.  If the value is {@code "true"}, each component's 
 {@code enabled} attribute determines whether that component is enabled 
-or not.  If the value is "{@code false}", it overrides the 
+or not.  If the value is {@code "false"}, it overrides the 
 component-specific values; all components are disabled.
 
 <p>
-The default value is "{@code true}".
+The default value is {@code "true"}.
 </p></dd>  
 
 <dt><a name="code"></a>{@code android:hasCode}</dt>
-<dd>Whether or not the application contains any code &mdash; "{@code true}" 
-if it does, and "{@code false}" if not.  When the value is "{@code false}", 
+<dd>Whether or not the application contains any code &mdash; {@code "true"} 
+if it does, and {@code "false"} if not.  When the value is {@code "false"}, 
 the system does not try to load any application code when launching components.  
-The default value is "{@code true}".
+The default value is {@code "true"}.
 
 <p>
 An application would not have any code of its own only if it's using nothing
@@ -118,10 +118,14 @@
 
 <dt><a name="hwaccel"></a>{@code android:hardwareAccelerated}</dt>
 <dd>Whether or not hardware-accelerated rendering should be enabled for all
-Activities and Views in this application &mdash; "{@code true}" if it
-should be enabled, and "{@code false}" if not. The default value is "{@code false}".
+activities and views in this application &mdash; {@code "true"} if it
+should be enabled, and {@code "false"} if not. The default value is {@code "true"} if you've set
+either <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a>
+or <a 
+href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
+to {@code "14"} or higher; otherwise, it's {@code "false"}.
 
-<p>Starting from Android 3.0, a hardware-accelerated OpenGL renderer is
+<p>Starting from Android 3.0 (API level 11), a hardware-accelerated OpenGL renderer is
 available to applications, to improve performance for many common 2D graphics
 operations. When the hardware-accelerated renderer is enabled, most operations
 in Canvas, Paint, Xfermode, ColorFilter, Shader, and Camera are accelerated.
@@ -132,6 +136,9 @@
 <p>Note that not all of the OpenGL 2D operations are accelerated. If you enable
 the hardware-accelerated renderer, test your application to ensure that it can
 make use of the renderer without errors.</p>
+
+<p>For more information, read the <a href="{@docRoot}guide/topics/graphics/hardware-accel.html"
+>Hardware Acceleration</a> guide.</p>
 </dd>
 
 <dt><a name="icon"></a>{@code android:icon}</dt>
@@ -146,7 +153,7 @@
 
 <p>
 This attribute must be set as a reference to a drawable resource containing
-the image (for example {@code "@drawable/icon"}).   There is no default icon.
+the image (for example {@code "@drawable/icon"}). There is no default icon.
 </p></dd>
 
 <dt><a name="killrst"></a>{@code android:killAfterRestore}</dt>
@@ -233,8 +240,8 @@
 
 <dt><a name="persistent"></a>{@code android:persistent}</dt>
 <dd>Whether or not the application should remain running at all times &mdash; 
-"{@code true}" if it should, and "{@code false}" if not.  The default value 
-is "{@code false}".  Applications should not normally set this flag; 
+{@code "true"} if it should, and {@code "false"} if not.  The default value 
+is {@code "false"}.  Applications should not normally set this flag; 
 persistence mode is intended only for certain system applications.</dd>
 
 <dt><a name="proc"></a>{@code android:process}</dt>
diff --git a/docs/html/guide/topics/manifest/manifest-element.jd b/docs/html/guide/topics/manifest/manifest-element.jd
index a3d4a95..4807a5e 100644
--- a/docs/html/guide/topics/manifest/manifest-element.jd
+++ b/docs/html/guide/topics/manifest/manifest-element.jd
@@ -152,7 +152,7 @@
 
 <p class="caution"><strong>Caution:</strong> If your application uses Google Play's Copy 
   Protection feature, it cannot be installed to a device's SD card. However, if you use Google 
-  Play's <a href="{@docRoot}guide/google/play/licensing.html">Application Licensing</a> instead, 
+  Play's <a href="{@docRoot}guide/google/play/licensing/index.html">Application Licensing</a> instead, 
   your application <em>can</em> be installed to internal or external storage, including SD cards.</p>
 
 <p class="note"><strong>Note:</strong> By default, your application will be installed on the
@@ -175,7 +175,7 @@
 storage. However, the system will not allow the user to move the application to external storage if
 this attribute is set to {@code internalOnly}, which is the default setting.</p>
 
-<p>Read <a href="{@docRoot}guide/appendix/install-location.html">App Install Location</a> for
+<p>Read <a href="{@docRoot}guide/topics/data/install-location.html">App Install Location</a> for
 more information about using this attribute (including how to maintain backward compatibility).</p>
 
 <p>Introduced in: API Level 8.</p>
diff --git a/docs/html/guide/topics/manifest/uses-sdk-element.jd b/docs/html/guide/topics/manifest/uses-sdk-element.jd
index 29dcb56..61f03b9 100644
--- a/docs/html/guide/topics/manifest/uses-sdk-element.jd
+++ b/docs/html/guide/topics/manifest/uses-sdk-element.jd
@@ -230,7 +230,13 @@
 <table>
   <tr><th>Platform Version</th><th>API Level</th><th>VERSION_CODE</th><th>Notes</th></tr>
  
-     <tr><td><a href="{@docRoot}about/versions/android-4.0.3.html">Android 4.0.3</a></td>
+    <tr><td><a href="{@docRoot}about/versions/android-4.1.html">Android 4.1, 4.1.1</a></td>
+    <td><a href="{@docRoot}sdk/api_diff/16/changes.html" title="Diff Report">16</a></td>
+    <td>{@link android.os.Build.VERSION_CODES#JELLY_BEAN}</td>
+    <td><a href="{@docRoot}about/versions/jelly-bean.html">Platform
+Highlights</a></td></tr>
+
+    <tr><td><a href="{@docRoot}about/versions/android-4.0.3.html">Android 4.0.3, 4.0.4</a></td>
     <td><a href="{@docRoot}sdk/api_diff/15/changes.html" title="Diff Report">15</a></td>
     <td>{@link android.os.Build.VERSION_CODES#ICE_CREAM_SANDWICH_MR1}</td>
     <td rowspan="2"><a href="{@docRoot}about/versions/android-4.0-highlights.html">Platform
diff --git a/docs/html/guide/topics/media/camera.jd b/docs/html/guide/topics/media/camera.jd
index a63270a..3fe23f8 100644
--- a/docs/html/guide/topics/media/camera.jd
+++ b/docs/html/guide/topics/media/camera.jd
@@ -617,7 +617,7 @@
 
         // Create our Preview view and set it as the content of our activity.
         mPreview = new CameraPreview(this, mCamera);
-        FrameLayout preview = (FrameLayout) findViewById(id.camera_preview);
+        FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview);
         preview.addView(mPreview);
     }
 }
diff --git a/docs/html/guide/topics/providers/content-provider-basics.jd b/docs/html/guide/topics/providers/content-provider-basics.jd
index 7999033..8c47ad7 100644
--- a/docs/html/guide/topics/providers/content-provider-basics.jd
+++ b/docs/html/guide/topics/providers/content-provider-basics.jd
@@ -1030,12 +1030,12 @@
     A provider defines URI permissions for content URIs in its manifest, using the
     <code><a href="{@docRoot}guide/topics/manifest/provider-element.html#gprmsn">
     android:grantUriPermission</a></code>
-    attribute of the
-    {@code <a href="guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>}
+    attribute of the <a href="{@docRoot}guide/topics/manifest/provider-element.html">
+    {@code &lt;provider&gt;}</a>
     element, as well as the
-    {@code <a href="guide/topics/manifest/grant-uri-permission-element.html">
-    &lt;grant-uri-permission&gt;</a>} child element of the
-    {@code <a href="guide/topics/manifest/provider-element.html">&lt;provider&gt;</a>}
+    <a href="{@docRoot}guide/topics/manifest/grant-uri-permission-element.html">{@code 
+    &lt;grant-uri-permission&gt;}</a> child element of the
+    <a href="{@docRoot}guide/topics/manifest/provider-element.html">{@code &lt;provider&gt;}</a>
     element. The URI permissions mechanism is explained in more detail in the
     <a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a> guide,
     in the section "URI Permissions".
diff --git a/docs/html/guide/topics/renderscript/index.jd b/docs/html/guide/topics/renderscript/index.jd
index b6758bc..4c22e72 100644
--- a/docs/html/guide/topics/renderscript/index.jd
+++ b/docs/html/guide/topics/renderscript/index.jd
@@ -1,8 +1,10 @@
 page.title=Computation
+page.landing=true
+page.landing.intro=Renderscript provides a platform-independent computation engine that operates at the native level. Use it to accelerate your apps that require extensive computational horsepower.
+page.landing.image=
+
 @jd:body
 
-<p>Renderscript provides a platform-independent computation engine that operates at the native level.
-  Use it to accelerate your apps that require extensive computational horsepower.</p>
 <div class="landing-docs">
 
   <div>
diff --git a/docs/html/guide/topics/resources/accessing-resources.jd b/docs/html/guide/topics/resources/accessing-resources.jd
index 03bb939..0673b6f 100644
--- a/docs/html/guide/topics/resources/accessing-resources.jd
+++ b/docs/html/guide/topics/resources/accessing-resources.jd
@@ -336,6 +336,6 @@
 
 <p>In this example, {@link android.R.layout#simple_list_item_1} is a layout resource defined by the
 platform for items in a {@link android.widget.ListView}. You can use this instead of creating
-your own layout for list items. (For more about using {@link android.widget.ListView}, see the
-<a href="{@docRoot}resources/tutorials/views/hello-listview.html">List View Tutorial</a>.)</p>
+your own layout for list items. For more information, see the
+<a href="{@docRoot}guide/topics/ui/layout/listview.html">List View</a> developer guide.</p>
 
diff --git a/docs/html/guide/topics/resources/layout-resource.jd b/docs/html/guide/topics/resources/layout-resource.jd
index 5643075..cd88ae9 100644
--- a/docs/html/guide/topics/resources/layout-resource.jd
+++ b/docs/html/guide/topics/resources/layout-resource.jd
@@ -161,17 +161,16 @@
 supported by the root element in the included layout and they will override those defined in the
 root element.</p>
 
-      <p class="caution"><strong>Caution:</strong> If you want to override the layout dimensions,
-you must override both <code>android:layout_height</code> and
-<code>android:layout_width</code>&mdash;you cannot override only the height or only the width.
-If you override only one, it will not take effect. (Other layout properties, such as weight,
-are still inherited from the source layout.)</p>
+    <p class="caution"><strong>Caution:</strong> If you want to override layout attributes using
+      the <code>&lt;include&gt;</code> tag, you must override both
+      <code>android:layout_height</code> and <code>android:layout_width</code> in order for
+      other layout attributes to take effect.</p>
 
     <p>Another way to include a layout is to use {@link android.view.ViewStub}. It is a lightweight
 View that consumes no layout space until you explicitly inflate it, at which point, it includes a
 layout file defined by its {@code android:layout} attribute. For more information about using {@link
-android.view.ViewStub}, read <a href="{@docRoot}resources/articles/layout-tricks-stubs.html">Layout
-Tricks: ViewStubs</a>.</p>
+android.view.ViewStub}, read <a href="{@docRoot}training/improving-layouts/loading-ondemand.html">Loading
+  Views On Demand</a>.</p>
     </dd>
 
   <dt id="merge-element"><code>&lt;merge&gt;</code></dt>
@@ -182,8 +181,7 @@
 in another layout file using <a href="#include-element"><code>&lt;include&gt;</code></a> and
 this layout doesn't require a different {@link android.view.ViewGroup} container. For more
 information about merging layouts, read <a
-href="{@docRoot}resources/articles/layout-tricks-merge.html">Layout
-Tricks: Merging</a>.</dd>
+href="{@docRoot}training/improving-layouts/reusing-layouts.html">Re-using Layouts with &lt;include/></a>.</dd>
 
   </dl>
 
diff --git a/docs/html/guide/topics/resources/localization.jd b/docs/html/guide/topics/resources/localization.jd
index 41961a3..983aef8 100755
--- a/docs/html/guide/topics/resources/localization.jd
+++ b/docs/html/guide/topics/resources/localization.jd
@@ -48,8 +48,6 @@
 

 <h2>See also</h2>

   <ol>

-  <li><a

-href="{@docRoot}resources/tutorials/localization/index.html">Hello, L10N Tutorial</a></li>

     <li><a href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a></li>

     <li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">Layouts</a></li>

     <li><a href="{@docRoot}reference/android/app/Activity.html#ActivityLifecycle">Activity Lifecycle</a></li>

@@ -87,11 +85,8 @@
 </li>

 </ul>

 

-<p>The <a

-href="{@docRoot}resources/tutorials/localization/index.html">Hello, L10N

-</a> tutorial takes you through the steps of creating a simple localized

-application that uses  locale-specific resources in the way described in this

-document. </p>

+<p>For a short guide to localizing strings in your app, see the training lesson, <a

+href="{@docRoot}training/basics/supporting-devices/languages.html">Supporting Different Languages</a>. </p>

 

 

 <h2 id="resource-switching">Overview: Resource-Switching in Android</h2>

diff --git a/docs/html/guide/topics/resources/runtime-changes.jd b/docs/html/guide/topics/resources/runtime-changes.jd
index f5475b4..5f39aa5 100644
--- a/docs/html/guide/topics/resources/runtime-changes.jd
+++ b/docs/html/guide/topics/resources/runtime-changes.jd
@@ -16,8 +16,8 @@
   <ol>
     <li><a href="providing-resources.html">Providing Resources</a></li>
     <li><a href="accessing-resources.html">Accessing Resources</a></li>
-    <li><a href="{@docRoot}resources/articles/faster-screen-orientation-change.html">Faster Screen
-Orientation Change</a></li>
+    <li><a href="http://android-developers.blogspot.com/2009/02/faster-screen-orientation-change.html">Faster
+        Screen Orientation Change</a></li>
   </ol>
 </div>
 </div>
diff --git a/docs/html/guide/topics/search/index.jd b/docs/html/guide/topics/search/index.jd
index 2ee624b..680c607 100644
--- a/docs/html/guide/topics/search/index.jd
+++ b/docs/html/guide/topics/search/index.jd
@@ -54,9 +54,9 @@
 if your data is stored in an SQLite database, you should use the {@link android.database.sqlite}
 APIs to perform searches.
 <br/><br/>
-Also, there is no guarantee that every device provides a dedicated SEARCH button to invoke the
+Also, there is no guarantee that a device provides a dedicated SEARCH button that invokes the
 search interface in your application. When using the search dialog or a custom interface, you
-must always provide a search button in your UI that activates the search interface. For more
+must provide a search button in your UI that activates the search interface. For more
 information, see <a href="search-dialog.html#InvokingTheSearchDialog">Invoking the search
 dialog</a>.</p>
 
diff --git a/docs/html/guide/topics/search/search-dialog.jd b/docs/html/guide/topics/search/search-dialog.jd
index 49451ac..b9a26d6 100644
--- a/docs/html/guide/topics/search/search-dialog.jd
+++ b/docs/html/guide/topics/search/search-dialog.jd
@@ -6,14 +6,6 @@
 <div id="qv-wrapper">
 <div id="qv">
 
-  <h2>Quickview</h2>
-  <ul>
-    <li>The Android system sends search queries from the search dialog or widget to an activity you
-specify to perform searches and present results</li>
-    <li>You can put the search widget in the Action Bar, as an "action view," for quick
-access</li>
-  </ul>
-
 
 <h2>In this document</h2>
 <ol>
@@ -61,14 +53,8 @@
 
 <h2>Downloads</h2>
 <ol>
-<li><a href="{@docRoot}shareables/search_icons.zip">search_icons.zip</a></li>
-</ol>
-
-<h2>See also</h2>
-<ol>
-<li><a href="adding-recent-query-suggestions.html">Adding Recent Query Suggestions</a></li>
-<li><a href="adding-custom-suggestions.html">Adding Custom Suggestions</a></li>
-<li><a href="searchable-config.html">Searchable Configuration</a></li>
+<li><a href="{@docRoot}design/downloads/index.html#action-bar-icon-pack">Action Bar
+Icon Pack</a></li>
 </ol>
 
 </div>
@@ -142,12 +128,14 @@
   <li>A search interface, provided by either:
     <ul>
       <li>The search dialog
-        <p>By default, the search dialog is hidden, but appears at the top of the screen when the 
-user presses the device SEARCH button (when available) or another button in your user interface.</p>
+        <p>By default, the search dialog is hidden, but appears at the top of the screen when
+          you call {@link android.app.Activity#onSearchRequested()} (when the user presses your
+          Search button).</p>
       </li>
       <li>Or, a {@link android.widget.SearchView} widget
         <p>Using the search widget allows you to put the search box anywhere in your activity.
-Instead of putting it in your activity layout, however, it's usually more convenient for users as an
+Instead of putting it in your activity layout, you should usually use
+{@link android.widget.SearchView} as an 
 <a href="{@docRoot}guide/topics/ui/actionbar.html#ActionView">action view in the Action Bar</a>.</p>
       </li>
     </ul>
@@ -415,10 +403,9 @@
 your application for devices running Android 3.0, you should consider using the search widget
 instead (see the side box).</p>
 
-<p>The search dialog is always hidden by default, until the user activates it. If the user's device
-includes a SEARCH button, pressing it will activate the search dialog by default. Your application
-can also activate the search dialog on demand by calling {@link
-android.app.Activity#onSearchRequested onSearchRequested()}. However, neither of these work
+<p>The search dialog is always hidden by default, until the user activates it. Your application
+can activate the search dialog by calling {@link
+android.app.Activity#onSearchRequested onSearchRequested()}. However, this method doesn't work
 until you enable the search dialog for the activity.</p>
 
 <p>To enable the search dialog, you must indicate to the system which searchable activity should
@@ -469,8 +456,8 @@
 href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code &lt;meta-data&gt;}</a>
 element to declare which searchable activity to use for searches, the activity has enabled the
 search dialog.
-While the user is in this activity, the device SEARCH button (if available) and the {@link
-android.app.Activity#onSearchRequested onSearchRequested()} method will activate the search dialog.
+While the user is in this activity, the {@link
+android.app.Activity#onSearchRequested onSearchRequested()} method activates the search dialog.
 When the user executes the search, the system starts {@code SearchableActivity} and delivers it
 the {@link android.content.Intent#ACTION_SEARCH} intent.</p>
 
@@ -495,21 +482,22 @@
 
 <h3 id="InvokingTheSearchDialog">Invoking the search dialog</h3>
 
-<p>As mentioned above, the device SEARCH button will open the search dialog as long as the current
-activity has declared in the manifest the searchable activity to use.</p>
+<p>Although some devices provide a dedicated Search button, the behavior of the button may vary
+between devices and many devices do not provide a Search button at all. So when using the search
+dialog, you <strong>must provide a search button in your UI</strong> that activates the search
+dialog by calling {@link android.app.Activity#onSearchRequested()}.</p>
 
-<p>However, some devices do not include a dedicated SEARCH button, so you should not assume that
-it's always available. When using the search dialog, you must <strong>always provide another search
-button in your UI</strong> that activates the search dialog by calling {@link
-android.app.Activity#onSearchRequested()}.</p>
+<p>For instance, you should add a Search button in your <a
+href="{@docRoot}guide/topics/ui/menus.html#options-menu">Options Menu</a> or UI
+layout that calls {@link android.app.Activity#onSearchRequested()}. For consistency with
+the Android system and other apps, you should label your button with the Android Search icon that's
+available from the <a href="{@docRoot}design/downloads/index.html#action-bar-icon-pack">Action Bar
+Icon Pack</a>.</p>
 
-<p>For instance, you should either provide a menu item in your <a
-href="{@docRoot}guide/topics/ui/menus.html#options-menu">Options Menu</a> or a button in your
-activity layout that
-activates search by calling {@link android.app.Activity#onSearchRequested()}. The <a
-href="{@docRoot}shareables/search_icons.zip">search_icons.zip</a> file includes icons for
-medium and high density screens, which you can use for your search menu item or button (low-density
-screens scale-down the hdpi image by one half). </p>
+<p class="note"><strong>Note:</strong> If your app uses the <a
+href="{@docRoot}guide/topics/ui/actionbar.html">action bar</a>, then you should not use
+the search dialog for your search interface. Instead, use the <a href="#UsingSearchWidget">search
+widget</a> as a collapsible view in the action bar.</p>
 
 <p>You can also enable "type-to-search" functionality, which activates the search dialog when the
 user starts typing on the keyboard&mdash;the keystrokes are inserted into the search dialog. You can
diff --git a/docs/html/guide/topics/security/security.jd b/docs/html/guide/topics/security/security.jd
index eeaac44..9cdccae 100644
--- a/docs/html/guide/topics/security/security.jd
+++ b/docs/html/guide/topics/security/security.jd
@@ -135,8 +135,7 @@
 
 <p>To provide additional protection for sensitive data, some applications
 choose to encrypt local files using a key that is not accessible to the
-application. (For example, a key can be placed in a <code><a
-href={@docRoot}reference/java/security/KeyStore.html">KeyStore</a></code> and
+application. (For example, a key can be placed in a {@link java.security.KeyStore} and
 protected with a user password that is not stored on the device).  While this
 does not protect data from a root compromise that can monitor the user
 inputting the password,  it can provide protection for a lost device without <a
@@ -717,8 +716,7 @@
 AccountManager</a></code> using <code><a
 href="{@docRoot}reference/android/content/pm/PackageManager.html#checkSignatures(java.lang.String,%20java.lang.String)">checkSignature()</a></code>.
 Alternatively, if only one application will use the credential, you might use a
-<code><a
-href={@docRoot}reference/java/security/KeyStore.html">KeyStore</a></code> for
+{@link java.security.KeyStore} for
 storage.</p>
 
 <a name="Crypto"></a>
@@ -752,8 +750,7 @@
 number generator significantly weakens the strength of the algorithm, and may
 allow offline attacks.</p>
 
-<p>If you need to store a key for repeated use, use a mechanism like <code><a
-href="{@docRoot}reference/java/security/KeyStore.html">KeyStore</a></code> that
+<p>If you need to store a key for repeated use, use a mechanism like {@link java.security.KeyStore} that
 provides a mechanism for long term storage and retrieval of cryptographic
 keys.</p>
 
diff --git a/docs/html/guide/topics/sensors/index.jd b/docs/html/guide/topics/sensors/index.jd
index a045899..726476a 100644
--- a/docs/html/guide/topics/sensors/index.jd
+++ b/docs/html/guide/topics/sensors/index.jd
@@ -18,7 +18,7 @@
 issues that we’ve noticed causing problems in some apps.</p>
     </a>
     
-    <a href="android-developers.blogspot.com/2011/06/deep-dive-into-location.html">
+    <a href="http://android-developers.blogspot.com/2011/06/deep-dive-into-location.html">
       <h4>A Deep Dive Into Location</h4>
       <p>I’ve written an open-source reference app that incorporates all of the tips, tricks, and
 cheats I know to reduce the time between opening an app and seeing an up-to-date list of nearby
diff --git a/docs/html/guide/topics/sensors/sensors_overview.jd b/docs/html/guide/topics/sensors/sensors_overview.jd
index e38a843..a162ccf 100644
--- a/docs/html/guide/topics/sensors/sensors_overview.jd
+++ b/docs/html/guide/topics/sensors/sensors_overview.jd
@@ -662,7 +662,7 @@
 <h4>Using Google Play filters to target specific sensor configurations</h4>
 
 <p>If you are publishing your application on Google Play you can use the
-  <a href="{@docRoot}guide//topics/manifest/uses-feature-element.html"><code>&lt;uses-feature&gt;
+  <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code>&lt;uses-feature&gt;
     </code></a> element in your manifest file to filter your application from devices that do not
 have the appropriate sensor configuration for your application. The
 <code>&lt;uses-feature&gt;</code> element has several hardware descriptors that let you filter
diff --git a/docs/html/guide/topics/text/creating-input-method.jd b/docs/html/guide/topics/text/creating-input-method.jd
index e49610f..7086824 100644
--- a/docs/html/guide/topics/text/creating-input-method.jd
+++ b/docs/html/guide/topics/text/creating-input-method.jd
@@ -1,6 +1,5 @@
 page.title=Creating an Input Method
 parent.title=Articles
-parent.link=../browser.html?tag=article
 @jd:body
 
 <div id="qv-wrapper">
@@ -162,8 +161,8 @@
     In this example, {@code MyKeyboardView} is an instance of a custom implementation of 
     {@link android.inputmethodservice.KeyboardView} that renders a 
     {@link android.inputmethodservice.Keyboard}. If you’re building a traditional QWERTY keyboard, 
-    see the <a href=”{@docRoot}resources/samples/SoftKeyboard/index.html”>Soft Keyboard</a> sample 
-    app for an example of how to extend the {@link android.inputmethodservice.KeyboardView} class.
+    see the  Soft Keyboard <a href="{@docRoot}tools/samples/index.html">sample 
+    app</a> for an example of how to extend the {@link android.inputmethodservice.KeyboardView} class.
 </p>
 <h3 id="CandidateView">Candidates view</h3>
 <p>
@@ -175,7 +174,8 @@
     default behavior, so you don’t have to implement this if you don’t provide suggestions).</p>
 <p>
     For an example implementation that provides user suggestions, see the 
-    <a href=”{@docRoot}resources/samples/SoftKeyboard/index.html”>Soft Keyboard</a> sample app.
+    Soft Keyboard <a href="{@docRoot}tools/samples/index.html">sample 
+    app</a>.
 </p>
 <h3 id="DesignConsiderations">UI design considerations</h3>
 <p>
@@ -388,8 +388,8 @@
     To intercept hardware keys, override 
     {@link android.inputmethodservice.InputMethodService#onKeyDown(int, KeyEvent) onKeyDown()}
     and {@link android.inputmethodservice.InputMethodService#onKeyUp(int, KeyEvent) onKeyUp()}. 
-    See the <a href=”{@docRoot}resources/samples/SoftKeyboard/index.html”>Soft Keyboard</a> sample 
-    app for an example.
+    See the Soft Keyboard <a href="{@docRoot}tools/samples/index.html">sample 
+    app</a> for an example.
 </p>
 <p>
     Remember to call the <code>super()</code> method for keys you don't want to handle yourself.
diff --git a/docs/html/guide/topics/text/spell-checker-framework.jd b/docs/html/guide/topics/text/spell-checker-framework.jd
index 1c2e211..7f7a0b8 100644
--- a/docs/html/guide/topics/text/spell-checker-framework.jd
+++ b/docs/html/guide/topics/text/spell-checker-framework.jd
@@ -1,6 +1,5 @@
 page.title=Spelling Checker Framework
 parent.title=Articles
-parent.link=../browser.html?tag=article
 @jd:body
 <div id="qv-wrapper">
 <div id="qv">
diff --git a/docs/html/guide/topics/ui/accessibility/services.jd b/docs/html/guide/topics/ui/accessibility/services.jd
index 0c1d065..7d36181 100644
--- a/docs/html/guide/topics/ui/accessibility/services.jd
+++ b/docs/html/guide/topics/ui/accessibility/services.jd
@@ -10,7 +10,7 @@
   <ol>
     <li><a href="#manifest">Manifest Declarations and Permissions</a>
       <ol>
-        <li><a href="service-declaration">Accessibility service declaration</a></li>
+        <li><a href="#service-declaration">Accessibility service declaration</a></li>
         <li><a href="#service-config">Accessibility service configuration</a></li>
       </ol>
     </li>
diff --git a/docs/html/guide/topics/ui/controls/checkbox.jd b/docs/html/guide/topics/ui/controls/checkbox.jd
index 35b8f56..ea70980 100644
--- a/docs/html/guide/topics/ui/controls/checkbox.jd
+++ b/docs/html/guide/topics/ui/controls/checkbox.jd
@@ -65,7 +65,7 @@
 <pre>
 public void onCheckboxClicked(View view) {
     // Is the view now checked?
-    boolean checked = (CheckBox) view).isChecked();
+    boolean checked = ((CheckBox) view).isChecked();
     
     // Check which checkbox was clicked
     switch(view.getId()) {
diff --git a/docs/html/guide/topics/ui/controls/radiobutton.jd b/docs/html/guide/topics/ui/controls/radiobutton.jd
index f6f6d49..c96e576 100644
--- a/docs/html/guide/topics/ui/controls/radiobutton.jd
+++ b/docs/html/guide/topics/ui/controls/radiobutton.jd
@@ -72,7 +72,7 @@
 <pre>
 public void onRadioButtonClicked(View view) {
     // Is the button now checked?
-    boolean checked = (RadioButton) view).isChecked();
+    boolean checked = ((RadioButton) view).isChecked();
     
     // Check which radio button was clicked
     switch(view.getId()) {
diff --git a/docs/html/guide/topics/ui/declaring-layout.jd b/docs/html/guide/topics/ui/declaring-layout.jd
index 3c9faa8..e229f23 100644
--- a/docs/html/guide/topics/ui/declaring-layout.jd
+++ b/docs/html/guide/topics/ui/declaring-layout.jd
@@ -32,12 +32,17 @@
     <li>{@link android.view.ViewGroup}</li>
     <li>{@link android.view.ViewGroup.LayoutParams}</li>
   </ol>
-</div>
+  
+  <h2>See also</h2>
+  <ol>
+    <li><a href="{@docRoot}training/basics/firstapp/building-ui.html">Building a Simple User
+Interface</a></li> </div>
 </div>
 
-<p>Your layout is the architecture for the user interface in an Activity.
-It defines the layout structure and holds all the elements that appear to the user. 
-You can declare your layout in two ways:</p>
+<p>A layout defines the visual structure for a user interface, such as the UI for an <a
+href="{@docRoot}guide/components/activities.html">activity</a> or <a
+href="{@docRoot}guide/topics/appwidgets/index.html">app widget</a>.
+You can declare a layout in two ways:</p>
 <ul>
 <li><strong>Declare UI elements in XML</strong>. Android provides a straightforward XML 
 vocabulary that corresponds to the View classes and subclasses, such as those for widgets and layouts.</li>
@@ -77,16 +82,6 @@
 
 <h2 id="write">Write the XML</h2>
 
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<p>For your convenience, the API reference documentation for UI related classes
-lists the available XML attributes that correspond to the class methods, including inherited
-attributes.</p>
-<p>To learn more about the available XML elements and attributes, as well as the format of the XML file, see <a
-href="{@docRoot}guide/topics/resources/available-resources.html#layoutresources">Layout Resources</a>.</p>
-</div>
-</div>
-
 <p>Using Android's XML vocabulary, you can quickly design UI layouts and the screen elements they contain, in the same way you create web pages in HTML &mdash; with a series of nested elements. </p>
 
 <p>Each layout file must contain exactly one root element, which must be a View or ViewGroup object. Once you've defined the root element, you can add additional layout objects or widgets as child elements to gradually build a View hierarchy that defines your layout. For example, here's an XML layout that uses a vertical {@link android.widget.LinearLayout}
@@ -111,7 +106,8 @@
 <p>After you've declared your layout in XML, save the file with the <code>.xml</code> extension, 
 in your Android project's <code>res/layout/</code> directory, so it will properly compile. </p>
 
-<p>We'll discuss each of the attributes shown here a little later.</p>
+<p>More information about the syntax for a layout XML file is available in the <a
+href="{@docRoot}guide/topics/resources/layout-resource.html">Layout Resources</a> document.</p>
 
 <h2 id="load">Load the XML Resource</h2>
 
@@ -406,13 +402,13 @@
 
 <div class="layout first">
   <h4><a href="layout/listview.html">List View</a></h4>
-  <a href="layout/list.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
+  <a href="layout/listview.html"><img src="{@docRoot}images/ui/listview-small.png" alt="" /></a>
   <p>Displays a scrolling single column list.</p>
 </div>
 
 <div class="layout">
   <h4><a href="layout/gridview.html">Grid View</a></h4>
-  <a href="layout/grid.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
+  <a href="layout/gridview.html"><img src="{@docRoot}images/ui/gridview-small.png" alt="" /></a>
   <p>Displays a scrolling grid of columns and rows.</p>
 </div>
 
diff --git a/docs/html/guide/topics/ui/layout/gridview.jd b/docs/html/guide/topics/ui/layout/gridview.jd
index 284a25a..67bdd0f 100644
--- a/docs/html/guide/topics/ui/layout/gridview.jd
+++ b/docs/html/guide/topics/ui/layout/gridview.jd
@@ -1,4 +1,4 @@
-page.title=Grid
+page.title=Grid View
 parent.title=Layouts
 parent.link=layout-objects.html
 @jd:body
@@ -22,10 +22,15 @@
 scrollable grid. The grid items are automatically inserted to the layout using a {@link
 android.widget.ListAdapter}.</p>
 
+<p>For an introduction to how you can dynamically insert views using an adapter, read
+<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Building Layouts with
+  an Adapter</a>.</p>
+
 <img src="{@docRoot}images/ui/gridview.png" alt="" />
 
 
 <h2 id="example">Example</h2>
+
 <p>In this tutorial, you'll create a grid of image thumbnails. When an item is selected, a
 toast message will display the position of the image.</p>
 
diff --git a/docs/html/guide/topics/ui/layout/listview.jd b/docs/html/guide/topics/ui/layout/listview.jd
index 26a7597..fee5292 100644
--- a/docs/html/guide/topics/ui/layout/listview.jd
+++ b/docs/html/guide/topics/ui/layout/listview.jd
@@ -28,6 +28,10 @@
 android.widget.Adapter} that pulls content from a source such as an array or database query and
 converts each item result into a view that's placed into the list.</p>
 
+<p>For an introduction to how you can dynamically insert views using an adapter, read
+<a href="{@docRoot}guide/topics/ui/declaring-layout.html#AdapterViews">Building Layouts with
+  an Adapter</a>.</p>
+
 <img src="{@docRoot}images/ui/listview.png" alt="" />
 
 <h2 id="Loader">Using a Loader</h2>
@@ -147,5 +151,5 @@
 Provider</a>, if you want to
 try this code, your app must request the {@link android.Manifest.permission#READ_CONTACTS}
 permission in the manifest file:<br/>
-<code>&lt;uses-permission android:name="android.permission.READ_CONTACTS" /></p>
+<code>&lt;uses-permission android:name="android.permission.READ_CONTACTS" /></code></p>
 
diff --git a/docs/html/guide/topics/ui/layout/relative.jd b/docs/html/guide/topics/ui/layout/relative.jd
index ee6cf02..47f9417 100644
--- a/docs/html/guide/topics/ui/layout/relative.jd
+++ b/docs/html/guide/topics/ui/layout/relative.jd
@@ -44,19 +44,19 @@
 include:</p>
 <dl>
   <dt><a
-href="{docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_alignParentTop"
+href="{@docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_alignParentTop"
 >{@code android:layout_alignParentTop}</a></dt>
     <dd>If {@code "true"}, makes the top edge of this view match the top edge of the parent. </dd>
   <dt><a
-href="{docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_centerVertical"
+href="{@docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_centerVertical"
 >{@code android:layout_centerVertical}</a></dt>
     <dd>If {@code "true"}, centers this child vertically within its parent.</dd>
   <dt><a
-href="{docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_below"
+href="{@docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_below"
 >{@code android:layout_below}</a></dt>
     <dd>Positions the top edge of this view below the view specified with a resource ID.</dd>
   <dt><a
-href="{docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_toRightOf"
+href="{@docRoot}reference/android/widget/RelativeLayout.LayoutParams.html#attr_android:layout_toRightOf"
 >{@code android:layout_toRightOf}</a></dt>
     <dd>Positions the left edge of this view to the right of the view specified with a resource ID.</dd>
 </dl>
diff --git a/docs/html/guide/topics/ui/settings.jd b/docs/html/guide/topics/ui/settings.jd
new file mode 100644
index 0000000..33e164b
--- /dev/null
+++ b/docs/html/guide/topics/ui/settings.jd
@@ -0,0 +1,1171 @@
+page.title=Settings
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+<ol>
+  <li><a href="#Overview">Overview</a>
+    <ol>
+      <li><a href="#SettingTypes">Preferences</a></li>
+    </ol>
+  </li>
+  <li><a href="#DefiningPrefs">Defining Preferences in XML</a>
+    <ol>
+      <li><a href="#Groups">Creating setting groups</a></li>
+      <li><a href="#Intents">Using intents</a></li>
+    </ol>
+  </li>
+  <li><a href="#Activity">Creating a Preference Activity</a></li>
+  <li><a href="#Fragment">Using Preference Fragments</a></li>
+  <li><a href="#Defaults">Setting Default Values</a></li>
+  <li><a href="#PreferenceHeaders">Using Preference Headers</a>
+    <ol>
+      <li><a href="#CreateHeaders">Creating the headers file</a></li>
+      <li><a href="#DisplayHeaders">Displaying the headers</a></li>
+      <li><a href="#BackCompatHeaders">Supporting older versions with preference headers</a></li>
+    </ol>
+  </li>
+  <li><a href="#ReadingPrefs">Reading Preferences</a>
+    <ol>
+      <li><a href="#Listening">Listening for preference changes</a></li>
+    </ol>
+  </li>
+  <li><a href="#NetworkUsage">Managing Network Usage</a></li>
+  <li><a href="#Custom">Building a Custom Preference</a>
+    <ol>
+      <li><a href="#CustomSelected">Specifying the user interface</a></li>
+      <li><a href="#CustomSave">Saving the setting's value</a></li>
+      <li><a href="#CustomInitialize">Initializing the current value</a></li>
+      <li><a href="#CustomDefault">Providing a default value</a></li>
+      <li><a href="#CustomSaveState">Saving and restoring the Preference's state</a></li>
+    </ol>
+  </li>
+</ol>
+
+<h2>Key classes</h2>
+<ol>
+  <li>{@link android.preference.Preference}</li>
+  <li>{@link android.preference.PreferenceActivity}</li>
+  <li>{@link android.preference.PreferenceFragment}</li>
+</ol>
+
+
+<h2>See also</h2>
+<ol>
+  <li><a
+href="{@docRoot}design/patterns/settings.html">Settings design guide</a></li>
+</ol>
+</div>
+</div>
+
+
+
+
+<p>Applications often include settings that allow users to modify app features and behaviors. For
+example, some apps allow users to specify whether notifications are enabled or specify how often the
+application syncs data with the cloud.</p>
+
+<p>If you want to provide settings for your app, you should use
+Android's {@link android.preference.Preference} APIs to build an interface that's consistent with
+the user experience in other Android apps (including the system settings). This document describes
+how to build your app settings using {@link android.preference.Preference} APIs.</p>
+
+<div class="note design">
+<p><strong>Settings Design</strong></p>
+  <p>For information about how to design your settings, read the <a
+href="{@docRoot}design/patterns/settings.html">Settings</a> design guide.</p>
+</div>
+
+
+<img src="{@docRoot}images/ui/settings/settings.png" alt="" width="435" />
+<p class="img-caption"><strong>Figure 1.</strong> Screenshots from the Android Messaging app's
+settings. Selecting an item defined by a {@link android.preference.Preference} 
+opens an interface to change the setting.</p>
+
+
+
+
+<h2 id="Overview">Overview</h2>
+
+<p>Instead of using {@link android.view.View} objects to build the user interface, settings are
+built using various subclasses of the {@link android.preference.Preference} class that you
+declare in an XML file.</p>
+
+<p>A {@link android.preference.Preference} object is the building block for a single
+setting. Each {@link android.preference.Preference} appears as an item in a list and provides the
+appropriate UI for users to modify the setting. For example, a {@link
+android.preference.CheckBoxPreference} creates a list item that shows a checkbox, and a {@link
+android.preference.ListPreference} creates an item that opens a dialog with a list of choices.</p>
+
+<p>Each {@link android.preference.Preference} you add has a corresponding key-value pair that
+the system uses to save the setting in a default {@link android.content.SharedPreferences}
+file for your app's settings. When the user changes a setting, the system updates the corresponding
+value in the {@link android.content.SharedPreferences} file for you. The only time you should
+directly interact with the associated {@link android.content.SharedPreferences} file is when you
+need to read the value in order to determine your app's behavior based on the user's setting.</p>
+
+<p>The value saved in {@link android.content.SharedPreferences} for each setting can be one of the
+following data types:</p>
+
+<ul>
+  <li>Boolean</li>
+  <li>Float</li>
+  <li>Int</li>
+  <li>Long</li>
+  <li>String</li>
+  <li>String {@link java.util.Set}</li>
+</ul>
+
+<p>Because your app's settings UI is built using {@link android.preference.Preference} objects
+instead of
+{@link android.view.View} objects, you need to use a specialized {@link android.app.Activity} or
+{@link android.app.Fragment} subclass to display the list settings:</p>
+
+<ul>
+  <li>If your app supports versions of Android older than 3.0 (API level 10 and lower), you must
+build the activity as an extension of the {@link android.preference.PreferenceActivity} class.</li>
+  <li>On Android 3.0 and later, you should instead use a traditional {@link android.app.Activity}
+that hosts a {@link android.preference.PreferenceFragment} that displays your app settings.
+However, you can also use {@link android.preference.PreferenceActivity} to create a two-pane layout
+for large screens when you have multiple groups of settings.</li>
+</ul>
+
+<p>How to set up your {@link android.preference.PreferenceActivity} and instances of {@link
+android.preference.PreferenceFragment} is discussed in the sections about <a
+href="#Activity">Creating a Preference Activity</a> and <a href="#Fragment">Using
+Preference Fragments</a>.</p>
+
+
+<h3 id="SettingTypes">Preferences</h3>
+
+<p>Every setting for your app is represented by a specific subclass of the {@link
+android.preference.Preference} class. Each subclass includes a set of core properties that allow you
+to specify things such as a title for the setting and the default value. Each subclass also provides
+its own specialized properties and user interface. For instance, figure 1 shows a screenshot from
+the Messaging app's settings. Each list item in the settings screen is backed by a different {@link
+android.preference.Preference} object.</p>
+
+<p>A few of the most common preferences are:</p>
+
+<dl>
+  <dt>{@link android.preference.CheckBoxPreference}</dt>
+  <dd>Shows an item with a checkbox for a setting that is either enabled or disabled. The saved
+value is a boolean (<code>true</code> if it's checked).</dd>
+
+  <dt>{@link android.preference.ListPreference}</dt>
+  <dd>Opens a dialog with a list of radio buttons. The saved value
+can be any one of the supported value types (listed above).</dd>
+
+  <dt>{@link android.preference.EditTextPreference}</dt>
+  <dd>Opens a dialog with an {@link android.widget.EditText} widget. The saved value is a {@link
+java.lang.String}.</dd>
+</dl>
+
+<p>See the {@link android.preference.Preference} class for a list of all other subclasses and their
+corresponding properties.</p>
+
+<p>Of course, the built-in classes don't accommodate every need and your application might require
+something more specialized. For example, the platform currently does not provide a {@link
+android.preference.Preference} class for picking a number or a date. So you might need to define
+your own {@link android.preference.Preference} subclass. For help doing so, see the section about <a
+href="#Custom">Building a Custom Preference</a>.</p>
+
+
+
+<h2 id="DefiningPrefs">Defining Preferences in XML</h2>
+
+<p>Although you can instantiate new {@link android.preference.Preference} objects at runtime, you
+should define your list of settings in XML with a hierarchy of {@link android.preference.Preference}
+objects. Using an XML file to define your collection of settings is preferred because the file
+provides an easy-to-read structure that's simple to update. Also, your app's settings are
+generally pre-determined, although you can still modify the collection at runtime.</p>
+
+<p>Each {@link android.preference.Preference} subclass can be declared with an XML element that
+matches the class name, such as {@code &lt;CheckBoxPreference>}.</p>
+
+<p>You must save the XML file in the {@code res/xml/} directory. Although you can name the file
+anything you want, it's traditionally named {@code preferences.xml}. You usually need only one file,
+because branches in the hierarchy (that open their own list of settings) are declared using nested
+instances of {@link android.preference.PreferenceScreen}.</p>
+
+<p class="note"><strong>Note:</strong> If you want to create a multi-pane layout for your
+settings, then you need separate XML files for each fragment.</p>
+
+<p>The root node for the XML file must be a {@link android.preference.PreferenceScreen
+&lt;PreferenceScreen&gt;} element. Within this element is where you add each {@link
+android.preference.Preference}. Each child you add within the
+{@link android.preference.PreferenceScreen &lt;PreferenceScreen&gt;} element appears as a single
+item in the list of settings.</p>
+
+<p>For example:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;CheckBoxPreference
+        android:key="pref_sync"
+        android:title="@string/pref_sync"
+        android:summary="@string/pref_sync_summ"
+        android:defaultValue="true" />
+    &lt;ListPreference
+        android:dependency="pref_sync"
+        android:key="pref_syncConnectionType"
+        android:title="@string/pref_syncConnectionType"
+        android:dialogTitle="@string/pref_syncConnectionType"
+        android:entries="@array/pref_syncConnectionTypes_entries"
+        android:entryValues="@array/pref_syncConnectionTypes_values"
+        android:defaultValue="@string/pref_syncConnectionTypes_default" />
+&lt;/PreferenceScreen>
+</pre>
+
+<p>In this example, there's a {@link android.preference.CheckBoxPreference} and a {@link
+android.preference.ListPreference}. Both items include the following three attributes:</p>
+
+<dl>
+  <dt>{@code android:key}</dt>
+  <dd>This attribute is required for preferences that persist a data value. It specifies the unique
+key (a string) the system uses when saving this setting's value in the {@link
+android.content.SharedPreferences}. 
+  <p>The only instances in which this attribute is <em>not required</em> is when the preference is a
+{@link android.preference.PreferenceCategory} or {@link android.preference.PreferenceScreen}, or the
+preference specifies an {@link android.content.Intent} to invoke (with an <a
+href="#Intents">{@code &lt;intent&gt;}</a> element) or a {@link android.app.Fragment} to display (with an <a
+href="{@docRoot}reference/android/preference/Preference.html#attr_android:fragment">{@code
+android:fragment}</a> attribute).</p>
+  </dd>
+  <dt>{@code android:title}</dt>
+  <dd>This provides a user-visible name for the setting.</dd>
+  <dt>{@code android:defaultValue}</dt>
+  <dd>This specifies the initial value that the system should set in the {@link
+android.content.SharedPreferences} file. You should supply a default value for all
+settings.</dd>
+</dl>
+
+<p>For information about all other supported attributes, see the {@link
+android.preference.Preference} (and respective subclass) documentation.</p>
+
+
+<div class="figure" style="width:300px">
+  <img src="{@docRoot}images/ui/settings/settings-titles.png" alt="" />
+  <p class="img-caption"><strong>Figure 2.</strong> Setting categories
+    with titles. <br/><b>1.</b> The category is specified by the {@link
+android.preference.PreferenceCategory &lt;PreferenceCategory>} element. <br/><b>2.</b> The title is
+specified with the {@code android:title} attribute.</p>
+</div>
+
+
+<p>When your list of settings exceeds about 10 items, you might want to add titles to
+define groups of settings or display those groups in a
+separate screen. These options are described in the following sections.</p>
+
+
+<h3 id="Groups">Creating setting groups</h3>
+
+<p>If you present a list of 10 or more settings, users
+may have difficulty scanning, comprehending, and processing them. You can remedy this by
+dividing some or all of the settings into groups, effectively turning one long list into multiple
+shorter lists. A group of related settings can be presented in one of two ways:</p>
+
+<ul>
+  <li><a href="#Titles">Using titles</a></li>
+  <li><a href="#Subscreens">Using subscreens</a></li>
+</ul>
+
+<p>You can use one or both of these grouping techniques to organize your app's settings. When
+deciding which to use and how to divide your settings, you should follow the guidelines in Android
+Design's <a href="{@docRoot}design/patterns/settings.html">Settings</a> guide.</p>
+
+
+<h4 id="Titles">Using titles</h4>
+
+<p>If you want to provide dividers with headings between groups of settings (as shown in figure 2),
+place each group of {@link android.preference.Preference} objects inside a {@link
+android.preference.PreferenceCategory}.</p>
+
+<p>For example:</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;PreferenceCategory 
+        android:title="&#64;string/pref_sms_storage_title"
+        android:key="pref_key_storage_settings">
+        &lt;CheckBoxPreference
+            android:key="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_auto_delete"
+            android:title="&#64;string/pref_title_auto_delete"
+            android:defaultValue="false"... />
+        &lt;Preference 
+            android:key="pref_key_sms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_sms_delete"... />
+        &lt;Preference 
+            android:key="pref_key_mms_delete_limit"
+            android:dependency="pref_key_auto_delete"
+            android:summary="&#64;string/pref_summary_delete_limit"
+            android:title="&#64;string/pref_title_mms_delete" ... />
+    &lt;/PreferenceCategory>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h4 id="Subscreens">Using subscreens</h4>
+
+<p>If you want to place groups of settings into a subscreen (as shown in figure 3), place the group
+of {@link android.preference.Preference} objects inside a {@link
+android.preference.PreferenceScreen}.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-subscreen.png" alt="" />
+<p class="img-caption"><strong>Figure 3.</strong> Setting subscreens. The {@code
+&lt;PreferenceScreen>} element
+creates an item that, when selected, opens a separate list to display the nested settings.</p>
+
+<p>For example:</p>
+
+<pre>
+&lt;PreferenceScreen  xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;!-- opens a subscreen of settings -->
+    &lt;PreferenceScreen
+        android:key="button_voicemail_category_key"
+        android:title="&#64;string/voicemail"
+        android:persistent="false">
+        &lt;ListPreference
+            android:key="button_voicemail_provider_key"
+            android:title="&#64;string/voicemail_provider" ... />
+        &lt;!-- opens another nested subscreen -->
+        &lt;PreferenceScreen
+            android:key="button_voicemail_setting_key"
+            android:title="&#64;string/voicemail_settings"
+            android:persistent="false">
+            ...
+        &lt;/PreferenceScreen>
+        &lt;RingtonePreference
+            android:key="button_voicemail_ringtone_key"
+            android:title="&#64;string/voicemail_ringtone_title"
+            android:ringtoneType="notification" ... />
+        ...
+    &lt;/PreferenceScreen>
+    ...
+&lt;/PreferenceScreen>
+</pre>
+
+
+<h3 id="Intents">Using intents</h3>
+
+<p>In some cases, you might want a preference item to open a different activity instead of a
+settings screen, such as a web browser to view a web page. To invoke an {@link
+android.content.Intent} when the user selects a preference item, add an {@code &lt;intent&gt;}
+element as a child of the corresponding {@code &lt;Preference&gt;} element.</p>
+
+<p>For example, here's how you can use a preference item to open a web page:</p>
+
+<pre>
+&lt;Preference android:title="@string/prefs_web_page" >
+    &lt;intent android:action="android.intent.action.VIEW"
+            android:data="http://www.example.com" />
+&lt;/Preference>
+</pre>
+
+<p>You can create both implicit and explicit intents using the following attributes:</p>
+
+<dl>
+  <dt>{@code android:action}</dt>
+    <dd>The action to assign, as per the {@link android.content.Intent#setAction setAction()}
+method.</dd>
+  <dt>{@code android:data}</dt>
+    <dd>The data to assign, as per the {@link android.content.Intent#setData setData()} method.</dd>
+  <dt>{@code android:mimeType}</dt>
+    <dd>The MIME type to assign, as per the {@link android.content.Intent#setType setType()}
+method.</dd>
+  <dt>{@code android:targetClass}</dt>
+    <dd>The class part of the component name, as per the {@link android.content.Intent#setComponent
+setComponent()} method.</dd>
+  <dt>{@code android:targetPackage}</dt>
+    <dd>The package part of the component name, as per the {@link
+android.content.Intent#setComponent setComponent()} method.</dd>
+</dl>
+
+
+
+<h2 id="Activity">Creating a Preference Activity</h2>
+
+<p>To display your settings in an activity, extend the {@link
+android.preference.PreferenceActivity} class. This is an extension of the traditional {@link
+android.app.Activity} class that displays a list of settings based on a hierarchy of {@link
+android.preference.Preference} objects. The {@link android.preference.PreferenceActivity}
+automatically persists the settings associated with each {@link
+android.preference.Preference} when the user makes a change.</p>
+
+<p class="note"><strong>Note:</strong> If you're developing your application for Android 3.0 and
+higher, you should instead use {@link android.preference.PreferenceFragment}. Go to the next
+section about <a href="#Fragment">Using Preference Fragments</a>.</p>
+
+<p>The most important thing to remember is that you do not load a layout of views during the {@link
+android.preference.PreferenceActivity#onCreate onCreate()} callback. Instead, you call {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} to
+add the preferences you've declared in an XML file to the activity. For example, here's the bare
+minimum code required for a functional {@link android.preference.PreferenceActivity}:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        addPreferencesFromResource(R.xml.preferences);
+    }
+}
+</pre>
+
+<p>This is actually enough code for some apps, because as soon as the user modifies a preference,
+the system saves the changes to a default {@link android.content.SharedPreferences} file that your
+other application components can read when you need to check the user's settings. Many apps,
+however, require a little more code in order to listen for changes that occur to the preferences.
+For information about listening to changes in the {@link android.content.SharedPreferences} file,
+see the section about <a href="#ReadingPrefs">Reading Preferences</a>.</p>
+
+
+
+
+<h2 id="Fragment">Using Preference Fragments</h2>
+
+<p>If you're developing for Android 3.0 (API level 11) and higher, you should use a {@link
+android.preference.PreferenceFragment} to display your list of {@link android.preference.Preference}
+objects. You can add a {@link android.preference.PreferenceFragment} to any activity&mdash;you don't
+need to use {@link android.preference.PreferenceActivity}.</p>
+
+<p><a href="{@docRoot}guide/components/fragments.html">Fragments</a> provide a more
+flexible architecture for your application, compared to using activities alone, no matter what kind
+of activity you're building. As such, we suggest you use {@link
+android.preference.PreferenceFragment} to control the display of your settings instead of {@link
+android.preference.PreferenceActivity} when possible.</p>
+
+<p>Your implementation of {@link android.preference.PreferenceFragment} can be as simple as
+defining the {@link android.preference.PreferenceFragment#onCreate onCreate()} method to load a
+preferences file with {@link android.preference.PreferenceFragment#addPreferencesFromResource
+addPreferencesFromResource()}. For example:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Load the preferences from an XML resource
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+}
+</pre>
+
+<p>You can then add this fragment to an {@link android.app.Activity} just as you would for any other
+{@link android.app.Fragment}. For example:</p>
+
+<pre>
+public class SettingsActivity extends Activity {
+    &#64;Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Display the fragment as the main content.
+        getFragmentManager().beginTransaction()
+                .replace(android.R.id.content, new SettingsFragment())
+                .commit();
+    }
+}
+</pre>
+
+<p class="note"><strong>Note:</strong> A {@link android.preference.PreferenceFragment} doesn't have
+a its own {@link android.content.Context} object. If you need a {@link android.content.Context}
+object, you can call {@link android.app.Fragment#getActivity()}. However, be careful to call
+{@link android.app.Fragment#getActivity()} only when the fragment is attached to an activity. When
+the fragment is not yet attached, or was detached during the end of its lifecycle, {@link
+android.app.Fragment#getActivity()} will return null.</p>
+
+
+<h2 id="Defaults">Setting Default Values</h2>
+
+<p>The preferences you create probably define some important behaviors for your application, so it's
+necessary that you initialize the associated {@link android.content.SharedPreferences} file with
+default values for each {@link android.preference.Preference} when the user first opens your
+application.</p>
+
+<p>The first thing you must do is specify a default value for each {@link
+android.preference.Preference}
+object in your XML file using the {@code android:defaultValue} attribute. The value can be any data
+type that is appropriate for the corresponding {@link android.preference.Preference} object. For
+example:</p>
+
+<pre>
+&lt;!-- default value is a boolean -->
+&lt;CheckBoxPreference
+    android:defaultValue="true"
+    ... />
+
+&lt;!-- default value is a string -->
+&lt;ListPreference
+    android:defaultValue="@string/pref_syncConnectionTypes_default"
+    ... />
+</pre>
+
+<p>Then, from the {@link android.app.Activity#onCreate onCreate()} method in your application's main
+activity&mdash;and in any other activity through which the user may enter your application for the
+first time&mdash;call {@link android.preference.PreferenceManager#setDefaultValues
+setDefaultValues()}:</p>
+
+<pre>
+PreferenceManager.setDefaultValues(this, R.xml.advanced_preferences, false);
+</pre>
+
+<p>Calling this during {@link android.app.Activity#onCreate onCreate()} ensures that your
+application is properly initialized with default settings, which your application might need to
+read in order to determine some behaviors (such as whether to download data while on a
+cellular network).</p>
+
+<p>This method takes three arguments:</p>
+<ul>
+  <li>Your application {@link android.content.Context}.</li>
+  <li>The resource ID for the preference XML file for which you want to set the default values.</li>
+  <li>A boolean indicating whether the default values should be set more than once.
+<p>When <code>false</code>, the system sets the default values only if this method has never been
+called in the past (or the {@link android.preference.PreferenceManager#KEY_HAS_SET_DEFAULT_VALUES}
+in the default value shared preferences file is false).</p></li>
+</ul>
+
+<p>As long as you set the third argument to <code>false</code>, you can safely call this method
+every time your activity starts without overriding the user's saved preferences by resetting them to
+the defaults. However, if you set it to <code>true</code>, you will override any previous
+values with the defaults.</p>
+
+
+
+<h2 id="PreferenceHeaders">Using Preference Headers</h2>
+
+<p>In rare cases, you might want to design your settings such that the first screen
+displays only a list of <a href="#Subscreens">subscreens</a> (such as in the system Settings app,
+as shown in figures 4 and 5). When you're developing such a design for Android 3.0 and higher, you
+should use a new "headers" feature in Android 3.0, instead of building subscreens with nested
+{@link android.preference.PreferenceScreen} elements.</p>
+
+<p>To build your settings with headers, you need to:</p>
+<ol>
+  <li>Separate each group of settings into separate instances of {@link
+android.preference.PreferenceFragment}. That is, each group of settings needs a separate XML
+file.</li>
+  <li>Create an XML headers file that lists each settings group and declares which fragment
+contains the corresponding list of settings.</li>
+  <li>Extend the {@link android.preference.PreferenceActivity} class to host your settings.</li>
+  <li>Implement the {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} callback to specify the
+headers file.</li>
+</ol>
+
+<p>A great benefit to using this design is that {@link android.preference.PreferenceActivity}
+automatically presents the two-pane layout shown in figure 4 when running on large screens.</p>
+
+<p>Even if your application supports versions of Android older than 3.0, you can build your
+application to use {@link android.preference.PreferenceFragment} for a two-pane presentation on
+newer devices while still supporting a traditional multi-screen hierarchy on older
+devices (see the section about <a href="#BackCompatHeaders">Supporting older versions with
+preference headers</a>).</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-tablet.png" alt="" />
+<p class="img-caption"><strong>Figure 4.</strong> Two-pane layout with headers. <br/><b>1.</b> The
+headers are defined with an XML headers file. <br/><b>2.</b> Each group of settings is defined by a
+{@link android.preference.PreferenceFragment} that's specified by a {@code &lt;header>} element in
+the headers file.</p>
+
+<img src="{@docRoot}images/ui/settings/settings-headers-handset.png" alt="" />
+<p class="img-caption"><strong>Figure 5.</strong> A handset device with setting headers. When an
+item is selected, the associated {@link android.preference.PreferenceFragment} replaces the
+headers.</p>
+
+
+<h3 id="CreateHeaders" style="clear:left">Creating the headers file</h3>
+
+<p>Each group of settings in your list of headers is specified by a single {@code &lt;header>}
+element inside a root {@code &lt;preference-headers>} element. For example:</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsActivity$SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;!-- key/value pairs can be included as arguments for the fragment. -->
+        &lt;extra android:name="someKey" android:value="someHeaderValue" />
+    &lt;/header>
+&lt;/preference-headers>
+</pre>
+
+<p>With the {@code android:fragment} attribute, each header declares an instance of {@link
+android.preference.PreferenceFragment} that should open when the user selects the header.</p>
+
+<p>The {@code &lt;extras>} element allows you to pass key-value pairs to the fragment in a {@link
+android.os.Bundle}. The fragment can retrieve the arguments by calling {@link
+android.app.Fragment#getArguments()}. You might pass arguments to the fragment for a variety of
+reasons, but one good reason is to reuse the same subclass of {@link
+android.preference.PreferenceFragment} for each group and use the argument to specify which
+preferences XML file the fragment should load.</p>
+
+<p>For example, here's a fragment that can be reused for multiple settings groups, when each
+header defines an {@code &lt;extra>} argument with the {@code "settings"} key:</p>
+
+<pre>
+public static class SettingsFragment extends PreferenceFragment {
+    &#64;Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        String settings = getArguments().getString("settings");
+        if ("notifications".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_wifi);
+        } else if ("sync".equals(settings)) {
+            addPreferencesFromResource(R.xml.settings_sync);
+        }
+    }
+}
+</pre>
+
+
+
+<h3 id="DisplayHeaders">Displaying the headers</h3>
+
+<p>To display the preference headers, you must implement the {@link
+android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} callback method and call
+{@link android.preference.PreferenceActivity#loadHeadersFromResource
+loadHeadersFromResource()}. For example:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity {
+    &#64;Override
+    public void onBuildHeaders(List&lt;Header> target) {
+        loadHeadersFromResource(R.xml.preference_headers, target);
+    }
+}
+</pre>
+
+<p>When the user selects an item from the list of headers, the system opens the associated {@link
+android.preference.PreferenceFragment}.</p>
+
+<p class="note"><strong>Note:</strong> When using preference headers, your subclass of {@link
+android.preference.PreferenceActivity} doesn't need to implement the {@link
+android.preference.PreferenceActivity#onCreate onCreate()} method, because the only required
+task for the activity is to load the headers.</p>
+
+
+<h3 id="BackCompatHeaders">Supporting older versions with preference headers</h3>
+
+<p>If your application supports versions of Android older than 3.0, you can still use headers to
+provide a two-pane layout when running on Android 3.0 and higher. All you need to do is create an
+additional preferences XML file that uses basic {@link android.preference.Preference
+&lt;Preference>} elements that behave like the header items (to be used by the older Android
+versions).</p>
+
+<p>Instead of opening a new {@link android.preference.PreferenceScreen}, however, each of the {@link
+android.preference.Preference &lt;Preference>} elements sends an {@link android.content.Intent} to
+the {@link android.preference.PreferenceActivity} that specifies which preference XML file to
+load.</p>
+
+<p>For example, here's an XML file for preference headers that is used on Android 3.0
+and higher ({@code res/xml/preference_headers.xml}):</p> 
+
+<pre>
+&lt;preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentOne"
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one" />
+    &lt;header 
+        android:fragment="com.example.prefs.SettingsFragmentTwo"
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" />
+&lt;/preference-headers>
+</pre>
+
+<p>And here is a preference file that provides the same headers for versions older than
+Android 3.0 ({@code res/xml/preference_headers_legacy.xml}):</p>
+
+<pre>
+&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    &lt;Preference 
+        android:title="@string/prefs_category_one"
+        android:summary="@string/prefs_summ_category_one"  >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_ONE" />
+    &lt;/Preference>
+    &lt;Preference 
+        android:title="@string/prefs_category_two"
+        android:summary="@string/prefs_summ_category_two" >
+        &lt;intent 
+            android:targetPackage="com.example.prefs"
+            android:targetClass="com.example.prefs.SettingsActivity"
+            android:action="com.example.prefs.PREFS_TWO" />
+    &lt;/Preference>
+&lt;/PreferenceScreen>
+</pre>
+
+<p>Because support for {@code &lt;preference-headers>} was added in Android 3.0, the system calls
+{@link android.preference.PreferenceActivity#onBuildHeaders onBuildHeaders()} in your {@link
+android.preference.PreferenceActivity} only when running on Androd 3.0 or higher. In order to load
+the "legacy" headers file ({@code preference_headers_legacy.xml}), you must check the Android
+version and, if the version is older than Android 3.0 ({@link
+android.os.Build.VERSION_CODES#HONEYCOMB}), call {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} to
+load the legacy header file. For example:</p>
+
+<pre>
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    ...
+
+    if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+
+// Called only on Honeycomb and later
+&#64;Override
+public void onBuildHeaders(List&lt;Header> target) {
+   loadHeadersFromResource(R.xml.preference_headers, target);
+}
+</pre>
+
+<p>The only thing left to do is handle the {@link android.content.Intent} that's passed into the
+activity to identify which preference file to load. So retrieve the intent's action and compare it
+to known action strings that you've used in the preference XML's {@code &lt;intent>} tags:</p>
+
+<pre>
+final static String ACTION_PREFS_ONE = "com.example.prefs.PREFS_ONE";
+...
+
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+
+    String action = getIntent().getAction();
+    if (action != null &amp;&amp; action.equals(ACTION_PREFS_ONE)) {
+        addPreferencesFromResource(R.xml.preferences);
+    }
+    ...
+
+    else if (Build.VERSION.SDK_INT &lt; Build.VERSION_CODES.HONEYCOMB) {
+        // Load the legacy preferences headers
+        addPreferencesFromResource(R.xml.preference_headers_legacy);
+    }
+}
+</pre>
+
+<p>Beware that consecutive calls to {@link
+android.preference.PreferenceActivity#addPreferencesFromResource addPreferencesFromResource()} will
+stack all the preferences in a single list, so be sure that it's only called once by chaining the
+conditions with else-if statements.</p>
+
+
+
+
+
+<h2 id="ReadingPrefs">Reading Preferences</h2>
+
+<p>By default, all your app's preferences are saved to a file that's accessible from anywhere
+within your application by calling the static method {@link
+android.preference.PreferenceManager#getDefaultSharedPreferences
+PreferenceManager.getDefaultSharedPreferences()}. This returns the {@link
+android.content.SharedPreferences} object containing all the key-value pairs that are associated
+with the {@link android.preference.Preference} objects used in your {@link
+android.preference.PreferenceActivity}.</p>
+
+<p>For example, here's how you can read one of the preference values from any other activity in your
+application:</p>
+
+<pre>
+SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
+String syncConnPref = sharedPref.getString(SettingsActivity.KEY_PREF_SYNC_CONN, "");
+</pre>
+
+
+
+<h3 id="Listening">Listening for preference changes</h3>
+
+<p>There are several reasons you might want to be notified as soon as the use changes one of the
+preferences. In order to receive a callback when a change happens to any one of the preferences,
+implement the {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener
+SharedPreference.OnSharedPreferenceChangeListener} interface and register the listener for the
+{@link android.content.SharedPreferences} object by calling {@link
+android.content.SharedPreferences#registerOnSharedPreferenceChangeListener
+registerOnSharedPreferenceChangeListener()}.</p>
+
+<p>The interface has only one callback method, {@link
+android.content.SharedPreferences.OnSharedPreferenceChangeListener#onSharedPreferenceChanged
+onSharedPreferenceChanged()}, and you might find it easiest to implement the interface as a part of
+your activity. For example:</p>
+
+<pre>
+public class SettingsActivity extends PreferenceActivity
+                              implements OnSharedPreferenceChangeListener {
+    public static final String KEY_PREF_SYNC_CONN = "pref_syncConnectionType";
+    ...
+
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
+        if (key.equals(KEY_PREF_SYNC_CONN)) {
+            Preference connectionPref = findPreference(key);
+            // Set summary to be the user-description for the selected value
+            connectionPref.setSummary(sharedPreferences.getString(key, ""));
+        }
+    }
+}
+</pre>
+
+<p>In this example, the method checks whether the changed setting is for a known preference key. It
+calls {@link android.preference.PreferenceActivity#findPreference findPreference()} to get the
+{@link android.preference.Preference} object that was changed so it can modify the item's
+summary to be a description of the user's selection. That is, when the setting is a {@link
+android.preference.ListPreference} or other multiple choice setting, you should call {@link
+android.preference.Preference#setSummary setSummary()} when the setting changes to display the
+current status (such as the Sleep setting shown in figure 5).</p>
+
+<p class="note"><strong>Note:</strong> As described in the Android Design document about <a
+href="{@docRoot}design/patterns/settings.html">Settings</a>, we recommend that you update the
+summary for a {@link android.preference.ListPreference} each time the user changes the preference in
+order to describe the current setting.</p>
+
+<p>For proper lifecycle management in the activity, we recommend that you register and unregister
+your {@link android.content.SharedPreferences.OnSharedPreferenceChangeListener} during the {@link
+android.app.Activity#onResume} and {@link android.app.Activity#onPause} callbacks, respectively:</p>
+
+<pre>
+&#64;Override
+protected void onResume() {
+    super.onResume();
+    getPreferenceScreen().getSharedPreferences()
+            .registerOnSharedPreferenceChangeListener(this);
+}
+
+&#64;Override
+protected void onPause() {
+    super.onPause();
+    getPreferenceScreen().getSharedPreferences()
+            .unregisterOnSharedPreferenceChangeListener(this);
+}
+</pre>
+
+
+
+<h2 id="NetworkUsage">Managing Network Usage</h2>
+
+
+<p>Beginning with Android 4.0, the system's Settings application allows users to see how much
+network data their applications are using while in the foreground and background. Users can then
+disable the use of background data for individual apps. In order to avoid users disabling your app's
+access to data from the background, you should use the data connection efficiently and allow
+users to refine your app's data usage through your application settings.<p>
+
+<p>For example, you might allow the user to control how often your app syncs data, whether your app
+performs uploads/downloads only when on Wi-Fi, whether your app uses data while roaming, etc. With
+these controls available to them, users are much less likely to disable your app's access to data
+when they approach the limits they set in the system Settings, because they can instead precisely
+control how much data your app uses.</p>
+
+<p>Once you've added the necessary preferences in your {@link android.preference.PreferenceActivity}
+to control your app's data habits, you should add an intent filter for {@link
+android.content.Intent#ACTION_MANAGE_NETWORK_USAGE} in your manifest file. For example:</p>
+
+<pre>
+&lt;activity android:name="SettingsActivity" ... >
+    &lt;intent-filter>
+       &lt;action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+       &lt;category android:name="android.intent.category.DEFAULT" />
+    &lt;/intent-filter>
+&lt;/activity>
+</pre>
+
+<p>This intent filter indicates to the system that this is the activity that controls your
+application's data usage. Thus, when the user inspects how much data your app is using from the
+system's Settings app, a <em>View application settings</em> button is available that launches your
+{@link android.preference.PreferenceActivity} so the user can refine how much data your app
+uses.</p>
+
+
+
+
+
+
+
+<h2 id="Custom">Building a Custom Preference</h2>
+
+<p>The Android framework includes a variety of {@link android.preference.Preference} subclasses that
+allow you to build a UI for several different types of settings.
+However, you might discover a setting you need for which there’s no built-in solution, such as a
+number picker or date picker. In such a case, you’ll need to create a custom preference by extending
+the {@link android.preference.Preference} class or one of the other subclasses.</p>
+
+<p>When you extend the {@link android.preference.Preference} class, there are a few important
+things you need to do:</p>
+
+<ul>
+  <li>Specify the user interface that appears when the user selects the settings.</li>
+  <li>Save the setting's value when appropriate.</li>
+  <li>Initialize the {@link android.preference.Preference} with the current (or default) value
+when it comes into view.</li>
+  <li>Provide the default value when requested by the system.</li>
+  <li>If the {@link android.preference.Preference} provides its own UI (such as a dialog), save
+and restore the state to handle lifecycle changes (such as when the user rotates the screen).</li>
+</ul>
+
+<p>The following sections describe how to accomplish each of these tasks.</p>
+
+
+
+<h3 id="CustomSelected">Specifying the user interface</h3>
+
+  <p>If you directly extend the {@link android.preference.Preference} class, you need to implement
+{@link android.preference.Preference#onClick()} to define the action that occurs when the user
+selects the item. However, most custom settings extend {@link android.preference.DialogPreference} to
+show a dialog, which simplifies the procedure. When you extend {@link
+android.preference.DialogPreference}, you must call {@link
+android.preference.DialogPreference#setDialogLayoutResource setDialogLayoutResourcs()} during in the
+class constructor to specify the layout for the dialog.</p>
+
+  <p>For example, here's the constructor for a custom {@link
+android.preference.DialogPreference} that declares the layout and specifies the text for the
+default positive and negative dialog buttons:</p>
+
+<pre>
+public class NumberPickerPreference extends DialogPreference {
+    public NumberPickerPreference(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        
+        setDialogLayoutResource(R.layout.numberpicker_dialog);
+        setPositiveButtonText(android.R.string.ok);
+        setNegativeButtonText(android.R.string.cancel);
+        
+        setDialogIcon(null);
+    }
+    ...
+}
+</pre>
+
+
+
+<h3 id="CustomSave">Saving the setting's value</h3>
+
+<p>You can save a value for the setting at any time by calling one of the {@link
+android.preference.Preference} class's {@code persist*()} methods, such as {@link
+android.preference.Preference#persistInt persistInt()} if the setting's value is an integer or
+{@link android.preference.Preference#persistBoolean persistBoolean()} to save a boolean.</p>
+
+<p class="note"><strong>Note:</strong> Each {@link android.preference.Preference} can save only one
+data type, so you must use the {@code persist*()} method appropriate for the data type used by your
+custom {@link android.preference.Preference}.</p>
+
+<p>When you choose to persist the setting can depend on which {@link
+android.preference.Preference} class you extend. If you extend {@link
+android.preference.DialogPreference}, then you should persist the value only when the dialog
+closes due to a positive result (the user selects the "OK" button).</p>
+
+<p>When a {@link android.preference.DialogPreference} closes, the system calls the {@link
+android.preference.DialogPreference#onDialogClosed onDialogClosed()} method. The method includes a
+boolean argument that specifies whether the user result is "positive"&mdash;if the value is
+<code>true</code>, then the user selected the positive button and you should save the new value. For
+example:</p>
+
+<pre>
+&#64;Override
+protected void onDialogClosed(boolean positiveResult) {
+    // When the user selects "OK", persist the new value
+    if (positiveResult) {
+        persistInt(mNewValue);
+    }
+}
+</pre>
+
+<p>In this example, <code>mNewValue</code> is a class member that holds the setting's current
+value. Calling {@link android.preference.Preference#persistInt persistInt()} saves the value to
+the {@link android.content.SharedPreferences} file (automatically using the key that's
+specified in the XML file for this {@link android.preference.Preference}).</p>
+
+
+<h3 id="CustomInitialize">Initializing the current value</h3>
+
+<p>When the system adds your {@link android.preference.Preference} to the screen, it
+calls {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} to notify
+you whether the setting has a persisted value. If there is no persisted value, this call provides
+you the default value.</p>
+
+<p>The {@link android.preference.Preference#onSetInitialValue onSetInitialValue()} method passes
+a boolean, <code>restorePersistedValue</code>, to indicate whether a value has already been persisted
+for the setting. If it is <code>true</code>, then you should retrieve the persisted value by calling
+one of the {@link
+android.preference.Preference} class's {@code getPersisted*()} methods, such as {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} for an integer value. You'll
+usually want to retrieve the persisted value so you can properly update the UI to reflect the
+previously saved value.</p>
+
+<p>If <code>restorePersistedValue</code> is <code>false</code>, then you
+should use the default value that is passed in the second argument.</p>
+
+<pre>
+&#64;Override
+protected void onSetInitialValue(boolean restorePersistedValue, Object defaultValue) {
+    if (restorePersistedValue) {
+        // Restore existing state
+        mCurrentValue = this.getPersistedInt(DEFAULT_VALUE);
+    } else {
+        // Set default state from the XML attribute
+        mCurrentValue = (Integer) defaultValue;
+        persistInt(mCurrentValue);
+    }
+}
+</pre>
+
+<p>Each {@code getPersisted*()} method takes an argument that specifies the
+default value to use in case there is actually no persisted value or the key does not exist. In
+the example above, a local constant is used to specify the default value in case {@link
+android.preference.Preference#getPersistedInt getPersistedInt()} can't return a persisted value.</p>
+
+<p class="caution"><strong>Caution:</strong> You <strong>cannot</strong> use the
+<code>defaultValue</code> as the default value in the {@code getPersisted*()} method, because
+its value is always null when <code>restorePersistedValue</code> is <code>true</code>.</p>
+
+
+<h3 id="CustomDefault">Providing a default value</h3>
+
+<p>If the instance of your {@link android.preference.Preference} class specifies a default value
+(with the {@code android:defaultValue} attribute), then the
+system calls {@link android.preference.Preference#onGetDefaultValue
+onGetDefaultValue()} when it instantiates the object in order to retrieve the value. You must
+implement this method in order for the system to save the default value in the {@link
+android.content.SharedPreferences}. For example:</p>
+
+<pre>
+&#64;Override
+protected Object onGetDefaultValue(TypedArray a, int index) {
+    return a.getInteger(index, DEFAULT_VALUE);
+}
+</pre>
+
+<p>The method arguments provide everything you need: the array of attributes and the index
+position of the {@code android:defaultValue}, which you must retrieve. The reason you must
+implement this method to extract the default value from the attribute is because you must specify
+a local default value for the attribute in case the value is undefined.</p>
+
+
+
+<h3 id="CustomSaveState">Saving and restoring the Preference's state</h3>
+
+<p>Just like a {@link android.view.View} in a layout, your {@link android.preference.Preference}
+subclass is responsible for saving and restoring its state in case the activity or fragment is
+restarted (such as when the user rotates the screen). To properly save and
+restore the state of your {@link android.preference.Preference} class, you must implement the
+lifecycle callback methods {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} and {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()}.</p>
+
+<p>The state of your {@link android.preference.Preference} is defined by an object that implements
+the {@link android.os.Parcelable} interface. The Android framework provides such an object for you
+as a starting point to define your state object: the {@link
+android.preference.Preference.BaseSavedState} class.</p>
+
+<p>To define how your {@link android.preference.Preference} class saves its state, you should
+extend the {@link android.preference.Preference.BaseSavedState} class. You need to override just
+ a few methods and define the {@link android.preference.Preference.BaseSavedState#CREATOR}
+object.</p>
+
+<p>For most apps, you can copy the following implementation and simply change the lines that
+handle the {@code value} if your {@link android.preference.Preference} subclass saves a data
+type other than an integer.</p>
+
+<pre>
+private static class SavedState extends BaseSavedState {
+    // Member that holds the setting's value
+    // Change this data type to match the type saved by your Preference
+    int value;
+
+    public SavedState(Parcelable superState) {
+        super(superState);
+    }
+
+    public SavedState(Parcel source) {
+        super(source);
+        // Get the current preference's value
+        value = source.readInt();  // Change this to read the appropriate data type
+    }
+
+    &#64;Override
+    public void writeToParcel(Parcel dest, int flags) {
+        super.writeToParcel(dest, flags);
+        // Write the preference's value
+        dest.writeInt(value);  // Change this to write the appropriate data type
+    }
+
+    // Standard creator object using an instance of this class
+    public static final Parcelable.Creator&lt;SavedState> CREATOR =
+            new Parcelable.Creator&lt;SavedState>() {
+
+        public SavedState createFromParcel(Parcel in) {
+            return new SavedState(in);
+        }
+
+        public SavedState[] newArray(int size) {
+            return new SavedState[size];
+        }
+    };
+}
+</pre>
+
+<p>With the above implementation of {@link android.preference.Preference.BaseSavedState} added
+to your app (usually as a subclass of your {@link android.preference.Preference} subclass), you
+then need to implement the {@link android.preference.Preference#onSaveInstanceState
+onSaveInstanceState()} and {@link
+android.preference.Preference#onRestoreInstanceState onRestoreInstanceState()} methods for your
+{@link android.preference.Preference} subclass.</p>
+
+<p>For example:</p>
+
+<pre>
+&#64;Override
+protected Parcelable onSaveInstanceState() {
+    final Parcelable superState = super.onSaveInstanceState();
+    // Check whether this Preference is persistent (continually saved)
+    if (isPersistent()) {
+        // No need to save instance state since it's persistent, use superclass state
+        return superState;
+    }
+
+    // Create instance of custom BaseSavedState
+    final SavedState myState = new SavedState(superState);
+    // Set the state's value with the class member that holds current setting value
+    myState.value = mNewValue;
+    return myState;
+}
+
+&#64;Override
+protected void onRestoreInstanceState(Parcelable state) {
+    // Check whether we saved the state in onSaveInstanceState
+    if (state == null || !state.getClass().equals(SavedState.class)) {
+        // Didn't save the state, so call superclass
+        super.onRestoreInstanceState(state);
+        return;
+    }
+
+    // Cast state to custom BaseSavedState and pass to superclass
+    SavedState myState = (SavedState) state;
+    super.onRestoreInstanceState(myState.getSuperState());
+    
+    // Set this Preference's widget to reflect the restored state
+    mNumberPicker.setValue(myState.value);
+}
+</pre>
+
diff --git a/docs/html/guide/webapps/targeting.jd b/docs/html/guide/webapps/targeting.jd
index 46f769c..7410202 100644
--- a/docs/html/guide/webapps/targeting.jd
+++ b/docs/html/guide/webapps/targeting.jd
@@ -270,7 +270,7 @@
 
 <p>The density of a device's screen is based on the screen resolution, as defined by the number of
 dots per inch (dpi). There are three screen
-density categories supported by Android: low (ldpi), medium (mdpi), and high (mdpi). A screen
+density categories supported by Android: low (ldpi), medium (mdpi), and high (hdpi). A screen
 with low density has fewer available pixels per inch, whereas a screen with high density has more
 pixels per inch (compared to a medium density screen). The Android Browser and {@link
 android.webkit.WebView} target a medium density screen by default.</p>
diff --git a/docs/html/images/tools/avd_manager.png b/docs/html/images/tools/avd_manager.png
new file mode 100644
index 0000000..f8a173c
--- /dev/null
+++ b/docs/html/images/tools/avd_manager.png
Binary files differ
diff --git a/docs/html/images/tools/eclipse-new.png b/docs/html/images/tools/eclipse-new.png
new file mode 100644
index 0000000..d918427
--- /dev/null
+++ b/docs/html/images/tools/eclipse-new.png
Binary files differ
diff --git a/docs/html/images/tools/eclipse-run.png b/docs/html/images/tools/eclipse-run.png
new file mode 100644
index 0000000..925f0b9
--- /dev/null
+++ b/docs/html/images/tools/eclipse-run.png
Binary files differ
diff --git a/docs/html/images/tools/lint.png b/docs/html/images/tools/lint.png
new file mode 100644
index 0000000..889e325
--- /dev/null
+++ b/docs/html/images/tools/lint.png
Binary files differ
diff --git a/docs/html/images/tools/lint_output.png b/docs/html/images/tools/lint_output.png
new file mode 100644
index 0000000..554aee7
--- /dev/null
+++ b/docs/html/images/tools/lint_output.png
Binary files differ
diff --git a/docs/html/images/tools/new_adt_project.png b/docs/html/images/tools/new_adt_project.png
new file mode 100644
index 0000000..0f0e883
--- /dev/null
+++ b/docs/html/images/tools/new_adt_project.png
Binary files differ
diff --git a/docs/html/images/tools/sdk_manager.png b/docs/html/images/tools/sdk_manager.png
new file mode 100644
index 0000000..08ffda8
--- /dev/null
+++ b/docs/html/images/tools/sdk_manager.png
Binary files differ
diff --git a/docs/html/images/training/firstapp/adt-firstapp-setup.png b/docs/html/images/training/firstapp/adt-firstapp-setup.png
index c092562..daf02b2 100644
--- a/docs/html/images/training/firstapp/adt-firstapp-setup.png
+++ b/docs/html/images/training/firstapp/adt-firstapp-setup.png
Binary files differ
diff --git a/docs/html/images/training/firstapp/adt-new-activity.png b/docs/html/images/training/firstapp/adt-new-activity.png
new file mode 100644
index 0000000..2d579d3
--- /dev/null
+++ b/docs/html/images/training/firstapp/adt-new-activity.png
Binary files differ
diff --git a/docs/html/images/ui/settings/settings-headers-handset.png b/docs/html/images/ui/settings/settings-headers-handset.png
new file mode 100644
index 0000000..d04ad17
--- /dev/null
+++ b/docs/html/images/ui/settings/settings-headers-handset.png
Binary files differ
diff --git a/docs/html/images/ui/settings/settings-headers-tablet.png b/docs/html/images/ui/settings/settings-headers-tablet.png
new file mode 100644
index 0000000..d0da5f2
--- /dev/null
+++ b/docs/html/images/ui/settings/settings-headers-tablet.png
Binary files differ
diff --git a/docs/html/images/ui/settings/settings-subscreen.png b/docs/html/images/ui/settings/settings-subscreen.png
new file mode 100644
index 0000000..17de231
--- /dev/null
+++ b/docs/html/images/ui/settings/settings-subscreen.png
Binary files differ
diff --git a/docs/html/images/ui/settings/settings-titles.png b/docs/html/images/ui/settings/settings-titles.png
new file mode 100644
index 0000000..df4e1b4
--- /dev/null
+++ b/docs/html/images/ui/settings/settings-titles.png
Binary files differ
diff --git a/docs/html/images/ui/settings/settings.png b/docs/html/images/ui/settings/settings.png
new file mode 100644
index 0000000..db9976c
--- /dev/null
+++ b/docs/html/images/ui/settings/settings.png
Binary files differ
diff --git a/docs/html/index.jd b/docs/html/index.jd
index 8930c7f..1d47ed7 100644
--- a/docs/html/index.jd
+++ b/docs/html/index.jd
@@ -43,11 +43,11 @@
                         <img src="{@docRoot}images/home/google-io.png">
                         </div>
                         <div class="content-right col-5">
-                        <h1>Watch Android at <br/>Google I/O!</h1>
-                        <p>See the keynote and more than 40 Android developer sessions streamed live from Moscone Center in San Francisco.</p>
-                        <p>Begins June 27, 9AM PDT (UTC-7).</p>
-                        <p><a href="https://developers.google.com/events/io/sessions#android"
-class="button">See the Android Sessions</a></p>
+                        <h1>Android videos<br/> from Google I/O!</h1>
+                        <p>If you couldn't make it to Google I/O this year or want to review some of the material,
+                          all of the Android sessions are now available for viewing online.</p>
+                        <p><a href="http://www.youtube.com/playlist?list=PL4C6BCDE45E05F49E&feature=plcp"
+class="button">Watch the Android sessions</a></p>
                         </div>
                 </li>
                 <li class="item carousel-home">
@@ -68,7 +68,6 @@
     <!-- /End slideshow -->
     
     
-    
 </div>
 <div class="wrap" style="padding-bottom:20px">
     <!-- Section links -->
diff --git a/docs/html/intl/ja/index.jd b/docs/html/intl/ja/index.jd
deleted file mode 100644
index ac36f90..0000000
--- a/docs/html/intl/ja/index.jd
+++ /dev/null
@@ -1,159 +0,0 @@
-home=true
-@jd:body
-
-
-	<div id="mainBodyFixed">
-              <div id="mainBodyLeft">			
-                    <div id="homeMiddle">
-                        <div id="topAnnouncement">
-                            <div id="homeTitle">
-                                <h2>デベロッパーへのお知らせ</h2>
-                            </div><!-- end homeTitle -->
-                            <div id="announcement-block">
-                            <!-- total max width is 520px -->
-                                <img src="/assets/images/home/android_adc.png" alt="Android Developer Challenge 2" width="232px" />
-                                <div id="announcement" style="width:275px">
-                                  <p>第2Android Developer Challengeが、遂に登場しました!このアプリケーション開発コンテストでは、Androidのユーザなら誰でも簡単に参加でき、一等の賞金は$250,000 です。登録の締切日は8月31日になります。</p>
-                                  <p><a href="http://code.google.com/android/adc/">Android  Developer Challengeについて詳しくはこちら &raquo;</a></p>
-                                </div> <!-- end annoucement -->
-                            </div> <!-- end annoucement-block -->  
-                        </div><!-- end topAnnouncement -->
-                        <div id="carouselMain" style="height:210px"> <!-- this height can be adjusted based on the content height -->
-                        </div>
-                            <div class="clearer"></div>
-                        <div id="carouselWheel">
-                            <div class="app-list-container" align="center"> 
-                                <a href="javascript:{}" id="arrow-left" onclick="" class="arrow-left-off"></a>
-                                <div id="list-clip">
-                                    <div style="left: 0px;" id="app-list">
-                                      <!-- populated by buildCarousel() -->
-                                    </div>
-                                </div><!-- end list-clip -->
-                                <a href="javascript:{ page_right(); }" id="arrow-right" onclick="" class="arrow-right-on"></a>
-                                <div class="clearer"></div>
-                            </div><!-- end app-list container -->
-                        </div><!-- end carouselWheel -->
-                    </div><!-- end homeMiddle -->
-
-                    <div style="clear:both">&nbsp;</div>
-              </div><!-- end mainBodyLeft -->
-
-              <div id="mainBodyRight">
-                      <table id="rightColumn">
-                              <tr>
-                                      <td class="imageCell"><a href="{@docRoot}sdk/index.html"><img src="{@docRoot}assets/images/icon_download.jpg" style="padding:0" /></a></td>
-                                      <td>
-                                              <h2 class="green">ダウンロード</h2>
-                                              <p>Android SDK には、優れたアプリケーションの作成に必要となるツール、サンプル コード、ドキュメントが含まれています。  </p>
-                                              <p><a href="{@docRoot}sdk/index.html">詳細 &raquo;</a></p>
-                                      </td>
-                              </tr>
-                              <tr>
-                                      <td colspan="2"><div class="seperator">&nbsp;</div></td>
-                              </tr>
-                              <tr>
-                                      <td class="imageCell"><a href="http://play.google.com/apps/publish"><img src="{@docRoot}assets/images/icon_play.png" style="padding:0" /></a></td>
-                                      <td>
-                                              <h2 class="green">公開</h2>
-                                              <p>Android マーケットは、アプリケーションを携帯端末に配信するためのオープン サービスです。</p>
-                                              <p><a href="http://play.google.com/apps/publish">詳細 &raquo;</a></p>
-                                      </td>
-                              </tr>
-                              <tr>
-                                      <td colspan="2"><div class="seperator">&nbsp;</div></td>
-                              </tr>
-                              <tr>
-                                      <td class="imageCell"><a href="http://source.android.com"><img src="{@docRoot}assets/images/icon_contribute.jpg" style="padding:0" /></a></td>
-                                      <td>
-                                              <h2 class="green">貢献</h2>
-                                              <p>Android オープンソース プロジェクトでは、プラットフォーム全体のソースコードを公開しています。</p>
-                                              <p><a href="http://source.android.com">詳細 &raquo;</a></p>
-                                      </td>
-                              </tr>
-                              <tr>
-                                      <td colspan="2"><div class="seperator">&nbsp;</div></td>
-                              </tr>
-                              <tr>
-                                      <td class="imageCell"><a href="http://www.youtube.com/user/androiddevelopers"><img src="{@docRoot}assets/images/video-droid.png" style="padding:0" /></a></td>
-                                      <td>
-                                              <h2 class="green">再生</h2>
-                                              <object width="150" height="140"><param name="movie" value="http://www.youtube.com/v/GARMe7Km_gk&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/GARMe7Km_gk&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="150" height="140"></embed></object>
-                                              <p style="margin-top:1em"><a href="{@docRoot}videos/index.html">その他の Android 動画 &raquo;</a></p>
-                                      </td>
-                              </tr>
-
-                      </table>
-              </div>
-	</div>
-
-<!--[if lte IE 6]>
-  <style>
-    #arrow-left {
-      margin:0 0 0 5px;
-    }
-    #arrow-right {
-      margin-left:0;
-    }
-    .app-list-container {
-      margin: 37px 0 0 23px;
-    }
-    div#list-clip { 
-      width:468px;
-    }
-  </style>
-<![endif]-->
-
-<script type="text/javascript">
-
-// * -- carousel dictionary -- * //
-  /* layout:  imgLeft, imgRight, imgTop
-     icon:    image for carousel entry. cropped (height:70px, width:90px)
-     name:    string for carousel entry
-     img:     image for bulletin post. cropped (height: 170, width:230px)
-     title:   header for bulletin (optional, insert "" value to skip
-     desc:    the bulletin post. must include html tags. 
-  */
-
-  var droidList = {
-    'sdk': {
-      'layout':"imgLeft",
-      'icon':"sdk-small.png",
-      'name':"Android 2.0",
-      'img':"eclair-android.png",
-      'title':"Android 2.0",
-      'desc': "<p>Android 2.0 の最新バージョンが公開されました。このリリースには Android 2.0 用の API、最新版デベロッパーツール、複数プラットフォーム(バージョン)サポート、そして Google API のアドオンが含まれています。</p><p><a href='{@docRoot}sdk/index.html'>Android SDK をダウンロード &raquo;</a></p>"
-    },
-    
-    'io': {
-      'layout':"imgLeft",
-      'icon':"io-small.png",
-      'name':"Google I/O",
-      'img':"io-large.png",
-      'title':"Google I/O Developer Conference",
-      'desc': "<p>Google I/O は、サンフランシスコの Moscone Center で 5 月 27~28 日に開催された開発者会議です。このイベントに参加できなかった方は、各アンドロイド向けセッションを、YouTube ビデオ資料で体験する事が可能<nobr>です</nobr>。</p><p><a href='{@docRoot}videos/index.html'>セッションを参照してください &raquo;</a></p>"
-    },
-
-    'mapskey': {
-      'layout':"imgLeft",
-      'icon':"maps-small.png",
-      'name':"Maps API キー",
-      'img':"maps-large.png",
-      'title':"Maps API キー",
-      'desc':"<p>MapView から Google マップを利用する Android アプリケーションを開発する場合は、アプリケーションを登録して Maps API キーを取得する必要があります。この API キーが無いアプリケーションは、Android 上で動作しません。キーの取得は、簡単な手順で行うことができます。</p><p><a href='http://code.google.com/android/add-ons/google-apis/maps-overview.html'>詳細 &raquo;</a></p>"
-    },
-
-    'devphone': {
-      'layout':"imgLeft",
-      'icon':"devphone-small.png",
-      'name':"Dev Phone 1",
-      'img':"devphone-large.png",
-      'title':"Android Dev Phone 1",
-      'desc': "<p>この携帯電話を使用することで、開発した Android アプリケーションの実行とデバッグを行うことができます。Android オペレーティングシステムを変更してからリビルドし、携帯電話に書き込むことができます。Android Dev Phone 1 は携帯通信会社に依存しておらず、<a href='http://play.google.com/apps/publish'>Android マーケット</a>に登録済みのデベロッパーなら誰でも購入可能です。</p><p><a href='/tools/device.html#dev-phone-1'>Android Dev Phone 1 の詳細&raquo;</a></p>"
-    }
-
-  }
-</script>
-<script type="text/javascript" src="{@docRoot}assets/carousel.js"></script>
-<script type="text/javascript">
-  initCarousel("sdk");
-</script>
diff --git a/docs/html/legal.jd b/docs/html/legal.jd
index 3c614d3..3206503 100644
--- a/docs/html/legal.jd
+++ b/docs/html/legal.jd
@@ -18,12 +18,11 @@
 <p>To start developing apps for Android, <a
 href="{@docRoot}sdk/index.html">download the free Android SDK</a>.</p>
 
-
-
 <h2 id="Brands">Android Brands</h2>
 
-<p>The "Android" name and <img src="images/android-logo.png" alt="Android"
-style="margin:0;padding:0 2px;vertical-align:baseline" /> logo are trademarks of Google Inc.
+<p>The "Android" name, the <img src="images/android-logo.png" alt="Android"
+style="margin:0;padding:0 2px;vertical-align:baseline" /> logo, and
+<a href="http://www.google.com/permissions/">other trademarks</a> are property of Google Inc.
 You may not use the logo or the logo's custom typeface.</p>
 
 <p>You may use the word "Android" in a product name only as a descriptor, such as "for Android"
@@ -42,7 +41,7 @@
 <p>For more information about Android brands, see the <a
 href="{@docRoot}distribute/googleplay/promote/brand.html">Android Branding Guidelines</a>.</p>
 
-
+<p>All other trademarks are the property of their respective owners.</p>
 
 <h2 id="WebSite">Web Site Content</h2>
 
@@ -126,4 +125,6 @@
 href="http://developer.android.com">developer.android.com</a> are subject to their own terms, as
 documented on their respective web sites. </p>
 
+
+
 </div>
\ No newline at end of file
diff --git a/docs/html/sdk/api_diff/16/changes.html b/docs/html/sdk/api_diff/16/changes.html
index 80b91e4..6460252 100644
--- a/docs/html/sdk/api_diff/16/changes.html
+++ b/docs/html/sdk/api_diff/16/changes.html
@@ -4,7 +4,7 @@
 <meta name="generator" content="JDiff v1.1.0">
 <!-- Generated by the JDiff Javadoc doclet -->
 <!-- (http://www.jdiff.org) -->
-<!-- on Tue Jun 26 22:31:04 PDT 2012 -->
+<!-- on Mon Jul 16 10:58:42 PDT 2012 -->
 <meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
 <meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
 <TITLE>
diff --git a/docs/html/sdk/api_diff/16/changes/alldiffs_index_additions.html b/docs/html/sdk/api_diff/16/changes/alldiffs_index_additions.html
index 66ecf7d..d47f571 100644
--- a/docs/html/sdk/api_diff/16/changes/alldiffs_index_additions.html
+++ b/docs/html/sdk/api_diff/16/changes/alldiffs_index_additions.html
@@ -152,6 +152,8 @@
 <!-- Field ACTION_VOICE_SEARCH_HANDS_FREE -->
 <nobr><A HREF="android.speech.RecognizerIntent.html#android.speech.RecognizerIntent.ACTION_VOICE_SEARCH_HANDS_FREE" class="hiddenlink" target="rightframe">ACTION_VOICE_SEARCH_HANDS_FREE</A>
 </nobr><br>
+<!-- Class ActionProvider.VisibilityListener -->
+<A HREF="pkg_android.view.html#ActionProvider.VisibilityListener" class="hiddenlink" target="rightframe"><b><i>ActionProvider.VisibilityListener</i></b></A><br>
 <!-- Class ActivityOptions -->
 <A HREF="pkg_android.app.html#ActivityOptions" class="hiddenlink" target="rightframe"><b>ActivityOptions</b></A><br>
 <!-- Method addAction -->
@@ -543,9 +545,6 @@
 <!-- Method finishAffinity -->
 <nobr><A HREF="android.app.Activity.html#android.app.Activity.finishAffinity_added()" class="hiddenlink" target="rightframe"><b>finishAffinity</b>
 ()</A></nobr><br>
-<!-- Field FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS -->
-<nobr><A HREF="android.content.Intent.html#android.content.Intent.FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS" class="hiddenlink" target="rightframe">FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS</A>
-</nobr><br>
 <!-- Field FLAG_INCLUDE_NOT_IMPORTANT_VIEWS -->
 <nobr><A HREF="android.accessibilityservice.AccessibilityServiceInfo.html#android.accessibilityservice.AccessibilityServiceInfo.FLAG_INCLUDE_NOT_IMPORTANT_VIEWS" class="hiddenlink" target="rightframe">FLAG_INCLUDE_NOT_IMPORTANT_VIEWS</A>
 </nobr><br>
@@ -1262,6 +1261,9 @@
 <!-- Method isVirtual -->
 <nobr><A HREF="android.view.InputDevice.html#android.view.InputDevice.isVirtual_added()" class="hiddenlink" target="rightframe"><b>isVirtual</b>
 ()</A></nobr><br>
+<!-- Method isVisible -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.isVisible_added()" class="hiddenlink" target="rightframe"><b>isVisible</b>
+()</A></nobr><br>
 <!-- Method isVisibleToUser -->
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.isVisibleToUser_added()" class="hiddenlink" target="rightframe"><b>isVisibleToUser</b>
 ()</A></nobr><br>
@@ -1472,6 +1474,11 @@
 <A HREF="pkg_android.media.html#MediaRouter.SimpleCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.SimpleCallback</b></A><br>
 <!-- Class MediaRouter.UserRouteInfo -->
 <A HREF="pkg_android.media.html#MediaRouter.UserRouteInfo" class="hiddenlink" target="rightframe"><b>MediaRouter.UserRouteInfo</b></A><br>
+<!-- Class MediaRouter.VolumeCallback -->
+<A HREF="pkg_android.media.html#MediaRouter.VolumeCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.VolumeCallback</b></A><br>
+<!-- Field mediaRouteTypes -->
+<nobr><A HREF="android.R.attr.html#android.R.attr.mediaRouteTypes" class="hiddenlink" target="rightframe">mediaRouteTypes</A>
+</nobr><br>
 <!-- Class MediaSyncEvent -->
 <A HREF="pkg_android.media.html#MediaSyncEvent" class="hiddenlink" target="rightframe"><b>MediaSyncEvent</b></A><br>
 <!-- Field METHOD_ALARM -->
@@ -1660,6 +1667,9 @@
 <!-- Field OPTION_APPWIDGET_MIN_WIDTH -->
 <nobr><A HREF="android.appwidget.AppWidgetManager.html#android.appwidget.AppWidgetManager.OPTION_APPWIDGET_MIN_WIDTH" class="hiddenlink" target="rightframe">OPTION_APPWIDGET_MIN_WIDTH</A>
 </nobr><br>
+<!-- Method overridesItemVisibility -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.overridesItemVisibility_added()" class="hiddenlink" target="rightframe"><b>overridesItemVisibility</b>
+()</A></nobr><br>
 <!-- Field parentActivityName -->
 <A NAME="P"></A>
 <br><font size="+2">P</font>&nbsp;
@@ -1846,6 +1856,9 @@
 <!-- Field READ_USER_DICTIONARY -->
 <nobr><A HREF="android.Manifest.permission.html#android.Manifest.permission.READ_USER_DICTIONARY" class="hiddenlink" target="rightframe">READ_USER_DICTIONARY</A>
 </nobr><br>
+<!-- Method refreshVisibility -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.refreshVisibility_added()" class="hiddenlink" target="rightframe"><b>refreshVisibility</b>
+()</A></nobr><br>
 <!-- Method registerOnLoadCanceledListener -->
 <nobr><A HREF="android.content.Loader.html#android.content.Loader.registerOnLoadCanceledListener_added(android.content.Loader.OnLoadCanceledListener<D>)" class="hiddenlink" target="rightframe"><b>registerOnLoadCanceledListener</b>
 (<code>OnLoadCanceledListener&lt;D&gt;</code>)</A></nobr><br>
@@ -2105,6 +2118,12 @@
 <!-- Method setTextViewCompoundDrawables -->
 <nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawables_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawables</b>
 (<code>int, int, int, int, int</code>)</A></nobr><br>
+<!-- Method setTextViewCompoundDrawablesRelative -->
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawablesRelative_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawablesRelative</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<!-- Method setTextViewTextSize -->
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewTextSize_added(int, int, float)" class="hiddenlink" target="rightframe"><b>setTextViewTextSize</b>
+(<code>int, int, float</code>)</A></nobr><br>
 <!-- Method setThumbDrawable -->
 <nobr><A HREF="android.widget.Switch.html#android.widget.Switch.setThumbDrawable_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>setThumbDrawable</b>
 (<code>Drawable</code>)</A></nobr><br>
@@ -2141,6 +2160,12 @@
 <!-- Method setVideoScalingMode -->
 <nobr><A HREF="android.media.MediaPlayer.html#android.media.MediaPlayer.setVideoScalingMode_added(int)" class="hiddenlink" target="rightframe"><b>setVideoScalingMode</b>
 (<code>int</code>)</A></nobr><br>
+<!-- Method setViewPadding -->
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setViewPadding_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setViewPadding</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<!-- Method setVisibilityListener -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.setVisibilityListener_added(android.view.ActionProvider.VisibilityListener)" class="hiddenlink" target="rightframe"><b>setVisibilityListener</b>
+(<code>VisibilityListener</code>)</A></nobr><br>
 <!-- Method setVisibleToUser -->
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.setVisibleToUser_added(boolean)" class="hiddenlink" target="rightframe"><b>setVisibleToUser</b>
 (<code>boolean</code>)</A></nobr><br>
diff --git a/docs/html/sdk/api_diff/16/changes/alldiffs_index_all.html b/docs/html/sdk/api_diff/16/changes/alldiffs_index_all.html
index b4e7d1d..02c78b4 100644
--- a/docs/html/sdk/api_diff/16/changes/alldiffs_index_all.html
+++ b/docs/html/sdk/api_diff/16/changes/alldiffs_index_all.html
@@ -178,6 +178,8 @@
 <A HREF="android.view.ActionMode.html" class="hiddenlink" target="rightframe">ActionMode</A><br>
 <!-- Class ActionProvider -->
 <A HREF="android.view.ActionProvider.html" class="hiddenlink" target="rightframe">ActionProvider</A><br>
+<!-- Class ActionProvider.VisibilityListener -->
+<A HREF="pkg_android.view.html#ActionProvider.VisibilityListener" class="hiddenlink" target="rightframe"><b><i>ActionProvider.VisibilityListener</i></b></A><br>
 <!-- Class Activity -->
 <A HREF="android.app.Activity.html" class="hiddenlink" target="rightframe">Activity</A><br>
 <!-- Class ActivityInfo -->
@@ -1083,9 +1085,6 @@
 <!-- Method fitsSystemWindows -->
 <nobr><A HREF="android.view.View.html#android.view.View.fitsSystemWindows_removed()" class="hiddenlink" target="rightframe"><strike>fitsSystemWindows</strike>
 ()</A></nobr><br>
-<!-- Field FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS -->
-<nobr><A HREF="android.content.Intent.html#android.content.Intent.FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS" class="hiddenlink" target="rightframe">FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS</A>
-</nobr><br>
 <!-- Field FLAG_HIGH_PRIORITY -->
 <nobr><A HREF="android.app.Notification.html#android.app.Notification.FLAG_HIGH_PRIORITY" class="hiddenlink" target="rightframe">FLAG_HIGH_PRIORITY</A>
 </nobr><br>
@@ -1986,6 +1985,9 @@
 <!-- Method isVirtual -->
 <nobr><A HREF="android.view.InputDevice.html#android.view.InputDevice.isVirtual_added()" class="hiddenlink" target="rightframe"><b>isVirtual</b>
 ()</A></nobr><br>
+<!-- Method isVisible -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.isVisible_added()" class="hiddenlink" target="rightframe"><b>isVisible</b>
+()</A></nobr><br>
 <!-- Method isVisibleToUser -->
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.isVisibleToUser_added()" class="hiddenlink" target="rightframe"><b>isVisibleToUser</b>
 ()</A></nobr><br>
@@ -2264,6 +2266,11 @@
 <A HREF="pkg_android.media.html#MediaRouter.SimpleCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.SimpleCallback</b></A><br>
 <!-- Class MediaRouter.UserRouteInfo -->
 <A HREF="pkg_android.media.html#MediaRouter.UserRouteInfo" class="hiddenlink" target="rightframe"><b>MediaRouter.UserRouteInfo</b></A><br>
+<!-- Class MediaRouter.VolumeCallback -->
+<A HREF="pkg_android.media.html#MediaRouter.VolumeCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.VolumeCallback</b></A><br>
+<!-- Field mediaRouteTypes -->
+<nobr><A HREF="android.R.attr.html#android.R.attr.mediaRouteTypes" class="hiddenlink" target="rightframe">mediaRouteTypes</A>
+</nobr><br>
 <!-- Class MediaStore.MediaColumns -->
 <A HREF="android.provider.MediaStore.MediaColumns.html" class="hiddenlink" target="rightframe"><i>MediaStore.MediaColumns</i></A><br>
 <!-- Class MediaSyncEvent -->
@@ -2560,6 +2567,9 @@
 <!-- Field ORIENTATION_SQUARE -->
 <nobr><A HREF="android.content.res.Configuration.html#android.content.res.Configuration.ORIENTATION_SQUARE" class="hiddenlink" target="rightframe">ORIENTATION_SQUARE</A>
 </nobr><br>
+<!-- Method overridesItemVisibility -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.overridesItemVisibility_added()" class="hiddenlink" target="rightframe"><b>overridesItemVisibility</b>
+()</A></nobr><br>
 <!-- Class PackageInfo -->
 <A NAME="P"></A>
 <br><font size="+2">P</font>&nbsp;
@@ -2853,6 +2863,9 @@
 </nobr><br>
 <!-- Class RecognizerIntent -->
 <A HREF="android.speech.RecognizerIntent.html" class="hiddenlink" target="rightframe">RecognizerIntent</A><br>
+<!-- Method refreshVisibility -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.refreshVisibility_added()" class="hiddenlink" target="rightframe"><b>refreshVisibility</b>
+()</A></nobr><br>
 <!-- Method registerOnLoadCanceledListener -->
 <nobr><A HREF="android.content.Loader.html#android.content.Loader.registerOnLoadCanceledListener_added(android.content.Loader.OnLoadCanceledListener<D>)" class="hiddenlink" target="rightframe"><b>registerOnLoadCanceledListener</b>
 (<code>OnLoadCanceledListener&lt;D&gt;</code>)</A></nobr><br>
@@ -3321,6 +3334,12 @@
 <!-- Method setTextViewCompoundDrawables -->
 <nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawables_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawables</b>
 (<code>int, int, int, int, int</code>)</A></nobr><br>
+<!-- Method setTextViewCompoundDrawablesRelative -->
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawablesRelative_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawablesRelative</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<!-- Method setTextViewTextSize -->
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewTextSize_added(int, int, float)" class="hiddenlink" target="rightframe"><b>setTextViewTextSize</b>
+(<code>int, int, float</code>)</A></nobr><br>
 <!-- Method setThumbDrawable -->
 <nobr><A HREF="android.widget.Switch.html#android.widget.Switch.setThumbDrawable_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>setThumbDrawable</b>
 (<code>Drawable</code>)</A></nobr><br>
@@ -3369,6 +3388,12 @@
 <!-- Method setVideoScalingMode -->
 <nobr><A HREF="android.media.MediaPlayer.html#android.media.MediaPlayer.setVideoScalingMode_added(int)" class="hiddenlink" target="rightframe"><b>setVideoScalingMode</b>
 (<code>int</code>)</A></nobr><br>
+<!-- Method setViewPadding -->
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setViewPadding_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setViewPadding</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<!-- Method setVisibilityListener -->
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.setVisibilityListener_added(android.view.ActionProvider.VisibilityListener)" class="hiddenlink" target="rightframe"><b>setVisibilityListener</b>
+(<code>VisibilityListener</code>)</A></nobr><br>
 <!-- Method setVisibleToUser -->
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.setVisibleToUser_added(boolean)" class="hiddenlink" target="rightframe"><b>setVisibleToUser</b>
 (<code>boolean</code>)</A></nobr><br>
diff --git a/docs/html/sdk/api_diff/16/changes/android.Manifest.permission.html b/docs/html/sdk/api_diff/16/changes/android.Manifest.permission.html
index c7988c0..3ec476f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.Manifest.permission.html
+++ b/docs/html/sdk/api_diff/16/changes/android.Manifest.permission.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.R.attr.html b/docs/html/sdk/api_diff/16/changes/android.R.attr.html
index 0d63d90..a4db7cf 100644
--- a/docs/html/sdk/api_diff/16/changes/android.R.attr.html
+++ b/docs/html/sdk/api_diff/16/changes/android.R.attr.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -119,6 +119,13 @@
 </TR>
 <TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
   <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.R.attr.mediaRouteTypes"></A>
+  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/R.attr.html#mediaRouteTypes" target="_top"><code>mediaRouteTypes</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
   <A NAME="android.R.attr.parentActivityName"></A>
   <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/R.attr.html#parentActivityName" target="_top"><code>parentActivityName</code></A></nobr>
   </TD>
diff --git a/docs/html/sdk/api_diff/16/changes/android.R.style.html b/docs/html/sdk/api_diff/16/changes/android.R.style.html
index a9827b5..988463c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.R.style.html
+++ b/docs/html/sdk/api_diff/16/changes/android.R.style.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityService.html b/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityService.html
index e5da9e6..227ab96 100644
--- a/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityService.html
+++ b/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityService.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityServiceInfo.html b/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityServiceInfo.html
index 28ac08b..c5f3e7c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityServiceInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityServiceInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.animation.LayoutTransition.html b/docs/html/sdk/api_diff/16/changes/android.animation.LayoutTransition.html
index d3cc2f7..a170508 100644
--- a/docs/html/sdk/api_diff/16/changes/android.animation.LayoutTransition.html
+++ b/docs/html/sdk/api_diff/16/changes/android.animation.LayoutTransition.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.Activity.html b/docs/html/sdk/api_diff/16/changes/android.app.Activity.html
index 7532134..b15de59 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.Activity.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.Activity.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.MemoryInfo.html b/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.MemoryInfo.html
index f30b1da..99c8ca0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.MemoryInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.MemoryInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.RunningAppProcessInfo.html b/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.RunningAppProcessInfo.html
index 0b7ebc7..041094e 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.RunningAppProcessInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.RunningAppProcessInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.html b/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.html
index 1c91fc1..309551c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.ActivityManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.DownloadManager.Request.html b/docs/html/sdk/api_diff/16/changes/android.app.DownloadManager.Request.html
index 0b7d9b7..97f5b10 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.DownloadManager.Request.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.DownloadManager.Request.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.Fragment.html b/docs/html/sdk/api_diff/16/changes/android.app.Fragment.html
index bde4b96..d60cecb 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.Fragment.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.Fragment.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.KeyguardManager.html b/docs/html/sdk/api_diff/16/changes/android.app.KeyguardManager.html
index b90590a..dd6dd34 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.KeyguardManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.KeyguardManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.Notification.Builder.html b/docs/html/sdk/api_diff/16/changes/android.app.Notification.Builder.html
index 7ca6ba2..85d595a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.Notification.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.Notification.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.Notification.html b/docs/html/sdk/api_diff/16/changes/android.app.Notification.html
index 1bc971e..842bd39 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.Notification.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.Notification.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.PendingIntent.html b/docs/html/sdk/api_diff/16/changes/android.app.PendingIntent.html
index be25f30..d262768 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.PendingIntent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.PendingIntent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.SearchManager.html b/docs/html/sdk/api_diff/16/changes/android.app.SearchManager.html
index 1722f6e..285781e 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.SearchManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.SearchManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.app.WallpaperManager.html b/docs/html/sdk/api_diff/16/changes/android.app.WallpaperManager.html
index 59a3cee..1fb21b4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.app.WallpaperManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.app.WallpaperManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetHostView.html b/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetHostView.html
index 0dc5304..be9f0c8 100644
--- a/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetHostView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetHostView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetManager.html b/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetManager.html
index e467c89..47b3c4a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetProvider.html b/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetProvider.html
index 8aa8b9c..e8f677f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetProvider.html
+++ b/docs/html/sdk/api_diff/16/changes/android.appwidget.AppWidgetProvider.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.bluetooth.BluetoothAdapter.html b/docs/html/sdk/api_diff/16/changes/android.bluetooth.BluetoothAdapter.html
index f430f52..cb152f9 100644
--- a/docs/html/sdk/api_diff/16/changes/android.bluetooth.BluetoothAdapter.html
+++ b/docs/html/sdk/api_diff/16/changes/android.bluetooth.BluetoothAdapter.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.AsyncTaskLoader.html b/docs/html/sdk/api_diff/16/changes/android.content.AsyncTaskLoader.html
index 842a312..b153537 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.AsyncTaskLoader.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.AsyncTaskLoader.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ClipData.Item.html b/docs/html/sdk/api_diff/16/changes/android.content.ClipData.Item.html
index f506745..38c37b4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ClipData.Item.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ClipData.Item.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ClipData.html b/docs/html/sdk/api_diff/16/changes/android.content.ClipData.html
index 59c56d2..2f60ec4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ClipData.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ClipData.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ClipDescription.html b/docs/html/sdk/api_diff/16/changes/android.content.ClipDescription.html
index 528513d..dc32779 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ClipDescription.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ClipDescription.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ComponentCallbacks2.html b/docs/html/sdk/api_diff/16/changes/android.content.ComponentCallbacks2.html
index d446190..061fa82 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ComponentCallbacks2.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ComponentCallbacks2.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ContentProvider.html b/docs/html/sdk/api_diff/16/changes/android.content.ContentProvider.html
index 30a4c30..44e061b 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ContentProvider.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ContentProvider.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ContentProviderClient.html b/docs/html/sdk/api_diff/16/changes/android.content.ContentProviderClient.html
index 48426c90..a70ba55 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ContentProviderClient.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ContentProviderClient.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ContentResolver.html b/docs/html/sdk/api_diff/16/changes/android.content.ContentResolver.html
index 0d1fb1c..773aa64 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ContentResolver.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ContentResolver.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.Context.html b/docs/html/sdk/api_diff/16/changes/android.content.Context.html
index 0134a11..8a07fda 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.Context.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.Context.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.ContextWrapper.html b/docs/html/sdk/api_diff/16/changes/android.content.ContextWrapper.html
index aea7ed4..4a856e4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.ContextWrapper.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.ContextWrapper.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.Intent.html b/docs/html/sdk/api_diff/16/changes/android.content.Intent.html
index ce2f2e8..05391d4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.Intent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.Intent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -155,13 +155,6 @@
 </TR>
 <TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
   <TD VALIGN="TOP" WIDTH="25%">
-  <A NAME="android.content.Intent.FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS"></A>
-  <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/content/Intent.html#FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS" target="_top"><code>FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS</code></A></nobr>
-  </TD>
-  <TD>&nbsp;</TD>
-</TR>
-<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
-  <TD VALIGN="TOP" WIDTH="25%">
   <A NAME="android.content.Intent.FLAG_RECEIVER_FOREGROUND"></A>
   <nobr><code>int</code>&nbsp;<A HREF="../../../../reference/android/content/Intent.html#FLAG_RECEIVER_FOREGROUND" target="_top"><code>FLAG_RECEIVER_FOREGROUND</code></A></nobr>
   </TD>
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.Loader.html b/docs/html/sdk/api_diff/16/changes/android.content.Loader.html
index 9a16b88..1fdb042 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.Loader.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.Loader.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.pm.ActivityInfo.html b/docs/html/sdk/api_diff/16/changes/android.content.pm.ActivityInfo.html
index 487a129..a2db676 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.pm.ActivityInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.pm.ActivityInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageInfo.html b/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageInfo.html
index 8c5ae8d..408e4c2 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageManager.html b/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageManager.html
index 0231400..65c5f21 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.pm.PackageManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.pm.PermissionInfo.html b/docs/html/sdk/api_diff/16/changes/android.content.pm.PermissionInfo.html
index de8898e..6000877 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.pm.PermissionInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.pm.PermissionInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.pm.ServiceInfo.html b/docs/html/sdk/api_diff/16/changes/android.content.pm.ServiceInfo.html
index 19ff184..07018f0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.pm.ServiceInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.pm.ServiceInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.res.Configuration.html b/docs/html/sdk/api_diff/16/changes/android.content.res.Configuration.html
index 635bf0f..00f3f75a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.res.Configuration.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.res.Configuration.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.content.res.Resources.html b/docs/html/sdk/api_diff/16/changes/android.content.res.Resources.html
index 2a82c03..dca61d8 100644
--- a/docs/html/sdk/api_diff/16/changes/android.content.res.Resources.html
+++ b/docs/html/sdk/api_diff/16/changes/android.content.res.Resources.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.AbstractCursor.html b/docs/html/sdk/api_diff/16/changes/android.database.AbstractCursor.html
index 8ef30ef..7a42022 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.AbstractCursor.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.AbstractCursor.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.ContentObservable.html b/docs/html/sdk/api_diff/16/changes/android.database.ContentObservable.html
index 0d53bbf..ec458e4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.ContentObservable.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.ContentObservable.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.ContentObserver.html b/docs/html/sdk/api_diff/16/changes/android.database.ContentObserver.html
index 8402333..4f376b4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.ContentObserver.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.ContentObserver.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.Cursor.html b/docs/html/sdk/api_diff/16/changes/android.database.Cursor.html
index 0d4873e..024e8d0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.Cursor.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.Cursor.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.CursorWindow.html b/docs/html/sdk/api_diff/16/changes/android.database.CursorWindow.html
index 6a31252..c42f140 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.CursorWindow.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.CursorWindow.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.SQLException.html b/docs/html/sdk/api_diff/16/changes/android.database.SQLException.html
index e075b44..1f6e1c1 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.SQLException.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.SQLException.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteClosable.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteClosable.html
index adebae2..cb1552d 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteClosable.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteClosable.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteDatabase.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteDatabase.html
index d1f82f5..12ad842 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteDatabase.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteDatabase.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteException.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteException.html
index 5c71efd..d6e4ebc 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteException.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteException.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteOpenHelper.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteOpenHelper.html
index 2ad2b7c..08a21fe 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteOpenHelper.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteOpenHelper.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteProgram.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteProgram.html
index 6e65aeb..854d9fc 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteProgram.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteProgram.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQuery.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQuery.html
index 39174af..eeec07c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQuery.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQuery.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQueryBuilder.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQueryBuilder.html
index a96030b..9863ac3 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQueryBuilder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQueryBuilder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteStatement.html b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteStatement.html
index a09a341..3df6e69 100644
--- a/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteStatement.html
+++ b/docs/html/sdk/api_diff/16/changes/android.database.sqlite.SQLiteStatement.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmManagerClient.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmManagerClient.html
index 266ff09..5eee746 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmManagerClient.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmManagerClient.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Action.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Action.html
index cf6f50d..2aaf764 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Action.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Action.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.DrmObjectType.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.DrmObjectType.html
index 87ff8da..122e3ae 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.DrmObjectType.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.DrmObjectType.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Playback.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Playback.html
index 594c4c0..f2038d9 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Playback.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.Playback.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.RightsStatus.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.RightsStatus.html
index c0525ab..37b04a8 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.RightsStatus.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.RightsStatus.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.html
index 75686cc..7039935 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmStore.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.drm.DrmSupportInfo.html b/docs/html/sdk/api_diff/16/changes/android.drm.DrmSupportInfo.html
index a62b31d..ab22f87 100644
--- a/docs/html/sdk/api_diff/16/changes/android.drm.DrmSupportInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.drm.DrmSupportInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.AvoidXfermode.html b/docs/html/sdk/api_diff/16/changes/android.graphics.AvoidXfermode.html
index b6c4f59..e9d0ebe 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.AvoidXfermode.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.AvoidXfermode.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.Camera.html b/docs/html/sdk/api_diff/16/changes/android.graphics.Camera.html
index 27b6d32..f75d71b 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.Camera.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.Camera.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.Canvas.html b/docs/html/sdk/api_diff/16/changes/android.graphics.Canvas.html
index d94562a..f025bc0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.Canvas.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.Canvas.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.Paint.html b/docs/html/sdk/api_diff/16/changes/android.graphics.Paint.html
index f5d5f79..bad0f84 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.Paint.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.Paint.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.PixelFormat.html b/docs/html/sdk/api_diff/16/changes/android.graphics.PixelFormat.html
index d6f4453..ea2342b 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.PixelFormat.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.PixelFormat.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.PixelXorXfermode.html b/docs/html/sdk/api_diff/16/changes/android.graphics.PixelXorXfermode.html
index c56d90e..147d373 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.PixelXorXfermode.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.PixelXorXfermode.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.SurfaceTexture.html b/docs/html/sdk/api_diff/16/changes/android.graphics.SurfaceTexture.html
index 66749de..ecd2e9f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.SurfaceTexture.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.SurfaceTexture.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.graphics.drawable.GradientDrawable.html b/docs/html/sdk/api_diff/16/changes/android.graphics.drawable.GradientDrawable.html
index 4e0a4ba..387d2d9 100644
--- a/docs/html/sdk/api_diff/16/changes/android.graphics.drawable.GradientDrawable.html
+++ b/docs/html/sdk/api_diff/16/changes/android.graphics.drawable.GradientDrawable.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.hardware.Camera.html b/docs/html/sdk/api_diff/16/changes/android.hardware.Camera.html
index 9e62312..5329266 100644
--- a/docs/html/sdk/api_diff/16/changes/android.hardware.Camera.html
+++ b/docs/html/sdk/api_diff/16/changes/android.hardware.Camera.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.hardware.SensorManager.html b/docs/html/sdk/api_diff/16/changes/android.hardware.SensorManager.html
index c573332..6b8316c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.hardware.SensorManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.hardware.SensorManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.AudioManager.html b/docs/html/sdk/api_diff/16/changes/android.media.AudioManager.html
index 7a8f61f..4ad8ede 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.AudioManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.AudioManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.AudioRecord.html b/docs/html/sdk/api_diff/16/changes/android.media.AudioRecord.html
index 567ae50..00502f1 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.AudioRecord.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.AudioRecord.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.MediaPlayer.html b/docs/html/sdk/api_diff/16/changes/android.media.MediaPlayer.html
index a5ceaad..602686e 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.MediaPlayer.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.MediaPlayer.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.AudioEncoder.html b/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.AudioEncoder.html
index 01b0dfb..4672d3a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.AudioEncoder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.AudioEncoder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.OutputFormat.html b/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.OutputFormat.html
index 6f529c8..cc155eb 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.OutputFormat.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.OutputFormat.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.html b/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.html
index 41fa517..ab168ed 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.MediaRecorder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.ToneGenerator.html b/docs/html/sdk/api_diff/16/changes/android.media.ToneGenerator.html
index 4b67fb3..db2c243 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.ToneGenerator.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.ToneGenerator.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.media.audiofx.Visualizer.html b/docs/html/sdk/api_diff/16/changes/android.media.audiofx.Visualizer.html
index ce70faa..2d359ea 100644
--- a/docs/html/sdk/api_diff/16/changes/android.media.audiofx.Visualizer.html
+++ b/docs/html/sdk/api_diff/16/changes/android.media.audiofx.Visualizer.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.net.ConnectivityManager.html b/docs/html/sdk/api_diff/16/changes/android.net.ConnectivityManager.html
index af5f08b..151f58a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.net.ConnectivityManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.net.ConnectivityManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.net.SSLCertificateSocketFactory.html b/docs/html/sdk/api_diff/16/changes/android.net.SSLCertificateSocketFactory.html
index 4f215ac..69cf35d 100644
--- a/docs/html/sdk/api_diff/16/changes/android.net.SSLCertificateSocketFactory.html
+++ b/docs/html/sdk/api_diff/16/changes/android.net.SSLCertificateSocketFactory.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.net.Uri.html b/docs/html/sdk/api_diff/16/changes/android.net.Uri.html
index 0573fe6..c8d747b 100644
--- a/docs/html/sdk/api_diff/16/changes/android.net.Uri.html
+++ b/docs/html/sdk/api_diff/16/changes/android.net.Uri.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.net.wifi.p2p.WifiP2pManager.html b/docs/html/sdk/api_diff/16/changes/android.net.wifi.p2p.WifiP2pManager.html
index 86520bc..1605831 100644
--- a/docs/html/sdk/api_diff/16/changes/android.net.wifi.p2p.WifiP2pManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.net.wifi.p2p.WifiP2pManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.nfc.FormatException.html b/docs/html/sdk/api_diff/16/changes/android.nfc.FormatException.html
index ec65609..2d6b396 100644
--- a/docs/html/sdk/api_diff/16/changes/android.nfc.FormatException.html
+++ b/docs/html/sdk/api_diff/16/changes/android.nfc.FormatException.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.nfc.NdefMessage.html b/docs/html/sdk/api_diff/16/changes/android.nfc.NdefMessage.html
index 4c9d9d6..9a8db58 100644
--- a/docs/html/sdk/api_diff/16/changes/android.nfc.NdefMessage.html
+++ b/docs/html/sdk/api_diff/16/changes/android.nfc.NdefMessage.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.nfc.NdefRecord.html b/docs/html/sdk/api_diff/16/changes/android.nfc.NdefRecord.html
index a5b159b..0eab428 100644
--- a/docs/html/sdk/api_diff/16/changes/android.nfc.NdefRecord.html
+++ b/docs/html/sdk/api_diff/16/changes/android.nfc.NdefRecord.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.nfc.NfcAdapter.html b/docs/html/sdk/api_diff/16/changes/android.nfc.NfcAdapter.html
index 042a0dd..4d22a1a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.nfc.NfcAdapter.html
+++ b/docs/html/sdk/api_diff/16/changes/android.nfc.NfcAdapter.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.nfc.tech.IsoDep.html b/docs/html/sdk/api_diff/16/changes/android.nfc.tech.IsoDep.html
index 9663328..b6a9cf6 100644
--- a/docs/html/sdk/api_diff/16/changes/android.nfc.tech.IsoDep.html
+++ b/docs/html/sdk/api_diff/16/changes/android.nfc.tech.IsoDep.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.os.Build.VERSION_CODES.html b/docs/html/sdk/api_diff/16/changes/android.os.Build.VERSION_CODES.html
index 516985e..422d0c1 100644
--- a/docs/html/sdk/api_diff/16/changes/android.os.Build.VERSION_CODES.html
+++ b/docs/html/sdk/api_diff/16/changes/android.os.Build.VERSION_CODES.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.os.ParcelFileDescriptor.html b/docs/html/sdk/api_diff/16/changes/android.os.ParcelFileDescriptor.html
index a73cc14..dec148b 100644
--- a/docs/html/sdk/api_diff/16/changes/android.os.ParcelFileDescriptor.html
+++ b/docs/html/sdk/api_diff/16/changes/android.os.ParcelFileDescriptor.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.os.Process.html b/docs/html/sdk/api_diff/16/changes/android.os.Process.html
index 1ed46fd..7a7c4d5 100644
--- a/docs/html/sdk/api_diff/16/changes/android.os.Process.html
+++ b/docs/html/sdk/api_diff/16/changes/android.os.Process.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.os.StrictMode.VmPolicy.Builder.html b/docs/html/sdk/api_diff/16/changes/android.os.StrictMode.VmPolicy.Builder.html
index 04305f8..c5c332d 100644
--- a/docs/html/sdk/api_diff/16/changes/android.os.StrictMode.VmPolicy.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.os.StrictMode.VmPolicy.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.os.TokenWatcher.html b/docs/html/sdk/api_diff/16/changes/android.os.TokenWatcher.html
index 13ceb9f..084af83 100644
--- a/docs/html/sdk/api_diff/16/changes/android.os.TokenWatcher.html
+++ b/docs/html/sdk/api_diff/16/changes/android.os.TokenWatcher.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.os.Vibrator.html b/docs/html/sdk/api_diff/16/changes/android.os.Vibrator.html
index 9946d85..6b20dac 100644
--- a/docs/html/sdk/api_diff/16/changes/android.os.Vibrator.html
+++ b/docs/html/sdk/api_diff/16/changes/android.os.Vibrator.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.AttendeesColumns.html b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.AttendeesColumns.html
index e076397..f1a9577 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.AttendeesColumns.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.AttendeesColumns.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.EventsColumns.html b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.EventsColumns.html
index dbb369a..868f1de 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.EventsColumns.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.EventsColumns.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.RemindersColumns.html b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.RemindersColumns.html
index e55e138..1d9e485 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.RemindersColumns.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.RemindersColumns.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.html b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.html
index 07098f1..172b1ed 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.CalendarContract.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.CommonDataKinds.Phone.html b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.CommonDataKinds.Phone.html
index 477a51c..21d29b8 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.CommonDataKinds.Phone.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.CommonDataKinds.Phone.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.Contacts.html b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.Contacts.html
index 6d9df3f..a0f3ad6 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.Contacts.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.Contacts.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.DataUsageFeedback.html b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.DataUsageFeedback.html
index 0b4380c..e27e55c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.DataUsageFeedback.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.DataUsageFeedback.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.PhoneLookupColumns.html b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.PhoneLookupColumns.html
index 6ffe8ac..086f29a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.PhoneLookupColumns.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.ContactsContract.PhoneLookupColumns.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.MediaStore.MediaColumns.html b/docs/html/sdk/api_diff/16/changes/android.provider.MediaStore.MediaColumns.html
index 3f34460..1e9b8dd 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.MediaStore.MediaColumns.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.MediaStore.MediaColumns.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.Settings.Secure.html b/docs/html/sdk/api_diff/16/changes/android.provider.Settings.Secure.html
index 99884f4..85b97e3 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.Settings.Secure.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.Settings.Secure.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.Settings.System.html b/docs/html/sdk/api_diff/16/changes/android.provider.Settings.System.html
index 74c8eb3..b13218a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.Settings.System.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.Settings.System.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.Settings.html b/docs/html/sdk/api_diff/16/changes/android.provider.Settings.html
index 39342f1..fdd2e82 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.Settings.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.Settings.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.provider.UserDictionary.Words.html b/docs/html/sdk/api_diff/16/changes/android.provider.UserDictionary.Words.html
index 2cc1bc0..048f9e7 100644
--- a/docs/html/sdk/api_diff/16/changes/android.provider.UserDictionary.Words.html
+++ b/docs/html/sdk/api_diff/16/changes/android.provider.UserDictionary.Words.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Allocation.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Allocation.html
index 66c3db9..a63823f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Allocation.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Allocation.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Element.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Element.html
index 41fea88..c2e53fe 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Element.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Element.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.EntryType.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.EntryType.html
index 17292dc..ef49db3 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.EntryType.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.EntryType.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.IndexEntry.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.IndexEntry.html
index 121c272..5d5f307 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.IndexEntry.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.IndexEntry.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.html
index 6736ffd..3f65c2c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.FileA3D.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.Style.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.Style.html
index 3f00425..85bca91 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.Style.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.Style.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.html
index b1c1ae6..b9efb85 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Font.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.AllocationBuilder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.AllocationBuilder.html
index f8ad159..faf6237 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.AllocationBuilder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.AllocationBuilder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Builder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Builder.html
index 882a7b0..1ed9a63 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Primitive.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Primitive.html
index 73d31db..dc94449 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Primitive.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.Primitive.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.TriangleMeshBuilder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.TriangleMeshBuilder.html
index 90a7dce..30772e0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.TriangleMeshBuilder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.TriangleMeshBuilder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.html
index 2030ed0..a7d6b19 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Mesh.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.BaseProgramBuilder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.BaseProgramBuilder.html
index 4f0b6e1..f2ece67 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.BaseProgramBuilder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.BaseProgramBuilder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.html
index 9b0718e..cea3097 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Program.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.Builder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.Builder.html
index bf9c417..b6c50d3 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.html
index 53dd0f8..82f0614 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.EnvMode.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.EnvMode.html
index 8289e9c..42e4c41 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.EnvMode.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.EnvMode.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.Format.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.Format.html
index 4f8be80..6b0d42a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.Format.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.Format.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.html
index bc9d8e9..866e75e 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.html
index 0073206..043927d 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.Builder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.Builder.html
index 4dbb440..7a36129 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.CullMode.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.CullMode.html
index 3175579..135a7bf 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.CullMode.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.CullMode.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.html
index cccfc7e..60042f4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramStore.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramStore.html
index 16b2ef3..4e96e4f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramStore.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramStore.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.Builder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.Builder.html
index 111140d..adfdd1c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.html
index e72f32c..278079f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Builder.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Builder.html
index edbc528..52bbdf9 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Builder.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Builder.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Constants.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Constants.html
index 3a9b272..274ae05 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Constants.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Constants.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.html
index 5dd5e7a..6b1894f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.RSSurfaceView.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.RSSurfaceView.html
index 55c3b49..7c9d264 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.RSSurfaceView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.RSSurfaceView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.RSTextureView.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.RSTextureView.html
index 3fc1497..b0b87ae 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.RSTextureView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.RSTextureView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.SurfaceConfig.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.SurfaceConfig.html
index da5f05f..e07b1ac 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.SurfaceConfig.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.SurfaceConfig.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.html
index a0ad13e..6cf0f6c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Sampler.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Sampler.html
index 8421eb8..1345dae 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Sampler.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Sampler.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.renderscript.Script.html b/docs/html/sdk/api_diff/16/changes/android.renderscript.Script.html
index bf71177..8fc9924 100644
--- a/docs/html/sdk/api_diff/16/changes/android.renderscript.Script.html
+++ b/docs/html/sdk/api_diff/16/changes/android.renderscript.Script.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.security.KeyChain.html b/docs/html/sdk/api_diff/16/changes/android.security.KeyChain.html
index 7514250..92e57b5 100644
--- a/docs/html/sdk/api_diff/16/changes/android.security.KeyChain.html
+++ b/docs/html/sdk/api_diff/16/changes/android.security.KeyChain.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.service.textservice.SpellCheckerService.Session.html b/docs/html/sdk/api_diff/16/changes/android.service.textservice.SpellCheckerService.Session.html
index 6194cf6..c83d21f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.service.textservice.SpellCheckerService.Session.html
+++ b/docs/html/sdk/api_diff/16/changes/android.service.textservice.SpellCheckerService.Session.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.speech.RecognizerIntent.html b/docs/html/sdk/api_diff/16/changes/android.speech.RecognizerIntent.html
index 59ee347..d869c23 100644
--- a/docs/html/sdk/api_diff/16/changes/android.speech.RecognizerIntent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.speech.RecognizerIntent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.test.AssertionFailedError.html b/docs/html/sdk/api_diff/16/changes/android.test.AssertionFailedError.html
index 23d47dd..feba168 100644
--- a/docs/html/sdk/api_diff/16/changes/android.test.AssertionFailedError.html
+++ b/docs/html/sdk/api_diff/16/changes/android.test.AssertionFailedError.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.test.ComparisonFailure.html b/docs/html/sdk/api_diff/16/changes/android.test.ComparisonFailure.html
index 1c9d008..4f9406d 100644
--- a/docs/html/sdk/api_diff/16/changes/android.test.ComparisonFailure.html
+++ b/docs/html/sdk/api_diff/16/changes/android.test.ComparisonFailure.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.test.InstrumentationTestSuite.html b/docs/html/sdk/api_diff/16/changes/android.test.InstrumentationTestSuite.html
index 41d0de8..41f0bc0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.test.InstrumentationTestSuite.html
+++ b/docs/html/sdk/api_diff/16/changes/android.test.InstrumentationTestSuite.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.test.mock.MockContext.html b/docs/html/sdk/api_diff/16/changes/android.test.mock.MockContext.html
index 878bc32..a44c902 100644
--- a/docs/html/sdk/api_diff/16/changes/android.test.mock.MockContext.html
+++ b/docs/html/sdk/api_diff/16/changes/android.test.mock.MockContext.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.text.Html.html b/docs/html/sdk/api_diff/16/changes/android.text.Html.html
index 1d2c46d..a0361cd 100644
--- a/docs/html/sdk/api_diff/16/changes/android.text.Html.html
+++ b/docs/html/sdk/api_diff/16/changes/android.text.Html.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.util.DisplayMetrics.html b/docs/html/sdk/api_diff/16/changes/android.util.DisplayMetrics.html
index c563255..2f93ccf 100644
--- a/docs/html/sdk/api_diff/16/changes/android.util.DisplayMetrics.html
+++ b/docs/html/sdk/api_diff/16/changes/android.util.DisplayMetrics.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ActionMode.html b/docs/html/sdk/api_diff/16/changes/android.view.ActionMode.html
index 4d7dba4..0633827 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ActionMode.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ActionMode.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ActionProvider.html b/docs/html/sdk/api_diff/16/changes/android.view.ActionProvider.html
index 295e6f1..9c65f8f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ActionProvider.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ActionProvider.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -83,11 +83,39 @@
 </TH>
 <TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
   <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.view.ActionProvider.isVisible_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/view/ActionProvider.html#isVisible()" target="_top"><code>isVisible</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
   <A NAME="android.view.ActionProvider.onCreateActionView_added(android.view.MenuItem)"></A>
   <nobr><code>View</code>&nbsp;<A HREF="../../../../reference/android/view/ActionProvider.html#onCreateActionView(android.view.MenuItem)" target="_top"><code>onCreateActionView</code></A>(<code>MenuItem</code>)</nobr>
   </TD>
   <TD>&nbsp;</TD>
 </TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.view.ActionProvider.overridesItemVisibility_added()"></A>
+  <nobr><code>boolean</code>&nbsp;<A HREF="../../../../reference/android/view/ActionProvider.html#overridesItemVisibility()" target="_top"><code>overridesItemVisibility</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.view.ActionProvider.refreshVisibility_added()"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/view/ActionProvider.html#refreshVisibility()" target="_top"><code>refreshVisibility</code></A>()</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.view.ActionProvider.setVisibilityListener_added(android.view.ActionProvider.VisibilityListener)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/view/ActionProvider.html#setVisibilityListener(android.view.ActionProvider.VisibilityListener)" target="_top"><code>setVisibilityListener</code></A>(<code>VisibilityListener</code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
 </TABLE>
 &nbsp;
 <p>
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.Display.html b/docs/html/sdk/api_diff/16/changes/android.view.Display.html
index e1db224..c519edf 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.Display.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.Display.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.Gravity.html b/docs/html/sdk/api_diff/16/changes/android.view.Gravity.html
index c8dfc0b..7e6daea 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.Gravity.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.Gravity.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.InputDevice.html b/docs/html/sdk/api_diff/16/changes/android.view.InputDevice.html
index e787591..9515708 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.InputDevice.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.InputDevice.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.InputEvent.html b/docs/html/sdk/api_diff/16/changes/android.view.InputEvent.html
index c41ca44..e3b872c 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.InputEvent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.InputEvent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.KeyCharacterMap.html b/docs/html/sdk/api_diff/16/changes/android.view.KeyCharacterMap.html
index 4e414f3..e18e9b5 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.KeyCharacterMap.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.KeyCharacterMap.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.KeyEvent.html b/docs/html/sdk/api_diff/16/changes/android.view.KeyEvent.html
index 9c35b87..bedd73f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.KeyEvent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.KeyEvent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.TextureView.html b/docs/html/sdk/api_diff/16/changes/android.view.TextureView.html
index 5e835f3..e8fd732 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.TextureView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.TextureView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.View.AccessibilityDelegate.html b/docs/html/sdk/api_diff/16/changes/android.view.View.AccessibilityDelegate.html
index 04a4157..6350eee 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.View.AccessibilityDelegate.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.View.AccessibilityDelegate.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.View.html b/docs/html/sdk/api_diff/16/changes/android.view.View.html
index 8b8bc43..015f638 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.View.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.View.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.HierarchyTraceType.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.HierarchyTraceType.html
index 9098260..e908fb5 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.HierarchyTraceType.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.HierarchyTraceType.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.RecyclerTraceType.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.RecyclerTraceType.html
index f25f40f..6fa0d11 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.RecyclerTraceType.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.RecyclerTraceType.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.html
index 6405673..9bc7af1 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewDebug.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewGroup.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewGroup.html
index adf11b4..e30c4b3 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewGroup.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewGroup.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewParent.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewParent.html
index a6b7f00..fc32c23 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewParent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewParent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewPropertyAnimator.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewPropertyAnimator.html
index eb6f3b4..49be2b7 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewPropertyAnimator.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewPropertyAnimator.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewStub.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewStub.html
index cc5a4c6..ff1b0fe 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewStub.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewStub.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.ViewTreeObserver.html b/docs/html/sdk/api_diff/16/changes/android.view.ViewTreeObserver.html
index e679ce2..8ba4bab 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.ViewTreeObserver.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.ViewTreeObserver.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityEvent.html b/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityEvent.html
index 0a8cfe8..0c51ee4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityEvent.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityEvent.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityNodeInfo.html b/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityNodeInfo.html
index 7e10499..7d3e447 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityNodeInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityNodeInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityRecord.html b/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityRecord.html
index bf3b7a7..9637ca2 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityRecord.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityRecord.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.EditorInfo.html b/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.EditorInfo.html
index 8e15797..bd05573 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.EditorInfo.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.EditorInfo.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.InputMethodManager.html b/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.InputMethodManager.html
index 99da059..c8194cf 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.InputMethodManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.inputmethod.InputMethodManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener.html b/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener.html
index e8b3049..0873414 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.html b/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.html
index 2828329..32fc681 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSubtype.html b/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSubtype.html
index 1bc66c2..068b5b8 100644
--- a/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSubtype.html
+++ b/docs/html/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSubtype.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.CookieManager.html b/docs/html/sdk/api_diff/16/changes/android.webkit.CookieManager.html
index 20b9bb3..b740796 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.CookieManager.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.CookieManager.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.GeolocationPermissions.html b/docs/html/sdk/api_diff/16/changes/android.webkit.GeolocationPermissions.html
index 7859c05..3ffe9a7 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.GeolocationPermissions.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.GeolocationPermissions.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.JsResult.html b/docs/html/sdk/api_diff/16/changes/android.webkit.JsResult.html
index 0023588..8f2577f 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.JsResult.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.JsResult.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.WebIconDatabase.html b/docs/html/sdk/api_diff/16/changes/android.webkit.WebIconDatabase.html
index 4483b47..26024f2 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.WebIconDatabase.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.WebIconDatabase.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.WebSettings.html b/docs/html/sdk/api_diff/16/changes/android.webkit.WebSettings.html
index 566c7fc..6337887 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.WebSettings.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.WebSettings.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.WebStorage.html b/docs/html/sdk/api_diff/16/changes/android.webkit.WebStorage.html
index 2a62fec..b900c0a 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.WebStorage.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.WebStorage.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.HitTestResult.html b/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.HitTestResult.html
index 31ba76f..f3a25c0 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.HitTestResult.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.HitTestResult.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.html b/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.html
index 0e4a3a0..e009999 100644
--- a/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.webkit.WebView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.AbsSeekBar.html b/docs/html/sdk/api_diff/16/changes/android.widget.AbsSeekBar.html
index 84d76c8..e5ca3d5 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.AbsSeekBar.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.AbsSeekBar.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewAnimator.html b/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewAnimator.html
index 4dc2df5..1b484be 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewAnimator.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewAnimator.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewFlipper.html b/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewFlipper.html
index 5f65166..aa2f295 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewFlipper.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.AdapterViewFlipper.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.AutoCompleteTextView.html b/docs/html/sdk/api_diff/16/changes/android.widget.AutoCompleteTextView.html
index 8e9bfa7..d32a076 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.AutoCompleteTextView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.AutoCompleteTextView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.CalendarView.html b/docs/html/sdk/api_diff/16/changes/android.widget.CalendarView.html
index 471508c..fd7b0e4 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.CalendarView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.CalendarView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.CheckedTextView.html b/docs/html/sdk/api_diff/16/changes/android.widget.CheckedTextView.html
index 63f1f38..4d257dc 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.CheckedTextView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.CheckedTextView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.FrameLayout.html b/docs/html/sdk/api_diff/16/changes/android.widget.FrameLayout.html
index 285f4c3..2d18399 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.FrameLayout.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.FrameLayout.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.Gallery.html b/docs/html/sdk/api_diff/16/changes/android.widget.Gallery.html
index 1d524e9..bea43e60 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.Gallery.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.Gallery.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.GridLayout.html b/docs/html/sdk/api_diff/16/changes/android.widget.GridLayout.html
index 4d08a2d..70600ae 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.GridLayout.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.GridLayout.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.GridView.html b/docs/html/sdk/api_diff/16/changes/android.widget.GridView.html
index 27af520..31a0a95 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.GridView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.GridView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.ImageView.html b/docs/html/sdk/api_diff/16/changes/android.widget.ImageView.html
index f2928f9..bb505bf 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.ImageView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.ImageView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.LinearLayout.html b/docs/html/sdk/api_diff/16/changes/android.widget.LinearLayout.html
index e0f2670..f7717ec 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.LinearLayout.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.LinearLayout.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.RelativeLayout.html b/docs/html/sdk/api_diff/16/changes/android.widget.RelativeLayout.html
index 4c62dc1..75ce6e6 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.RelativeLayout.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.RelativeLayout.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.RemoteViews.html b/docs/html/sdk/api_diff/16/changes/android.widget.RemoteViews.html
index c29df4b..c05ae10 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.RemoteViews.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.RemoteViews.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -103,6 +103,27 @@
   </TD>
   <TD>&nbsp;</TD>
 </TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.widget.RemoteViews.setTextViewCompoundDrawablesRelative_added(int, int, int, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/widget/RemoteViews.html#setTextViewCompoundDrawablesRelative(int, int, int, int, int)" target="_top"><code>setTextViewCompoundDrawablesRelative</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.widget.RemoteViews.setTextViewTextSize_added(int, int, float)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/widget/RemoteViews.html#setTextViewTextSize(int, int, float)" target="_top"><code>setTextViewTextSize</code></A>(<code>int,</nobr> int<nobr>,</nobr> float<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="android.widget.RemoteViews.setViewPadding_added(int, int, int, int, int)"></A>
+  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/widget/RemoteViews.html#setViewPadding(int, int, int, int, int)" target="_top"><code>setViewPadding</code></A>(<code>int,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr>,</nobr> int<nobr><nobr></code>)</nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
 </TABLE>
 &nbsp;
 <a NAME="fields"></a>
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.SearchView.html b/docs/html/sdk/api_diff/16/changes/android.widget.SearchView.html
index 194fa0b..0cd0cfb 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.SearchView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.SearchView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.Spinner.html b/docs/html/sdk/api_diff/16/changes/android.widget.Spinner.html
index 8525939..0d57199 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.Spinner.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.Spinner.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.Switch.html b/docs/html/sdk/api_diff/16/changes/android.widget.Switch.html
index e8947d6..6fa62d40 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.Switch.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.Switch.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/android.widget.TextView.html b/docs/html/sdk/api_diff/16/changes/android.widget.TextView.html
index 03dab15..0cb483b 100644
--- a/docs/html/sdk/api_diff/16/changes/android.widget.TextView.html
+++ b/docs/html/sdk/api_diff/16/changes/android.widget.TextView.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/changes-summary.html b/docs/html/sdk/api_diff/16/changes/changes-summary.html
index 3edac63..93c9aaa 100644
--- a/docs/html/sdk/api_diff/16/changes/changes-summary.html
+++ b/docs/html/sdk/api_diff/16/changes/changes-summary.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/classes_index_additions.html b/docs/html/sdk/api_diff/16/changes/classes_index_additions.html
index d88c0a1..4cd366a 100644
--- a/docs/html/sdk/api_diff/16/changes/classes_index_additions.html
+++ b/docs/html/sdk/api_diff/16/changes/classes_index_additions.html
@@ -62,6 +62,7 @@
 <p><div style="line-height:1.5em;color:black">
 <A HREF="pkg_android.view.accessibility.html#AccessibilityNodeProvider" class="hiddenlink" target="rightframe"><b>AccessibilityNodeProvider</b></A><br>
 <A HREF="pkg_android.media.audiofx.html#AcousticEchoCanceler" class="hiddenlink" target="rightframe"><b>AcousticEchoCanceler</b></A><br>
+<A HREF="pkg_android.view.html#ActionProvider.VisibilityListener" class="hiddenlink" target="rightframe"><b><i>ActionProvider.VisibilityListener</i></b></A><br>
 <A HREF="pkg_android.app.html#ActivityOptions" class="hiddenlink" target="rightframe"><b>ActivityOptions</b></A><br>
 <A HREF="pkg_android.widget.html#Advanceable" class="hiddenlink" target="rightframe"><b><i>Advanceable</i></b></A><br>
 <A HREF="pkg_android.media.audiofx.html#AutomaticGainControl" class="hiddenlink" target="rightframe"><b>AutomaticGainControl</b></A><br>
@@ -135,6 +136,7 @@
 <A HREF="pkg_android.media.html#MediaRouter.RouteInfo" class="hiddenlink" target="rightframe"><b>MediaRouter.RouteInfo</b></A><br>
 <A HREF="pkg_android.media.html#MediaRouter.SimpleCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.SimpleCallback</b></A><br>
 <A HREF="pkg_android.media.html#MediaRouter.UserRouteInfo" class="hiddenlink" target="rightframe"><b>MediaRouter.UserRouteInfo</b></A><br>
+<A HREF="pkg_android.media.html#MediaRouter.VolumeCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.VolumeCallback</b></A><br>
 <A HREF="pkg_android.media.html#MediaSyncEvent" class="hiddenlink" target="rightframe"><b>MediaSyncEvent</b></A><br>
 <A NAME="N"></A>
 <br><font size="+2">N</font>&nbsp;
diff --git a/docs/html/sdk/api_diff/16/changes/classes_index_all.html b/docs/html/sdk/api_diff/16/changes/classes_index_all.html
index 97a4d85..6caf76c 100644
--- a/docs/html/sdk/api_diff/16/changes/classes_index_all.html
+++ b/docs/html/sdk/api_diff/16/changes/classes_index_all.html
@@ -83,6 +83,7 @@
 <A HREF="pkg_android.media.audiofx.html#AcousticEchoCanceler" class="hiddenlink" target="rightframe"><b>AcousticEchoCanceler</b></A><br>
 <A HREF="android.view.ActionMode.html" class="hiddenlink" target="rightframe">ActionMode</A><br>
 <A HREF="android.view.ActionProvider.html" class="hiddenlink" target="rightframe">ActionProvider</A><br>
+<A HREF="pkg_android.view.html#ActionProvider.VisibilityListener" class="hiddenlink" target="rightframe"><b><i>ActionProvider.VisibilityListener</i></b></A><br>
 <A HREF="android.app.Activity.html" class="hiddenlink" target="rightframe">Activity</A><br>
 <A HREF="android.content.pm.ActivityInfo.html" class="hiddenlink" target="rightframe">ActivityInfo</A><br>
 <A HREF="android.app.ActivityManager.html" class="hiddenlink" target="rightframe">ActivityManager</A><br>
@@ -520,6 +521,7 @@
 <A HREF="pkg_android.media.html#MediaRouter.RouteInfo" class="hiddenlink" target="rightframe"><b>MediaRouter.RouteInfo</b></A><br>
 <A HREF="pkg_android.media.html#MediaRouter.SimpleCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.SimpleCallback</b></A><br>
 <A HREF="pkg_android.media.html#MediaRouter.UserRouteInfo" class="hiddenlink" target="rightframe"><b>MediaRouter.UserRouteInfo</b></A><br>
+<A HREF="pkg_android.media.html#MediaRouter.VolumeCallback" class="hiddenlink" target="rightframe"><b>MediaRouter.VolumeCallback</b></A><br>
 <A HREF="android.provider.MediaStore.MediaColumns.html" class="hiddenlink" target="rightframe"><i>MediaStore.MediaColumns</i></A><br>
 <A HREF="pkg_android.media.html#MediaSyncEvent" class="hiddenlink" target="rightframe"><b>MediaSyncEvent</b></A><br>
 <A HREF="android.renderscript.Mesh.html" class="hiddenlink" target="rightframe">Mesh</A><br>
diff --git a/docs/html/sdk/api_diff/16/changes/fields_index_additions.html b/docs/html/sdk/api_diff/16/changes/fields_index_additions.html
index 7ca7ad6..0d93032 100644
--- a/docs/html/sdk/api_diff/16/changes/fields_index_additions.html
+++ b/docs/html/sdk/api_diff/16/changes/fields_index_additions.html
@@ -289,8 +289,6 @@
 </nobr><br>
 <nobr><A HREF="android.content.Intent.html#android.content.Intent.FILL_IN_CLIP_DATA" class="hiddenlink" target="rightframe">FILL_IN_CLIP_DATA</A>
 </nobr><br>
-<nobr><A HREF="android.content.Intent.html#android.content.Intent.FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS" class="hiddenlink" target="rightframe">FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS</A>
-</nobr><br>
 <nobr><A HREF="android.accessibilityservice.AccessibilityServiceInfo.html#android.accessibilityservice.AccessibilityServiceInfo.FLAG_INCLUDE_NOT_IMPORTANT_VIEWS" class="hiddenlink" target="rightframe">FLAG_INCLUDE_NOT_IMPORTANT_VIEWS</A>
 </nobr><br>
 <nobr><A HREF="android.content.pm.ServiceInfo.html#android.content.pm.ServiceInfo.FLAG_ISOLATED_PROCESS" class="hiddenlink" target="rightframe">FLAG_ISOLATED_PROCESS</A>
@@ -570,6 +568,8 @@
 </nobr><br>
 <nobr><A HREF="android.R.attr.html#android.R.attr.mediaRouteButtonStyle" class="hiddenlink" target="rightframe">mediaRouteButtonStyle</A>
 </nobr><br>
+<nobr><A HREF="android.R.attr.html#android.R.attr.mediaRouteTypes" class="hiddenlink" target="rightframe">mediaRouteTypes</A>
+</nobr><br>
 <nobr><A HREF="android.provider.CalendarContract.RemindersColumns.html#android.provider.CalendarContract.RemindersColumns.METHOD_ALARM" class="hiddenlink" target="rightframe">METHOD_ALARM</A>
 </nobr><br>
 <nobr><A HREF="android.content.ClipDescription.html#android.content.ClipDescription.MIMETYPE_TEXT_HTML" class="hiddenlink" target="rightframe">MIMETYPE_TEXT_HTML</A>
diff --git a/docs/html/sdk/api_diff/16/changes/fields_index_all.html b/docs/html/sdk/api_diff/16/changes/fields_index_all.html
index e7dea5d..2eee5e3 100644
--- a/docs/html/sdk/api_diff/16/changes/fields_index_all.html
+++ b/docs/html/sdk/api_diff/16/changes/fields_index_all.html
@@ -323,8 +323,6 @@
 </nobr><br>
 <nobr><A HREF="android.content.Intent.html#android.content.Intent.FILL_IN_CLIP_DATA" class="hiddenlink" target="rightframe">FILL_IN_CLIP_DATA</A>
 </nobr><br>
-<nobr><A HREF="android.content.Intent.html#android.content.Intent.FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS" class="hiddenlink" target="rightframe">FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS</A>
-</nobr><br>
 <nobr><A HREF="android.app.Notification.html#android.app.Notification.FLAG_HIGH_PRIORITY" class="hiddenlink" target="rightframe">FLAG_HIGH_PRIORITY</A>
 </nobr><br>
 <nobr><A HREF="android.accessibilityservice.AccessibilityServiceInfo.html#android.accessibilityservice.AccessibilityServiceInfo.FLAG_INCLUDE_NOT_IMPORTANT_VIEWS" class="hiddenlink" target="rightframe">FLAG_INCLUDE_NOT_IMPORTANT_VIEWS</A>
@@ -634,6 +632,8 @@
 </nobr><br>
 <nobr><A HREF="android.R.attr.html#android.R.attr.mediaRouteButtonStyle" class="hiddenlink" target="rightframe">mediaRouteButtonStyle</A>
 </nobr><br>
+<nobr><A HREF="android.R.attr.html#android.R.attr.mediaRouteTypes" class="hiddenlink" target="rightframe">mediaRouteTypes</A>
+</nobr><br>
 <nobr><A HREF="android.provider.CalendarContract.RemindersColumns.html#android.provider.CalendarContract.RemindersColumns.METHOD_ALARM" class="hiddenlink" target="rightframe">METHOD_ALARM</A>
 </nobr><br>
 <nobr><A HREF="android.content.ClipDescription.html#android.content.ClipDescription.MIMETYPE_TEXT_HTML" class="hiddenlink" target="rightframe">MIMETYPE_TEXT_HTML</A>
diff --git a/docs/html/sdk/api_diff/16/changes/jdiff_statistics.html b/docs/html/sdk/api_diff/16/changes/jdiff_statistics.html
index 090eb6e..f0ddde1 100644
--- a/docs/html/sdk/api_diff/16/changes/jdiff_statistics.html
+++ b/docs/html/sdk/api_diff/16/changes/jdiff_statistics.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -96,10 +96,10 @@
 </TR>
 <TR>
   <TD>Classes and <i>Interfaces</i></TD>
-  <TD ALIGN="right">55</TD>
+  <TD ALIGN="right">57</TD>
   <TD ALIGN="right">211</TD>
   <TD ALIGN="right">0</TD>
-  <TD ALIGN="right">266</TD>
+  <TD ALIGN="right">268</TD>
 </TR>
 <TR>
   <TD>Constructors</TD>
@@ -110,10 +110,10 @@
 </TR>
 <TR>
   <TD>Methods</TD>
-  <TD ALIGN="right">374</TD>
+  <TD ALIGN="right">381</TD>
   <TD ALIGN="right">151</TD>
   <TD ALIGN="right">20</TD>
-  <TD ALIGN="right">545</TD>
+  <TD ALIGN="right">552</TD>
 </TR>
 <TR>
   <TD>Fields</TD>
@@ -124,10 +124,10 @@
 </TR>
 <TR>
   <TD style="background-color:#FAFAFA"><b>Total</b></TD>
-  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>616</strong></TD>
+  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>625</strong></TD>
   <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>469</strong></TD>
   <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>28</strong></TD>
-  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>1113</strong></TD>
+  <TD  style="background-color:#FAFAFA" ALIGN="right"><strong>1122</strong></TD>
 </TR>
 </TABLE>
 <br>
@@ -143,7 +143,7 @@
   <TD><A HREF="pkg_android.accessibilityservice.html">android.accessibilityservice</A></TD>
 </TR>
 <TR>
-  <TD ALIGN="center">22</TD>
+  <TD ALIGN="center">23</TD>
   <TD><A HREF="pkg_android.media.html">android.media</A></TD>
 </TR>
 <TR>
@@ -199,12 +199,12 @@
   <TD><A HREF="pkg_android.database.html">android.database</A></TD>
 </TR>
 <TR>
-  <TD ALIGN="center">3</TD>
-  <TD><A HREF="pkg_android.os.html">android.os</A></TD>
+  <TD ALIGN="center">4</TD>
+  <TD><A HREF="pkg_android.view.html">android.view</A></TD>
 </TR>
 <TR>
   <TD ALIGN="center">3</TD>
-  <TD><A HREF="pkg_android.view.html">android.view</A></TD>
+  <TD><A HREF="pkg_android.os.html">android.os</A></TD>
 </TR>
 <TR>
   <TD ALIGN="center">3</TD>
@@ -284,11 +284,11 @@
 </TR>
 <TR>
   <TD ALIGN="center">&lt;1</TD>
-  <TD><A HREF="pkg_android.view.inputmethod.html">android.view.inputmethod</A></TD>
+  <TD><A HREF="pkg_android.html">android</A></TD>
 </TR>
 <TR>
   <TD ALIGN="center">&lt;1</TD>
-  <TD><A HREF="pkg_android.html">android</A></TD>
+  <TD><A HREF="pkg_android.view.inputmethod.html">android.view.inputmethod</A></TD>
 </TR>
 <TR>
   <TD ALIGN="center">&lt;1</TD>
@@ -450,6 +450,11 @@
 junit.framework.ComparisonFailure</A></TD>
 </TR>
 <TR>
+  <TD ALIGN="center">46</TD>
+  <TD><A HREF="android.view.ActionProvider.html">
+android.view.ActionProvider</A></TD>
+</TR>
+<TR>
   <TD ALIGN="center">45</TD>
   <TD><A HREF="android.renderscript.Program.html">
 android.renderscript.Program</A></TD>
@@ -510,11 +515,6 @@
 android.widget.Spinner</A></TD>
 </TR>
 <TR>
-  <TD ALIGN="center">27</TD>
-  <TD><A HREF="android.view.ActionProvider.html">
-android.view.ActionProvider</A></TD>
-</TR>
-<TR>
   <TD ALIGN="center">26</TD>
   <TD><A HREF="android.net.wifi.p2p.WifiP2pManager.html">
 android.net.wifi.p2p.WifiP2pManager</A></TD>
@@ -966,6 +966,11 @@
 </TR>
 <TR>
   <TD ALIGN="center">5</TD>
+  <TD><A HREF="android.widget.RemoteViews.html">
+android.widget.RemoteViews</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">5</TD>
   <TD><A HREF="junit.runner.BaseTestRunner.html">
 junit.runner.BaseTestRunner</A></TD>
 </TR>
@@ -1151,11 +1156,6 @@
 </TR>
 <TR>
   <TD ALIGN="center">2</TD>
-  <TD><A HREF="android.widget.RemoteViews.html">
-android.widget.RemoteViews</A></TD>
-</TR>
-<TR>
-  <TD ALIGN="center">2</TD>
   <TD><A HREF="android.app.ActivityManager.RunningAppProcessInfo.html">
 android.app.ActivityManager.RunningAppProcessInfo</A></TD>
 </TR>
@@ -1176,11 +1176,6 @@
 </TR>
 <TR>
   <TD ALIGN="center">1</TD>
-  <TD><A HREF="android.content.Intent.html">
-android.content.Intent</A></TD>
-</TR>
-<TR>
-  <TD ALIGN="center">1</TD>
   <TD><A HREF="android.webkit.WebSettings.html">
 android.webkit.WebSettings</A></TD>
 </TR>
@@ -1211,6 +1206,11 @@
 </TR>
 <TR>
   <TD ALIGN="center">1</TD>
+  <TD><A HREF="android.content.Intent.html">
+android.content.Intent</A></TD>
+</TR>
+<TR>
+  <TD ALIGN="center">1</TD>
   <TD><A HREF="android.widget.LinearLayout.html">
 android.widget.LinearLayout</A></TD>
 </TR>
diff --git a/docs/html/sdk/api_diff/16/changes/junit.framework.Assert.html b/docs/html/sdk/api_diff/16/changes/junit.framework.Assert.html
index 1ccd326..0d5b2cb 100644
--- a/docs/html/sdk/api_diff/16/changes/junit.framework.Assert.html
+++ b/docs/html/sdk/api_diff/16/changes/junit.framework.Assert.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/junit.framework.AssertionFailedError.html b/docs/html/sdk/api_diff/16/changes/junit.framework.AssertionFailedError.html
index cda8b99..8cc284c 100644
--- a/docs/html/sdk/api_diff/16/changes/junit.framework.AssertionFailedError.html
+++ b/docs/html/sdk/api_diff/16/changes/junit.framework.AssertionFailedError.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/junit.framework.ComparisonFailure.html b/docs/html/sdk/api_diff/16/changes/junit.framework.ComparisonFailure.html
index f8f57bd..afdcc5f 100644
--- a/docs/html/sdk/api_diff/16/changes/junit.framework.ComparisonFailure.html
+++ b/docs/html/sdk/api_diff/16/changes/junit.framework.ComparisonFailure.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/junit.framework.TestResult.html b/docs/html/sdk/api_diff/16/changes/junit.framework.TestResult.html
index 6523319..ada98fd 100644
--- a/docs/html/sdk/api_diff/16/changes/junit.framework.TestResult.html
+++ b/docs/html/sdk/api_diff/16/changes/junit.framework.TestResult.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/junit.framework.TestSuite.html b/docs/html/sdk/api_diff/16/changes/junit.framework.TestSuite.html
index 10e9b56..fd9a0ca 100644
--- a/docs/html/sdk/api_diff/16/changes/junit.framework.TestSuite.html
+++ b/docs/html/sdk/api_diff/16/changes/junit.framework.TestSuite.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/junit.runner.BaseTestRunner.html b/docs/html/sdk/api_diff/16/changes/junit.runner.BaseTestRunner.html
index fc7da24..64880bc 100644
--- a/docs/html/sdk/api_diff/16/changes/junit.runner.BaseTestRunner.html
+++ b/docs/html/sdk/api_diff/16/changes/junit.runner.BaseTestRunner.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/methods_index_additions.html b/docs/html/sdk/api_diff/16/changes/methods_index_additions.html
index 6c34ae3..3264969 100644
--- a/docs/html/sdk/api_diff/16/changes/methods_index_additions.html
+++ b/docs/html/sdk/api_diff/16/changes/methods_index_additions.html
@@ -724,6 +724,8 @@
 (<code>int</code>)</A></nobr><br>
 <nobr><A HREF="android.view.InputDevice.html#android.view.InputDevice.isVirtual_added()" class="hiddenlink" target="rightframe"><b>isVirtual</b>
 ()</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.isVisible_added()" class="hiddenlink" target="rightframe"><b>isVisible</b>
+()</A></nobr><br>
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.isVisibleToUser_added()" class="hiddenlink" target="rightframe"><b>isVisibleToUser</b>
 ()</A></nobr><br>
 <nobr><A HREF="android.database.sqlite.SQLiteDatabase.html#android.database.sqlite.SQLiteDatabase.isWriteAheadLoggingEnabled_added()" class="hiddenlink" target="rightframe"><b>isWriteAheadLoggingEnabled</b>
@@ -866,6 +868,8 @@
 (<code>int</code>)</A></nobr><br>
 <nobr><A HREF="android.view.View.html#android.view.View.onWindowSystemUiVisibilityChanged_added(int)" class="hiddenlink" target="rightframe"><b>onWindowSystemUiVisibilityChanged</b>
 (<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.overridesItemVisibility_added()" class="hiddenlink" target="rightframe"><b>overridesItemVisibility</b>
+()</A></nobr><br>
 <A NAME="P"></A>
 <br><font size="+2">P</font>&nbsp;
 <a href="#A"><font size="-2">A</font></a> 
@@ -979,6 +983,8 @@
 (<code>String, String[], CancellationSignal</code>)</A></nobr><br>
 <nobr><A HREF="android.database.sqlite.SQLiteDatabase.html#android.database.sqlite.SQLiteDatabase.rawQueryWithFactory_added(android.database.sqlite.SQLiteDatabase.CursorFactory, java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal)" class="hiddenlink" target="rightframe"><b>rawQueryWithFactory</b>
 (<code>CursorFactory, String, String[], String, CancellationSignal</code>)</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.refreshVisibility_added()" class="hiddenlink" target="rightframe"><b>refreshVisibility</b>
+()</A></nobr><br>
 <nobr><A HREF="android.content.Loader.html#android.content.Loader.registerOnLoadCanceledListener_added(android.content.Loader.OnLoadCanceledListener<D>)" class="hiddenlink" target="rightframe"><b>registerOnLoadCanceledListener</b>
 (<code>OnLoadCanceledListener&lt;D&gt;</code>)</A></nobr><br>
 <nobr><A HREF="android.drm.DrmManagerClient.html#android.drm.DrmManagerClient.release_added()" class="hiddenlink" target="rightframe"><b>release</b>
@@ -1139,6 +1145,10 @@
 (<code>int</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawables_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawables</b>
 (<code>int, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawablesRelative_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawablesRelative</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewTextSize_added(int, int, float)" class="hiddenlink" target="rightframe"><b>setTextViewTextSize</b>
+(<code>int, int, float</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.Switch.html#android.widget.Switch.setThumbDrawable_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>setThumbDrawable</b>
 (<code>Drawable</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.Switch.html#android.widget.Switch.setThumbResource_added(int)" class="hiddenlink" target="rightframe"><b>setThumbResource</b>
@@ -1163,6 +1173,10 @@
 (<code>int, FieldPacker, Element, int[]</code>)</A></nobr><br>
 <nobr><A HREF="android.media.MediaPlayer.html#android.media.MediaPlayer.setVideoScalingMode_added(int)" class="hiddenlink" target="rightframe"><b>setVideoScalingMode</b>
 (<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setViewPadding_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setViewPadding</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.setVisibilityListener_added(android.view.ActionProvider.VisibilityListener)" class="hiddenlink" target="rightframe"><b>setVisibilityListener</b>
+(<code>VisibilityListener</code>)</A></nobr><br>
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.setVisibleToUser_added(boolean)" class="hiddenlink" target="rightframe"><b>setVisibleToUser</b>
 (<code>boolean</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.CalendarView.html#android.widget.CalendarView.setWeekDayTextAppearance_added(int)" class="hiddenlink" target="rightframe"><b>setWeekDayTextAppearance</b>
diff --git a/docs/html/sdk/api_diff/16/changes/methods_index_all.html b/docs/html/sdk/api_diff/16/changes/methods_index_all.html
index 8c91302..628f0b7 100644
--- a/docs/html/sdk/api_diff/16/changes/methods_index_all.html
+++ b/docs/html/sdk/api_diff/16/changes/methods_index_all.html
@@ -1009,6 +1009,8 @@
 (<code>int</code>)</A></nobr><br>
 <nobr><A HREF="android.view.InputDevice.html#android.view.InputDevice.isVirtual_added()" class="hiddenlink" target="rightframe"><b>isVirtual</b>
 ()</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.isVisible_added()" class="hiddenlink" target="rightframe"><b>isVisible</b>
+()</A></nobr><br>
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.isVisibleToUser_added()" class="hiddenlink" target="rightframe"><b>isVisibleToUser</b>
 ()</A></nobr><br>
 <nobr><A HREF="android.database.sqlite.SQLiteDatabase.html#android.database.sqlite.SQLiteDatabase.isWriteAheadLoggingEnabled_added()" class="hiddenlink" target="rightframe"><b>isWriteAheadLoggingEnabled</b>
@@ -1192,6 +1194,8 @@
 (<code>SurfaceTexture</code>)</A></nobr><br>
 <nobr><A HREF="android.view.View.html#android.view.View.onWindowSystemUiVisibilityChanged_added(int)" class="hiddenlink" target="rightframe"><b>onWindowSystemUiVisibilityChanged</b>
 (<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.overridesItemVisibility_added()" class="hiddenlink" target="rightframe"><b>overridesItemVisibility</b>
+()</A></nobr><br>
 <A NAME="P"></A>
 <br><font size="+2">P</font>&nbsp;
 <a href="#A"><font size="-2">A</font></a> 
@@ -1318,6 +1322,8 @@
 (<code>String, String[], CancellationSignal</code>)</A></nobr><br>
 <nobr><A HREF="android.database.sqlite.SQLiteDatabase.html#android.database.sqlite.SQLiteDatabase.rawQueryWithFactory_added(android.database.sqlite.SQLiteDatabase.CursorFactory, java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal)" class="hiddenlink" target="rightframe"><b>rawQueryWithFactory</b>
 (<code>CursorFactory, String, String[], String, CancellationSignal</code>)</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.refreshVisibility_added()" class="hiddenlink" target="rightframe"><b>refreshVisibility</b>
+()</A></nobr><br>
 <nobr><A HREF="android.content.Loader.html#android.content.Loader.registerOnLoadCanceledListener_added(android.content.Loader.OnLoadCanceledListener<D>)" class="hiddenlink" target="rightframe"><b>registerOnLoadCanceledListener</b>
 (<code>OnLoadCanceledListener&lt;D&gt;</code>)</A></nobr><br>
 <nobr><A HREF="android.drm.DrmManagerClient.html#android.drm.DrmManagerClient.release_added()" class="hiddenlink" target="rightframe"><b>release</b>
@@ -1576,6 +1582,10 @@
 (<code>boolean</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawables_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawables</b>
 (<code>int, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewCompoundDrawablesRelative_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setTextViewCompoundDrawablesRelative</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setTextViewTextSize_added(int, int, float)" class="hiddenlink" target="rightframe"><b>setTextViewTextSize</b>
+(<code>int, int, float</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.Switch.html#android.widget.Switch.setThumbDrawable_added(android.graphics.drawable.Drawable)" class="hiddenlink" target="rightframe"><b>setThumbDrawable</b>
 (<code>Drawable</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.Switch.html#android.widget.Switch.setThumbResource_added(int)" class="hiddenlink" target="rightframe"><b>setThumbResource</b>
@@ -1604,6 +1614,10 @@
 (<code>int, int</code>)</A></nobr><br>
 <nobr><A HREF="android.media.MediaPlayer.html#android.media.MediaPlayer.setVideoScalingMode_added(int)" class="hiddenlink" target="rightframe"><b>setVideoScalingMode</b>
 (<code>int</code>)</A></nobr><br>
+<nobr><A HREF="android.widget.RemoteViews.html#android.widget.RemoteViews.setViewPadding_added(int, int, int, int, int)" class="hiddenlink" target="rightframe"><b>setViewPadding</b>
+(<code>int, int, int, int, int</code>)</A></nobr><br>
+<nobr><A HREF="android.view.ActionProvider.html#android.view.ActionProvider.setVisibilityListener_added(android.view.ActionProvider.VisibilityListener)" class="hiddenlink" target="rightframe"><b>setVisibilityListener</b>
+(<code>VisibilityListener</code>)</A></nobr><br>
 <nobr><A HREF="android.view.accessibility.AccessibilityNodeInfo.html#android.view.accessibility.AccessibilityNodeInfo.setVisibleToUser_added(boolean)" class="hiddenlink" target="rightframe"><b>setVisibleToUser</b>
 (<code>boolean</code>)</A></nobr><br>
 <nobr><A HREF="android.widget.CalendarView.html#android.widget.CalendarView.setWeekDayTextAppearance_added(int)" class="hiddenlink" target="rightframe"><b>setWeekDayTextAppearance</b>
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.accessibilityservice.html b/docs/html/sdk/api_diff/16/changes/pkg_android.accessibilityservice.html
index 29a51cf..e348264 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.accessibilityservice.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.accessibilityservice.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.animation.html b/docs/html/sdk/api_diff/16/changes/pkg_android.animation.html
index b678d70..148635b 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.animation.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.animation.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.app.html b/docs/html/sdk/api_diff/16/changes/pkg_android.app.html
index a9bb343..1eaef10 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.app.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.app.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.appwidget.html b/docs/html/sdk/api_diff/16/changes/pkg_android.appwidget.html
index 59cf0eb..1495d4b 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.appwidget.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.appwidget.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.bluetooth.html b/docs/html/sdk/api_diff/16/changes/pkg_android.bluetooth.html
index 6f66306..f408836 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.bluetooth.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.bluetooth.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.content.html b/docs/html/sdk/api_diff/16/changes/pkg_android.content.html
index 3a7cfe6..cb45c96 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.content.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.content.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.content.pm.html b/docs/html/sdk/api_diff/16/changes/pkg_android.content.pm.html
index d926e49..7f80041 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.content.pm.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.content.pm.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.content.res.html b/docs/html/sdk/api_diff/16/changes/pkg_android.content.res.html
index e326722..b2dde4d 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.content.res.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.content.res.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.database.html b/docs/html/sdk/api_diff/16/changes/pkg_android.database.html
index 25f888c..43029e5 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.database.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.database.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.database.sqlite.html b/docs/html/sdk/api_diff/16/changes/pkg_android.database.sqlite.html
index 9566e4f..4c47f61 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.database.sqlite.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.database.sqlite.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.drm.html b/docs/html/sdk/api_diff/16/changes/pkg_android.drm.html
index a8e3f5b..9973797 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.drm.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.drm.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.drawable.html b/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.drawable.html
index 33823cf..e4f0911 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.drawable.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.drawable.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.html b/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.html
index a43b0ce..3b8d71b 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.graphics.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.hardware.html b/docs/html/sdk/api_diff/16/changes/pkg_android.hardware.html
index bc9dcd3..fb6b102 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.hardware.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.hardware.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.html b/docs/html/sdk/api_diff/16/changes/pkg_android.html
index 5c6d097..19b3c01 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.media.audiofx.html b/docs/html/sdk/api_diff/16/changes/pkg_android.media.audiofx.html
index 1cddd6d..757acd1 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.media.audiofx.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.media.audiofx.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.media.html b/docs/html/sdk/api_diff/16/changes/pkg_android.media.html
index 9d4b42a..5083802 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.media.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.media.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -235,6 +235,13 @@
 </TR>
 <TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
   <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="MediaRouter.VolumeCallback"></A>
+  <nobr><A HREF="../../../../reference/android/media/MediaRouter.VolumeCallback.html" target="_top"><code>MediaRouter.VolumeCallback</code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
   <A NAME="MediaSyncEvent"></A>
   <nobr><A HREF="../../../../reference/android/media/MediaSyncEvent.html" target="_top"><code>MediaSyncEvent</code></A></nobr>
   </TD>
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.net.html b/docs/html/sdk/api_diff/16/changes/pkg_android.net.html
index 9df67eb..fb9213e 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.net.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.net.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.net.wifi.p2p.html b/docs/html/sdk/api_diff/16/changes/pkg_android.net.wifi.p2p.html
index 0477d8b..e346fed 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.net.wifi.p2p.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.net.wifi.p2p.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.html b/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.html
index b80a460..d6a49d2 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.tech.html b/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.tech.html
index 53eb382..f01ce8c 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.tech.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.nfc.tech.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.os.html b/docs/html/sdk/api_diff/16/changes/pkg_android.os.html
index 93d2f3d..689f8b3 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.os.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.os.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.provider.html b/docs/html/sdk/api_diff/16/changes/pkg_android.provider.html
index 242a2f7..6a9f620 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.provider.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.provider.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.renderscript.html b/docs/html/sdk/api_diff/16/changes/pkg_android.renderscript.html
index ad7a71f..84f8524 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.renderscript.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.renderscript.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.security.html b/docs/html/sdk/api_diff/16/changes/pkg_android.security.html
index 7a3b458..c3b16dd 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.security.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.security.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.service.textservice.html b/docs/html/sdk/api_diff/16/changes/pkg_android.service.textservice.html
index 773a685..511016d 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.service.textservice.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.service.textservice.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.speech.html b/docs/html/sdk/api_diff/16/changes/pkg_android.speech.html
index 26df4e2..990b7b1 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.speech.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.speech.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.test.html b/docs/html/sdk/api_diff/16/changes/pkg_android.test.html
index 71e3841..8d4a6cb 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.test.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.test.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.test.mock.html b/docs/html/sdk/api_diff/16/changes/pkg_android.test.mock.html
index 1d43c38..30be34c 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.test.mock.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.test.mock.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.text.html b/docs/html/sdk/api_diff/16/changes/pkg_android.text.html
index ceaaf3c..378f3b5 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.text.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.text.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.util.html b/docs/html/sdk/api_diff/16/changes/pkg_android.util.html
index 3b12f35..b035341 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.util.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.util.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.view.accessibility.html b/docs/html/sdk/api_diff/16/changes/pkg_android.view.accessibility.html
index 5e68a85..5e2edfe 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.view.accessibility.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.view.accessibility.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.view.html b/docs/html/sdk/api_diff/16/changes/pkg_android.view.html
index 527bed3..85d3c36 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.view.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.view.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
@@ -81,6 +81,13 @@
 </TH>
 <TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
   <TD VALIGN="TOP" WIDTH="25%">
+  <A NAME="ActionProvider.VisibilityListener"></A>
+  <nobr><A HREF="../../../../reference/android/view/ActionProvider.VisibilityListener.html" target="_top"><code><I>ActionProvider.VisibilityListener</I></code></A></nobr>
+  </TD>
+  <TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
+  <TD VALIGN="TOP" WIDTH="25%">
   <A NAME="Choreographer"></A>
   <nobr><A HREF="../../../../reference/android/view/Choreographer.html" target="_top"><code>Choreographer</code></A></nobr>
   </TD>
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.view.inputmethod.html b/docs/html/sdk/api_diff/16/changes/pkg_android.view.inputmethod.html
index 10e3a61..976a051 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.view.inputmethod.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.view.inputmethod.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.view.textservice.html b/docs/html/sdk/api_diff/16/changes/pkg_android.view.textservice.html
index cc01a3a..c4cac96 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.view.textservice.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.view.textservice.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.webkit.html b/docs/html/sdk/api_diff/16/changes/pkg_android.webkit.html
index e00cf29..62fb8ee 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.webkit.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.webkit.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_android.widget.html b/docs/html/sdk/api_diff/16/changes/pkg_android.widget.html
index 0736a42..d52b211 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_android.widget.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_android.widget.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_junit.framework.html b/docs/html/sdk/api_diff/16/changes/pkg_junit.framework.html
index 4bd6a2e..a5d6fcc 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_junit.framework.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_junit.framework.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/changes/pkg_junit.runner.html b/docs/html/sdk/api_diff/16/changes/pkg_junit.runner.html
index 96523fb..dcd45ef 100644
--- a/docs/html/sdk/api_diff/16/changes/pkg_junit.runner.html
+++ b/docs/html/sdk/api_diff/16/changes/pkg_junit.runner.html
@@ -54,7 +54,7 @@
       </tr>
       <tr>
         <td class="diffspec">Generated</td>
-        <td class="diffvalue">2012.06.26 22:31</td>
+        <td class="diffvalue">2012.07.16 10:58</td>
       </tr>
     </table>
     </div><!-- End and-diff-id -->
diff --git a/docs/html/sdk/api_diff/16/missingSinces.txt b/docs/html/sdk/api_diff/16/missingSinces.txt
index 128fb09..9273668 100644
--- a/docs/html/sdk/api_diff/16/missingSinces.txt
+++ b/docs/html/sdk/api_diff/16/missingSinces.txt
@@ -1,5 +1,6 @@
 NO DOC BLOCK: android.view.accessibility.AccessibilityNodeProvider Class
 NO DOC BLOCK: android.media.audiofx.AcousticEchoCanceler Class
+NO DOC BLOCK: android.view.ActionProvider.VisibilityListener Interface
 NO DOC BLOCK: android.app.ActivityOptions Class
 NO DOC BLOCK: android.widget.Advanceable Interface
 NO DOC BLOCK: android.media.audiofx.AutomaticGainControl Class
@@ -34,6 +35,7 @@
 NO DOC BLOCK: android.media.MediaRouter.RouteInfo Class
 NO DOC BLOCK: android.media.MediaRouter.SimpleCallback Class
 NO DOC BLOCK: android.media.MediaRouter.UserRouteInfo Class
+NO DOC BLOCK: android.media.MediaRouter.VolumeCallback Class
 NO DOC BLOCK: android.media.MediaSyncEvent Class
 NO DOC BLOCK: android.nfc.NfcAdapter.CreateBeamUrisCallback Interface
 NO DOC BLOCK: android.media.audiofx.NoiseSuppressor Class
@@ -283,6 +285,7 @@
 NO DOC BLOCK: android.view.ActionMode Method isTitleOptional()
 NO DOC BLOCK: android.animation.LayoutTransition Method isTransitionTypeEnabled(int)
 NO DOC BLOCK: android.view.InputDevice Method isVirtual()
+NO DOC BLOCK: android.view.ActionProvider Method isVisible()
 NO DOC BLOCK: android.view.accessibility.AccessibilityNodeInfo Method isVisibleToUser()
 NO DOC BLOCK: android.database.sqlite.SQLiteDatabase Method isWriteAheadLoggingEnabled()
 NO DOC BLOCK: android.accessibilityservice.AccessibilityServiceInfo Method loadDescription(android.content.pm.PackageManager)
@@ -308,6 +311,7 @@
 NO DOC BLOCK: android.app.Activity Method onPrepareNavigateUpTaskStack(android.app.TaskStackBuilder)
 NO DOC BLOCK: android.view.View Method onScreenStateChanged(int)
 NO DOC BLOCK: android.view.View Method onWindowSystemUiVisibilityChanged(int)
+NO DOC BLOCK: android.view.ActionProvider Method overridesItemVisibility()
 NO DOC BLOCK: android.view.View Method performAccessibilityAction(int, android.os.Bundle)
 NO DOC BLOCK: android.view.View.AccessibilityDelegate Method performAccessibilityAction(android.view.View, int, android.os.Bundle)
 NO DOC BLOCK: android.view.accessibility.AccessibilityNodeInfo Method performAction(int, android.os.Bundle)
@@ -324,6 +328,7 @@
 NO DOC BLOCK: android.database.sqlite.SQLiteDatabase Method queryWithFactory(android.database.sqlite.SQLiteDatabase.CursorFactory, boolean, java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.lang.String, android.os.CancellationSignal)
 NO DOC BLOCK: android.database.sqlite.SQLiteDatabase Method rawQuery(java.lang.String, java.lang.String[], android.os.CancellationSignal)
 NO DOC BLOCK: android.database.sqlite.SQLiteDatabase Method rawQueryWithFactory(android.database.sqlite.SQLiteDatabase.CursorFactory, java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal)
+NO DOC BLOCK: android.view.ActionProvider Method refreshVisibility()
 NO DOC BLOCK: android.content.Loader Method registerOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener<D>)
 NO DOC BLOCK: android.drm.DrmManagerClient Method release()
 NO DOC BLOCK: android.net.wifi.p2p.WifiP2pManager Method removeLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener)
@@ -388,6 +393,8 @@
 NO DOC BLOCK: android.widget.Switch Method setSwitchMinWidth(int)
 NO DOC BLOCK: android.widget.Switch Method setSwitchPadding(int)
 NO DOC BLOCK: android.widget.RemoteViews Method setTextViewCompoundDrawables(int, int, int, int, int)
+NO DOC BLOCK: android.widget.RemoteViews Method setTextViewCompoundDrawablesRelative(int, int, int, int, int)
+NO DOC BLOCK: android.widget.RemoteViews Method setTextViewTextSize(int, int, float)
 NO DOC BLOCK: android.widget.Switch Method setThumbDrawable(android.graphics.drawable.Drawable)
 NO DOC BLOCK: android.widget.Switch Method setThumbResource(int)
 NO DOC BLOCK: android.widget.Switch Method setThumbTextPadding(int)
@@ -400,6 +407,8 @@
 NO DOC BLOCK: android.app.Notification.Builder Method setUsesChronometer(boolean)
 NO DOC BLOCK: android.renderscript.Script Method setVar(int, android.renderscript.FieldPacker, android.renderscript.Element, int[])
 NO DOC BLOCK: android.media.MediaPlayer Method setVideoScalingMode(int)
+NO DOC BLOCK: android.widget.RemoteViews Method setViewPadding(int, int, int, int, int)
+NO DOC BLOCK: android.view.ActionProvider Method setVisibilityListener(android.view.ActionProvider.VisibilityListener)
 NO DOC BLOCK: android.view.accessibility.AccessibilityNodeInfo Method setVisibleToUser(boolean)
 NO DOC BLOCK: android.widget.CalendarView Method setWeekDayTextAppearance(int)
 NO DOC BLOCK: android.widget.CalendarView Method setWeekNumberColor(int)
@@ -485,7 +494,6 @@
 NO DOC BLOCK: android.speech.RecognizerIntent Field EXTRA_SECURE
 NO DOC BLOCK: android.content.pm.PackageManager Field FEATURE_TELEVISION
 NO DOC BLOCK: android.content.Intent Field FILL_IN_CLIP_DATA
-NO DOC BLOCK: android.content.Intent Field FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS
 NO DOC BLOCK: android.accessibilityservice.AccessibilityServiceInfo Field FLAG_INCLUDE_NOT_IMPORTANT_VIEWS
 NO DOC BLOCK: android.content.pm.ServiceInfo Field FLAG_ISOLATED_PROCESS
 NO DOC BLOCK: android.content.Intent Field FLAG_RECEIVER_FOREGROUND
@@ -538,6 +546,7 @@
 NO DOC BLOCK: android.media.MediaPlayer Field MEDIA_MIMETYPE_TEXT_SUBRIP
 NO DOC BLOCK: android.content.Context Field MEDIA_ROUTER_SERVICE
 NO DOC BLOCK: android.R.attr Field mediaRouteButtonStyle
+NO DOC BLOCK: android.R.attr Field mediaRouteTypes
 NO DOC BLOCK: android.provider.CalendarContract.RemindersColumns Field METHOD_ALARM
 NO DOC BLOCK: android.content.ClipDescription Field MIMETYPE_TEXT_HTML
 NO DOC BLOCK: android.content.Context Field MODE_ENABLE_WRITE_AHEAD_LOGGING
diff --git a/docs/html/sdk/api_diff/16/user_comments_for_15_to_16.xml b/docs/html/sdk/api_diff/16/user_comments_for_15_to_16.xml
index 4852d37..ee16273 100644
--- a/docs/html/sdk/api_diff/16/user_comments_for_15_to_16.xml
+++ b/docs/html/sdk/api_diff/16/user_comments_for_15_to_16.xml
@@ -142,6 +142,12 @@
   </text>
 </comment>
 <comment>
+  <identifier id="android.R.attr.mediaRouteTypes"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
   <identifier id="android.R.attr.parentActivityName"/>
   <text>
     InsertCommentsHere
@@ -1252,12 +1258,6 @@
   </text>
 </comment>
 <comment>
-  <identifier id="android.content.Intent.FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS"/>
-  <text>
-    InsertCommentsHere
-  </text>
-</comment>
-<comment>
   <identifier id="android.content.Intent.FLAG_RECEIVER_FOREGROUND"/>
   <text>
     InsertCommentsHere
@@ -2506,6 +2506,12 @@
   </text>
 </comment>
 <comment>
+  <identifier id="android.media.MediaRouter.VolumeCallback"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
   <identifier id="android.media.MediaSyncEvent"/>
   <text>
     InsertCommentsHere
@@ -4624,6 +4630,18 @@
   </text>
 </comment>
 <comment>
+  <identifier id="android.view.ActionProvider.VisibilityListener"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
+  <identifier id="android.view.ActionProvider.isVisible_added()"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
   <identifier id="android.view.ActionProvider.onCreateActionView_added(android.view.MenuItem)"/>
   <text>
     InsertCommentsHere
@@ -4636,6 +4654,24 @@
   </text>
 </comment>
 <comment>
+  <identifier id="android.view.ActionProvider.overridesItemVisibility_added()"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
+  <identifier id="android.view.ActionProvider.refreshVisibility_added()"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
+  <identifier id="android.view.ActionProvider.setVisibilityListener_added(android.view.ActionProvider.VisibilityListener)"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
   <identifier id="android.view.Choreographer"/>
   <text>
     InsertCommentsHere
@@ -6214,12 +6250,30 @@
   </text>
 </comment>
 <comment>
+  <identifier id="android.widget.RemoteViews.setTextViewCompoundDrawablesRelative_added(int, int, int, int, int)"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
   <identifier id="android.widget.RemoteViews.setTextViewCompoundDrawables_added(int, int, int, int, int)"/>
   <text>
     InsertCommentsHere
   </text>
 </comment>
 <comment>
+  <identifier id="android.widget.RemoteViews.setTextViewTextSize_added(int, int, float)"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
+  <identifier id="android.widget.RemoteViews.setViewPadding_added(int, int, int, int, int)"/>
+  <text>
+    InsertCommentsHere
+  </text>
+</comment>
+<comment>
   <identifier id="android.widget.SearchView"/>
   <text>
     InsertCommentsHere
diff --git a/docs/html/sdk/download.jd b/docs/html/sdk/download.jd
new file mode 100644
index 0000000..8005009
--- /dev/null
+++ b/docs/html/sdk/download.jd
@@ -0,0 +1,92 @@
+page.title=Download an Archived Android SDK
+hide_license_footer=true
+
+@jd:body
+
+<script type="text/javascript">
+  function verify() {
+    document.getElementById('download-button').disabled =
+!document.getElementById('checkbox').checked;
+  }
+  function submit() {
+    var location = window.location.href;
+    if (location.indexOf('?v=') != -1) {
+      var filename = location.substring(location.indexOf('=')+1,location.length);
+      if (document.getElementById('checkbox').checked) {
+        document.location = "http://dl.google.com/android/" + filename;
+      }
+      document.getElementById('click-download').setAttribute("href", "http://dl.google.com/android/"
++ filename);
+      $("#terms-form").hide(500);
+      $("#next-steps").show(500);
+      document.getElementById('checkbox').disabled=true;
+      document.getElementById('download-button').disabled=true;
+    } else {
+      alert("You have not selected an SDK version. Please return to the SDK Archives page");
+    }
+  }
+</script>
+
+<div id="terms-form">
+    <p>Please carefully review the Android SDK License Agreement before downloading the SDK.
+The License Agreement constitutes a contract between you and Google with respect to your use of the
+SDK.</p>
+    <p class="note"><strong>Note:</strong> You must agree to this license agreement in order to
+download one of the archived SDKs, because these SDK packages contain Google software (whereas, the
+<a href="http://developer.android.com/sdk/index.html">current SDK</a> packages do not require a
+license agreement, because they contain only the open sourced SDK tools).</p>
+
+  <iframe id="terms" style="border:1px solid #888;margin:0 0 1em;height:400px;width:100%;"
+src="terms_body.html">
+  </iframe>
+
+  <p>
+    <input type="checkbox" id="checkbox" onclick="verify()" />
+    <label for="checkbox">I agree to the terms of the Android SDK License Agreement.</label>
+  </p>
+  <p>
+    <input type="submit" value="Download" id="download-button" disabled="disabled"
+onclick="submit()" />
+  </p>
+  <p>
+  <script language="javascript">
+    var loc = window.location.href;
+    if (loc.indexOf('?v=') != -1) {
+      var filename = loc.substring(loc.indexOf('=')+1,loc.length);
+      document.write("File: " + filename);
+    }
+  </script>
+  </p>
+</div><!-- end terms-form -->
+
+<noscript>
+  <p><strong>Please enable Javascript in your browser in order to agree to the terms and download
+the SDK.</strong></p>
+</noscript>
+
+<div class="special" id="next-steps" style="display:none">
+  <p>Your download should be underway. If not, <a id="click-download">click here to start the
+download</a>.</p>
+  <p>Beware that you've just downloaded a very old version of the Android SDK, which is not
+recommended. We no longer maintain documentation about how to install these archived SDKs nor
+support the tools contained within.</p>
+  <p>We recommend that you instead download the latest <a
+href="http://developer.android.com/sdk/index.html">Android SDK starter package</a>, which includes
+the latest SDK tools and allows you to develop against any version of the Android platform, back to
+Android 1.1.</p>
+</div>
+
+<script type="text/javascript">
+  var loc = window.location.href;
+  var filename = loc.substring(loc.indexOf('=')+1,loc.length);
+  version = filename.substring(filename.indexOf('.')-1,filename.lastIndexOf('.'));
+  $(".addVersionPath").each(function(i) {
+    var oldHref = $(this).attr("href");
+    $(this).attr({href: "/sdk/" + version + "/" + oldHref});
+  });
+</script>
+
+
+
+
+
diff --git a/docs/html/sdk/index.jd b/docs/html/sdk/index.jd
index 0038fac..cf85a34 100644
--- a/docs/html/sdk/index.jd
+++ b/docs/html/sdk/index.jd
@@ -2,21 +2,21 @@
 header.hide=1
 page.metaDescription=Download the official Android SDK to develop apps for Android-powered devices.
 
-sdk.win_installer=installer_r20-windows.exe
-sdk.win_installer_bytes=70497095
-sdk.win_installer_checksum=0f25321554e2f88b247320d6a3bc1a7a
+sdk.win_installer=installer_r20.0.3-windows.exe
+sdk.win_installer_bytes=70495456
+sdk.win_installer_checksum=cf23b95d0c9cd57fac3c3be253171af4
 
-sdk.win_download=android-sdk_r20-windows.zip
-sdk.win_bytes=90353014
-sdk.win_checksum=b62b0f80f559c0ac670e9f058a21f0df
+sdk.win_download=android-sdk_r20.0.3-windows.zip
+sdk.win_bytes=90379469
+sdk.win_checksum=cd895c79201f7f02507eb3c3868a1c5e
 
-sdk.mac_download=android-sdk_r20-macosx.zip
-sdk.mac_bytes=58203018
-sdk.mac_checksum=b6b6035ccec55ec2aa057438eb1db1f4
+sdk.mac_download=android-sdk_r20.0.3-macosx.zip
+sdk.mac_bytes=58218455
+sdk.mac_checksum=07dc88ba2c0817ef178a665d002831bf
 
-sdk.linux_download=android-sdk_r20-linux.tgz
-sdk.linux_bytes=82589455
-sdk.linux_checksum=22a81cf1d4a951c62f71a8758290e9bb
+sdk.linux_download=android-sdk_r20.0.3-linux.tgz
+sdk.linux_bytes=82616305
+sdk.linux_checksum=0d53c2c31d6b5d0cf7385bccd0b06c27
 
 @jd:body
 
@@ -141,3 +141,4 @@
     $('.reqs').show();
   }
 </script>
+
diff --git a/docs/html/sdk/installing/adding-packages.jd b/docs/html/sdk/installing/adding-packages.jd
index 7765343..65c5d94 100644
--- a/docs/html/sdk/installing/adding-packages.jd
+++ b/docs/html/sdk/installing/adding-packages.jd
@@ -4,8 +4,9 @@
 @jd:body
 
 
-<p>The Android SDK separates different parts of the SDK into separately downloadable packages. The
-SDK starter package that you've installed includes only the SDK Tools. To develop an Android app,
+<p>The Android SDK separates tools, platforms, and other components into packages you can
+  download using the Android SDK Manager. The original
+SDK package you've downloaded includes only the SDK Tools. To develop an Android app,
 you also need to download at least one Android platform and the latest SDK Platform-tools.</p>
 
 <p>You can update and install SDK packages at any time using the Android SDK Manager.</p>
@@ -48,28 +49,32 @@
   <dd><strong>Required.</strong> You must install this package when you install the SDK for
 the first time.</dd>
   <dt>SDK Platform</dt>
-  <dd><strong>Required.</strong>You need to download <strong
-style="color:red">at least one platform</strong> into your environment so you're
-able to compile your application. In order to provide the best user experience on the latest
-devices, we recommend that you use the latest platform version as your build target. You'll
-still be able to run your app on older versions, but you must build against the latest version
-in order to use new features when running on devices with the latest version of Android.</dd>
+  <dd><strong>Required.</strong>You must download <em>at least one platform</em> into your
+environment so you're able to compile your application. In order to provide the best user experience
+on the latest devices, we recommend that you use the latest platform version as your build target.
+You'll still be able to run your app on older versions, but you must build against the latest
+version in order to use new features when running on devices with the latest version of Android.
+  <p>To get started, download the latest Android version, plus the lowest version you plan
+  to support (we recommend Android 2.2 for your lowest version).</p></dd>
   <dt>System Image</dt>
   <dd>Recommended. Although you might have one or more Android-powered devices on which to test
  your app, it's unlikely you have a device for every version of Android your app supports. It's
-a good practice to download a system image for each version of Android you support and use them
-to test your app on the Android emulator.</dd>
+a good practice to download system images for all versions of Android your app supports and test
+your app running on them with the <a href="{@docRoot}tools/devices/emulator.html">Android emulator</a>.</dd>
+  <dt>Android Support</dt>
+  <dd>Recommended. Includes a static library that allows you to use some of the latest
+Android APIs (such as <a href="{@docRoot}guide/components/fragments.html">fragments</a>,
+plus others not included in the framework at all) on devices running
+a platform version as old as Android 1.6. All of the activity templates available when creating
+a new project with the <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a>
+require this. For more information, read <a
+href="{@docRoot}tools/extras/support-library.html">Support Library</a>.</dd>
   <dt>SDK Samples</dt>
   <dd>Recommended. The samples give you source code that you can use to learn about
 Android, load as a project and run, or reuse in your own app. Note that multiple
 samples packages are available &mdash; one for each Android platform version. When
 you are choosing a samples package to download, select the one whose API Level
 matches the API Level of the Android platform that you plan to use.</dd>
-  <dt>Android Support</dt>
-  <dd>Recommended. The APIs available in this static library allow you to use a variety of new
-framework features (including some not available in even the latest version) on devices running
-a platform version as old as Android 1.6. For more information, read <a
-href="{@docRoot}tools/extras/support-library.html">Support Library</a>.</dd>
 </dl>
 
 
diff --git a/docs/html/sdk/installing/installing-adt.jd b/docs/html/sdk/installing/installing-adt.jd
index b276da4..4fc2ca6 100644
--- a/docs/html/sdk/installing/installing-adt.jd
+++ b/docs/html/sdk/installing/installing-adt.jd
@@ -1,9 +1,9 @@
 page.title=Installing the Eclipse Plugin
 walkthru=1
-adt.zip.version=20.0.0
-adt.zip.download=ADT-20.0.0.zip
-adt.zip.bytes=12387628
-adt.zip.checksum=ea0fc934af3b6b89097f0146c7822ed0
+adt.zip.version=20.0.3
+adt.zip.download=ADT-20.0.3.zip
+adt.zip.bytes=12390954
+adt.zip.checksum=869a536b1c56d0cd920ed9ae259ae619
 
 @jd:body
 
@@ -11,7 +11,7 @@
 
 <p>Android offers a custom plugin for the Eclipse IDE, called Android
 Development Tools (ADT). This plugin is designed to give you a powerful, integrated
-environment in which to develop Android apps. It extends the capabilites
+environment in which to develop Android apps. It extends the capabilities
 of Eclipse to let you quickly set up new Android projects, build an app
 UI, debug your app, and export signed (or unsigned) app packages (APKs) for distribution.
 </p>
@@ -39,21 +39,21 @@
 
 <ol>
     <li>Start Eclipse, then select <strong>Help</strong> &gt; <strong>Install New
-Software...</strong>.</li>
+Software</strong>.</li>
     <li>Click <strong>Add</strong>, in the top-right corner.</li>
     <li>In the Add Repository dialog that appears, enter "ADT Plugin" for the <em>Name</em> and the
 following URL for the <em>Location</em>:
       <pre>https://dl-ssl.google.com/android/eclipse/</pre>
     </li>
-    <li>Click <strong>OK</strong>
-      <p>Note: If you have trouble acquiring the plugin, try using "http" in the Location URL,
+    <li>Click <strong>OK</strong>.
+      <p>If you have trouble acquiring the plugin, try using "http" in the Location URL,
 instead of "https" (https is preferred for security reasons).</p></li>
     <li>In the Available Software dialog, select the checkbox next to Developer Tools and click
 <strong>Next</strong>.</li>
     <li>In the next window, you'll see a list of the tools to be downloaded. Click
 <strong>Next</strong>. </li>
     <li>Read and accept the license agreements, then click <strong>Finish</strong>.
-      <p>Note: If you get a security warning saying that the authenticity or validity of
+      <p>If you get a security warning saying that the authenticity or validity of
 the software can't be established, click <strong>OK</strong>.</p></li>
     <li>When the installation completes, restart Eclipse. </li>
 </ol>
@@ -148,17 +148,15 @@
 manually install it:</p>
 
 <ol>
-  <li>Download the current ADT Plugin zip file from the table below (do not unpack it).
+  <li>Download the ADT Plugin zip file (do not unpack it):
 
   <table class="download">
     <tr>
-      <th>Name</th>
       <th>Package</th>
       <th>Size</th>
       <th>MD5 Checksum</th>
   </tr>
   <tr>
-    <td>ADT {@adtZipVersion}</td>
     <td>
       <a href="http://dl.google.com/android/{@adtZipDownload}">{@adtZipDownload}</a>
     </td>
@@ -169,16 +167,20 @@
 </li>
 
 </li>
-  <li>Follow steps 1 and 2 in the <a href="#installing">default install
-      instructions</a> (above).</li>
-  <li>In the Add Site dialog, click <strong>Archive</strong>.</li>
-  <li>Browse and select the downloaded zip file.</li>
-  <li>Enter a name for the local update site (e.g.,
-      "Android Plugin") in the "Name" field.</li>
-  <li>Click <strong>OK</strong>.
-  <li>Follow the remaining procedures as listed for
-      <a href="#installing">default installation</a> above,
-      starting from step 4.</li>
+  <li>Start Eclipse, then select <strong>Help</strong> &gt; <strong>Install New
+Software</strong>.</li>
+  <li>Click <strong>Add</strong>, in the top-right corner.</li>
+  <li>In the Add Repository dialog, click <strong>Archive</strong>.</li>
+  <li>Select the downloaded {@adtZipDownload} file and click <strong>OK</strong>.</li>
+  <li>Enter "ADT Plugin" for the name and click <strong>OK</strong>.
+  <li>In the Available Software dialog, select the checkbox next to Developer Tools and click
+<strong>Next</strong>.</li>
+  <li>In the next window, you'll see a list of the tools to be downloaded. Click
+<strong>Next</strong>. </li>
+  <li>Read and accept the license agreements, then click <strong>Finish</strong>.
+    <p>If you get a security warning saying that the authenticity or validity of
+the software can't be established, click <strong>OK</strong>.</p></li>
+  <li>When the installation completes, restart Eclipse. </li>
 </ol>
 
 <p>To update your plugin once you've installed using the zip file, you will have
@@ -204,3 +206,4 @@
 ...then your development machine lacks a suitable Java VM. Installing Sun
 Java 6 will resolve this issue and you can then reinstall the ADT
 Plugin.</p>
+
diff --git a/docs/html/sdk/terms_body.html b/docs/html/sdk/terms_body.html
new file mode 100644
index 0000000..35e1655
--- /dev/null
+++ b/docs/html/sdk/terms_body.html
@@ -0,0 +1,337 @@
+
+
+ 
+<p>This is the Android Software Development Kit License Agreement.</p> 
+ 
+<h2> 
+	1. Introduction
+</h2> 
+<p> 
+	1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK"
+and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is
+licensed to you subject to the terms of this License Agreement. This License Agreement forms a
+legally binding contract between you and Google in relation to your use of the SDK.
+ 
+</p> 
+<p> 
+	1.2 "Google" means Google Inc., a Delaware corporation with principal place of business at
+1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+</p> 
+<h2> 
+	2. Accepting this License Agreement
+</h2> 
+<p> 
+	2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use
+the SDK if you do not accept this License Agreement.
+</p> 
+<p> 
+	2.2 You can accept this License Agreement by:
+</p> 
+<p> 
+	(A) clicking to accept or agree to this License Agreement, where this option is made
+available to you; or
+</p> 
+<p> 
+	(B) by actually using the SDK. In this case, you agree that use of the SDK constitutes
+acceptance of the Licensing Agreement from that point onwards.
+</p> 
+<p> 
+	2.3 You may not use the SDK and may not accept the Licensing Agreement if you are a person
+barred from receiving the SDK under the laws of the United States or other countries including the
+country in which you are resident or from which you use the SDK.
+</p> 
+<p> 
+	2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or
+other entity, you represent and warrant that you have full legal authority to bind your employer or
+such entity to this License Agreement. If you do not have the requisite authority, you may not
+accept the Licensing Agreement or use the SDK on behalf of your employer or other entity.
+</p> 
+<h2> 
+	3. SDK License from Google
+</h2> 
+<p> 
+	3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide,
+royalty-free, non- assignable and non-exclusive license to use the SDK solely to develop
+applications to run on the Android platform.
+</p> 
+<p> 
+	3.2 You agree that Google or third parties own all legal right, title and interest in and to
+the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property
+Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law,
+and any and all other proprietary rights. Google reserves all rights not expressly granted to you. 
+ 
+</p> 
+<p> 
+	3.3 Except to the extent required by applicable third party licenses, you may not copy
+(except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble,
+or create derivative works of the SDK or any part of the SDK. Except to the extent required by
+applicable third party licenses, you may not load any part of the SDK onto a mobile handset or any
+other hardware device except a personal computer, combine any part of the SDK with other software,
+or distribute any software or device incorporating a part of the SDK. 
+</p> 
+<p> 
+	3.4 Use, reproduction and distribution of components of the SDK licensed under an open
+source software license are governed solely by the terms of that open source software license and
+not this License Agreement.
+</p> 
+<p> 
+	3.5 You agree that the form and nature of the SDK that Google provides may change without
+prior notice to you and that future versions of the SDK may be incompatible with applications
+developed on previous versions of the SDK. You agree that Google may stop (permanently or
+temporarily) providing the SDK (or any features within the SDK) to you or to users generally at
+Google's sole discretion, without prior notice to you.
+</p> 
+<p> 
+	3.6 Nothing in this License Agreement gives you a right to use any of Google's trade names,
+trademarks, service marks, logos, domain names, or other distinctive brand features.
+</p> 
+<p> 
+	3.7 You agree that you will not remove, obscure, or alter any proprietary rights notices
+(including copyright and trademark notices) that may be affixed to or contained within the SDK.
+</p> 
+<h2> 
+	4. Use of the SDK by You
+</h2> 
+<p> 
+	4.1 Google agrees that it obtains no right, title or interest from you (or your licensors)
+under this License Agreement in or to any software applications that you develop using the SDK,
+including any intellectual property rights that subsist in those applications. 
+</p> 
+<p> 
+	4.2 You agree to use the SDK and write applications only for purposes that are permitted by
+(a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or
+guidelines in the relevant jurisdictions (including any laws regarding the export of data or
+software to and from the United States or other relevant countries).
+</p> 
+<p> 
+	4.3 You agree that if you use the SDK to develop applications for general public users, you
+will protect the privacy and legal rights of those users. If the users provide you with user names,
+passwords, or other login information or personal information, your must make the users aware that
+the information will be available to your application, and you must provide legally adequate privacy
+notice and protection for those users. If your application stores personal or sensitive information
+provided by users, it must do so securely. If the user provides your application with Google Account
+information, your application may only use that information to access the user's Google Account
+when, and for the limited purposes for which, the user has given you permission to do so.
+</p> 
+<p> 
+	4.4 You agree that you will not engage in any activity with the SDK, including the
+development or distribution of an application, that interferes with, disrupts, damages, or accesses
+in an unauthorized manner the servers, networks, or other properties or services of any third party
+including, but not limited to, Google or any mobile communications carrier.
+</p> 
+<p> 
+	4.5 You agree that you are solely responsible for (and that Google has no responsibility to
+you or to any third party for) any data, content, or resources that you create, transmit or display
+through the Android platform and/or applications for the Android platform, and for the consequences
+of your actions (including any loss or damage which Google may suffer) by doing so.
+</p> 
+<p> 
+	4.6 You agree that you are solely responsible for (and that Google has no responsibility to
+you or to any third party for) any breach of your obligations under this License Agreement, any
+applicable third party contract or Terms of Service, or any applicable law or regulation, and for
+the consequences (including any loss or damage which Google or any third party may suffer) of any
+such breach.
+</p> 
+<h2> 
+	5. Your Developer Credentials
+</h2> 
+<p> 
+	5.1 You agree that you are responsible for maintaining the confidentiality of any developer
+credentials that may be issued to you by Google or which you may choose yourself and that you will
+be solely responsible for all applications that are developed under your developer credentials.
+</p> 
+<h2> 
+	6. Privacy and Information
+</h2> 
+<p> 
+	6.1 In order to continually innovate and improve the SDK, Google may collect certain usage
+statistics from the software including but not limited to a unique identifier, associated IP
+address, version number of the software, and information on which tools and/or services in the SDK
+are being used and how they are being used. Before any of this information is collected, the SDK
+will notify you and seek your consent. If you withhold consent, the information will not be
+collected.
+</p> 
+<p> 
+	6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in
+accordance with Google's Privacy Policy.
+</p> 
+<h2> 
+	7. Third Party Applications for the Android Platform
+</h2> 
+<p> 
+	7.1 If you use the SDK to run applications developed by a third party or that access data,
+content or resources provided by a third party, you agree that Google is not responsible for those
+applications, data, content, or resources. You understand that all data, content or resources which
+you may access through such third party applications are the sole responsibility of the person from
+which they originated and that Google is not liable for any loss or damage that you may experience
+as a result of the use or access of any of those third party applications, data, content, or
+resources.
+</p> 
+<p> 
+	7.2 You should be aware the data, content, and resources presented to you through such a
+third party application may be protected by intellectual property rights which are owned by the
+providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan,
+sell, distribute or create derivative works based on these data, content, or resources (either in
+whole or in part) unless you have been specifically given permission to do so by the relevant
+owners.
+</p> 
+<p> 
+	7.3 You acknowledge that your use of such third party applications, data, content, or
+resources may be subject to separate terms between you and the relevant third party. In that case,
+this License Agreement does not affect your legal relationship with these third parties.
+</p> 
+<h2> 
+	8. Using Android APIs
+</h2> 
+<p> 
+	8.1 Google Data APIs
+</p> 
+<p> 
+	8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be
+protected by intellectual property rights which are owned by Google or those parties that provide
+the data (or by other persons or companies on their behalf). Your use of any such API may be subject
+to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create
+derivative works based on this data (either in whole or in part) unless allowed by the relevant
+Terms of Service.
+</p> 
+<p> 
+	8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree
+that you shall retrieve data only with the user's explicit consent and only when, and for the
+limited purposes for which, the user has given you permission to do so. 
+ 
+</p> 
+<h2> 
+	9. Terminating this License Agreement
+</h2> 
+<p> 
+	9.1 This License Agreement will continue to apply until terminated by either you or Google
+as set out below.
+</p> 
+<p> 
+	9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of
+the SDK and any relevant developer credentials.
+</p> 
+<p> 
+	9.3 Google may at any time, terminate this License Agreement with you if:
+</p> 
+<p> 
+	(A) you have breached any provision of this License Agreement; or
+</p> 
+<p> 
+	(B) Google is required to do so by law; or
+</p> 
+<p> 
+	(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has
+terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
+</p> 
+<p> 
+	(D) Google decides to no longer providing the SDK or certain parts of the SDK to users in
+the country in which you are resident or from which you use the service, or the provision of the SDK
+or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially
+viable.
+</p> 
+<p> 
+	9.4 When this License Agreement comes to an end, all of the legal rights, obligations and
+liabilities that you and Google have benefited from, been subject to (or which have accrued over
+time whilst this License Agreement has been in force) or which are expressed to continue
+indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall
+continue to apply to such rights, obligations and liabilities indefinitely.
+</p> 
+<h2> 
+	10. DISCLAIMER OF WARRANTIES
+</h2> 
+<p> 
+	10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND
+THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+</p> 
+<p> 
+	10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE
+OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR
+COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
+</p> 
+<p> 
+	10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER
+EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+</p> 
+<h2> 
+	11. LIMITATION OF LIABILITY
+</h2> 
+<p> 
+	11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND
+ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY
+LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN
+AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+</p> 
+<h2> 
+	12. Indemnification
+</h2> 
+<p> 
+	12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold
+harmless Google, its affiliates and their respective directors, officers, employees and agents from
+and against any and all claims, actions, suits or proceedings, as well as any and all losses,
+liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or
+accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any
+copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any
+person or defames any person or violates their rights of publicity or privacy, and (c) any
+non-compliance by you with this License Agreement.
+</p> 
+<h2> 
+	13. Changes to the License Agreement
+</h2> 
+<p> 
+	13.1 Google may make changes to the License Agreement as it distributes new versions of the
+SDK. When these changes are made, Google will make a new version of the License Agreement available
+on the website where the SDK is made available.
+</p> 
+<h2> 
+	14. General Legal Terms
+</h2> 
+<p> 
+	14.1 This License Agreement constitute the whole legal agreement between you and Google and
+govern your use of the SDK (excluding any services which Google may provide to you under a separate
+written agreement), and completely replace any prior agreements between you and Google in relation
+to the SDK.
+</p> 
+<p> 
+	14.2 You agree that if Google does not exercise or enforce any legal right or remedy which
+is contained in this License Agreement (or which Google has the benefit of under any applicable
+law), this will not be taken to be a formal waiver of Google's rights and that those rights or
+remedies will still be available to Google.
+</p> 
+<p> 
+	14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any
+provision of this License Agreement is invalid, then that provision will be removed from this
+License Agreement without affecting the rest of this License Agreement. The remaining provisions of
+this License Agreement will continue to be valid and enforceable.
+</p> 
+<p> 
+	14.4 You acknowledge and agree that each member of the group of companies of which Google is
+the parent shall be third party beneficiaries to this License Agreement and that such other
+companies shall be entitled to directly enforce, and rely upon, any provision of this License
+Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person
+or company shall be third party beneficiaries to this License Agreement.
+</p> 
+<p> 
+	14.5 EXPORT RESTRICTIONS. THE SDK IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS.
+YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE
+SDK. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+</p> 
+<p> 
+	14.6 The rights granted in this License Agreement may not be assigned or transferred by
+either you or Google without the prior written approval of the other party. Neither you nor Google
+shall be permitted to delegate their responsibilities or obligations under this License Agreement
+without the prior written approval of the other party.
+</p> 
+<p> 
+	14.7 This License Agreement, and your relationship with Google under this License Agreement,
+shall be governed by the laws of the State of California without regard to its conflict of laws
+provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located
+within the county of Santa Clara, California to resolve any legal matter arising from this License
+Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for
+injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+</p> 
+<p> 
+	<em>April 10, 2009</em> 
+</p> 
\ No newline at end of file
diff --git a/docs/html/shareables/README b/docs/html/shareables/README
new file mode 100644
index 0000000..241618e
--- /dev/null
+++ b/docs/html/shareables/README
@@ -0,0 +1,8 @@
+DO NOT PUT ANY FILES IN THIS DIRECTORY
+
+All URLS pointing to this directory redirect to a corresponding location
+at http://commondatastorage.googleapis.com/androiddevelopers/shareables/
+
+This directory was originally created for downloadable items such as ZIP files,
+but we've moved them all to Google Cloud Storage to reduce the size
+of the Android Developers site.
\ No newline at end of file
diff --git a/docs/html/shareables/app_widget_templates-v4.0.zip b/docs/html/shareables/app_widget_templates-v4.0.zip
deleted file mode 100644
index b16ef12..0000000
--- a/docs/html/shareables/app_widget_templates-v4.0.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/icon_templates-v2.0.zip b/docs/html/shareables/icon_templates-v2.0.zip
deleted file mode 100644
index 1b94698..0000000
--- a/docs/html/shareables/icon_templates-v2.0.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/icon_templates-v2.3.zip b/docs/html/shareables/icon_templates-v2.3.zip
deleted file mode 100644
index 58d90ae..0000000
--- a/docs/html/shareables/icon_templates-v2.3.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/icon_templates-v4.0.zip b/docs/html/shareables/icon_templates-v4.0.zip
deleted file mode 100644
index 49e629f..0000000
--- a/docs/html/shareables/icon_templates-v4.0.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/sample_images.zip b/docs/html/shareables/sample_images.zip
deleted file mode 100644
index 007a68a..0000000
--- a/docs/html/shareables/sample_images.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/search_icons.zip b/docs/html/shareables/search_icons.zip
deleted file mode 100644
index bc98465..0000000
--- a/docs/html/shareables/search_icons.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/training/TabCompat.zip b/docs/html/shareables/training/TabCompat.zip
deleted file mode 100644
index b70b442..0000000
--- a/docs/html/shareables/training/TabCompat.zip
+++ /dev/null
Binary files differ
diff --git a/docs/html/shareables/training/nsdchat.zip b/docs/html/shareables/training/nsdchat.zip
new file mode 100644
index 0000000..a106975
--- /dev/null
+++ b/docs/html/shareables/training/nsdchat.zip
Binary files differ
diff --git a/docs/html/sitemap.txt b/docs/html/sitemap.txt
index f904cb4..6924ef3 100644
--- a/docs/html/sitemap.txt
+++ b/docs/html/sitemap.txt
@@ -2,7 +2,7 @@
 http://developer.android.com/design/index.html
 http://developer.android.com/develop/index.html
 http://developer.android.com/distribute/index.html
-http://developer.android.com/support.html
+http://developer.android.com/about/index.html
 http://developer.android.com/design/style/index.html
 http://developer.android.com/design/patterns/index.html
 http://developer.android.com/design/building-blocks/index.html
@@ -16,9 +16,14 @@
 http://developer.android.com/distribute/googleplay/promote/index.html
 http://developer.android.com/distribute/open.html
 http://developer.android.com/about/versions/jelly-bean.html
-http://developer.android.com/about/index.html
+http://developer.android.com/support.html
 http://developer.android.com/legal.html
 http://developer.android.com/license.html
+http://developer.android.com/reference/android/support/v4/app/DialogFragment.html
+http://developer.android.com/guide/google/play/billing/index.html
+http://developer.android.com/guide/topics/providers/contacts-provider.html
+http://developer.android.com/training/efficient-downloads/index.html
+http://developer.android.com/training/backward-compatible-ui/index.html
 http://developer.android.com/design/get-started/creative-vision.html
 http://developer.android.com/design/get-started/principles.html
 http://developer.android.com/design/get-started/ui-overview.html
@@ -64,132 +69,20 @@
 http://developer.android.com/distribute/googleplay/promote/linking.html
 http://developer.android.com/distribute/googleplay/promote/badges.html
 http://developer.android.com/distribute/googleplay/promote/brand.html
-http://developer.android.com/reference/android/support/v4/app/DialogFragment.html
-http://developer.android.com/guide/google/play/billing/index.html
-http://developer.android.com/guide/topics/providers/contacts-provider.html
-http://developer.android.com/training/efficient-downloads/index.html
-http://developer.android.com/training/backward-compatible-ui/index.html
-http://developer.android.com/training/basics/firstapp/index.html
-http://developer.android.com/training/basics/firstapp/creating-project.html
-http://developer.android.com/training/basics/firstapp/running-app.html
-http://developer.android.com/training/basics/firstapp/building-ui.html
-http://developer.android.com/training/basics/firstapp/starting-activity.html
-http://developer.android.com/training/basics/activity-lifecycle/index.html
-http://developer.android.com/training/basics/activity-lifecycle/starting.html
-http://developer.android.com/training/basics/activity-lifecycle/pausing.html
-http://developer.android.com/training/basics/activity-lifecycle/stopping.html
-http://developer.android.com/training/basics/activity-lifecycle/recreating.html
-http://developer.android.com/training/basics/supporting-devices/index.html
-http://developer.android.com/training/basics/supporting-devices/languages.html
-http://developer.android.com/training/basics/supporting-devices/screens.html
-http://developer.android.com/training/basics/supporting-devices/platforms.html
-http://developer.android.com/training/basics/fragments/index.html
-http://developer.android.com/training/basics/fragments/support-lib.html
-http://developer.android.com/training/basics/fragments/creating.html
-http://developer.android.com/training/basics/fragments/fragment-ui.html
-http://developer.android.com/training/basics/fragments/communicating.html
-http://developer.android.com/training/basics/intents/index.html
-http://developer.android.com/training/basics/intents/sending.html
-http://developer.android.com/training/basics/intents/result.html
-http://developer.android.com/training/basics/intents/filters.html
-http://developer.android.com/training/advanced.html
-http://developer.android.com/training/basics/location/index.html
-http://developer.android.com/training/basics/location/locationmanager.html
-http://developer.android.com/training/basics/location/currentlocation.html
-http://developer.android.com/training/basics/location/geocoding.html
-http://developer.android.com/training/basics/network-ops/index.html
-http://developer.android.com/training/basics/network-ops/connecting.html
-http://developer.android.com/training/basics/network-ops/managing.html
-http://developer.android.com/training/basics/network-ops/xml.html
-http://developer.android.com/training/efficient-downloads/efficient-network-access.html
-http://developer.android.com/training/efficient-downloads/regular_updates.html
-http://developer.android.com/training/efficient-downloads/redundant_redundant.html
-http://developer.android.com/training/efficient-downloads/connectivity_patterns.html
-http://developer.android.com/training/cloudsync/index.html
-http://developer.android.com/training/cloudsync/aesync.html
-http://developer.android.com/training/cloudsync/backupapi.html
-http://developer.android.com/training/multiscreen/index.html
-http://developer.android.com/training/multiscreen/screensizes.html
-http://developer.android.com/training/multiscreen/screendensities.html
-http://developer.android.com/training/multiscreen/adaptui.html
-http://developer.android.com/training/improving-layouts/index.html
-http://developer.android.com/training/improving-layouts/optimizing-layout.html
-http://developer.android.com/training/improving-layouts/reusing-layouts.html
-http://developer.android.com/training/improving-layouts/loading-ondemand.html
-http://developer.android.com/training/improving-layouts/smooth-scrolling.html
-http://developer.android.com/training/managing-audio/index.html
-http://developer.android.com/training/managing-audio/volume-playback.html
-http://developer.android.com/training/managing-audio/audio-focus.html
-http://developer.android.com/training/managing-audio/audio-output.html
-http://developer.android.com/training/monitoring-device-state/index.html
-http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
-http://developer.android.com/training/monitoring-device-state/docking-monitoring.html
-http://developer.android.com/training/monitoring-device-state/connectivity-monitoring.html
-http://developer.android.com/training/monitoring-device-state/manifest-receivers.html
-http://developer.android.com/training/custom-views/index.html
-http://developer.android.com/training/custom-views/create-view.html
-http://developer.android.com/training/custom-views/custom-drawing.html
-http://developer.android.com/training/custom-views/making-interactive.html
-http://developer.android.com/training/custom-views/optimizing-view.html
-http://developer.android.com/training/search/index.html
-http://developer.android.com/training/search/setup.html
-http://developer.android.com/training/search/search.html
-http://developer.android.com/training/search/backward-compat.html
-http://developer.android.com/training/id-auth/index.html
-http://developer.android.com/training/id-auth/identify.html
-http://developer.android.com/training/id-auth/authenticate.html
-http://developer.android.com/training/id-auth/custom_auth.html
-http://developer.android.com/training/sharing/index.html
-http://developer.android.com/training/sharing/send.html
-http://developer.android.com/training/sharing/receive.html
-http://developer.android.com/training/sharing/shareaction.html
-http://developer.android.com/training/camera/index.html
-http://developer.android.com/training/camera/photobasics.html
-http://developer.android.com/training/camera/videobasics.html
-http://developer.android.com/training/camera/cameradirect.html
-http://developer.android.com/training/multiple-apks/index.html
-http://developer.android.com/training/multiple-apks/api.html
-http://developer.android.com/training/multiple-apks/screensize.html
-http://developer.android.com/training/multiple-apks/texture.html
-http://developer.android.com/training/multiple-apks/multiple.html
-http://developer.android.com/training/backward-compatible-ui/abstracting.html
-http://developer.android.com/training/backward-compatible-ui/new-implementation.html
-http://developer.android.com/training/backward-compatible-ui/older-implementation.html
-http://developer.android.com/training/backward-compatible-ui/using-component.html
-http://developer.android.com/training/enterprise/index.html
-http://developer.android.com/training/enterprise/device-management-policy.html
-http://developer.android.com/training/monetization/index.html
-http://developer.android.com/training/monetization/ads-and-ux.html
-http://developer.android.com/training/design-navigation/index.html
-http://developer.android.com/training/design-navigation/screen-planning.html
-http://developer.android.com/training/design-navigation/multiple-sizes.html
-http://developer.android.com/training/design-navigation/descendant-lateral.html
-http://developer.android.com/training/design-navigation/ancestral-temporal.html
-http://developer.android.com/training/design-navigation/wireframing.html
-http://developer.android.com/training/implementing-navigation/index.html
-http://developer.android.com/training/implementing-navigation/lateral.html
-http://developer.android.com/training/implementing-navigation/ancestral.html
-http://developer.android.com/training/implementing-navigation/temporal.html
-http://developer.android.com/training/implementing-navigation/descendant.html
-http://developer.android.com/training/tv/index.html
-http://developer.android.com/training/tv/optimizing-layouts-tv.html
-http://developer.android.com/training/tv/optimizing-navigation-tv.html
-http://developer.android.com/training/tv/unsupported-features-tv.html
-http://developer.android.com/training/displaying-bitmaps/index.html
-http://developer.android.com/training/displaying-bitmaps/load-bitmap.html
-http://developer.android.com/training/displaying-bitmaps/process-bitmap.html
-http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html
-http://developer.android.com/training/displaying-bitmaps/display-bitmap.html
-http://developer.android.com/training/accessibility/index.html
-http://developer.android.com/training/accessibility/accessible-app.html
-http://developer.android.com/training/accessibility/service.html
-http://developer.android.com/training/graphics/opengl/index.html
-http://developer.android.com/training/graphics/opengl/environment.html
-http://developer.android.com/training/graphics/opengl/shapes.html
-http://developer.android.com/training/graphics/opengl/draw.html
-http://developer.android.com/training/graphics/opengl/projection.html
-http://developer.android.com/training/graphics/opengl/motion.html
-http://developer.android.com/training/graphics/opengl/touch.html
+http://developer.android.com/distribute/promote/device-art.html
+http://developer.android.com/about/start.html
+http://developer.android.com/about/versions/android-4.1.html
+http://developer.android.com/about/versions/android-4.0-highlights.html
+http://developer.android.com/about/versions/android-4.0.3.html
+http://developer.android.com/about/versions/android-4.0.html
+http://developer.android.com/about/versions/android-3.0-highlights.html
+http://developer.android.com/about/versions/android-3.2.html
+http://developer.android.com/about/versions/android-3.1.html
+http://developer.android.com/about/versions/android-3.0.html
+http://developer.android.com/about/versions/android-2.3-highlights.html
+http://developer.android.com/about/versions/android-2.3.4.html
+http://developer.android.com/about/versions/android-2.3.3.html
+http://developer.android.com/about/dashboards/index.html
 http://developer.android.com/guide/components/fundamentals.html
 http://developer.android.com/guide/components/activities.html
 http://developer.android.com/guide/components/fragments.html
@@ -252,6 +145,7 @@
 http://developer.android.com/guide/topics/ui/menus.html
 http://developer.android.com/guide/topics/ui/dialogs.html
 http://developer.android.com/guide/topics/ui/actionbar.html
+http://developer.android.com/guide/topics/ui/settings.html
 http://developer.android.com/guide/topics/ui/notifiers/index.html
 http://developer.android.com/guide/topics/ui/notifiers/toasts.html
 http://developer.android.com/guide/topics/ui/notifiers/notifications.html
@@ -366,6 +260,9 @@
 http://developer.android.com/guide/google/gcm/demo.html
 http://developer.android.com/guide/google/gcm/adv.html
 http://developer.android.com/guide/google/gcm/c2dm.html
+http://developer.android.com/training/basics/activity-lifecycle/index.html
+http://developer.android.com/training/basics/fragments/index.html
+http://developer.android.com/training/sharing/index.html
 http://developer.android.com/reference/android/package-summary.html
 http://developer.android.com/reference/android/accessibilityservice/package-summary.html
 http://developer.android.com/reference/android/accounts/package-summary.html
@@ -581,6 +478,7 @@
 http://developer.android.com/tools/debugging/debugging-projects-cmdline.html
 http://developer.android.com/tools/debugging/ddms.html
 http://developer.android.com/tools/debugging/debugging-log.html
+http://developer.android.com/tools/debugging/improving-w-lint.html
 http://developer.android.com/tools/debugging/debugging-ui.html
 http://developer.android.com/tools/debugging/debugging-tracing.html
 http://developer.android.com/tools/debugging/debugging-devtools.html
@@ -600,7 +498,7 @@
 http://developer.android.com/tools/help/etc1tool.html
 http://developer.android.com/tools/help/hierarchy-viewer.html
 http://developer.android.com/tools/help/hprof-conv.html
-http://developer.android.com/tools/help/layoutopt.html
+http://developer.android.com/tools/help/lint.html
 http://developer.android.com/tools/help/logcat.html
 http://developer.android.com/tools/help/mksdcard.html
 http://developer.android.com/tools/help/monkey.html
@@ -625,175 +523,406 @@
 http://developer.android.com/tools/adk/adk.html
 http://developer.android.com/tools/adk/aoa.html
 http://developer.android.com/tools/adk/aoa2.html
-http://developer.android.com/about/start.html
-http://developer.android.com/about/versions/android-4.1.html
-http://developer.android.com/about/versions/android-4.0-highlights.html
-http://developer.android.com/about/versions/android-4.0.3.html
-http://developer.android.com/about/versions/android-4.0.html
-http://developer.android.com/about/versions/android-3.0-highlights.html
-http://developer.android.com/about/versions/android-3.2.html
-http://developer.android.com/about/versions/android-3.1.html
-http://developer.android.com/about/versions/android-3.0.html
-http://developer.android.com/about/versions/android-2.3-highlights.html
-http://developer.android.com/about/versions/android-2.3.4.html
-http://developer.android.com/about/versions/android-2.3.3.html
-http://developer.android.com/about/dashboards/index.html
+http://developer.android.com/training/basics/firstapp/index.html
+http://developer.android.com/training/basics/firstapp/creating-project.html
+http://developer.android.com/training/basics/firstapp/running-app.html
+http://developer.android.com/training/basics/firstapp/building-ui.html
+http://developer.android.com/training/basics/firstapp/starting-activity.html
+http://developer.android.com/training/basics/activity-lifecycle/starting.html
+http://developer.android.com/training/basics/activity-lifecycle/pausing.html
+http://developer.android.com/training/basics/activity-lifecycle/stopping.html
+http://developer.android.com/training/basics/activity-lifecycle/recreating.html
+http://developer.android.com/training/basics/supporting-devices/index.html
+http://developer.android.com/training/basics/supporting-devices/languages.html
+http://developer.android.com/training/basics/supporting-devices/screens.html
+http://developer.android.com/training/basics/supporting-devices/platforms.html
+http://developer.android.com/training/basics/fragments/support-lib.html
+http://developer.android.com/training/basics/fragments/creating.html
+http://developer.android.com/training/basics/fragments/fragment-ui.html
+http://developer.android.com/training/basics/fragments/communicating.html
+http://developer.android.com/training/basics/intents/index.html
+http://developer.android.com/training/basics/intents/sending.html
+http://developer.android.com/training/basics/intents/result.html
+http://developer.android.com/training/basics/intents/filters.html
+http://developer.android.com/training/advanced.html
+http://developer.android.com/training/basics/location/index.html
+http://developer.android.com/training/basics/location/locationmanager.html
+http://developer.android.com/training/basics/location/currentlocation.html
+http://developer.android.com/training/basics/location/geocoding.html
+http://developer.android.com/training/basics/network-ops/index.html
+http://developer.android.com/training/basics/network-ops/connecting.html
+http://developer.android.com/training/basics/network-ops/managing.html
+http://developer.android.com/training/basics/network-ops/xml.html
+http://developer.android.com/training/efficient-downloads/efficient-network-access.html
+http://developer.android.com/training/efficient-downloads/regular_updates.html
+http://developer.android.com/training/efficient-downloads/redundant_redundant.html
+http://developer.android.com/training/efficient-downloads/connectivity_patterns.html
+http://developer.android.com/training/cloudsync/index.html
+http://developer.android.com/training/cloudsync/backupapi.html
+http://developer.android.com/training/cloudsync/gcm.html
+http://developer.android.com/training/multiscreen/index.html
+http://developer.android.com/training/multiscreen/screensizes.html
+http://developer.android.com/training/multiscreen/screendensities.html
+http://developer.android.com/training/multiscreen/adaptui.html
+http://developer.android.com/training/improving-layouts/index.html
+http://developer.android.com/training/improving-layouts/optimizing-layout.html
+http://developer.android.com/training/improving-layouts/reusing-layouts.html
+http://developer.android.com/training/improving-layouts/loading-ondemand.html
+http://developer.android.com/training/improving-layouts/smooth-scrolling.html
+http://developer.android.com/training/managing-audio/index.html
+http://developer.android.com/training/managing-audio/volume-playback.html
+http://developer.android.com/training/managing-audio/audio-focus.html
+http://developer.android.com/training/managing-audio/audio-output.html
+http://developer.android.com/training/monitoring-device-state/index.html
+http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
+http://developer.android.com/training/monitoring-device-state/docking-monitoring.html
+http://developer.android.com/training/monitoring-device-state/connectivity-monitoring.html
+http://developer.android.com/training/monitoring-device-state/manifest-receivers.html
+http://developer.android.com/training/custom-views/index.html
+http://developer.android.com/training/custom-views/create-view.html
+http://developer.android.com/training/custom-views/custom-drawing.html
+http://developer.android.com/training/custom-views/making-interactive.html
+http://developer.android.com/training/custom-views/optimizing-view.html
+http://developer.android.com/training/search/index.html
+http://developer.android.com/training/search/setup.html
+http://developer.android.com/training/search/search.html
+http://developer.android.com/training/search/backward-compat.html
+http://developer.android.com/training/id-auth/index.html
+http://developer.android.com/training/id-auth/identify.html
+http://developer.android.com/training/id-auth/authenticate.html
+http://developer.android.com/training/id-auth/custom_auth.html
+http://developer.android.com/training/sharing/send.html
+http://developer.android.com/training/sharing/receive.html
+http://developer.android.com/training/sharing/shareaction.html
+http://developer.android.com/training/camera/index.html
+http://developer.android.com/training/camera/photobasics.html
+http://developer.android.com/training/camera/videobasics.html
+http://developer.android.com/training/camera/cameradirect.html
+http://developer.android.com/training/multiple-apks/index.html
+http://developer.android.com/training/multiple-apks/api.html
+http://developer.android.com/training/multiple-apks/screensize.html
+http://developer.android.com/training/multiple-apks/texture.html
+http://developer.android.com/training/multiple-apks/multiple.html
+http://developer.android.com/training/backward-compatible-ui/abstracting.html
+http://developer.android.com/training/backward-compatible-ui/new-implementation.html
+http://developer.android.com/training/backward-compatible-ui/older-implementation.html
+http://developer.android.com/training/backward-compatible-ui/using-component.html
+http://developer.android.com/training/enterprise/index.html
+http://developer.android.com/training/enterprise/device-management-policy.html
+http://developer.android.com/training/monetization/index.html
+http://developer.android.com/training/monetization/ads-and-ux.html
+http://developer.android.com/training/design-navigation/index.html
+http://developer.android.com/training/design-navigation/screen-planning.html
+http://developer.android.com/training/design-navigation/multiple-sizes.html
+http://developer.android.com/training/design-navigation/descendant-lateral.html
+http://developer.android.com/training/design-navigation/ancestral-temporal.html
+http://developer.android.com/training/design-navigation/wireframing.html
+http://developer.android.com/training/implementing-navigation/index.html
+http://developer.android.com/training/implementing-navigation/lateral.html
+http://developer.android.com/training/implementing-navigation/ancestral.html
+http://developer.android.com/training/implementing-navigation/temporal.html
+http://developer.android.com/training/implementing-navigation/descendant.html
+http://developer.android.com/training/tv/index.html
+http://developer.android.com/training/tv/optimizing-layouts-tv.html
+http://developer.android.com/training/tv/optimizing-navigation-tv.html
+http://developer.android.com/training/tv/unsupported-features-tv.html
+http://developer.android.com/training/displaying-bitmaps/index.html
+http://developer.android.com/training/displaying-bitmaps/load-bitmap.html
+http://developer.android.com/training/displaying-bitmaps/process-bitmap.html
+http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html
+http://developer.android.com/training/displaying-bitmaps/display-bitmap.html
+http://developer.android.com/training/accessibility/index.html
+http://developer.android.com/training/accessibility/accessible-app.html
+http://developer.android.com/training/accessibility/service.html
+http://developer.android.com/training/graphics/opengl/index.html
+http://developer.android.com/training/graphics/opengl/environment.html
+http://developer.android.com/training/graphics/opengl/shapes.html
+http://developer.android.com/training/graphics/opengl/draw.html
+http://developer.android.com/training/graphics/opengl/projection.html
+http://developer.android.com/training/graphics/opengl/motion.html
+http://developer.android.com/training/graphics/opengl/touch.html
+http://developer.android.com/training/connect-devices-wirelessly/index.html
+http://developer.android.com/training/connect-devices-wirelessly/nsd.html
+http://developer.android.com/training/connect-devices-wirelessly/wifi-direct.html
+http://developer.android.com/training/connect-devices-wirelessly/nsd-wifi-direct.html
 http://developer.android.com/
-http://developer.android.com/reference/java/io/InputStream.html
-http://developer.android.com/reference/android/content/res/Resources.html
-http://developer.android.com/reference/android/content/res/AssetManager.html
-http://developer.android.com/reference/android/content/res/Configuration.html
-http://developer.android.com/reference/android/app/UiModeManager.html
-http://developer.android.com/reference/android/app/SearchManager.html
-http://developer.android.com/reference/android/widget/SearchView.html
-http://developer.android.com/resources/samples/SearchableDictionary/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/SearchViewActionBar.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/SearchViewFilterMode.html
-http://developer.android.com/shareables/search_icons.zip
-http://developer.android.com/reference/android/widget/EditText.html
-http://developer.android.com/reference/android/content/Intent.html
-http://developer.android.com/reference/android/app/Activity.html
-http://developer.android.com/reference/android/app/SearchableInfo.html
-http://developer.android.com/reference/android/widget/ListView.html
-http://developer.android.com/reference/android/app/ListActivity.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html
-http://developer.android.com/reference/android/widget/Adapter.html
-http://developer.android.com/reference/android/view/View.html
-http://developer.android.com/reference/android/widget/CursorAdapter.html
-http://developer.android.com/reference/android/database/Cursor.html
-http://developer.android.com/reference/android/widget/BaseAdapter.html
-http://developer.android.com/reference/android/app/Dialog.html
-http://developer.android.com/reference/android/app/SearchManager.OnDismissListener.html
-http://developer.android.com/reference/android/app/SearchManager.OnCancelListener.html
-http://developer.android.com/reference/android/os/Bundle.html
-http://developer.android.com/resources/samples/SearchableDictionary/src/com/example/android/searchabledict/SearchableDictionary.html
-http://developer.android.com/reference/android/view/ViewStub.html
-http://developer.android.com/reference/android/renderscript/ScriptC.html
-http://developer.android.com/reference/android/renderscript/Script.FieldBase.html
-http://developer.android.com/reference/renderscript/rs__core_8rsh.html
-http://developer.android.com/reference/android/renderscript/Allocation.html
-http://developer.android.com/reference/android/renderscript/Element.html
-http://developer.android.com/reference/android/renderscript/Type.html
-http://developer.android.com/reference/android/os/PatternMatcher.html
-http://developer.android.com/shareables/training/NewsReader.zip
-http://developer.android.com/reference/android/widget/LinearLayout.html
-http://developer.android.com/reference/android/widget/RelativeLayout.html
-http://developer.android.com/reference/android/widget/RelativeLayout.LayoutParams.html
-http://developer.android.com/reference/android/app/Service.html
-http://developer.android.com/reference/android/app/IntentService.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html
-http://developer.android.com/reference/android/content/Context.html
-http://developer.android.com/reference/android/os/AsyncTask.html
-http://developer.android.com/reference/android/os/HandlerThread.html
-http://developer.android.com/reference/java/lang/Thread.html
-http://developer.android.com/reference/android/os/IBinder.html
-http://developer.android.com/reference/android/app/PendingIntent.html
-http://developer.android.com/reference/android/app/Notification.html
-http://developer.android.com/reference/java/lang/ref/PhantomReference.html
-http://developer.android.com/reference/java/lang/ref/Reference.html
-http://developer.android.com/reference/java/lang/ref/SoftReference.html
-http://developer.android.com/reference/java/lang/ref/WeakReference.html
-http://developer.android.com/reference/java/lang/Object.html
-http://developer.android.com/reference/java/lang/Class.html
-http://developer.android.com/reference/java/lang/String.html
-http://developer.android.com/reference/java/lang/InterruptedException.html
-http://developer.android.com/reference/java/lang/IllegalArgumentException.html
-http://developer.android.com/reference/java/security/interfaces/DSAKey.html
-http://developer.android.com/reference/java/security/interfaces/DSAKeyPairGenerator.html
-http://developer.android.com/reference/java/security/interfaces/DSAParams.html
-http://developer.android.com/reference/java/security/interfaces/DSAPrivateKey.html
-http://developer.android.com/reference/java/security/interfaces/DSAPublicKey.html
-http://developer.android.com/reference/java/security/interfaces/ECKey.html
-http://developer.android.com/reference/java/security/interfaces/ECPrivateKey.html
-http://developer.android.com/reference/java/security/interfaces/ECPublicKey.html
-http://developer.android.com/reference/java/security/interfaces/RSAKey.html
-http://developer.android.com/reference/java/security/interfaces/RSAMultiPrimePrivateCrtKey.html
-http://developer.android.com/reference/java/security/interfaces/RSAPrivateCrtKey.html
-http://developer.android.com/reference/java/security/interfaces/RSAPrivateKey.html
-http://developer.android.com/reference/java/security/interfaces/RSAPublicKey.html
-http://developer.android.com/reference/org/apache/http/conn/ClientConnectionManager.html
-http://developer.android.com/reference/org/apache/http/conn/ClientConnectionManagerFactory.html
-http://developer.android.com/reference/org/apache/http/conn/ClientConnectionOperator.html
-http://developer.android.com/reference/org/apache/http/conn/ClientConnectionRequest.html
-http://developer.android.com/reference/org/apache/http/conn/ConnectionKeepAliveStrategy.html
-http://developer.android.com/reference/org/apache/http/conn/ConnectionReleaseTrigger.html
-http://developer.android.com/reference/org/apache/http/conn/EofSensorWatcher.html
-http://developer.android.com/reference/org/apache/http/conn/ManagedClientConnection.html
-http://developer.android.com/reference/org/apache/http/conn/OperatedClientConnection.html
-http://developer.android.com/reference/org/apache/http/conn/BasicEofSensorWatcher.html
-http://developer.android.com/reference/org/apache/http/conn/BasicManagedEntity.html
-http://developer.android.com/reference/org/apache/http/conn/EofSensorInputStream.html
-http://developer.android.com/reference/org/apache/http/conn/MultihomePlainSocketFactory.html
-http://developer.android.com/reference/org/apache/http/conn/ConnectionPoolTimeoutException.html
-http://developer.android.com/reference/org/apache/http/conn/ConnectTimeoutException.html
-http://developer.android.com/reference/org/apache/http/conn/HttpHostConnectException.html
-http://developer.android.com/reference/org/apache/http/HttpClientConnection.html
-http://developer.android.com/reference/org/apache/http/conn/scheme/SocketFactory.html
-http://developer.android.com/reference/org/apache/http/conn/scheme/Scheme.html
-http://developer.android.com/reference/org/apache/http/conn/scheme/SchemeRegistry.html
-http://developer.android.com/reference/org/apache/http/conn/routing/HttpRoute.html
-http://developer.android.com/reference/java/net/InetAddress.html
-http://developer.android.com/reference/java/net/ConnectException.html
-http://developer.android.com/reference/org/apache/http/HttpHost.html
-http://developer.android.com/reference/android/support/v4/content/Loader.OnLoadCompleteListener.html
-http://developer.android.com/reference/android/support/v4/content/AsyncTaskLoader.html
-http://developer.android.com/reference/android/support/v4/content/ContextCompat.html
-http://developer.android.com/reference/android/support/v4/content/CursorLoader.html
-http://developer.android.com/reference/android/support/v4/content/IntentCompat.html
-http://developer.android.com/reference/android/support/v4/content/Loader.html
-http://developer.android.com/reference/android/support/v4/content/Loader.ForceLoadContentObserver.html
-http://developer.android.com/reference/android/support/v4/content/LocalBroadcastManager.html
-http://developer.android.com/reference/android/content/AsyncTaskLoader.html
-http://developer.android.com/reference/android/content/CursorLoader.html
-http://developer.android.com/reference/android/content/Loader.html
-http://developer.android.com/reference/android/widget/Button.html
-http://developer.android.com/reference/android/app/Fragment.html
-http://developer.android.com/reference/android/app/FragmentManager.html
-http://developer.android.com/reference/android/app/FragmentTransaction.html
-http://developer.android.com/resources/samples/HoneycombGallery/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/index.html
-http://developer.android.com/reference/android/view/ViewGroup.html
-http://developer.android.com/reference/android/app/DialogFragment.html
-http://developer.android.com/reference/android/app/ListFragment.html
-http://developer.android.com/reference/android/widget/SimpleCursorAdapter.html
-http://developer.android.com/reference/android/preference/PreferenceFragment.html
+http://developer.android.com/reference/android/app/Instrumentation.html
+http://developer.android.com/tools/help/ddms.html
+http://developer.android.com/reference/android/widget/QuickContactBadge.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design.html
+http://developer.android.com/reference/org/w3c/dom/Attr.html
+http://developer.android.com/reference/org/w3c/dom/CDATASection.html
+http://developer.android.com/reference/org/w3c/dom/CharacterData.html
+http://developer.android.com/reference/org/w3c/dom/Comment.html
+http://developer.android.com/reference/org/w3c/dom/Document.html
+http://developer.android.com/reference/org/w3c/dom/DocumentFragment.html
+http://developer.android.com/reference/org/w3c/dom/DocumentType.html
+http://developer.android.com/reference/org/w3c/dom/DOMConfiguration.html
+http://developer.android.com/reference/org/w3c/dom/DOMError.html
+http://developer.android.com/reference/org/w3c/dom/DOMErrorHandler.html
+http://developer.android.com/reference/org/w3c/dom/DOMImplementation.html
+http://developer.android.com/reference/org/w3c/dom/DOMImplementationList.html
+http://developer.android.com/reference/org/w3c/dom/DOMImplementationSource.html
+http://developer.android.com/reference/org/w3c/dom/DOMLocator.html
+http://developer.android.com/reference/org/w3c/dom/DOMStringList.html
+http://developer.android.com/reference/org/w3c/dom/Element.html
+http://developer.android.com/reference/org/w3c/dom/Entity.html
+http://developer.android.com/reference/org/w3c/dom/EntityReference.html
+http://developer.android.com/reference/org/w3c/dom/NamedNodeMap.html
+http://developer.android.com/reference/org/w3c/dom/NameList.html
+http://developer.android.com/reference/org/w3c/dom/Node.html
+http://developer.android.com/reference/org/w3c/dom/NodeList.html
+http://developer.android.com/reference/org/w3c/dom/Notation.html
+http://developer.android.com/reference/org/w3c/dom/ProcessingInstruction.html
+http://developer.android.com/reference/org/w3c/dom/Text.html
+http://developer.android.com/reference/org/w3c/dom/TypeInfo.html
+http://developer.android.com/reference/org/w3c/dom/UserDataHandler.html
+http://developer.android.com/reference/org/w3c/dom/DOMException.html
+http://developer.android.com/reference/javax/xml/parsers/DocumentBuilder.html
 http://developer.android.com/reference/android/preference/Preference.html
 http://developer.android.com/reference/android/preference/PreferenceActivity.html
-http://developer.android.com/reference/android/view/LayoutInflater.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentRetainInstance.html
-http://developer.android.com/reference/java/lang/ClassCastException.html
-http://developer.android.com/reference/android/content/ContentUris.html
-http://developer.android.com/reference/android/content/ContentProvider.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html
-http://developer.android.com/reference/android/widget/FrameLayout.html
-http://developer.android.com/resources/samples/get.html
-http://developer.android.com/reference/android/net/Uri.html
-http://developer.android.com/resources/samples/NotePad/index.html
-http://developer.android.com/reference/android/content/AbstractThreadedSyncAdapter.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html
-http://developer.android.com/resources/samples/SampleSyncAdapter/index.html
-http://developer.android.com/reference/android/provider/BaseColumns.html
-http://developer.android.com/reference/android/content/ContentResolver.html
-http://developer.android.com/reference/android/provider/ContactsContract.Data.html
-http://developer.android.com/reference/android/content/UriMatcher.html
-http://developer.android.com/reference/android/net/Uri.Builder.html
-http://developer.android.com/reference/java/lang/Exception.html
-http://developer.android.com/reference/android/database/MatrixCursor.html
-http://developer.android.com/reference/java/lang/NullPointerException.html
-http://developer.android.com/reference/android/content/ContentValues.html
-http://developer.android.com/reference/android/provider/ContactsContract.html
-http://developer.android.com/guide/topics/security/security.html
-http://developer.android.com/reference/android/support/v4/accessibilityservice/AccessibilityServiceInfoCompat.html
-http://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html
-http://developer.android.com/reference/android/app/NotificationManager.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Media.html
-http://developer.android.com/reference/android/provider/MediaStore.html
-http://developer.android.com/reference/android/graphics/drawable/LevelListDrawable.html
+http://developer.android.com/reference/android/preference/PreferenceFragment.html
+http://developer.android.com/reference/android/view/View.html
+http://developer.android.com/reference/android/preference/CheckBoxPreference.html
+http://developer.android.com/reference/android/preference/ListPreference.html
+http://developer.android.com/reference/android/content/SharedPreferences.html
+http://developer.android.com/reference/java/util/Set.html
+http://developer.android.com/reference/android/app/Activity.html
+http://developer.android.com/reference/android/app/Fragment.html
+http://developer.android.com/reference/android/preference/EditTextPreference.html
+http://developer.android.com/reference/android/widget/EditText.html
+http://developer.android.com/reference/java/lang/String.html
+http://developer.android.com/reference/android/preference/PreferenceScreen.html
+http://developer.android.com/reference/android/preference/PreferenceCategory.html
+http://developer.android.com/reference/android/content/Intent.html
+http://developer.android.com/reference/android/content/Context.html
+http://developer.android.com/reference/android/preference/PreferenceManager.html
+http://developer.android.com/reference/android/os/Bundle.html
+http://developer.android.com/reference/android/os/Build.VERSION_CODES.html
+http://developer.android.com/reference/android/content/SharedPreferences.OnSharedPreferenceChangeListener.html
+http://developer.android.com/reference/android/preference/DialogPreference.html
+http://developer.android.com/reference/android/os/Parcelable.html
+http://developer.android.com/reference/android/preference/Preference.BaseSavedState.html
+http://developer.android.com/reference/org/apache/http/message/HeaderValueFormatter.html
+http://developer.android.com/reference/org/apache/http/message/HeaderValueParser.html
+http://developer.android.com/reference/org/apache/http/message/LineFormatter.html
+http://developer.android.com/reference/org/apache/http/message/LineParser.html
+http://developer.android.com/reference/org/apache/http/message/BasicHeader.html
+http://developer.android.com/reference/org/apache/http/message/BasicHeaderElement.html
+http://developer.android.com/reference/org/apache/http/message/BasicHeaderElementIterator.html
+http://developer.android.com/reference/org/apache/http/message/BasicHeaderIterator.html
+http://developer.android.com/reference/org/apache/http/message/BasicHeaderValueFormatter.html
+http://developer.android.com/reference/org/apache/http/message/BasicHeaderValueParser.html
+http://developer.android.com/reference/org/apache/http/message/BasicHttpEntityEnclosingRequest.html
+http://developer.android.com/reference/org/apache/http/message/BasicHttpRequest.html
+http://developer.android.com/reference/org/apache/http/message/BasicHttpResponse.html
+http://developer.android.com/reference/org/apache/http/message/BasicLineFormatter.html
+http://developer.android.com/reference/org/apache/http/message/BasicLineParser.html
+http://developer.android.com/reference/org/apache/http/message/BasicListHeaderIterator.html
+http://developer.android.com/reference/org/apache/http/message/BasicNameValuePair.html
+http://developer.android.com/reference/org/apache/http/message/BasicRequestLine.html
+http://developer.android.com/reference/org/apache/http/message/BasicStatusLine.html
+http://developer.android.com/reference/org/apache/http/message/BasicTokenIterator.html
+http://developer.android.com/reference/org/apache/http/message/BufferedHeader.html
+http://developer.android.com/reference/org/apache/http/message/HeaderGroup.html
+http://developer.android.com/reference/org/apache/http/message/ParserCursor.html
+http://developer.android.com/reference/org/apache/http/HeaderElementIterator.html
+http://developer.android.com/reference/org/apache/http/HeaderIterator.html
+http://developer.android.com/reference/java/util/List.html
+http://developer.android.com/reference/org/apache/http/HttpRequest.html
+http://developer.android.com/reference/org/apache/http/TokenIterator.html
+http://developer.android.com/reference/org/apache/http/client/entity/UrlEncodedFormEntity.html
+http://developer.android.com/reference/android/media/AudioManager.html
+http://developer.android.com/reference/android/content/BroadcastReceiver.html
+http://developer.android.com/reference/android/view/KeyEvent.html
+http://developer.android.com/reference/android/appwidget/AppWidgetProvider.html
+http://developer.android.com/reference/android/appwidget/AppWidgetProviderInfo.html
+http://developer.android.com/reference/android/appwidget/AppWidgetManager.html
+http://developer.android.com/guide/practices/ui_guidelines/widget_design.html
+http://developer.android.com/reference/android/app/AlarmManager.html
 http://developer.android.com/reference/android/widget/RemoteViews.html
-http://developer.android.com/reference/android/widget/TextView.html
+http://developer.android.com/reference/android/widget/FrameLayout.html
+http://developer.android.com/reference/android/widget/LinearLayout.html
+http://developer.android.com/reference/android/widget/RelativeLayout.html
+http://developer.android.com/reference/android/widget/AnalogClock.html
+http://developer.android.com/reference/android/widget/Button.html
 http://developer.android.com/reference/android/widget/Chronometer.html
+http://developer.android.com/reference/android/widget/ImageButton.html
+http://developer.android.com/reference/android/widget/ImageView.html
 http://developer.android.com/reference/android/widget/ProgressBar.html
+http://developer.android.com/reference/android/widget/TextView.html
+http://developer.android.com/reference/android/widget/ViewFlipper.html
+http://developer.android.com/reference/android/widget/ListView.html
+http://developer.android.com/reference/android/widget/GridView.html
+http://developer.android.com/reference/android/widget/StackView.html
+http://developer.android.com/reference/android/widget/AdapterViewFlipper.html
+http://developer.android.com/reference/android/app/Service.html
+http://developer.android.com/reference/android/app/PendingIntent.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetProvider.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.html
+http://developer.android.com/reference/android/widget/RemoteViewsService.html
+http://developer.android.com/reference/android/widget/ViewAnimator.html
+http://developer.android.com/reference/android/widget/Adapter.html
+http://developer.android.com/reference/android/widget/RemoteViewsService.RemoteViewsFactory.html
+http://developer.android.com/resources/samples/StackWidget/index.html
+http://developer.android.com/resources/samples/images/StackWidget.png
+http://developer.android.com/reference/android/widget/Toast.html
+http://developer.android.com/reference/android/Manifest.permission.html
+http://developer.android.com/resources/samples/WeatherListWidget/index.html
+http://developer.android.com/reference/android/content/ContentProvider.html
+http://developer.android.com/reference/android/net/Uri.html
+http://developer.android.com/reference/android/content/pm/PackageManager.html
+http://developer.android.com/shareables/training/OpenGLES.zip
+http://developer.android.com/reference/android/graphics/Canvas.html
+http://developer.android.com/reference/android/graphics/drawable/Drawable.html
+http://developer.android.com/reference/android/opengl/GLSurfaceView.html
+http://developer.android.com/reference/android/graphics/drawable/shapes/ArcShape.html
+http://developer.android.com/reference/android/graphics/drawable/shapes/OvalShape.html
+http://developer.android.com/reference/android/graphics/drawable/shapes/PathShape.html
+http://developer.android.com/reference/android/graphics/drawable/shapes/RectShape.html
+http://developer.android.com/reference/android/graphics/drawable/shapes/RoundRectShape.html
+http://developer.android.com/reference/android/graphics/drawable/shapes/Shape.html
+http://developer.android.com/reference/android/graphics/Path.html
+http://developer.android.com/reference/android/graphics/drawable/ShapeDrawable.html
+http://developer.android.com/reference/android/widget/ToggleButton.html
+http://developer.android.com/reference/android/widget/Switch.html
+http://developer.android.com/reference/android/widget/CompoundButton.html
+http://developer.android.com/reference/android/R.attr.html
+http://developer.android.com/reference/android/widget/CompoundButton.OnCheckedChangeListener.html
+http://developer.android.com/reference/javax/xml/xpath/XPath.html
+http://developer.android.com/reference/javax/xml/xpath/XPathExpression.html
+http://developer.android.com/reference/javax/xml/xpath/XPathFunction.html
+http://developer.android.com/reference/javax/xml/xpath/XPathFunctionResolver.html
+http://developer.android.com/reference/javax/xml/xpath/XPathVariableResolver.html
+http://developer.android.com/reference/javax/xml/xpath/XPathConstants.html
+http://developer.android.com/reference/javax/xml/xpath/XPathFactory.html
+http://developer.android.com/reference/javax/xml/xpath/XPathException.html
+http://developer.android.com/reference/javax/xml/xpath/XPathExpressionException.html
+http://developer.android.com/reference/javax/xml/xpath/XPathFactoryConfigurationException.html
+http://developer.android.com/reference/javax/xml/xpath/XPathFunctionException.html
+http://developer.android.com/reference/javax/xml/namespace/QName.html
+http://developer.android.com/reference/android/support/v4/content/CursorLoader.html
+http://developer.android.com/reference/android/database/Cursor.html
+http://developer.android.com/reference/android/support/v4/app/LoaderManager.LoaderCallbacks.html
+http://developer.android.com/reference/android/support/v4/content/Loader.html
+http://developer.android.com/reference/android/app/ListActivity.html
+http://developer.android.com/reference/android/content/res/Resources.html
+http://developer.android.com/reference/java/security/Certificate.html
+http://developer.android.com/reference/java/security/DomainCombiner.html
+http://developer.android.com/reference/java/security/Guard.html
+http://developer.android.com/reference/java/security/Key.html
+http://developer.android.com/reference/java/security/KeyStore.Entry.html
+http://developer.android.com/reference/java/security/KeyStore.LoadStoreParameter.html
+http://developer.android.com/reference/java/security/KeyStore.ProtectionParameter.html
+http://developer.android.com/reference/java/security/Policy.Parameters.html
+http://developer.android.com/reference/java/security/Principal.html
+http://developer.android.com/reference/java/security/PrivateKey.html
+http://developer.android.com/reference/java/security/PrivilegedAction.html
+http://developer.android.com/reference/java/security/PrivilegedExceptionAction.html
+http://developer.android.com/reference/java/security/PublicKey.html
+http://developer.android.com/reference/java/security/AccessControlContext.html
+http://developer.android.com/reference/java/security/AccessController.html
+http://developer.android.com/reference/java/security/AlgorithmParameterGenerator.html
+http://developer.android.com/reference/java/security/AlgorithmParameterGeneratorSpi.html
+http://developer.android.com/reference/java/security/AlgorithmParameters.html
+http://developer.android.com/reference/java/security/AlgorithmParametersSpi.html
+http://developer.android.com/reference/java/security/AllPermission.html
+http://developer.android.com/reference/java/security/AuthProvider.html
+http://developer.android.com/reference/java/security/BasicPermission.html
+http://developer.android.com/reference/java/security/CodeSigner.html
+http://developer.android.com/reference/java/security/CodeSource.html
+http://developer.android.com/reference/java/security/DigestInputStream.html
+http://developer.android.com/reference/java/security/DigestOutputStream.html
+http://developer.android.com/reference/java/security/GuardedObject.html
+http://developer.android.com/reference/java/security/Identity.html
+http://developer.android.com/reference/java/security/IdentityScope.html
+http://developer.android.com/reference/java/security/KeyFactory.html
+http://developer.android.com/reference/java/security/KeyFactorySpi.html
+http://developer.android.com/reference/java/security/KeyPair.html
+http://developer.android.com/reference/java/security/KeyPairGenerator.html
+http://developer.android.com/reference/java/security/KeyPairGeneratorSpi.html
+http://developer.android.com/reference/java/security/KeyRep.html
+http://developer.android.com/reference/java/security/KeyStore.html
+http://developer.android.com/reference/java/security/KeyStore.Builder.html
+http://developer.android.com/reference/java/security/KeyStore.CallbackHandlerProtection.html
+http://developer.android.com/reference/java/security/KeyStore.PasswordProtection.html
+http://developer.android.com/reference/java/security/KeyStore.PrivateKeyEntry.html
+http://developer.android.com/reference/java/security/KeyStore.SecretKeyEntry.html
+http://developer.android.com/reference/java/security/KeyStore.TrustedCertificateEntry.html
+http://developer.android.com/reference/java/security/KeyStoreSpi.html
+http://developer.android.com/reference/java/security/MessageDigest.html
+http://developer.android.com/reference/java/security/MessageDigestSpi.html
+http://developer.android.com/reference/java/security/Permission.html
+http://developer.android.com/reference/java/security/PermissionCollection.html
+http://developer.android.com/reference/java/security/Permissions.html
+http://developer.android.com/reference/java/security/Policy.html
+http://developer.android.com/reference/java/security/PolicySpi.html
+http://developer.android.com/reference/java/security/ProtectionDomain.html
+http://developer.android.com/reference/java/security/Provider.html
+http://developer.android.com/reference/java/security/Provider.Service.html
+http://developer.android.com/reference/java/security/SecureClassLoader.html
+http://developer.android.com/reference/java/security/SecureRandom.html
+http://developer.android.com/reference/java/security/SecureRandomSpi.html
+http://developer.android.com/reference/java/security/Security.html
+http://developer.android.com/reference/java/security/SecurityPermission.html
+http://developer.android.com/reference/java/security/Signature.html
+http://developer.android.com/reference/java/security/SignatureSpi.html
+http://developer.android.com/reference/java/security/SignedObject.html
+http://developer.android.com/reference/java/security/Signer.html
+http://developer.android.com/reference/java/security/Timestamp.html
+http://developer.android.com/reference/java/security/UnresolvedPermission.html
+http://developer.android.com/reference/java/security/KeyRep.Type.html
+http://developer.android.com/reference/java/security/AccessControlException.html
+http://developer.android.com/reference/java/security/DigestException.html
+http://developer.android.com/reference/java/security/GeneralSecurityException.html
+http://developer.android.com/reference/java/security/InvalidAlgorithmParameterException.html
+http://developer.android.com/reference/java/security/InvalidKeyException.html
+http://developer.android.com/reference/java/security/InvalidParameterException.html
+http://developer.android.com/reference/java/security/KeyException.html
+http://developer.android.com/reference/java/security/KeyManagementException.html
+http://developer.android.com/reference/java/security/KeyStoreException.html
+http://developer.android.com/reference/java/security/NoSuchAlgorithmException.html
+http://developer.android.com/reference/java/security/NoSuchProviderException.html
+http://developer.android.com/reference/java/security/PrivilegedActionException.html
+http://developer.android.com/reference/java/security/ProviderException.html
+http://developer.android.com/reference/java/security/SignatureException.html
+http://developer.android.com/reference/java/security/UnrecoverableEntryException.html
+http://developer.android.com/reference/java/security/UnrecoverableKeyException.html
+http://developer.android.com/reference/javax/security/auth/callback/CallbackHandler.html
+http://developer.android.com/reference/android/app/FragmentTransaction.html
+http://developer.android.com/reference/android/app/FragmentManager.html
+http://developer.android.com/reference/android/app/FragmentManager.OnBackStackChangedListener.html
+http://developer.android.com/reference/android/webkit/WebView.html
+http://developer.android.com/reference/android/view/MotionEvent.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html
+http://developer.android.com/reference/android/util/Log.html
+http://developer.android.com/reference/android/os/Debug.html
+http://developer.android.com/guide/practices/optimizing-for-3.0.html
+http://developer.android.com/reference/android/nfc/NdefMessage.html
+http://developer.android.com/reference/android/nfc/Tag.html
+http://developer.android.com/reference/android/nfc/tech/TagTechnology.html
+http://developer.android.com/reference/android/nfc/tech/NfcA.html
+http://developer.android.com/reference/android/nfc/tech/NfcB.html
+http://developer.android.com/reference/android/nfc/tech/NfcF.html
+http://developer.android.com/reference/android/nfc/tech/NfcV.html
+http://developer.android.com/reference/android/nfc/tech/IsoDep.html
+http://developer.android.com/reference/android/nfc/tech/Ndef.html
+http://developer.android.com/reference/android/nfc/tech/NdefFormatable.html
+http://developer.android.com/reference/android/nfc/tech/MifareClassic.html
+http://developer.android.com/reference/android/nfc/tech/MifareUltralight.html
+http://developer.android.com/reference/android/nfc/NfcAdapter.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/nfc/ForegroundDispatch.html
+http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityEventCompat.html
+http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityManagerCompat.html
+http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat.html
+http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityNodeInfoCompat.html
+http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityNodeProviderCompat.html
+http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityRecordCompat.html
+http://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html
+http://developer.android.com/reference/android/view/accessibility/AccessibilityManager.html
+http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html
+http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeProvider.html
+http://developer.android.com/reference/android/view/accessibility/AccessibilityRecord.html
 http://developer.android.com/reference/android/app/backup/BackupHelper.html
 http://developer.android.com/reference/android/app/backup/BackupAgent.html
 http://developer.android.com/reference/android/app/backup/BackupAgentHelper.html
@@ -805,50 +934,7 @@
 http://developer.android.com/reference/android/app/backup/FullBackupDataOutput.html
 http://developer.android.com/reference/android/app/backup/RestoreObserver.html
 http://developer.android.com/reference/android/app/backup/SharedPreferencesBackupHelper.html
-http://developer.android.com/reference/android/content/SharedPreferences.html
-http://developer.android.com/reference/android/support/v4/util/LongSparseArray.html
-http://developer.android.com/reference/android/support/v4/util/LruCache.html
-http://developer.android.com/reference/android/support/v4/util/SparseArrayCompat.html
-http://developer.android.com/reference/android/util/LruCache.html
-http://developer.android.com/reference/android/util/SparseArray.html
-http://developer.android.com/shareables/training/BitmapFun.zip
-http://developer.android.com/reference/android/widget/GridView.html
-http://developer.android.com/reference/android/support/v4/view/ViewPager.html
-http://developer.android.com/reference/java/util/LinkedHashMap.html
-http://developer.android.com/reference/android/widget/ImageView.html
-http://developer.android.com/reference/android/content/ServiceConnection.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html
-http://developer.android.com/reference/android/os/Binder.html
-http://developer.android.com/reference/android/os/Messenger.html
-http://developer.android.com/reference/android/os/Handler.html
-http://developer.android.com/reference/android/os/Message.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html
-http://developer.android.com/resources/samples/ApiDemos/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html
-http://developer.android.com/reference/android/os/DeadObjectException.html
-http://developer.android.com/reference/org/apache/http/conn/util/InetAddressUtils.html
-http://developer.android.com/shareables/training/PhotoIntentActivity.zip
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/PoolEntryRequest.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/RefQueueHandler.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/AbstractConnPool.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/BasicPooledConnAdapter.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/BasicPoolEntry.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/BasicPoolEntryRef.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/ConnPoolByRoute.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/RefQueueWorker.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/RouteSpecificPool.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/ThreadSafeClientConnManager.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/WaitingThread.html
-http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/WaitingThreadAborter.html
-http://developer.android.com/reference/android/content/IntentFilter.html
-http://developer.android.com/reference/android/content/BroadcastReceiver.html
-http://developer.android.com/reference/android/content/pm/PackageManager.html
-http://developer.android.com/reference/android/content/ComponentName.html
-http://developer.android.com/reference/android/view/Menu.html
-http://developer.android.com/reference/android/app/AliasActivity.html
-http://developer.android.com/reference/android/app/Application.html
-http://developer.android.com/reference/android/app/ActionBar.html
+http://developer.android.com/reference/java/io/InputStream.html
 http://developer.android.com/reference/android/widget/AbsListView.MultiChoiceModeListener.html
 http://developer.android.com/reference/android/widget/AbsListView.OnScrollListener.html
 http://developer.android.com/reference/android/widget/AbsListView.RecyclerListener.html
@@ -861,7 +947,6 @@
 http://developer.android.com/reference/android/widget/CalendarView.OnDateChangeListener.html
 http://developer.android.com/reference/android/widget/Checkable.html
 http://developer.android.com/reference/android/widget/Chronometer.OnChronometerTickListener.html
-http://developer.android.com/reference/android/widget/CompoundButton.OnCheckedChangeListener.html
 http://developer.android.com/reference/android/widget/DatePicker.OnDateChangedListener.html
 http://developer.android.com/reference/android/widget/ExpandableListAdapter.html
 http://developer.android.com/reference/android/widget/ExpandableListView.OnChildClickListener.html
@@ -883,7 +968,6 @@
 http://developer.android.com/reference/android/widget/PopupWindow.OnDismissListener.html
 http://developer.android.com/reference/android/widget/RadioGroup.OnCheckedChangeListener.html
 http://developer.android.com/reference/android/widget/RatingBar.OnRatingBarChangeListener.html
-http://developer.android.com/reference/android/widget/RemoteViewsService.RemoteViewsFactory.html
 http://developer.android.com/reference/android/widget/SearchView.OnCloseListener.html
 http://developer.android.com/reference/android/widget/SearchView.OnQueryTextListener.html
 http://developer.android.com/reference/android/widget/SearchView.OnSuggestionListener.html
@@ -914,16 +998,15 @@
 http://developer.android.com/reference/android/widget/AdapterView.html
 http://developer.android.com/reference/android/widget/AdapterView.AdapterContextMenuInfo.html
 http://developer.android.com/reference/android/widget/AdapterViewAnimator.html
-http://developer.android.com/reference/android/widget/AdapterViewFlipper.html
 http://developer.android.com/reference/android/widget/AlphabetIndexer.html
-http://developer.android.com/reference/android/widget/AnalogClock.html
 http://developer.android.com/reference/android/widget/ArrayAdapter.html
 http://developer.android.com/reference/android/widget/AutoCompleteTextView.html
+http://developer.android.com/reference/android/widget/BaseAdapter.html
 http://developer.android.com/reference/android/widget/BaseExpandableListAdapter.html
 http://developer.android.com/reference/android/widget/CalendarView.html
 http://developer.android.com/reference/android/widget/CheckBox.html
 http://developer.android.com/reference/android/widget/CheckedTextView.html
-http://developer.android.com/reference/android/widget/CompoundButton.html
+http://developer.android.com/reference/android/widget/CursorAdapter.html
 http://developer.android.com/reference/android/widget/CursorTreeAdapter.html
 http://developer.android.com/reference/android/widget/DatePicker.html
 http://developer.android.com/reference/android/widget/DialerFilter.html
@@ -942,7 +1025,6 @@
 http://developer.android.com/reference/android/widget/GridLayout.Spec.html
 http://developer.android.com/reference/android/widget/HeaderViewListAdapter.html
 http://developer.android.com/reference/android/widget/HorizontalScrollView.html
-http://developer.android.com/reference/android/widget/ImageButton.html
 http://developer.android.com/reference/android/widget/ImageSwitcher.html
 http://developer.android.com/reference/android/widget/LinearLayout.LayoutParams.html
 http://developer.android.com/reference/android/widget/ListPopupWindow.html
@@ -954,26 +1036,25 @@
 http://developer.android.com/reference/android/widget/OverScroller.html
 http://developer.android.com/reference/android/widget/PopupMenu.html
 http://developer.android.com/reference/android/widget/PopupWindow.html
-http://developer.android.com/reference/android/widget/QuickContactBadge.html
 http://developer.android.com/reference/android/widget/RadioButton.html
 http://developer.android.com/reference/android/widget/RadioGroup.html
 http://developer.android.com/reference/android/widget/RadioGroup.LayoutParams.html
 http://developer.android.com/reference/android/widget/RatingBar.html
-http://developer.android.com/reference/android/widget/RemoteViewsService.html
+http://developer.android.com/reference/android/widget/RelativeLayout.LayoutParams.html
 http://developer.android.com/reference/android/widget/ResourceCursorAdapter.html
 http://developer.android.com/reference/android/widget/ResourceCursorTreeAdapter.html
 http://developer.android.com/reference/android/widget/Scroller.html
 http://developer.android.com/reference/android/widget/ScrollView.html
+http://developer.android.com/reference/android/widget/SearchView.html
 http://developer.android.com/reference/android/widget/SeekBar.html
 http://developer.android.com/reference/android/widget/ShareActionProvider.html
 http://developer.android.com/reference/android/widget/SimpleAdapter.html
+http://developer.android.com/reference/android/widget/SimpleCursorAdapter.html
 http://developer.android.com/reference/android/widget/SimpleCursorTreeAdapter.html
 http://developer.android.com/reference/android/widget/SimpleExpandableListAdapter.html
 http://developer.android.com/reference/android/widget/SlidingDrawer.html
 http://developer.android.com/reference/android/widget/Space.html
 http://developer.android.com/reference/android/widget/Spinner.html
-http://developer.android.com/reference/android/widget/StackView.html
-http://developer.android.com/reference/android/widget/Switch.html
 http://developer.android.com/reference/android/widget/TabHost.html
 http://developer.android.com/reference/android/widget/TabHost.TabSpec.html
 http://developer.android.com/reference/android/widget/TableLayout.html
@@ -984,12 +1065,8 @@
 http://developer.android.com/reference/android/widget/TextSwitcher.html
 http://developer.android.com/reference/android/widget/TextView.SavedState.html
 http://developer.android.com/reference/android/widget/TimePicker.html
-http://developer.android.com/reference/android/widget/Toast.html
-http://developer.android.com/reference/android/widget/ToggleButton.html
 http://developer.android.com/reference/android/widget/TwoLineListItem.html
 http://developer.android.com/reference/android/widget/VideoView.html
-http://developer.android.com/reference/android/widget/ViewAnimator.html
-http://developer.android.com/reference/android/widget/ViewFlipper.html
 http://developer.android.com/reference/android/widget/ViewSwitcher.html
 http://developer.android.com/reference/android/widget/ZoomButton.html
 http://developer.android.com/reference/android/widget/ZoomButtonsController.html
@@ -997,48 +1074,41 @@
 http://developer.android.com/reference/android/widget/ImageView.ScaleType.html
 http://developer.android.com/reference/android/widget/TextView.BufferType.html
 http://developer.android.com/reference/android/widget/RemoteViews.ActionException.html
-http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html
-http://developer.android.com/resources/tutorials/views/hello-relativelayout.html
+http://developer.android.com/reference/android/view/View.OnClickListener.html
+http://developer.android.com/reference/java/lang/Object.html
 http://developer.android.com/reference/java/lang/RuntimeException.html
-http://developer.android.com/reference/android/R.attr.html
 http://developer.android.com/reference/android/util/Property.html
 http://developer.android.com/reference/java/lang/Float.html
 http://developer.android.com/reference/android/util/AttributeSet.html
-http://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html
-http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html
+http://developer.android.com/reference/android/graphics/ColorFilter.html
+http://developer.android.com/reference/android/graphics/Matrix.html
+http://developer.android.com/reference/android/graphics/PorterDuff.Mode.html
+http://developer.android.com/reference/android/graphics/Bitmap.html
+http://developer.android.com/reference/android/graphics/drawable/LevelListDrawable.html
 http://developer.android.com/reference/java/util/ArrayList.html
-http://developer.android.com/reference/android/view/DragEvent.html
-http://developer.android.com/reference/android/graphics/Canvas.html
-http://developer.android.com/reference/android/os/Parcelable.html
-http://developer.android.com/reference/android/view/MotionEvent.html
-http://developer.android.com/reference/android/view/KeyEvent.html
-http://developer.android.com/reference/java/lang/CharSequence.html
-http://developer.android.com/reference/android/graphics/Rect.html
-http://developer.android.com/reference/android/graphics/Region.html
-http://developer.android.com/reference/android/view/animation/Transformation.html
-http://developer.android.com/reference/android/graphics/Point.html
-http://developer.android.com/reference/android/view/animation/LayoutAnimationController.html
-http://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html
-http://developer.android.com/reference/android/animation/LayoutTransition.html
-http://developer.android.com/reference/android/view/ViewParent.html
-http://developer.android.com/reference/android/graphics/drawable/Drawable.html
-http://developer.android.com/reference/android/view/ViewGroup.OnHierarchyChangeListener.html
-http://developer.android.com/reference/android/view/ActionMode.html
-http://developer.android.com/reference/android/view/ActionMode.Callback.html
 http://developer.android.com/reference/android/view/View.OnAttachStateChangeListener.html
 http://developer.android.com/reference/android/view/View.OnLayoutChangeListener.html
 http://developer.android.com/reference/android/view/ViewPropertyAnimator.html
+http://developer.android.com/reference/java/lang/CharSequence.html
 http://developer.android.com/reference/android/view/inputmethod/InputMethodManager.html
+http://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html
 http://developer.android.com/reference/android/view/ContextMenu.html
-http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeProvider.html
+http://developer.android.com/reference/android/content/res/Configuration.html
+http://developer.android.com/reference/android/view/DragEvent.html
+http://developer.android.com/reference/android/util/SparseArray.html
+http://developer.android.com/reference/android/graphics/Rect.html
 http://developer.android.com/reference/android/view/animation/Animation.html
+http://developer.android.com/reference/android/os/IBinder.html
 http://developer.android.com/reference/android/view/ContextMenu.ContextMenuInfo.html
-http://developer.android.com/reference/android/graphics/Bitmap.html
+http://developer.android.com/reference/android/graphics/Point.html
+http://developer.android.com/reference/android/os/Handler.html
 http://developer.android.com/reference/android/view/KeyEvent.DispatcherState.html
-http://developer.android.com/reference/android/graphics/Matrix.html
+http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html
 http://developer.android.com/reference/android/view/View.OnFocusChangeListener.html
+http://developer.android.com/reference/android/view/ViewParent.html
 http://developer.android.com/reference/android/view/TouchDelegate.html
 http://developer.android.com/reference/android/view/ViewTreeObserver.html
+http://developer.android.com/reference/android/view/ViewGroup.html
 http://developer.android.com/reference/android/content/res/TypedArray.html
 http://developer.android.com/reference/android/view/inputmethod/InputConnection.html
 http://developer.android.com/reference/android/view/inputmethod/EditorInfo.html
@@ -1046,7 +1116,6 @@
 http://developer.android.com/reference/java/lang/Runnable.html
 http://developer.android.com/reference/android/view/View.AccessibilityDelegate.html
 http://developer.android.com/reference/android/graphics/Paint.html
-http://developer.android.com/reference/android/view/View.OnClickListener.html
 http://developer.android.com/reference/android/view/View.OnCreateContextMenuListener.html
 http://developer.android.com/reference/android/view/View.OnDragListener.html
 http://developer.android.com/reference/android/view/View.OnGenericMotionListener.html
@@ -1055,53 +1124,16 @@
 http://developer.android.com/reference/android/view/View.OnLongClickListener.html
 http://developer.android.com/reference/android/view/View.OnSystemUiVisibilityChangeListener.html
 http://developer.android.com/reference/android/view/View.OnTouchListener.html
+http://developer.android.com/reference/android/view/ActionMode.html
+http://developer.android.com/reference/android/view/ActionMode.Callback.html
 http://developer.android.com/reference/android/content/ClipData.html
 http://developer.android.com/reference/android/view/View.DragShadowBuilder.html
+http://developer.android.com/reference/java/lang/Class.html
 http://developer.android.com/reference/android/graphics/drawable/Drawable.Callback.html
-http://developer.android.com/reference/android/view/ViewManager.html
 http://developer.android.com/reference/android/view/accessibility/AccessibilityEventSource.html
-http://developer.android.com/reference/android/view/Gravity.html
-http://developer.android.com/reference/android/view/View.MeasureSpec.html
-http://developer.android.com/guide/topics/ui/accessibility/service-declaration
-http://developer.android.com/reference/android/accessibilityservice/AccessibilityServiceInfo.html
-http://developer.android.com/reference/android/view/accessibility/AccessibilityRecord.html
-http://developer.android.com/reference/android/R.styleable.html
-http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityEventCompat.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/accessibility/ClockBackService.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/accessibility/TaskBackService.html
-http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityRecordCompat.html
-http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityNodeInfoCompat.html
-http://developer.android.com/reference/android/app/Instrumentation.html
-http://developer.android.com/reference/android/view/ActionProvider.html
-http://developer.android.com/reference/android/view/MenuItem.html
-http://developer.android.com/sdk/api_diff/15/changes.html
-http://developer.android.com/reference/android/provider/ContactsContract.StreamItems.html
-http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.html
-http://developer.android.com/reference/android/provider/ContactsContract.StreamItemPhotos.html
-http://developer.android.com/reference/android/provider/CalendarContract.Colors.html
-http://developer.android.com/reference/android/provider/CalendarContract.ColorsColumns.html
-http://developer.android.com/reference/android/provider/CalendarContract.CalendarColumns.html
-http://developer.android.com/reference/android/provider/CalendarContract.AttendeesColumns.html
-http://developer.android.com/reference/android/provider/CalendarContract.EventsColumns.html
-http://developer.android.com/reference/android/appwidget/AppWidgetHostView.html
-http://developer.android.com/reference/android/view/textservice/SpellCheckerSession.html
-http://developer.android.com/reference/android/view/textservice/SuggestionsInfo.html
-http://developer.android.com/reference/android/text/style/SuggestionSpan.html
-http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html
-http://developer.android.com/reference/android/graphics/SurfaceTexture.html
-http://developer.android.com/reference/android/view/Surface.html
-http://developer.android.com/reference/android/opengl/GLES11Ext.html
-http://developer.android.com/reference/android/provider/Settings.Secure.html
-http://developer.android.com/reference/android/speech/tts/TextToSpeech.html
-http://developer.android.com/reference/android/speech/tts/UtteranceProgressListener.html
-http://developer.android.com/reference/android/database/CrossProcessCursorWrapper.html
-http://developer.android.com/reference/android/database/CrossProcessCursor.html
-http://developer.android.com/reference/android/database/CursorWindow.html
-http://developer.android.com/reference/android/media/MediaMetadataRetriever.html
-http://developer.android.com/reference/android/media/CamcorderProfile.html
-http://developer.android.com/reference/android/hardware/Camera.Parameters.html
-http://developer.android.com/reference/android/hardware/Camera.html
-http://developer.android.com/reference/android/Manifest.permission.html
+http://developer.android.com/reference/android/provider/ContactsContract.Contacts.html
+http://developer.android.com/reference/java/awt/font/NumericShaper.html
+http://developer.android.com/reference/java/awt/font/TextAttribute.html
 http://developer.android.com/reference/android/animation/Animator.AnimatorListener.html
 http://developer.android.com/reference/android/animation/LayoutTransition.TransitionListener.html
 http://developer.android.com/reference/android/animation/TimeAnimator.TimeListener.html
@@ -1116,750 +1148,190 @@
 http://developer.android.com/reference/android/animation/FloatEvaluator.html
 http://developer.android.com/reference/android/animation/IntEvaluator.html
 http://developer.android.com/reference/android/animation/Keyframe.html
+http://developer.android.com/reference/android/animation/LayoutTransition.html
 http://developer.android.com/reference/android/animation/ObjectAnimator.html
 http://developer.android.com/reference/android/animation/PropertyValuesHolder.html
 http://developer.android.com/reference/android/animation/TimeAnimator.html
 http://developer.android.com/reference/android/animation/ValueAnimator.html
-http://developer.android.com/reference/android/view/ActionProvider.VisibilityListener.html
-http://developer.android.com/reference/android/view/Choreographer.FrameCallback.html
-http://developer.android.com/reference/android/view/CollapsibleActionView.html
-http://developer.android.com/reference/android/view/GestureDetector.OnDoubleTapListener.html
-http://developer.android.com/reference/android/view/GestureDetector.OnGestureListener.html
-http://developer.android.com/reference/android/view/InputQueue.Callback.html
-http://developer.android.com/reference/android/view/LayoutInflater.Factory.html
-http://developer.android.com/reference/android/view/LayoutInflater.Factory2.html
-http://developer.android.com/reference/android/view/LayoutInflater.Filter.html
-http://developer.android.com/reference/android/view/MenuItem.OnActionExpandListener.html
-http://developer.android.com/reference/android/view/MenuItem.OnMenuItemClickListener.html
-http://developer.android.com/reference/android/view/ScaleGestureDetector.OnScaleGestureListener.html
-http://developer.android.com/reference/android/view/SubMenu.html
-http://developer.android.com/reference/android/view/SurfaceHolder.html
-http://developer.android.com/reference/android/view/SurfaceHolder.Callback.html
-http://developer.android.com/reference/android/view/SurfaceHolder.Callback2.html
-http://developer.android.com/reference/android/view/TextureView.SurfaceTextureListener.html
-http://developer.android.com/reference/android/view/ViewStub.OnInflateListener.html
-http://developer.android.com/reference/android/view/ViewTreeObserver.OnDrawListener.html
-http://developer.android.com/reference/android/view/ViewTreeObserver.OnGlobalFocusChangeListener.html
-http://developer.android.com/reference/android/view/ViewTreeObserver.OnGlobalLayoutListener.html
-http://developer.android.com/reference/android/view/ViewTreeObserver.OnPreDrawListener.html
-http://developer.android.com/reference/android/view/ViewTreeObserver.OnScrollChangedListener.html
-http://developer.android.com/reference/android/view/ViewTreeObserver.OnTouchModeChangeListener.html
-http://developer.android.com/reference/android/view/Window.Callback.html
-http://developer.android.com/reference/android/view/WindowManager.html
-http://developer.android.com/reference/android/view/AbsSavedState.html
-http://developer.android.com/reference/android/view/Choreographer.html
-http://developer.android.com/reference/android/view/ContextThemeWrapper.html
-http://developer.android.com/reference/android/view/Display.html
-http://developer.android.com/reference/android/view/FocusFinder.html
-http://developer.android.com/reference/android/view/GestureDetector.html
-http://developer.android.com/reference/android/view/GestureDetector.SimpleOnGestureListener.html
-http://developer.android.com/reference/android/view/HapticFeedbackConstants.html
-http://developer.android.com/reference/android/view/InputDevice.html
-http://developer.android.com/reference/android/view/InputDevice.MotionRange.html
-http://developer.android.com/reference/android/view/InputEvent.html
-http://developer.android.com/reference/android/view/InputQueue.html
-http://developer.android.com/reference/android/view/KeyCharacterMap.html
-http://developer.android.com/reference/android/view/KeyCharacterMap.KeyData.html
-http://developer.android.com/reference/android/view/MenuInflater.html
-http://developer.android.com/reference/android/view/MotionEvent.PointerCoords.html
-http://developer.android.com/reference/android/view/MotionEvent.PointerProperties.html
-http://developer.android.com/reference/android/view/OrientationEventListener.html
-http://developer.android.com/reference/android/view/OrientationListener.html
-http://developer.android.com/reference/android/view/ScaleGestureDetector.html
-http://developer.android.com/reference/android/view/ScaleGestureDetector.SimpleOnScaleGestureListener.html
-http://developer.android.com/reference/android/view/SoundEffectConstants.html
-http://developer.android.com/reference/android/view/SurfaceView.html
-http://developer.android.com/reference/android/view/TextureView.html
-http://developer.android.com/reference/android/view/VelocityTracker.html
-http://developer.android.com/reference/android/view/View.BaseSavedState.html
-http://developer.android.com/reference/android/view/ViewConfiguration.html
-http://developer.android.com/reference/android/view/ViewDebug.html
-http://developer.android.com/reference/android/view/ViewGroup.MarginLayoutParams.html
-http://developer.android.com/reference/android/view/Window.html
-http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html
-http://developer.android.com/reference/android/view/ViewDebug.HierarchyTraceType.html
-http://developer.android.com/reference/android/view/ViewDebug.RecyclerTraceType.html
-http://developer.android.com/reference/android/view/InflateException.html
-http://developer.android.com/reference/android/view/KeyCharacterMap.UnavailableException.html
-http://developer.android.com/reference/android/view/Surface.OutOfResourcesException.html
-http://developer.android.com/reference/android/view/SurfaceHolder.BadSurfaceTypeException.html
-http://developer.android.com/reference/android/view/WindowManager.BadTokenException.html
-http://developer.android.com/reference/android/webkit/WebView.html
-http://developer.android.com/reference/android/webkit/WebSettings.html
-http://developer.android.com/reference/android/webkit/WebViewClient.html
-http://developer.android.com/resources/tutorials/views/hello-webview.html
-http://developer.android.com/reference/org/apache/http/auth/AuthScheme.html
-http://developer.android.com/reference/org/apache/http/auth/AuthSchemeFactory.html
-http://developer.android.com/reference/org/apache/http/auth/Credentials.html
-http://developer.android.com/reference/org/apache/http/auth/AUTH.html
-http://developer.android.com/reference/org/apache/http/auth/AuthSchemeRegistry.html
-http://developer.android.com/reference/org/apache/http/auth/AuthScope.html
-http://developer.android.com/reference/org/apache/http/auth/AuthState.html
-http://developer.android.com/reference/org/apache/http/auth/BasicUserPrincipal.html
-http://developer.android.com/reference/org/apache/http/auth/NTCredentials.html
-http://developer.android.com/reference/org/apache/http/auth/NTUserPrincipal.html
-http://developer.android.com/reference/org/apache/http/auth/UsernamePasswordCredentials.html
-http://developer.android.com/reference/org/apache/http/auth/AuthenticationException.html
-http://developer.android.com/reference/org/apache/http/auth/InvalidCredentialsException.html
-http://developer.android.com/reference/org/apache/http/auth/MalformedChallengeException.html
-http://developer.android.com/reference/android/media/AudioManager.html
-http://developer.android.com/reference/android/view/animation/Interpolator.html
-http://developer.android.com/reference/android/view/animation/AccelerateDecelerateInterpolator.html
-http://developer.android.com/reference/android/view/animation/AccelerateInterpolator.html
-http://developer.android.com/reference/android/view/animation/AlphaAnimation.html
-http://developer.android.com/reference/android/view/animation/Animation.Description.html
-http://developer.android.com/reference/android/view/animation/AnimationSet.html
-http://developer.android.com/reference/android/view/animation/AnimationUtils.html
-http://developer.android.com/reference/android/view/animation/AnticipateInterpolator.html
-http://developer.android.com/reference/android/view/animation/AnticipateOvershootInterpolator.html
-http://developer.android.com/reference/android/view/animation/BounceInterpolator.html
-http://developer.android.com/reference/android/view/animation/CycleInterpolator.html
-http://developer.android.com/reference/android/view/animation/DecelerateInterpolator.html
-http://developer.android.com/reference/android/view/animation/GridLayoutAnimationController.html
-http://developer.android.com/reference/android/view/animation/GridLayoutAnimationController.AnimationParameters.html
-http://developer.android.com/reference/android/view/animation/LayoutAnimationController.AnimationParameters.html
-http://developer.android.com/reference/android/view/animation/LinearInterpolator.html
-http://developer.android.com/reference/android/view/animation/OvershootInterpolator.html
-http://developer.android.com/reference/android/view/animation/RotateAnimation.html
-http://developer.android.com/reference/android/view/animation/ScaleAnimation.html
-http://developer.android.com/reference/android/view/animation/TranslateAnimation.html
-http://developer.android.com/reference/android/graphics/drawable/AnimationDrawable.html
-http://developer.android.com/reference/org/xmlpull/v1/sax2/Driver.html
-http://developer.android.com/reference/android/media/effect/EffectUpdateListener.html
-http://developer.android.com/reference/android/media/effect/Effect.html
-http://developer.android.com/reference/android/media/effect/EffectContext.html
-http://developer.android.com/reference/android/media/effect/EffectFactory.html
-http://developer.android.com/reference/android/opengl/GLES20.html
-http://developer.android.com/reference/android/provider/CalendarContract.Calendars.html
-http://developer.android.com/reference/android/provider/CalendarContract.Events.html
-http://developer.android.com/reference/android/provider/CalendarContract.Attendees.html
-http://developer.android.com/reference/android/provider/CalendarContract.Reminders.html
-http://developer.android.com/reference/android/provider/CalendarContract.html
-http://developer.android.com/reference/android/provider/CalendarContract.Instances.html
-http://developer.android.com/reference/android/content/AsyncQueryHandler.html
-http://developer.android.com/reference/android/provider/CalendarContract.SyncColumns.html
-http://developer.android.com/reference/android/accounts/AccountManager.html
-http://developer.android.com/reference/java/util/TimeZone.html
-http://developer.android.com/reference/android/provider/CalendarContract.RemindersColumns.html
-http://developer.android.com/reference/android/provider/CalendarContract.CalendarCache.html
-http://developer.android.com/resources/tutorials/views/hello-datepicker.html
-http://developer.android.com/reference/android/app/DatePickerDialog.html
-http://developer.android.com/reference/java/security/acl/Acl.html
-http://developer.android.com/reference/java/security/acl/AclEntry.html
-http://developer.android.com/reference/java/security/acl/Group.html
-http://developer.android.com/reference/java/security/acl/Owner.html
-http://developer.android.com/reference/java/security/acl/Permission.html
-http://developer.android.com/reference/java/security/acl/AclNotFoundException.html
-http://developer.android.com/reference/java/security/acl/LastOwnerException.html
-http://developer.android.com/reference/java/security/acl/NotOwnerException.html
-http://developer.android.com/shareables/training/OpenGLES.zip
-http://developer.android.com/reference/android/opengl/GLSurfaceView.html
-http://developer.android.com/reference/org/apache/http/client/methods/AbortableHttpRequest.html
-http://developer.android.com/reference/android/text/style/AbsoluteSizeSpan.html
-http://developer.android.com/reference/android/accounts/AbstractAccountAuthenticator.html
-http://developer.android.com/reference/org/apache/http/impl/client/AbstractAuthenticationHandler.html
-http://developer.android.com/reference/org/apache/http/impl/conn/AbstractClientConnAdapter.html
-http://developer.android.com/reference/java/util/AbstractCollection.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/AbstractCookieAttributeHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/AbstractCookieSpec.html
-http://developer.android.com/reference/org/apache/http/cookie/CookieAttributeHandler.html
-http://developer.android.com/reference/android/database/AbstractCursor.html
-http://developer.android.com/reference/android/database/AbstractCursor.SelfContentObserver.html
-http://developer.android.com/reference/java/util/concurrent/AbstractExecutorService.html
-http://developer.android.com/reference/java/util/concurrent/ExecutorService.html
-http://developer.android.com/reference/org/apache/http/impl/client/AbstractHttpClient.html
-http://developer.android.com/reference/org/apache/http/impl/AbstractHttpClientConnection.html
+http://developer.android.com/reference/android/security/KeyChainAliasCallback.html
+http://developer.android.com/reference/android/security/KeyChain.html
+http://developer.android.com/reference/android/security/KeyChainException.html
+http://developer.android.com/reference/android/net/TrafficStats.html
+http://developer.android.com/reference/org/apache/http/client/HttpClient.html
+http://developer.android.com/reference/java/net/URLConnection.html
+http://developer.android.com/reference/org/apache/http/ConnectionReuseStrategy.html
+http://developer.android.com/reference/org/apache/http/FormattedHeader.html
+http://developer.android.com/reference/org/apache/http/Header.html
+http://developer.android.com/reference/org/apache/http/HeaderElement.html
+http://developer.android.com/reference/org/apache/http/HttpClientConnection.html
+http://developer.android.com/reference/org/apache/http/HttpConnection.html
+http://developer.android.com/reference/org/apache/http/HttpConnectionMetrics.html
+http://developer.android.com/reference/org/apache/http/HttpEntity.html
+http://developer.android.com/reference/org/apache/http/HttpEntityEnclosingRequest.html
+http://developer.android.com/reference/org/apache/http/HttpInetConnection.html
+http://developer.android.com/reference/org/apache/http/HttpMessage.html
+http://developer.android.com/reference/org/apache/http/HttpRequestFactory.html
+http://developer.android.com/reference/org/apache/http/HttpRequestInterceptor.html
+http://developer.android.com/reference/org/apache/http/HttpResponse.html
+http://developer.android.com/reference/org/apache/http/HttpResponseFactory.html
+http://developer.android.com/reference/org/apache/http/HttpResponseInterceptor.html
+http://developer.android.com/reference/org/apache/http/HttpServerConnection.html
+http://developer.android.com/reference/org/apache/http/HttpStatus.html
+http://developer.android.com/reference/org/apache/http/NameValuePair.html
+http://developer.android.com/reference/org/apache/http/ReasonPhraseCatalog.html
+http://developer.android.com/reference/org/apache/http/RequestLine.html
+http://developer.android.com/reference/org/apache/http/StatusLine.html
+http://developer.android.com/reference/org/apache/http/HttpHost.html
+http://developer.android.com/reference/org/apache/http/HttpVersion.html
+http://developer.android.com/reference/org/apache/http/ProtocolVersion.html
+http://developer.android.com/reference/org/apache/http/ConnectionClosedException.html
+http://developer.android.com/reference/org/apache/http/HttpException.html
+http://developer.android.com/reference/org/apache/http/MalformedChunkCodingException.html
+http://developer.android.com/reference/org/apache/http/MethodNotSupportedException.html
+http://developer.android.com/reference/org/apache/http/NoHttpResponseException.html
+http://developer.android.com/reference/org/apache/http/ParseException.html
+http://developer.android.com/reference/org/apache/http/ProtocolException.html
+http://developer.android.com/reference/org/apache/http/UnsupportedHttpVersionException.html
+http://developer.android.com/reference/java/util/Iterator.html
+http://developer.android.com/shareables/training/DeviceManagement.zip
+http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html
+http://developer.android.com/reference/java/lang/SecurityException.html
+http://developer.android.com/reference/android/net/sip/SipRegistrationListener.html
+http://developer.android.com/reference/android/net/sip/SipAudioCall.html
+http://developer.android.com/reference/android/net/sip/SipAudioCall.Listener.html
+http://developer.android.com/reference/android/net/sip/SipErrorCode.html
+http://developer.android.com/reference/android/net/sip/SipManager.html
+http://developer.android.com/reference/android/net/sip/SipProfile.html
+http://developer.android.com/reference/android/net/sip/SipProfile.Builder.html
+http://developer.android.com/reference/android/net/sip/SipSession.html
+http://developer.android.com/reference/android/net/sip/SipSession.Listener.html
+http://developer.android.com/reference/android/net/sip/SipSession.State.html
+http://developer.android.com/reference/android/net/sip/SipException.html
+http://developer.android.com/resources/samples/SearchableDictionary/index.html
+http://developer.android.com/reference/org/apache/http/io/HttpMessageParser.html
+http://developer.android.com/reference/org/apache/http/io/HttpMessageWriter.html
+http://developer.android.com/reference/org/apache/http/io/HttpTransportMetrics.html
 http://developer.android.com/reference/org/apache/http/io/SessionInputBuffer.html
 http://developer.android.com/reference/org/apache/http/io/SessionOutputBuffer.html
-http://developer.android.com/reference/org/apache/http/entity/AbstractHttpEntity.html
-http://developer.android.com/reference/org/apache/http/params/AbstractHttpParams.html
-http://developer.android.com/reference/org/apache/http/impl/AbstractHttpServerConnection.html
-http://developer.android.com/reference/android/inputmethodservice/AbstractInputMethodService.html
-http://developer.android.com/reference/android/inputmethodservice/AbstractInputMethodService.AbstractInputMethodImpl.html
-http://developer.android.com/reference/android/view/inputmethod/InputMethod.html
-http://developer.android.com/reference/android/inputmethodservice/AbstractInputMethodService.AbstractInputMethodSessionImpl.html
-http://developer.android.com/reference/android/view/inputmethod/InputMethodSession.html
-http://developer.android.com/reference/java/nio/channels/spi/AbstractInterruptibleChannel.html
-http://developer.android.com/reference/java/util/AbstractList.html
-http://developer.android.com/reference/java/util/AbstractMap.html
-http://developer.android.com/reference/java/util/AbstractMap.SimpleEntry.html
-http://developer.android.com/reference/java/util/AbstractMap.SimpleImmutableEntry.html
-http://developer.android.com/reference/org/apache/http/impl/io/AbstractMessageParser.html
-http://developer.android.com/reference/org/apache/http/impl/io/AbstractMessageWriter.html
-http://developer.android.com/reference/java/lang/AbstractMethodError.html
-http://developer.android.com/reference/java/util/concurrent/locks/AbstractOwnableSynchronizer.html
-http://developer.android.com/reference/org/apache/http/impl/conn/AbstractPooledConnAdapter.html
-http://developer.android.com/reference/org/apache/http/impl/conn/AbstractPoolEntry.html
-http://developer.android.com/reference/java/util/prefs/AbstractPreferences.html
-http://developer.android.com/reference/java/util/AbstractQueue.html
-http://developer.android.com/reference/java/util/Queue.html
-http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.html
-http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedSynchronizer.html
-http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.ConditionObject.html
-http://developer.android.com/reference/java/util/concurrent/locks/Lock.html
-http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedSynchronizer.ConditionObject.html
-http://developer.android.com/reference/java/nio/channels/spi/AbstractSelectableChannel.html
-http://developer.android.com/reference/java/nio/channels/spi/AbstractSelectionKey.html
-http://developer.android.com/reference/java/nio/channels/spi/AbstractSelector.html
-http://developer.android.com/reference/java/util/AbstractSequentialList.html
-http://developer.android.com/reference/org/apache/http/impl/io/AbstractSessionInputBuffer.html
-http://developer.android.com/reference/org/apache/http/impl/io/AbstractSessionOutputBuffer.html
-http://developer.android.com/reference/java/io/OutputStream.html
-http://developer.android.com/reference/java/util/AbstractSet.html
-http://developer.android.com/reference/org/apache/http/conn/ssl/AbstractVerifier.html
-http://developer.android.com/reference/org/apache/http/conn/ssl/X509HostnameVerifier.html
-http://developer.android.com/reference/android/database/AbstractWindowedCursor.html
-http://developer.android.com/reference/java/security/AccessControlContext.html
-http://developer.android.com/reference/java/security/AccessControlException.html
-http://developer.android.com/reference/java/security/AccessController.html
-http://developer.android.com/reference/android/support/v4/view/AccessibilityDelegateCompat.html
-http://developer.android.com/reference/android/view/accessibility/AccessibilityManager.html
-http://developer.android.com/reference/android/view/accessibility/AccessibilityManager.AccessibilityStateChangeListener.html
-http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityManagerCompat.html
-http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat.html
-http://developer.android.com/reference/android/support/v4/view/accessibility/AccessibilityNodeProviderCompat.html
-http://developer.android.com/reference/java/lang/reflect/AccessibleObject.html
-http://developer.android.com/reference/android/accounts/Account.html
-http://developer.android.com/reference/android/accounts/AccountAuthenticatorActivity.html
-http://developer.android.com/reference/android/accounts/AccountAuthenticatorResponse.html
-http://developer.android.com/reference/android/accounts/AccountManagerCallback.html
-http://developer.android.com/reference/android/accounts/AccountManagerFuture.html
-http://developer.android.com/reference/android/accounts/AccountsException.html
-http://developer.android.com/reference/android/media/audiofx/AcousticEchoCanceler.html
-http://developer.android.com/reference/android/app/ActionBar.LayoutParams.html
-http://developer.android.com/reference/android/app/ActionBar.OnMenuVisibilityListener.html
-http://developer.android.com/reference/android/app/ActionBar.OnNavigationListener.html
-http://developer.android.com/reference/android/app/ActionBar.Tab.html
-http://developer.android.com/reference/android/app/ActionBar.TabListener.html
-http://developer.android.com/reference/android/support/v4/app/ActivityCompat.html
-http://developer.android.com/reference/android/app/ActivityGroup.html
-http://developer.android.com/reference/android/content/pm/ActivityInfo.html
-http://developer.android.com/reference/android/support/v4/content/pm/ActivityInfoCompat.html
-http://developer.android.com/reference/android/test/ActivityInstrumentationTestCase.html
-http://developer.android.com/reference/android/test/ActivityInstrumentationTestCase2.html
-http://developer.android.com/reference/android/app/ActivityManager.html
-http://developer.android.com/reference/android/app/ActivityManager.MemoryInfo.html
-http://developer.android.com/reference/android/app/ActivityManager.ProcessErrorStateInfo.html
-http://developer.android.com/reference/android/app/ActivityManager.RecentTaskInfo.html
-http://developer.android.com/reference/android/app/ActivityManager.RunningAppProcessInfo.html
-http://developer.android.com/reference/android/app/ActivityManager.RunningServiceInfo.html
-http://developer.android.com/reference/android/app/ActivityManager.RunningTaskInfo.html
-http://developer.android.com/reference/android/content/ActivityNotFoundException.html
-http://developer.android.com/reference/android/app/ActivityOptions.html
-http://developer.android.com/reference/android/test/ActivityTestCase.html
-http://developer.android.com/reference/android/test/ActivityUnitTestCase.html
-http://developer.android.com/reference/android/location/Address.html
-http://developer.android.com/reference/java/util/zip/Adler32.html
+http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html
+http://developer.android.com/reference/org/xmlpull/v1/XmlSerializer.html
+http://developer.android.com/reference/org/xmlpull/v1/XmlPullParserFactory.html
+http://developer.android.com/reference/org/xmlpull/v1/XmlPullParserException.html
+http://developer.android.com/reference/android/net/nsd/NsdManager.DiscoveryListener.html
+http://developer.android.com/reference/android/net/nsd/NsdManager.RegistrationListener.html
+http://developer.android.com/reference/android/net/nsd/NsdManager.ResolveListener.html
+http://developer.android.com/reference/android/net/nsd/NsdManager.html
+http://developer.android.com/reference/android/net/nsd/NsdServiceInfo.html
+http://developer.android.com/reference/android/text/Editable.html
+http://developer.android.com/reference/android/util/SparseBooleanArray.html
+http://developer.android.com/reference/android/graphics/Region.html
+http://developer.android.com/reference/android/view/animation/Transformation.html
+http://developer.android.com/reference/android/view/animation/LayoutAnimationController.html
+http://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html
+http://developer.android.com/reference/android/view/ViewGroup.OnHierarchyChangeListener.html
+http://developer.android.com/reference/android/text/TextWatcher.html
+http://developer.android.com/reference/android/view/ViewManager.html
+http://developer.android.com/reference/android/view/ViewTreeObserver.OnGlobalLayoutListener.html
+http://developer.android.com/reference/android/view/ViewTreeObserver.OnTouchModeChangeListener.html
+http://developer.android.com/reference/android/view/View.MeasureSpec.html
+http://developer.android.com/reference/java/io/Serializable.html
+http://developer.android.com/reference/java/lang/NullPointerException.html
+http://developer.android.com/reference/java/security/spec/PKCS8EncodedKeySpec.html
+http://developer.android.com/reference/javax/crypto/spec/SecretKeySpec.html
+http://developer.android.com/reference/java/security/spec/X509EncodedKeySpec.html
+http://developer.android.com/reference/java/io/ObjectStreamException.html
+http://developer.android.com/reference/android/provider/BaseColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.AttendeesColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.CalendarAlertsColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.CalendarCacheColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.CalendarColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.CalendarSyncColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.ColorsColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.EventDaysColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.EventsColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.ExtendedPropertiesColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.RemindersColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.SyncColumns.html
+http://developer.android.com/reference/android/provider/Contacts.ContactMethodsColumns.html
+http://developer.android.com/reference/android/provider/Contacts.ExtensionsColumns.html
+http://developer.android.com/reference/android/provider/Contacts.GroupsColumns.html
+http://developer.android.com/reference/android/provider/Contacts.OrganizationColumns.html
+http://developer.android.com/reference/android/provider/Contacts.PeopleColumns.html
+http://developer.android.com/reference/android/provider/Contacts.PhonesColumns.html
+http://developer.android.com/reference/android/provider/Contacts.PhotosColumns.html
+http://developer.android.com/reference/android/provider/Contacts.PresenceColumns.html
+http://developer.android.com/reference/android/provider/Contacts.SettingsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.BaseSyncColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.BaseTypes.html
+http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.CommonColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.ContactNameColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.ContactOptionsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.ContactsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.ContactStatusColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.DataColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.DataColumnsWithJoins.html
+http://developer.android.com/reference/android/provider/ContactsContract.DisplayNameSources.html
+http://developer.android.com/reference/android/provider/ContactsContract.FullNameStyle.html
+http://developer.android.com/reference/android/provider/ContactsContract.GroupsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.PhoneLookupColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.PhoneticNameStyle.html
+http://developer.android.com/reference/android/provider/ContactsContract.PresenceColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.RawContactsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.SettingsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.StatusColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.StreamItemPhotosColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.StreamItemsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.SyncColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.AlbumColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.ArtistColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.AudioColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.GenresColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.PlaylistsColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Files.FileColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Images.ImageColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.MediaColumns.html
+http://developer.android.com/reference/android/provider/MediaStore.Video.VideoColumns.html
+http://developer.android.com/reference/android/provider/OpenableColumns.html
+http://developer.android.com/reference/android/provider/SyncStateContract.Columns.html
 http://developer.android.com/reference/android/provider/AlarmClock.html
-http://developer.android.com/reference/android/app/AlarmManager.html
-http://developer.android.com/reference/android/app/AlertDialog.html
-http://developer.android.com/reference/android/app/AlertDialog.Builder.html
-http://developer.android.com/reference/java/security/AlgorithmParameterGenerator.html
-http://developer.android.com/reference/java/security/AlgorithmParameterGeneratorSpi.html
-http://developer.android.com/reference/java/security/AlgorithmParameters.html
-http://developer.android.com/reference/java/security/spec/AlgorithmParameterSpec.html
-http://developer.android.com/reference/java/security/AlgorithmParametersSpi.html
-http://developer.android.com/reference/android/text/style/AlignmentSpan.html
-http://developer.android.com/reference/android/text/style/AlignmentSpan.Standard.html
-http://developer.android.com/reference/org/apache/http/client/params/AllClientPNames.html
-http://developer.android.com/reference/android/renderscript/Allocation.MipmapControl.html
-http://developer.android.com/reference/android/renderscript/AllocationAdapter.html
-http://developer.android.com/reference/org/apache/http/conn/ssl/AllowAllHostnameVerifier.html
-http://developer.android.com/reference/java/security/AllPermission.html
-http://developer.android.com/reference/java/nio/channels/AlreadyConnectedException.html
-http://developer.android.com/reference/android/text/AlteredCharSequence.html
-http://developer.android.com/reference/android/text/AndroidCharacter.html
-http://developer.android.com/reference/android/util/AndroidException.html
-http://developer.android.com/reference/android/net/http/AndroidHttpClient.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultHttpClient.html
-http://developer.android.com/reference/org/apache/http/HttpRequestInterceptor.html
-http://developer.android.com/reference/android/util/AndroidRuntimeException.html
-http://developer.android.com/reference/android/test/AndroidTestCase.html
-http://developer.android.com/reference/android/test/AndroidTestRunner.html
-http://developer.android.com/reference/android/graphics/drawable/Animatable.html
-http://developer.android.com/reference/java/lang/reflect/AnnotatedElement.html
-http://developer.android.com/reference/android/text/Annotation.html
-http://developer.android.com/reference/java/lang/annotation/Annotation.html
-http://developer.android.com/reference/java/text/Annotation.html
-http://developer.android.com/reference/java/lang/annotation/AnnotationFormatError.html
-http://developer.android.com/reference/java/lang/annotation/AnnotationTypeMismatchException.html
-http://developer.android.com/reference/java/lang/Appendable.html
-http://developer.android.com/reference/android/app/Application.ActivityLifecycleCallbacks.html
-http://developer.android.com/reference/android/app/ApplicationErrorReport.html
-http://developer.android.com/reference/android/app/ApplicationErrorReport.AnrInfo.html
-http://developer.android.com/reference/android/app/ApplicationErrorReport.BatteryInfo.html
-http://developer.android.com/reference/android/app/ApplicationErrorReport.CrashInfo.html
-http://developer.android.com/reference/android/app/ApplicationErrorReport.RunningServiceInfo.html
-http://developer.android.com/reference/android/content/pm/ApplicationInfo.html
-http://developer.android.com/reference/android/content/pm/ApplicationInfo.DisplayNameComparator.html
-http://developer.android.com/reference/android/test/ApplicationTestCase.html
-http://developer.android.com/reference/android/appwidget/AppWidgetHost.html
-http://developer.android.com/reference/android/appwidget/AppWidgetManager.html
-http://developer.android.com/reference/android/appwidget/AppWidgetProvider.html
-http://developer.android.com/reference/android/appwidget/AppWidgetProviderInfo.html
-http://developer.android.com/reference/android/graphics/drawable/shapes/ArcShape.html
-http://developer.android.com/reference/java/lang/ArithmeticException.html
-http://developer.android.com/reference/java/lang/reflect/Array.html
-http://developer.android.com/reference/java/sql/Array.html
-http://developer.android.com/reference/java/util/concurrent/ArrayBlockingQueue.html
-http://developer.android.com/reference/java/util/concurrent/BlockingQueue.html
-http://developer.android.com/reference/java/util/ArrayDeque.html
-http://developer.android.com/reference/java/util/Deque.html
-http://developer.android.com/reference/java/lang/ArrayIndexOutOfBoundsException.html
-http://developer.android.com/reference/java/util/List.html
-http://developer.android.com/reference/java/util/Arrays.html
-http://developer.android.com/reference/java/lang/ArrayStoreException.html
-http://developer.android.com/reference/android/text/method/ArrowKeyMovementMethod.html
-http://developer.android.com/reference/junit/framework/Assert.html
-http://developer.android.com/reference/java/lang/AssertionError.html
-http://developer.android.com/reference/android/test/AssertionFailedError.html
-http://developer.android.com/reference/junit/framework/AssertionFailedError.html
-http://developer.android.com/reference/android/content/res/AssetFileDescriptor.html
-http://developer.android.com/reference/android/content/res/AssetFileDescriptor.AutoCloseInputStream.html
-http://developer.android.com/reference/android/os/ParcelFileDescriptor.html
-http://developer.android.com/reference/android/content/res/AssetFileDescriptor.AutoCloseOutputStream.html
-http://developer.android.com/reference/android/content/res/AssetManager.AssetInputStream.html
-http://developer.android.com/reference/java/nio/channels/AsynchronousCloseException.html
-http://developer.android.com/reference/android/media/AsyncPlayer.html
-http://developer.android.com/reference/android/content/AsyncQueryHandler.WorkerArgs.html
-http://developer.android.com/reference/android/content/AsyncQueryHandler.WorkerHandler.html
-http://developer.android.com/reference/android/os/AsyncTask.Status.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicBoolean.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicInteger.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicIntegerArray.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicLong.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicLongArray.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicLongFieldUpdater.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicMarkableReference.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicReference.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicReferenceArray.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.html
-http://developer.android.com/reference/java/util/concurrent/atomic/AtomicStampedReference.html
-http://developer.android.com/reference/org/w3c/dom/Attr.html
-http://developer.android.com/reference/java/text/AttributedCharacterIterator.html
-http://developer.android.com/reference/java/text/CharacterIterator.html
-http://developer.android.com/reference/java/text/AttributedCharacterIterator.Attribute.html
-http://developer.android.com/reference/java/text/AttributedString.html
-http://developer.android.com/reference/org/xml/sax/AttributeList.html
-http://developer.android.com/reference/org/xml/sax/Attributes.html
-http://developer.android.com/reference/org/xml/sax/helpers/AttributeListImpl.html
-http://developer.android.com/reference/org/xml/sax/helpers/AttributesImpl.html
-http://developer.android.com/reference/java/util/jar/Attributes.html
-http://developer.android.com/reference/java/util/jar/Attributes.Name.html
-http://developer.android.com/reference/org/xml/sax/ext/Attributes2.html
-http://developer.android.com/reference/org/xml/sax/ext/Attributes2Impl.html
-http://developer.android.com/reference/android/net/rtp/AudioCodec.html
-http://developer.android.com/reference/android/net/rtp/AudioStream.html
-http://developer.android.com/reference/android/media/audiofx/AudioEffect.html
-http://developer.android.com/reference/android/media/audiofx/AudioEffect.Descriptor.html
-http://developer.android.com/reference/android/media/audiofx/AudioEffect.OnControlStatusChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/AudioEffect.OnEnableStatusChangeListener.html
-http://developer.android.com/reference/android/media/AudioFormat.html
-http://developer.android.com/reference/android/net/rtp/AudioGroup.html
-http://developer.android.com/reference/android/media/AudioManager.OnAudioFocusChangeListener.html
-http://developer.android.com/reference/android/media/AudioRecord.html
-http://developer.android.com/reference/android/media/AudioRecord.OnRecordPositionUpdateListener.html
-http://developer.android.com/reference/android/net/rtp/RtpStream.html
-http://developer.android.com/reference/android/media/AudioTrack.html
-http://developer.android.com/reference/android/media/AudioTrack.OnPlaybackPositionUpdateListener.html
-http://developer.android.com/reference/org/apache/http/client/AuthenticationHandler.html
-http://developer.android.com/reference/java/net/Authenticator.html
-http://developer.android.com/reference/java/net/Authenticator.RequestorType.html
-http://developer.android.com/reference/android/accounts/AuthenticatorDescription.html
-http://developer.android.com/reference/android/accounts/AuthenticatorException.html
-http://developer.android.com/reference/org/apache/http/auth/params/AuthParamBean.html
-http://developer.android.com/reference/org/apache/http/auth/params/AuthParams.html
-http://developer.android.com/reference/org/apache/http/params/HttpParams.html
-http://developer.android.com/reference/javax/security/auth/AuthPermission.html
-http://developer.android.com/reference/org/apache/http/auth/params/AuthPNames.html
-http://developer.android.com/reference/org/apache/http/client/params/AuthPolicy.html
-http://developer.android.com/reference/java/security/AuthProvider.html
-http://developer.android.com/reference/org/apache/http/impl/auth/AuthSchemeBase.html
-http://developer.android.com/reference/android/media/audiofx/AutomaticGainControl.html
-http://developer.android.com/reference/android/text/AutoText.html
-http://developer.android.com/reference/android/graphics/AvoidXfermode.html
-http://developer.android.com/reference/android/graphics/AvoidXfermode.Mode.html
-http://developer.android.com/reference/android/text/style/BackgroundColorSpan.html
-http://developer.android.com/reference/java/util/prefs/BackingStoreException.html
-http://developer.android.com/reference/javax/crypto/BadPaddingException.html
-http://developer.android.com/reference/android/os/BadParcelableException.html
-http://developer.android.com/reference/android/util/Base64.html
-http://developer.android.com/reference/android/util/Base64DataException.html
-http://developer.android.com/reference/android/util/Base64InputStream.html
-http://developer.android.com/reference/android/util/Base64OutputStream.html
-http://developer.android.com/reference/dalvik/system/BaseDexClassLoader.html
-http://developer.android.com/reference/java/lang/ClassLoader.html
-http://developer.android.com/reference/android/view/inputmethod/BaseInputConnection.html
-http://developer.android.com/reference/android/text/method/BaseKeyListener.html
-http://developer.android.com/reference/android/text/method/BaseMovementMethod.html
-http://developer.android.com/reference/android/renderscript/BaseObj.html
-http://developer.android.com/reference/junit/runner/BaseTestRunner.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicClientCookie.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicClientCookie2.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicCommentHandler.html
-http://developer.android.com/reference/org/apache/http/impl/client/BasicCookieStore.html
-http://developer.android.com/reference/org/apache/http/client/CookieStore.html
-http://developer.android.com/reference/org/apache/http/impl/client/BasicCredentialsProvider.html
-http://developer.android.com/reference/org/apache/http/client/CredentialsProvider.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicDomainHandler.html
-http://developer.android.com/reference/android/support/v13/dreams/BasicDream.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicExpiresHandler.html
-http://developer.android.com/reference/org/apache/http/message/BasicHeader.html
-http://developer.android.com/reference/org/apache/http/message/BasicHeaderElement.html
-http://developer.android.com/reference/org/apache/http/message/BasicHeaderElementIterator.html
-http://developer.android.com/reference/org/apache/http/HeaderElementIterator.html
-http://developer.android.com/reference/org/apache/http/message/BasicHeaderIterator.html
-http://developer.android.com/reference/org/apache/http/HeaderIterator.html
-http://developer.android.com/reference/org/apache/http/message/BasicHeaderValueFormatter.html
-http://developer.android.com/reference/org/apache/http/message/BasicHeaderValueParser.html
-http://developer.android.com/reference/org/apache/http/protocol/BasicHttpContext.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpContext.html
-http://developer.android.com/reference/org/apache/http/entity/BasicHttpEntity.html
-http://developer.android.com/reference/org/apache/http/message/BasicHttpEntityEnclosingRequest.html
-http://developer.android.com/reference/org/apache/http/params/BasicHttpParams.html
-http://developer.android.com/reference/org/apache/http/protocol/BasicHttpProcessor.html
-http://developer.android.com/reference/org/apache/http/message/BasicHttpRequest.html
-http://developer.android.com/reference/org/apache/http/message/BasicHttpResponse.html
-http://developer.android.com/reference/org/apache/http/message/BasicLineFormatter.html
-http://developer.android.com/reference/org/apache/http/message/BasicLineParser.html
-http://developer.android.com/reference/org/apache/http/message/BasicListHeaderIterator.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicMaxAgeHandler.html
-http://developer.android.com/reference/org/apache/http/message/BasicNameValuePair.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicPathHandler.html
-http://developer.android.com/reference/java/security/BasicPermission.html
-http://developer.android.com/reference/org/apache/http/message/BasicRequestLine.html
-http://developer.android.com/reference/org/apache/http/HttpRequest.html
-http://developer.android.com/reference/org/apache/http/impl/client/BasicResponseHandler.html
-http://developer.android.com/reference/org/apache/http/client/ResponseHandler.html
-http://developer.android.com/reference/org/apache/http/conn/routing/BasicRouteDirector.html
-http://developer.android.com/reference/org/apache/http/conn/routing/HttpRouteDirector.html
-http://developer.android.com/reference/org/apache/http/impl/auth/BasicScheme.html
-http://developer.android.com/reference/org/apache/http/impl/auth/BasicSchemeFactory.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BasicSecureHandler.html
-http://developer.android.com/reference/org/apache/http/message/BasicStatusLine.html
-http://developer.android.com/reference/org/apache/http/message/BasicTokenIterator.html
-http://developer.android.com/reference/org/apache/http/TokenIterator.html
-http://developer.android.com/reference/android/media/audiofx/BassBoost.html
-http://developer.android.com/reference/android/media/audiofx/BassBoost.OnParameterChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/BassBoost.Settings.html
-http://developer.android.com/reference/java/sql/BatchUpdateException.html
-http://developer.android.com/reference/android/os/BatteryManager.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BestMatchSpec.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BestMatchSpecFactory.html
-http://developer.android.com/reference/java/text/Bidi.html
-http://developer.android.com/reference/java/math/BigDecimal.html
-http://developer.android.com/reference/java/math/BigInteger.html
-http://developer.android.com/reference/java/net/BindException.html
-http://developer.android.com/reference/android/graphics/Bitmap.CompressFormat.html
-http://developer.android.com/reference/android/graphics/Bitmap.Config.html
-http://developer.android.com/reference/android/graphics/drawable/BitmapDrawable.html
-http://developer.android.com/reference/android/graphics/BitmapFactory.html
-http://developer.android.com/reference/android/graphics/BitmapFactory.Options.html
-http://developer.android.com/reference/android/graphics/BitmapRegionDecoder.html
-http://developer.android.com/reference/android/graphics/BitmapShader.html
-http://developer.android.com/reference/java/util/BitSet.html
-http://developer.android.com/reference/java/sql/Blob.html
-http://developer.android.com/reference/java/util/concurrent/BlockingDeque.html
-http://developer.android.com/reference/android/bluetooth/BluetoothA2dp.html
-http://developer.android.com/reference/android/bluetooth/BluetoothAdapter.html
-http://developer.android.com/reference/android/bluetooth/BluetoothAssignedNumbers.html
-http://developer.android.com/reference/android/bluetooth/BluetoothClass.html
-http://developer.android.com/reference/android/bluetooth/BluetoothClass.Device.html
-http://developer.android.com/reference/android/bluetooth/BluetoothClass.Device.Major.html
-http://developer.android.com/reference/android/bluetooth/BluetoothClass.Service.html
-http://developer.android.com/reference/android/bluetooth/BluetoothHeadset.html
-http://developer.android.com/reference/android/bluetooth/BluetoothHealth.html
-http://developer.android.com/reference/android/bluetooth/BluetoothHealthAppConfiguration.html
-http://developer.android.com/reference/android/bluetooth/BluetoothHealthCallback.html
-http://developer.android.com/reference/android/bluetooth/BluetoothProfile.html
-http://developer.android.com/reference/android/bluetooth/BluetoothProfile.ServiceListener.html
-http://developer.android.com/reference/android/bluetooth/BluetoothServerSocket.html
-http://developer.android.com/reference/android/bluetooth/BluetoothSocket.html
-http://developer.android.com/reference/android/graphics/BlurMaskFilter.html
-http://developer.android.com/reference/android/graphics/BlurMaskFilter.Blur.html
-http://developer.android.com/reference/java/lang/Boolean.html
-http://developer.android.com/reference/android/text/BoringLayout.html
-http://developer.android.com/reference/android/text/BoringLayout.Metrics.html
-http://developer.android.com/reference/java/text/BreakIterator.html
-http://developer.android.com/reference/android/content/BroadcastReceiver.PendingResult.html
-http://developer.android.com/reference/java/util/concurrent/BrokenBarrierException.html
 http://developer.android.com/reference/android/provider/Browser.html
 http://developer.android.com/reference/android/provider/Browser.BookmarkColumns.html
 http://developer.android.com/reference/android/provider/Browser.SearchColumns.html
-http://developer.android.com/reference/org/apache/http/conn/ssl/BrowserCompatHostnameVerifier.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BrowserCompatSpec.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/BrowserCompatSpecFactory.html
-http://developer.android.com/reference/java/nio/Buffer.html
-http://developer.android.com/reference/org/apache/http/message/BufferedHeader.html
-http://developer.android.com/reference/org/apache/http/entity/BufferedHttpEntity.html
-http://developer.android.com/reference/java/io/BufferedInputStream.html
-http://developer.android.com/reference/java/io/BufferedOutputStream.html
-http://developer.android.com/reference/java/io/BufferedReader.html
-http://developer.android.com/reference/java/io/Reader.html
-http://developer.android.com/reference/java/io/BufferedWriter.html
-http://developer.android.com/reference/java/io/Writer.html
-http://developer.android.com/reference/java/nio/BufferOverflowException.html
-http://developer.android.com/reference/java/nio/BufferUnderflowException.html
-http://developer.android.com/reference/android/os/Build.html
-http://developer.android.com/reference/android/os/Build.VERSION.html
-http://developer.android.com/reference/android/os/Build.VERSION_CODES.html
-http://developer.android.com/reference/android/text/style/BulletSpan.html
-http://developer.android.com/reference/java/lang/Byte.html
-http://developer.android.com/reference/android/renderscript/Byte2.html
-http://developer.android.com/reference/android/renderscript/Byte3.html
-http://developer.android.com/reference/android/renderscript/Byte4.html
-http://developer.android.com/reference/org/apache/http/util/ByteArrayBuffer.html
-http://developer.android.com/reference/org/apache/http/entity/ByteArrayEntity.html
-http://developer.android.com/reference/java/io/ByteArrayInputStream.html
-http://developer.android.com/reference/java/io/ByteArrayOutputStream.html
-http://developer.android.com/reference/java/nio/ByteBuffer.html
-http://developer.android.com/reference/java/nio/channels/ByteChannel.html
-http://developer.android.com/reference/java/nio/ByteOrder.html
-http://developer.android.com/reference/android/webkit/CacheManager.html
-http://developer.android.com/reference/android/webkit/CacheManager.CacheResult.html
-http://developer.android.com/reference/java/net/CacheRequest.html
-http://developer.android.com/reference/java/net/CacheResponse.html
-http://developer.android.com/reference/java/util/Calendar.html
+http://developer.android.com/reference/android/provider/CalendarContract.html
+http://developer.android.com/reference/android/provider/CalendarContract.Attendees.html
 http://developer.android.com/reference/android/provider/CalendarContract.CalendarAlerts.html
-http://developer.android.com/reference/android/provider/CalendarContract.CalendarAlertsColumns.html
-http://developer.android.com/reference/android/provider/CalendarContract.CalendarCacheColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.CalendarCache.html
 http://developer.android.com/reference/android/provider/CalendarContract.CalendarEntity.html
-http://developer.android.com/reference/android/provider/CalendarContract.CalendarSyncColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.Calendars.html
+http://developer.android.com/reference/android/provider/CalendarContract.Colors.html
 http://developer.android.com/reference/android/provider/CalendarContract.EventDays.html
-http://developer.android.com/reference/android/provider/CalendarContract.EventDaysColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.Events.html
 http://developer.android.com/reference/android/provider/CalendarContract.EventsEntity.html
 http://developer.android.com/reference/android/provider/CalendarContract.ExtendedProperties.html
-http://developer.android.com/reference/android/provider/CalendarContract.ExtendedPropertiesColumns.html
+http://developer.android.com/reference/android/provider/CalendarContract.Instances.html
+http://developer.android.com/reference/android/provider/CalendarContract.Reminders.html
 http://developer.android.com/reference/android/provider/CalendarContract.SyncState.html
-http://developer.android.com/reference/java/util/concurrent/Callable.html
-http://developer.android.com/reference/java/sql/CallableStatement.html
-http://developer.android.com/reference/javax/security/auth/callback/Callback.html
-http://developer.android.com/reference/javax/security/auth/callback/CallbackHandler.html
 http://developer.android.com/reference/android/provider/CallLog.html
 http://developer.android.com/reference/android/provider/CallLog.Calls.html
-http://developer.android.com/reference/android/graphics/Camera.html
-http://developer.android.com/reference/android/hardware/Camera.Area.html
-http://developer.android.com/reference/android/hardware/Camera.AutoFocusCallback.html
-http://developer.android.com/reference/android/hardware/Camera.AutoFocusMoveCallback.html
-http://developer.android.com/reference/android/hardware/Camera.CameraInfo.html
-http://developer.android.com/reference/android/hardware/Camera.ErrorCallback.html
-http://developer.android.com/reference/android/hardware/Camera.Face.html
-http://developer.android.com/reference/android/hardware/Camera.FaceDetectionListener.html
-http://developer.android.com/reference/android/hardware/Camera.OnZoomChangeListener.html
-http://developer.android.com/reference/android/hardware/Camera.PictureCallback.html
-http://developer.android.com/reference/android/hardware/Camera.PreviewCallback.html
-http://developer.android.com/reference/android/hardware/Camera.ShutterCallback.html
-http://developer.android.com/reference/android/hardware/Camera.Size.html
-http://developer.android.com/reference/android/media/CameraProfile.html
-http://developer.android.com/reference/java/util/concurrent/CancellationException.html
-http://developer.android.com/reference/java/util/concurrent/FutureTask.html
-http://developer.android.com/reference/android/os/CancellationSignal.html
-http://developer.android.com/reference/android/os/CancellationSignal.OnCancelListener.html
-http://developer.android.com/reference/java/nio/channels/CancelledKeyException.html
-http://developer.android.com/reference/android/graphics/Canvas.EdgeType.html
-http://developer.android.com/reference/android/graphics/Canvas.VertexMode.html
-http://developer.android.com/reference/org/w3c/dom/CDATASection.html
-http://developer.android.com/reference/android/telephony/cdma/CdmaCellLocation.html
-http://developer.android.com/reference/android/telephony/CellLocation.html
-http://developer.android.com/reference/java/security/Certificate.html
-http://developer.android.com/reference/java/security/cert/Certificate.html
-http://developer.android.com/reference/javax/security/cert/Certificate.html
-http://developer.android.com/reference/java/security/cert/Certificate.CertificateRep.html
-http://developer.android.com/reference/java/security/cert/CertificateEncodingException.html
-http://developer.android.com/reference/javax/security/cert/CertificateEncodingException.html
-http://developer.android.com/reference/java/security/cert/CertificateException.html
-http://developer.android.com/reference/javax/security/cert/CertificateException.html
-http://developer.android.com/reference/java/security/cert/CertificateExpiredException.html
-http://developer.android.com/reference/javax/security/cert/CertificateExpiredException.html
-http://developer.android.com/reference/java/security/cert/CertificateFactory.html
-http://developer.android.com/reference/java/security/cert/CertificateFactorySpi.html
-http://developer.android.com/reference/java/security/cert/CertificateNotYetValidException.html
-http://developer.android.com/reference/javax/security/cert/CertificateNotYetValidException.html
-http://developer.android.com/reference/java/security/cert/CertificateParsingException.html
-http://developer.android.com/reference/javax/security/cert/CertificateParsingException.html
-http://developer.android.com/reference/java/security/cert/CertPath.html
-http://developer.android.com/reference/java/security/cert/CertPath.CertPathRep.html
-http://developer.android.com/reference/java/security/cert/CertPathBuilder.html
-http://developer.android.com/reference/java/security/cert/CertPathBuilderException.html
-http://developer.android.com/reference/java/security/cert/CertPathBuilderResult.html
-http://developer.android.com/reference/java/security/cert/CertPathBuilderSpi.html
-http://developer.android.com/reference/java/security/cert/CertPathParameters.html
-http://developer.android.com/reference/javax/net/ssl/CertPathTrustManagerParameters.html
-http://developer.android.com/reference/javax/net/ssl/TrustManager.html
-http://developer.android.com/reference/java/security/cert/CertPathValidator.html
-http://developer.android.com/reference/java/security/cert/CertPathValidatorException.html
-http://developer.android.com/reference/java/security/cert/CertPathValidatorResult.html
-http://developer.android.com/reference/java/security/cert/CertPathValidatorSpi.html
-http://developer.android.com/reference/java/security/cert/CertSelector.html
-http://developer.android.com/reference/java/security/cert/CertStore.html
-http://developer.android.com/reference/java/security/cert/CertStoreException.html
-http://developer.android.com/reference/java/security/cert/CertStoreParameters.html
-http://developer.android.com/reference/java/security/cert/CertStoreSpi.html
-http://developer.android.com/reference/java/nio/channels/Channel.html
-http://developer.android.com/reference/java/nio/channels/Channels.html
-http://developer.android.com/reference/java/lang/Character.html
-http://developer.android.com/reference/java/lang/Character.Subset.html
-http://developer.android.com/reference/java/lang/Character.UnicodeBlock.html
-http://developer.android.com/reference/java/nio/charset/CharacterCodingException.html
-http://developer.android.com/reference/org/w3c/dom/CharacterData.html
-http://developer.android.com/reference/android/text/method/CharacterPickerDialog.html
-http://developer.android.com/reference/android/text/style/CharacterStyle.html
-http://developer.android.com/reference/android/database/CharArrayBuffer.html
-http://developer.android.com/reference/org/apache/http/util/CharArrayBuffer.html
-http://developer.android.com/reference/java/io/CharArrayReader.html
-http://developer.android.com/reference/java/io/CharArrayWriter.html
-http://developer.android.com/reference/java/nio/CharBuffer.html
-http://developer.android.com/reference/java/io/CharConversionException.html
-http://developer.android.com/reference/java/nio/charset/Charset.html
-http://developer.android.com/reference/java/nio/charset/CharsetDecoder.html
-http://developer.android.com/reference/java/nio/charset/CharsetEncoder.html
-http://developer.android.com/reference/java/nio/charset/spi/CharsetProvider.html
-http://developer.android.com/reference/android/preference/CheckBoxPreference.html
-http://developer.android.com/reference/java/util/zip/CheckedInputStream.html
-http://developer.android.com/reference/java/util/zip/CheckedOutputStream.html
-http://developer.android.com/reference/java/util/zip/Checksum.html
-http://developer.android.com/reference/java/util/zip/CRC32.html
-http://developer.android.com/reference/java/text/ChoiceFormat.html
-http://developer.android.com/reference/org/apache/http/impl/io/ChunkedInputStream.html
-http://developer.android.com/reference/org/apache/http/impl/io/ChunkedOutputStream.html
-http://developer.android.com/reference/javax/crypto/Cipher.html
-http://developer.android.com/reference/javax/crypto/CipherInputStream.html
-http://developer.android.com/reference/javax/crypto/CipherOutputStream.html
-http://developer.android.com/reference/javax/crypto/CipherSpi.html
-http://developer.android.com/reference/org/apache/http/client/CircularRedirectException.html
-http://developer.android.com/reference/java/lang/ClassCircularityError.html
-http://developer.android.com/reference/java/lang/ClassFormatError.html
-http://developer.android.com/reference/java/lang/ClassNotFoundException.html
-http://developer.android.com/reference/android/text/style/ClickableSpan.html
-http://developer.android.com/reference/org/apache/http/client/protocol/ClientContext.html
-http://developer.android.com/reference/org/apache/http/client/protocol/ClientContextConfigurer.html
-http://developer.android.com/reference/org/apache/http/cookie/ClientCookie.html
-http://developer.android.com/reference/org/apache/http/cookie/Cookie.html
-http://developer.android.com/reference/java/sql/ClientInfoStatus.html
-http://developer.android.com/reference/org/apache/http/client/params/ClientParamBean.html
-http://developer.android.com/reference/org/apache/http/impl/client/ClientParamsStack.html
-http://developer.android.com/reference/org/apache/http/client/params/ClientPNames.html
-http://developer.android.com/reference/org/apache/http/client/ClientProtocolException.html
-http://developer.android.com/reference/android/content/ClipboardManager.html
-http://developer.android.com/reference/android/text/ClipboardManager.html
-http://developer.android.com/reference/android/content/ClipboardManager.OnPrimaryClipChangedListener.html
-http://developer.android.com/reference/android/content/ClipData.Item.html
-http://developer.android.com/reference/android/content/ClipDescription.html
-http://developer.android.com/reference/android/graphics/drawable/ClipDrawable.html
-http://developer.android.com/reference/java/sql/Clob.html
-http://developer.android.com/reference/java/lang/Cloneable.html
-http://developer.android.com/reference/java/lang/CloneNotSupportedException.html
-http://developer.android.com/reference/org/apache/http/client/utils/CloneUtils.html
-http://developer.android.com/reference/java/io/Closeable.html
-http://developer.android.com/reference/java/io/IOException.html
-http://developer.android.com/reference/java/nio/channels/ClosedByInterruptException.html
-http://developer.android.com/reference/java/nio/channels/ClosedChannelException.html
-http://developer.android.com/reference/java/nio/channels/ClosedSelectorException.html
-http://developer.android.com/reference/java/nio/channels/Selector.html
-http://developer.android.com/reference/java/nio/charset/CoderMalfunctionError.html
-http://developer.android.com/reference/java/nio/charset/CoderResult.html
-http://developer.android.com/reference/java/security/CodeSigner.html
-http://developer.android.com/reference/java/security/CodeSource.html
-http://developer.android.com/reference/java/nio/charset/CodingErrorAction.html
-http://developer.android.com/reference/java/text/CollationElementIterator.html
-http://developer.android.com/reference/java/text/CollationKey.html
-http://developer.android.com/reference/java/text/Collator.html
-http://developer.android.com/reference/java/util/Collection.html
-http://developer.android.com/reference/java/security/cert/CollectionCertStoreParameters.html
-http://developer.android.com/reference/java/util/Collections.html
-http://developer.android.com/reference/android/graphics/Color.html
-http://developer.android.com/reference/android/graphics/drawable/ColorDrawable.html
-http://developer.android.com/reference/android/graphics/ColorFilter.html
-http://developer.android.com/reference/android/graphics/ColorMatrix.html
-http://developer.android.com/reference/android/graphics/ColorMatrixColorFilter.html
-http://developer.android.com/reference/android/content/res/ColorStateList.html
-http://developer.android.com/reference/org/w3c/dom/Comment.html
-http://developer.android.com/reference/javax/sql/CommonDataSource.html
-http://developer.android.com/reference/java/lang/Comparable.html
-http://developer.android.com/reference/java/util/Comparator.html
-http://developer.android.com/reference/android/test/ComparisonFailure.html
-http://developer.android.com/reference/junit/framework/ComparisonFailure.html
-http://developer.android.com/reference/java/lang/Compiler.html
-http://developer.android.com/reference/android/view/inputmethod/CompletionInfo.html
-http://developer.android.com/reference/java/util/concurrent/CompletionService.html
-http://developer.android.com/reference/android/content/ComponentCallbacks.html
-http://developer.android.com/reference/android/content/ComponentCallbacks2.html
-http://developer.android.com/reference/android/content/pm/ComponentInfo.html
-http://developer.android.com/reference/android/content/pm/ServiceInfo.html
-http://developer.android.com/reference/android/graphics/ComposePathEffect.html
-http://developer.android.com/reference/android/graphics/ComposeShader.html
-http://developer.android.com/reference/android/graphics/Xfermode.html
-http://developer.android.com/reference/java/util/concurrent/ConcurrentHashMap.html
-http://developer.android.com/reference/java/util/concurrent/ConcurrentLinkedQueue.html
-http://developer.android.com/reference/java/util/concurrent/ConcurrentMap.html
-http://developer.android.com/reference/java/util/Map.html
-http://developer.android.com/reference/java/util/ConcurrentModificationException.html
-http://developer.android.com/reference/java/util/concurrent/ConcurrentNavigableMap.html
-http://developer.android.com/reference/java/util/NavigableMap.html
-http://developer.android.com/reference/java/util/concurrent/ConcurrentSkipListMap.html
-http://developer.android.com/reference/java/util/concurrent/ConcurrentSkipListSet.html
-http://developer.android.com/reference/java/util/NavigableSet.html
-http://developer.android.com/reference/java/util/concurrent/locks/Condition.html
-http://developer.android.com/reference/android/os/ConditionVariable.html
-http://developer.android.com/reference/android/util/Config.html
-http://developer.android.com/reference/android/content/pm/ConfigurationInfo.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnConnectionParamBean.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnConnectionPNames.html
-http://developer.android.com/reference/java/sql/Connection.html
-http://developer.android.com/reference/org/apache/http/ConnectionClosedException.html
-http://developer.android.com/reference/javax/sql/ConnectionEvent.html
-http://developer.android.com/reference/javax/sql/PooledConnection.html
-http://developer.android.com/reference/javax/sql/ConnectionEventListener.html
-http://developer.android.com/reference/java/nio/channels/ConnectionPendingException.html
-http://developer.android.com/reference/java/nio/channels/SocketChannel.html
-http://developer.android.com/reference/javax/sql/ConnectionPoolDataSource.html
-http://developer.android.com/reference/org/apache/http/ConnectionReuseStrategy.html
-http://developer.android.com/reference/android/net/ConnectivityManager.html
-http://developer.android.com/reference/android/support/v4/net/ConnectivityManagerCompat.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnManagerParamBean.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnManagerParams.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnManagerPNames.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnPerRoute.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnPerRouteBean.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnRouteParamBean.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnRouteParams.html
-http://developer.android.com/reference/org/apache/http/conn/params/ConnRoutePNames.html
-http://developer.android.com/reference/java/io/Console.html
-http://developer.android.com/reference/java/util/logging/ConsoleHandler.html
-http://developer.android.com/reference/android/webkit/ConsoleMessage.html
-http://developer.android.com/reference/android/webkit/ConsoleMessage.MessageLevel.html
-http://developer.android.com/reference/java/lang/reflect/Constructor.html
 http://developer.android.com/reference/android/provider/Contacts.html
 http://developer.android.com/reference/android/provider/Contacts.ContactMethods.html
-http://developer.android.com/reference/android/provider/Contacts.ContactMethodsColumns.html
 http://developer.android.com/reference/android/provider/Contacts.Extensions.html
-http://developer.android.com/reference/android/provider/Contacts.ExtensionsColumns.html
 http://developer.android.com/reference/android/provider/Contacts.GroupMembership.html
 http://developer.android.com/reference/android/provider/Contacts.Groups.html
-http://developer.android.com/reference/android/provider/Contacts.GroupsColumns.html
 http://developer.android.com/reference/android/provider/Contacts.Intents.html
 http://developer.android.com/reference/android/provider/Contacts.Intents.Insert.html
 http://developer.android.com/reference/android/provider/Contacts.Intents.UI.html
-http://developer.android.com/reference/android/provider/Contacts.OrganizationColumns.html
 http://developer.android.com/reference/android/provider/Contacts.Organizations.html
 http://developer.android.com/reference/android/provider/Contacts.People.html
 http://developer.android.com/reference/android/provider/Contacts.People.ContactMethods.html
 http://developer.android.com/reference/android/provider/Contacts.People.Extensions.html
 http://developer.android.com/reference/android/provider/Contacts.People.Phones.html
-http://developer.android.com/reference/android/provider/Contacts.PeopleColumns.html
 http://developer.android.com/reference/android/provider/Contacts.Phones.html
-http://developer.android.com/reference/android/provider/Contacts.PhonesColumns.html
 http://developer.android.com/reference/android/provider/Contacts.Photos.html
-http://developer.android.com/reference/android/provider/Contacts.PhotosColumns.html
-http://developer.android.com/reference/android/provider/Contacts.PresenceColumns.html
 http://developer.android.com/reference/android/provider/Contacts.Settings.html
-http://developer.android.com/reference/android/provider/Contacts.SettingsColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.html
 http://developer.android.com/reference/android/provider/ContactsContract.AggregationExceptions.html
-http://developer.android.com/reference/android/provider/ContactsContract.BaseSyncColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.html
-http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.BaseTypes.html
-http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.CommonColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Email.html
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Event.html
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.GroupMembership.html
@@ -1875,203 +1347,74 @@
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.StructuredName.html
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.StructuredPostal.html
 http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Website.html
-http://developer.android.com/reference/android/provider/ContactsContract.ContactNameColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.ContactOptionsColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.Contacts.html
 http://developer.android.com/reference/android/provider/ContactsContract.Contacts.AggregationSuggestions.html
 http://developer.android.com/reference/android/provider/ContactsContract.Contacts.Data.html
 http://developer.android.com/reference/android/provider/ContactsContract.Contacts.Entity.html
 http://developer.android.com/reference/android/provider/ContactsContract.Contacts.Photo.html
 http://developer.android.com/reference/android/provider/ContactsContract.Contacts.StreamItems.html
-http://developer.android.com/reference/android/provider/ContactsContract.ContactsColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.ContactStatusColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.DataColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.DataColumnsWithJoins.html
+http://developer.android.com/reference/android/provider/ContactsContract.Data.html
 http://developer.android.com/reference/android/provider/ContactsContract.DataUsageFeedback.html
 http://developer.android.com/reference/android/provider/ContactsContract.Directory.html
-http://developer.android.com/reference/android/provider/ContactsContract.DisplayNameSources.html
 http://developer.android.com/reference/android/provider/ContactsContract.DisplayPhoto.html
-http://developer.android.com/reference/android/provider/ContactsContract.FullNameStyle.html
 http://developer.android.com/reference/android/provider/ContactsContract.Groups.html
-http://developer.android.com/reference/android/provider/ContactsContract.GroupsColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.Intents.html
 http://developer.android.com/reference/android/provider/ContactsContract.Intents.Insert.html
 http://developer.android.com/reference/android/provider/ContactsContract.PhoneLookup.html
-http://developer.android.com/reference/android/provider/ContactsContract.PhoneLookupColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.PhoneticNameStyle.html
 http://developer.android.com/reference/android/provider/ContactsContract.Presence.html
-http://developer.android.com/reference/android/provider/ContactsContract.PresenceColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.Profile.html
 http://developer.android.com/reference/android/provider/ContactsContract.ProfileSyncState.html
 http://developer.android.com/reference/android/provider/ContactsContract.QuickContact.html
+http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.html
 http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.Data.html
 http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.DisplayPhoto.html
 http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.Entity.html
 http://developer.android.com/reference/android/provider/ContactsContract.RawContacts.StreamItems.html
-http://developer.android.com/reference/android/provider/ContactsContract.RawContactsColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.RawContactsEntity.html
 http://developer.android.com/reference/android/provider/ContactsContract.Settings.html
-http://developer.android.com/reference/android/provider/ContactsContract.SettingsColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.StatusColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.StatusUpdates.html
-http://developer.android.com/reference/android/provider/ContactsContract.StreamItemPhotosColumns.html
+http://developer.android.com/reference/android/provider/ContactsContract.StreamItemPhotos.html
+http://developer.android.com/reference/android/provider/ContactsContract.StreamItems.html
 http://developer.android.com/reference/android/provider/ContactsContract.StreamItems.StreamItemPhotos.html
-http://developer.android.com/reference/android/provider/ContactsContract.StreamItemsColumns.html
-http://developer.android.com/reference/android/provider/ContactsContract.SyncColumns.html
 http://developer.android.com/reference/android/provider/ContactsContract.SyncState.html
-http://developer.android.com/reference/java/net/ContentHandler.html
-http://developer.android.com/reference/org/xml/sax/ContentHandler.html
-http://developer.android.com/reference/java/net/ContentHandlerFactory.html
-http://developer.android.com/reference/org/apache/http/impl/io/ContentLengthInputStream.html
-http://developer.android.com/reference/org/apache/http/impl/io/ContentLengthOutputStream.html
-http://developer.android.com/reference/org/apache/http/entity/ContentLengthStrategy.html
-http://developer.android.com/reference/android/database/ContentObservable.html
-http://developer.android.com/reference/android/database/Observable.html
-http://developer.android.com/reference/android/database/ContentObserver.html
-http://developer.android.com/reference/org/apache/http/entity/ContentProducer.html
+http://developer.android.com/reference/android/provider/LiveFolders.html
+http://developer.android.com/reference/android/provider/MediaStore.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Albums.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Artists.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Artists.Albums.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Genres.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Genres.Members.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Media.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Playlists.html
+http://developer.android.com/reference/android/provider/MediaStore.Audio.Playlists.Members.html
+http://developer.android.com/reference/android/provider/MediaStore.Files.html
+http://developer.android.com/reference/android/provider/MediaStore.Images.html
+http://developer.android.com/reference/android/provider/MediaStore.Images.Media.html
+http://developer.android.com/reference/android/provider/MediaStore.Images.Thumbnails.html
+http://developer.android.com/reference/android/provider/MediaStore.Video.html
+http://developer.android.com/reference/android/provider/MediaStore.Video.Media.html
+http://developer.android.com/reference/android/provider/MediaStore.Video.Thumbnails.html
+http://developer.android.com/reference/android/provider/SearchRecentSuggestions.html
+http://developer.android.com/reference/android/provider/Settings.html
+http://developer.android.com/reference/android/provider/Settings.NameValueTable.html
+http://developer.android.com/reference/android/provider/Settings.Secure.html
+http://developer.android.com/reference/android/provider/Settings.System.html
+http://developer.android.com/reference/android/provider/SyncStateContract.html
+http://developer.android.com/reference/android/provider/SyncStateContract.Constants.html
+http://developer.android.com/reference/android/provider/SyncStateContract.Helpers.html
+http://developer.android.com/reference/android/provider/UserDictionary.html
+http://developer.android.com/reference/android/provider/UserDictionary.Words.html
+http://developer.android.com/reference/android/provider/VoicemailContract.html
+http://developer.android.com/reference/android/provider/VoicemailContract.Status.html
+http://developer.android.com/reference/android/provider/VoicemailContract.Voicemails.html
+http://developer.android.com/reference/android/provider/Settings.SettingNotFoundException.html
+http://developer.android.com/reference/android/accounts/Account.html
+http://developer.android.com/reference/android/content/SearchRecentSuggestionsProvider.html
+http://developer.android.com/reference/org/apache/http/params/HttpParams.html
+http://developer.android.com/reference/android/content/ClipboardManager.OnPrimaryClipChangedListener.html
+http://developer.android.com/reference/android/content/ComponentCallbacks.html
+http://developer.android.com/reference/android/content/ComponentCallbacks2.html
 http://developer.android.com/reference/android/content/ContentProvider.PipeDataWriter.html
-http://developer.android.com/reference/android/content/ContentProviderClient.html
-http://developer.android.com/reference/android/content/ContentProviderOperation.html
-http://developer.android.com/reference/android/content/ContentProviderOperation.Builder.html
-http://developer.android.com/reference/android/content/ContentProviderResult.html
-http://developer.android.com/reference/android/content/ContentQueryMap.html
-http://developer.android.com/reference/android/content/ContextWrapper.html
-http://developer.android.com/reference/java/net/CookieHandler.html
-http://developer.android.com/reference/org/apache/http/cookie/CookieIdentityComparator.html
-http://developer.android.com/reference/android/webkit/CookieManager.html
-http://developer.android.com/reference/java/net/CookieManager.html
-http://developer.android.com/reference/org/apache/http/cookie/CookieOrigin.html
-http://developer.android.com/reference/org/apache/http/cookie/CookiePathComparator.html
-http://developer.android.com/reference/java/net/CookiePolicy.html
-http://developer.android.com/reference/org/apache/http/client/params/CookiePolicy.html
-http://developer.android.com/reference/org/apache/http/cookie/CookieSpec.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/CookieSpecBase.html
-http://developer.android.com/reference/org/apache/http/cookie/CookieSpecFactory.html
-http://developer.android.com/reference/org/apache/http/cookie/params/CookieSpecParamBean.html
-http://developer.android.com/reference/org/apache/http/cookie/params/CookieSpecPNames.html
-http://developer.android.com/reference/org/apache/http/cookie/CookieSpecRegistry.html
-http://developer.android.com/reference/java/net/CookieStore.html
-http://developer.android.com/reference/android/webkit/CookieSyncManager.html
-http://developer.android.com/reference/java/util/concurrent/CopyOnWriteArrayList.html
-http://developer.android.com/reference/java/util/concurrent/CopyOnWriteArraySet.html
-http://developer.android.com/reference/java/util/Set.html
-http://developer.android.com/reference/org/apache/http/params/CoreConnectionPNames.html
-http://developer.android.com/reference/org/apache/http/params/CoreProtocolPNames.html
-http://developer.android.com/reference/android/graphics/CornerPathEffect.html
-http://developer.android.com/reference/android/view/inputmethod/CorrectionInfo.html
-http://developer.android.com/reference/java/util/concurrent/CountDownLatch.html
-http://developer.android.com/reference/android/os/CountDownTimer.html
-http://developer.android.com/reference/android/net/Credentials.html
-http://developer.android.com/reference/android/location/Criteria.html
-http://developer.android.com/reference/java/security/cert/CRL.html
-http://developer.android.com/reference/java/security/cert/CRLException.html
-http://developer.android.com/reference/java/security/cert/CRLSelector.html
-http://developer.android.com/reference/java/util/Currency.html
-http://developer.android.com/reference/android/support/v4/widget/CursorAdapter.html
-http://developer.android.com/reference/android/database/CursorIndexOutOfBoundsException.html
-http://developer.android.com/reference/android/database/CursorJoiner.html
-http://developer.android.com/reference/android/database/CursorJoiner.Result.html
-http://developer.android.com/reference/android/database/CursorWrapper.html
-http://developer.android.com/reference/java/util/concurrent/CyclicBarrier.html
-http://developer.android.com/reference/android/graphics/DashPathEffect.html
-http://developer.android.com/reference/android/database/DatabaseErrorHandler.html
-http://developer.android.com/reference/java/sql/DatabaseMetaData.html
-http://developer.android.com/reference/android/database/DatabaseUtils.html
-http://developer.android.com/reference/android/database/DatabaseUtils.InsertHelper.html
-http://developer.android.com/reference/android/support/v4/database/DatabaseUtilsCompat.html
-http://developer.android.com/reference/java/util/zip/DataFormatException.html
-http://developer.android.com/reference/java/nio/channels/DatagramChannel.html
-http://developer.android.com/reference/java/net/DatagramPacket.html
-http://developer.android.com/reference/java/net/DatagramSocket.html
-http://developer.android.com/reference/java/net/DatagramSocketImpl.html
-http://developer.android.com/reference/java/net/DatagramSocketImplFactory.html
-http://developer.android.com/reference/java/io/DataInput.html
-http://developer.android.com/reference/java/io/DataInputStream.html
-http://developer.android.com/reference/java/io/DataOutput.html
-http://developer.android.com/reference/java/io/DataOutputStream.html
-http://developer.android.com/reference/android/database/DataSetObservable.html
-http://developer.android.com/reference/android/database/DataSetObserver.html
-http://developer.android.com/reference/javax/sql/DataSource.html
-http://developer.android.com/reference/java/sql/DataTruncation.html
-http://developer.android.com/reference/javax/xml/datatype/DatatypeConfigurationException.html
-http://developer.android.com/reference/javax/xml/datatype/DatatypeConstants.html
-http://developer.android.com/reference/javax/xml/datatype/DatatypeConstants.Field.html
-http://developer.android.com/reference/javax/xml/datatype/Duration.html
-http://developer.android.com/reference/javax/xml/datatype/DatatypeFactory.html
-http://developer.android.com/reference/java/sql/Date.html
-http://developer.android.com/reference/java/util/Date.html
-http://developer.android.com/reference/android/text/format/DateFormat.html
-http://developer.android.com/reference/java/text/DateFormat.html
-http://developer.android.com/reference/java/text/DateFormat.Field.html
-http://developer.android.com/reference/java/text/SimpleDateFormat.html
-http://developer.android.com/reference/java/text/DateFormatSymbols.html
-http://developer.android.com/reference/android/text/method/DateKeyListener.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/DateParseException.html
-http://developer.android.com/reference/android/app/DatePickerDialog.OnDateSetListener.html
-http://developer.android.com/reference/android/webkit/DateSorter.html
-http://developer.android.com/reference/android/text/method/DateTimeKeyListener.html
-http://developer.android.com/reference/android/text/format/DateUtils.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/DateUtils.html
-http://developer.android.com/reference/android/os/Debug.html
-http://developer.android.com/reference/android/os/Debug.InstructionCount.html
-http://developer.android.com/reference/android/os/Debug.MemoryInfo.html
-http://developer.android.com/reference/android/util/DebugUtils.html
-http://developer.android.com/reference/java/text/DecimalFormat.html
-http://developer.android.com/reference/java/text/NumberFormat.html
-http://developer.android.com/reference/java/text/DecimalFormatSymbols.html
-http://developer.android.com/reference/org/xml/sax/ext/DeclHandler.html
-http://developer.android.com/reference/org/apache/http/impl/conn/DefaultClientConnection.html
-http://developer.android.com/reference/org/apache/http/impl/conn/DefaultClientConnectionOperator.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultConnectionKeepAliveStrategy.html
-http://developer.android.com/reference/org/apache/http/impl/DefaultConnectionReuseStrategy.html
-http://developer.android.com/reference/android/database/DefaultDatabaseErrorHandler.html
-http://developer.android.com/reference/org/apache/http/protocol/DefaultedHttpContext.html
-http://developer.android.com/reference/org/apache/http/params/DefaultedHttpParams.html
-http://developer.android.com/reference/org/xml/sax/helpers/DefaultHandler.html
-http://developer.android.com/reference/org/xml/sax/ext/DefaultHandler2.html
-http://developer.android.com/reference/org/xml/sax/ext/LexicalHandler.html
-http://developer.android.com/reference/org/xml/sax/ext/EntityResolver2.html
-http://developer.android.com/reference/org/apache/http/impl/DefaultHttpClientConnection.html
-http://developer.android.com/reference/org/apache/http/impl/DefaultHttpRequestFactory.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultHttpRequestRetryHandler.html
-http://developer.android.com/reference/org/apache/http/client/HttpRequestRetryHandler.html
-http://developer.android.com/reference/org/apache/http/impl/DefaultHttpResponseFactory.html
-http://developer.android.com/reference/org/apache/http/impl/conn/DefaultHttpRoutePlanner.html
-http://developer.android.com/reference/org/apache/http/conn/routing/HttpRoutePlanner.html
-http://developer.android.com/reference/org/apache/http/impl/DefaultHttpServerConnection.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultProxyAuthenticationHandler.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultRedirectHandler.html
-http://developer.android.com/reference/org/apache/http/client/RedirectHandler.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultRequestDirector.html
-http://developer.android.com/reference/org/apache/http/client/RequestDirector.html
-http://developer.android.com/reference/org/apache/http/impl/conn/DefaultResponseParser.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultTargetAuthenticationHandler.html
-http://developer.android.com/reference/org/apache/http/impl/client/DefaultUserTokenHandler.html
-http://developer.android.com/reference/java/util/zip/Deflater.html
-http://developer.android.com/reference/java/util/zip/DeflaterInputStream.html
-http://developer.android.com/reference/java/util/zip/DeflaterOutputStream.html
-http://developer.android.com/reference/java/util/concurrent/Delayed.html
-http://developer.android.com/reference/java/util/concurrent/DelayQueue.html
-http://developer.android.com/reference/java/lang/Deprecated.html
-http://developer.android.com/reference/javax/crypto/spec/DESedeKeySpec.html
-http://developer.android.com/reference/javax/crypto/spec/DESKeySpec.html
-http://developer.android.com/reference/javax/security/auth/Destroyable.html
-http://developer.android.com/reference/javax/security/auth/DestroyFailedException.html
-http://developer.android.com/reference/android/app/admin/DeviceAdminInfo.html
-http://developer.android.com/reference/android/app/admin/DeviceAdminReceiver.html
-http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html
-http://developer.android.com/reference/dalvik/system/DexClassLoader.html
-http://developer.android.com/reference/dalvik/system/DexFile.html
-http://developer.android.com/reference/android/net/DhcpInfo.html
-http://developer.android.com/reference/javax/crypto/spec/DHGenParameterSpec.html
-http://developer.android.com/reference/javax/crypto/interfaces/DHKey.html
-http://developer.android.com/reference/javax/crypto/spec/DHParameterSpec.html
-http://developer.android.com/reference/javax/crypto/interfaces/DHPrivateKey.html
-http://developer.android.com/reference/javax/crypto/spec/DHPrivateKeySpec.html
-http://developer.android.com/reference/javax/crypto/interfaces/DHPublicKey.html
-http://developer.android.com/reference/javax/crypto/spec/DHPublicKeySpec.html
-http://developer.android.com/reference/android/text/method/DialerKeyListener.html
-http://developer.android.com/reference/android/text/method/KeyListener.html
 http://developer.android.com/reference/android/content/DialogInterface.html
 http://developer.android.com/reference/android/content/DialogInterface.OnCancelListener.html
 http://developer.android.com/reference/android/content/DialogInterface.OnClickListener.html
@@ -2079,1454 +1422,590 @@
 http://developer.android.com/reference/android/content/DialogInterface.OnKeyListener.html
 http://developer.android.com/reference/android/content/DialogInterface.OnMultiChoiceClickListener.html
 http://developer.android.com/reference/android/content/DialogInterface.OnShowListener.html
-http://developer.android.com/reference/android/preference/DialogPreference.html
-http://developer.android.com/reference/java/util/Dictionary.html
-http://developer.android.com/reference/java/security/DigestException.html
-http://developer.android.com/reference/java/security/DigestInputStream.html
-http://developer.android.com/reference/java/security/DigestOutputStream.html
-http://developer.android.com/reference/org/apache/http/impl/auth/DigestScheme.html
-http://developer.android.com/reference/org/apache/http/impl/auth/DigestSchemeFactory.html
-http://developer.android.com/reference/android/text/method/DigitsKeyListener.html
-http://developer.android.com/reference/android/graphics/DiscretePathEffect.html
-http://developer.android.com/reference/android/util/DisplayMetrics.html
-http://developer.android.com/reference/org/w3c/dom/Document.html
-http://developer.android.com/reference/javax/xml/parsers/DocumentBuilder.html
-http://developer.android.com/reference/javax/xml/parsers/DocumentBuilderFactory.html
-http://developer.android.com/reference/java/lang/annotation/Documented.html
-http://developer.android.com/reference/org/w3c/dom/DocumentFragment.html
-http://developer.android.com/reference/org/xml/sax/DocumentHandler.html
-http://developer.android.com/reference/org/w3c/dom/DocumentType.html
-http://developer.android.com/reference/java/security/DomainCombiner.html
-http://developer.android.com/reference/org/w3c/dom/DOMConfiguration.html
-http://developer.android.com/reference/org/w3c/dom/DOMError.html
-http://developer.android.com/reference/org/w3c/dom/DOMErrorHandler.html
-http://developer.android.com/reference/org/w3c/dom/DOMException.html
-http://developer.android.com/reference/org/w3c/dom/DOMImplementation.html
-http://developer.android.com/reference/org/w3c/dom/DOMImplementationList.html
-http://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS.html
-http://developer.android.com/reference/org/w3c/dom/DOMImplementationSource.html
-http://developer.android.com/reference/javax/xml/transform/dom/DOMLocator.html
-http://developer.android.com/reference/org/w3c/dom/DOMLocator.html
-http://developer.android.com/reference/javax/xml/transform/dom/DOMResult.html
-http://developer.android.com/reference/javax/xml/transform/dom/DOMSource.html
-http://developer.android.com/reference/org/w3c/dom/DOMStringList.html
-http://developer.android.com/reference/java/lang/Double.html
-http://developer.android.com/reference/android/renderscript/Double2.html
-http://developer.android.com/reference/android/renderscript/Double3.html
-http://developer.android.com/reference/android/renderscript/Double4.html
-http://developer.android.com/reference/java/nio/DoubleBuffer.html
-http://developer.android.com/reference/android/webkit/DownloadListener.html
+http://developer.android.com/reference/android/content/EntityIterator.html
+http://developer.android.com/reference/android/content/IntentSender.OnFinished.html
+http://developer.android.com/reference/android/content/Loader.OnLoadCanceledListener.html
+http://developer.android.com/reference/android/content/Loader.OnLoadCompleteListener.html
+http://developer.android.com/reference/android/content/ServiceConnection.html
+http://developer.android.com/reference/android/content/SharedPreferences.Editor.html
+http://developer.android.com/reference/android/content/SyncStatusObserver.html
+http://developer.android.com/reference/android/content/AbstractThreadedSyncAdapter.html
+http://developer.android.com/reference/android/content/AsyncQueryHandler.html
+http://developer.android.com/reference/android/content/AsyncQueryHandler.WorkerArgs.html
+http://developer.android.com/reference/android/content/AsyncQueryHandler.WorkerHandler.html
+http://developer.android.com/reference/android/content/AsyncTaskLoader.html
+http://developer.android.com/reference/android/content/BroadcastReceiver.PendingResult.html
+http://developer.android.com/reference/android/content/ClipboardManager.html
+http://developer.android.com/reference/android/content/ClipData.Item.html
+http://developer.android.com/reference/android/content/ClipDescription.html
+http://developer.android.com/reference/android/content/ComponentName.html
+http://developer.android.com/reference/android/content/ContentProviderClient.html
+http://developer.android.com/reference/android/content/ContentProviderOperation.html
+http://developer.android.com/reference/android/content/ContentProviderOperation.Builder.html
+http://developer.android.com/reference/android/content/ContentProviderResult.html
+http://developer.android.com/reference/android/content/ContentQueryMap.html
+http://developer.android.com/reference/android/content/ContentResolver.html
+http://developer.android.com/reference/android/content/ContentUris.html
+http://developer.android.com/reference/android/content/ContentValues.html
+http://developer.android.com/reference/android/content/ContextWrapper.html
+http://developer.android.com/reference/android/content/CursorLoader.html
+http://developer.android.com/reference/android/content/Entity.html
+http://developer.android.com/reference/android/content/Entity.NamedContentValues.html
+http://developer.android.com/reference/android/content/Intent.FilterComparison.html
+http://developer.android.com/reference/android/content/Intent.ShortcutIconResource.html
+http://developer.android.com/reference/android/content/IntentFilter.html
+http://developer.android.com/reference/android/content/IntentFilter.AuthorityEntry.html
+http://developer.android.com/reference/android/content/IntentSender.html
+http://developer.android.com/reference/android/content/Loader.html
+http://developer.android.com/reference/android/content/Loader.ForceLoadContentObserver.html
+http://developer.android.com/reference/android/content/MutableContextWrapper.html
+http://developer.android.com/reference/android/content/PeriodicSync.html
+http://developer.android.com/reference/android/content/SyncAdapterType.html
+http://developer.android.com/reference/android/content/SyncContext.html
+http://developer.android.com/reference/android/content/SyncInfo.html
+http://developer.android.com/reference/android/content/SyncResult.html
+http://developer.android.com/reference/android/content/SyncStats.html
+http://developer.android.com/reference/android/content/UriMatcher.html
+http://developer.android.com/reference/android/content/ActivityNotFoundException.html
+http://developer.android.com/reference/android/content/IntentFilter.MalformedMimeTypeException.html
+http://developer.android.com/reference/android/content/IntentSender.SendIntentException.html
+http://developer.android.com/reference/android/content/OperationApplicationException.html
+http://developer.android.com/reference/android/content/ReceiverCallNotAllowedException.html
+http://developer.android.com/reference/android/test/mock/MockContentProvider.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html
+http://developer.android.com/reference/android/content/pm/ProviderInfo.html
+http://developer.android.com/reference/android/content/pm/PathPermission.html
+http://developer.android.com/reference/android/content/res/AssetFileDescriptor.html
+http://developer.android.com/reference/android/os/ParcelFileDescriptor.html
+http://developer.android.com/reference/android/os/CancellationSignal.html
+http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html
+http://developer.android.com/reference/android/database/SQLException.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html
+http://developer.android.com/reference/android/app/ActivityManager.html
+http://developer.android.com/reference/java/io/FileNotFoundException.html
+http://developer.android.com/reference/java/lang/IllegalArgumentException.html
+http://developer.android.com/reference/android/os/OperationCanceledException.html
+http://developer.android.com/reference/java/lang/Cloneable.html
+http://developer.android.com/reference/java/lang/CloneNotSupportedException.html
+http://developer.android.com/reference/java/lang/Throwable.html
+http://developer.android.com/reference/java/lang/Exception.html
+http://developer.android.com/reference/java/lang/StackTraceElement.html
+http://developer.android.com/reference/java/io/PrintWriter.html
+http://developer.android.com/reference/java/io/PrintStream.html
+http://developer.android.com/reference/android/app/ActionBar.OnMenuVisibilityListener.html
+http://developer.android.com/reference/android/app/ActionBar.OnNavigationListener.html
+http://developer.android.com/reference/android/app/ActionBar.TabListener.html
+http://developer.android.com/reference/android/app/Application.ActivityLifecycleCallbacks.html
+http://developer.android.com/reference/android/app/DatePickerDialog.OnDateSetListener.html
+http://developer.android.com/reference/android/app/FragmentBreadCrumbs.OnBreadCrumbClickListener.html
+http://developer.android.com/reference/android/app/FragmentManager.BackStackEntry.html
+http://developer.android.com/reference/android/app/KeyguardManager.OnKeyguardExitResult.html
+http://developer.android.com/reference/android/app/LoaderManager.LoaderCallbacks.html
+http://developer.android.com/reference/android/app/PendingIntent.OnFinished.html
+http://developer.android.com/reference/android/app/SearchManager.OnCancelListener.html
+http://developer.android.com/reference/android/app/SearchManager.OnDismissListener.html
+http://developer.android.com/reference/android/app/TimePickerDialog.OnTimeSetListener.html
+http://developer.android.com/reference/android/app/ActionBar.html
+http://developer.android.com/reference/android/app/ActionBar.LayoutParams.html
+http://developer.android.com/reference/android/app/ActionBar.Tab.html
+http://developer.android.com/reference/android/app/ActivityGroup.html
+http://developer.android.com/reference/android/app/ActivityManager.MemoryInfo.html
+http://developer.android.com/reference/android/app/ActivityManager.ProcessErrorStateInfo.html
+http://developer.android.com/reference/android/app/ActivityManager.RecentTaskInfo.html
+http://developer.android.com/reference/android/app/ActivityManager.RunningAppProcessInfo.html
+http://developer.android.com/reference/android/app/ActivityManager.RunningServiceInfo.html
+http://developer.android.com/reference/android/app/ActivityManager.RunningTaskInfo.html
+http://developer.android.com/reference/android/app/ActivityOptions.html
+http://developer.android.com/reference/android/app/AlertDialog.html
+http://developer.android.com/reference/android/app/AlertDialog.Builder.html
+http://developer.android.com/reference/android/app/AliasActivity.html
+http://developer.android.com/reference/android/app/Application.html
+http://developer.android.com/reference/android/app/ApplicationErrorReport.html
+http://developer.android.com/reference/android/app/ApplicationErrorReport.AnrInfo.html
+http://developer.android.com/reference/android/app/ApplicationErrorReport.BatteryInfo.html
+http://developer.android.com/reference/android/app/ApplicationErrorReport.CrashInfo.html
+http://developer.android.com/reference/android/app/ApplicationErrorReport.RunningServiceInfo.html
+http://developer.android.com/reference/android/app/DatePickerDialog.html
+http://developer.android.com/reference/android/app/Dialog.html
+http://developer.android.com/reference/android/app/DialogFragment.html
 http://developer.android.com/reference/android/app/DownloadManager.html
 http://developer.android.com/reference/android/app/DownloadManager.Query.html
 http://developer.android.com/reference/android/app/DownloadManager.Request.html
-http://developer.android.com/reference/android/graphics/drawable/Drawable.ConstantState.html
-http://developer.android.com/reference/android/graphics/drawable/DrawableContainer.html
-http://developer.android.com/reference/android/graphics/drawable/DrawableContainer.DrawableContainerState.html
-http://developer.android.com/reference/android/text/style/DrawableMarginSpan.html
-http://developer.android.com/reference/android/graphics/DrawFilter.html
-http://developer.android.com/reference/java/sql/Driver.html
-http://developer.android.com/reference/java/sql/DriverManager.html
-http://developer.android.com/reference/java/sql/DriverPropertyInfo.html
-http://developer.android.com/reference/android/drm/DrmConvertedStatus.html
-http://developer.android.com/reference/android/drm/DrmErrorEvent.html
-http://developer.android.com/reference/android/drm/DrmManagerClient.OnErrorListener.html
-http://developer.android.com/reference/android/drm/DrmEvent.html
-http://developer.android.com/reference/android/drm/DrmInfo.html
-http://developer.android.com/reference/android/drm/DrmInfoEvent.html
-http://developer.android.com/reference/android/drm/DrmManagerClient.OnInfoListener.html
-http://developer.android.com/reference/android/drm/DrmInfoRequest.html
-http://developer.android.com/reference/android/drm/DrmInfoStatus.html
-http://developer.android.com/reference/android/drm/DrmManagerClient.html
-http://developer.android.com/reference/android/drm/DrmManagerClient.OnEventListener.html
-http://developer.android.com/reference/android/drm/DrmRights.html
-http://developer.android.com/reference/android/drm/DrmStore.html
-http://developer.android.com/reference/android/drm/DrmStore.Action.html
-http://developer.android.com/reference/android/drm/DrmStore.ConstraintsColumns.html
-http://developer.android.com/reference/android/drm/DrmStore.DrmObjectType.html
-http://developer.android.com/reference/android/drm/DrmStore.Playback.html
-http://developer.android.com/reference/android/drm/DrmStore.RightsStatus.html
-http://developer.android.com/reference/android/drm/DrmSupportInfo.html
-http://developer.android.com/reference/android/drm/DrmUtils.html
-http://developer.android.com/reference/android/drm/DrmUtils.ExtendedMetadataParser.html
-http://developer.android.com/reference/android/os/DropBoxManager.html
-http://developer.android.com/reference/android/os/DropBoxManager.Entry.html
-http://developer.android.com/reference/java/security/spec/DSAParameterSpec.html
-http://developer.android.com/reference/java/security/spec/DSAPrivateKeySpec.html
-http://developer.android.com/reference/java/security/spec/DSAPublicKeySpec.html
-http://developer.android.com/reference/org/xml/sax/DTDHandler.html
-http://developer.android.com/reference/java/util/DuplicateFormatFlagsException.html
-http://developer.android.com/reference/android/text/style/DynamicDrawableSpan.html
-http://developer.android.com/reference/android/text/DynamicLayout.html
-http://developer.android.com/reference/android/text/style/EasyEditSpan.html
-http://developer.android.com/reference/java/security/spec/ECField.html
-http://developer.android.com/reference/java/security/spec/ECFieldF2m.html
-http://developer.android.com/reference/java/security/spec/ECFieldFp.html
-http://developer.android.com/reference/java/security/spec/ECGenParameterSpec.html
-http://developer.android.com/reference/java/security/spec/ECParameterSpec.html
-http://developer.android.com/reference/java/security/spec/ECPoint.html
-http://developer.android.com/reference/java/security/spec/ECPrivateKeySpec.html
-http://developer.android.com/reference/java/security/spec/ECPublicKeySpec.html
-http://developer.android.com/reference/android/support/v4/widget/EdgeEffectCompat.html
-http://developer.android.com/reference/android/text/Editable.html
-http://developer.android.com/reference/android/text/Editable.Factory.html
-http://developer.android.com/reference/android/preference/EditTextPreference.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGL.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGL10.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGL11.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGLConfig.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGLContext.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGLDisplay.html
-http://developer.android.com/reference/javax/microedition/khronos/egl/EGLSurface.html
-http://developer.android.com/reference/android/sax/Element.html
-http://developer.android.com/reference/org/w3c/dom/Element.html
-http://developer.android.com/reference/android/renderscript/Element.Builder.html
-http://developer.android.com/reference/android/renderscript/Element.DataKind.html
-http://developer.android.com/reference/android/renderscript/Element.DataType.html
-http://developer.android.com/reference/android/sax/ElementListener.html
-http://developer.android.com/reference/java/lang/annotation/ElementType.html
-http://developer.android.com/reference/java/security/spec/EllipticCurve.html
-http://developer.android.com/reference/android/graphics/EmbossMaskFilter.html
-http://developer.android.com/reference/java/util/EmptyStackException.html
-http://developer.android.com/reference/java/security/spec/EncodedKeySpec.html
-http://developer.android.com/reference/org/apache/http/util/EncodingUtils.html
-http://developer.android.com/reference/javax/crypto/EncryptedPrivateKeyInfo.html
-http://developer.android.com/reference/android/sax/EndElementListener.html
-http://developer.android.com/reference/android/sax/EndTextElementListener.html
-http://developer.android.com/reference/org/apache/http/impl/EnglishReasonPhraseCatalog.html
-http://developer.android.com/reference/android/content/Entity.html
-http://developer.android.com/reference/org/w3c/dom/Entity.html
-http://developer.android.com/reference/android/content/Entity.NamedContentValues.html
-http://developer.android.com/reference/org/apache/http/impl/entity/EntityDeserializer.html
-http://developer.android.com/reference/org/apache/http/impl/client/EntityEnclosingRequestWrapper.html
-http://developer.android.com/reference/org/apache/http/HttpEntityEnclosingRequest.html
-http://developer.android.com/reference/android/content/EntityIterator.html
-http://developer.android.com/reference/java/util/Iterator.html
-http://developer.android.com/reference/org/w3c/dom/EntityReference.html
-http://developer.android.com/reference/org/xml/sax/EntityResolver.html
-http://developer.android.com/reference/org/apache/http/impl/entity/EntitySerializer.html
-http://developer.android.com/reference/org/apache/http/entity/EntityTemplate.html
-http://developer.android.com/reference/org/apache/http/util/EntityUtils.html
-http://developer.android.com/reference/org/apache/http/HttpEntity.html
-http://developer.android.com/reference/java/lang/Enum.html
-http://developer.android.com/reference/java/lang/EnumConstantNotPresentException.html
-http://developer.android.com/reference/java/util/Enumeration.html
-http://developer.android.com/reference/java/util/EnumMap.html
-http://developer.android.com/reference/java/util/EnumSet.html
-http://developer.android.com/reference/android/os/Environment.html
-http://developer.android.com/reference/android/media/audiofx/EnvironmentalReverb.html
-http://developer.android.com/reference/android/media/audiofx/EnvironmentalReverb.OnParameterChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/EnvironmentalReverb.Settings.html
-http://developer.android.com/reference/java/io/EOFException.html
-http://developer.android.com/reference/android/media/audiofx/Equalizer.html
-http://developer.android.com/reference/android/media/audiofx/Equalizer.OnParameterChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/Equalizer.Settings.html
-http://developer.android.com/reference/java/lang/Error.html
-http://developer.android.com/reference/org/xml/sax/ErrorHandler.html
-http://developer.android.com/reference/javax/xml/transform/ErrorListener.html
-http://developer.android.com/reference/javax/xml/transform/Transformer.html
-http://developer.android.com/reference/java/util/logging/ErrorManager.html
-http://developer.android.com/reference/java/util/logging/Handler.html
-http://developer.android.com/reference/android/opengl/ETC1.html
-http://developer.android.com/reference/android/opengl/ETC1Util.html
-http://developer.android.com/reference/android/opengl/ETC1Util.ETC1Texture.html
-http://developer.android.com/reference/java/util/EventListener.html
-http://developer.android.com/reference/java/util/EventListenerProxy.html
-http://developer.android.com/reference/android/util/EventLog.html
-http://developer.android.com/reference/android/util/EventLog.Event.html
-http://developer.android.com/reference/android/util/EventLogTags.html
-http://developer.android.com/reference/android/util/EventLogTags.Description.html
-http://developer.android.com/reference/java/util/EventObject.html
-http://developer.android.com/reference/java/lang/ExceptionInInitializerError.html
-http://developer.android.com/reference/org/apache/http/util/ExceptionUtils.html
-http://developer.android.com/reference/java/util/concurrent/Exchanger.html
-http://developer.android.com/reference/org/apache/http/protocol/ExecutionContext.html
-http://developer.android.com/reference/java/util/concurrent/ExecutionException.html
-http://developer.android.com/reference/java/util/concurrent/Executor.html
-http://developer.android.com/reference/java/util/concurrent/ExecutorCompletionService.html
-http://developer.android.com/reference/java/util/concurrent/Executors.html
-http://developer.android.com/reference/java/util/concurrent/ScheduledExecutorService.html
-http://developer.android.com/reference/java/util/concurrent/ThreadFactory.html
-http://developer.android.com/reference/java/util/concurrent/Future.html
-http://developer.android.com/reference/javax/crypto/ExemptionMechanism.html
-http://developer.android.com/reference/javax/crypto/ExemptionMechanismException.html
-http://developer.android.com/reference/javax/crypto/ExemptionMechanismSpi.html
-http://developer.android.com/reference/android/media/ExifInterface.html
 http://developer.android.com/reference/android/app/ExpandableListActivity.html
-http://developer.android.com/reference/java/io/Externalizable.html
-http://developer.android.com/reference/android/inputmethodservice/ExtractEditText.html
-http://developer.android.com/reference/android/view/inputmethod/ExtractedText.html
-http://developer.android.com/reference/android/view/inputmethod/ExtractedTextRequest.html
-http://developer.android.com/reference/android/media/FaceDetector.html
-http://developer.android.com/reference/android/media/FaceDetector.Face.html
-http://developer.android.com/reference/javax/xml/parsers/FactoryConfigurationError.html
-http://developer.android.com/reference/android/content/pm/FeatureInfo.html
-http://developer.android.com/reference/java/lang/reflect/Field.html
-http://developer.android.com/reference/android/renderscript/FieldPacker.html
-http://developer.android.com/reference/java/text/FieldPosition.html
-http://developer.android.com/reference/java/io/File.html
-http://developer.android.com/reference/android/renderscript/FileA3D.html
-http://developer.android.com/reference/android/renderscript/FileA3D.EntryType.html
-http://developer.android.com/reference/android/renderscript/FileA3D.IndexEntry.html
-http://developer.android.com/reference/java/nio/channels/FileChannel.html
-http://developer.android.com/reference/java/nio/channels/FileChannel.MapMode.html
-http://developer.android.com/reference/java/io/FileDescriptor.html
-http://developer.android.com/reference/org/apache/http/entity/FileEntity.html
-http://developer.android.com/reference/java/io/FileFilter.html
-http://developer.android.com/reference/java/util/logging/FileHandler.html
-http://developer.android.com/reference/java/io/FileInputStream.html
-http://developer.android.com/reference/java/nio/channels/FileLock.html
-http://developer.android.com/reference/java/nio/channels/FileLockInterruptionException.html
-http://developer.android.com/reference/java/io/FilenameFilter.html
-http://developer.android.com/reference/java/net/FileNameMap.html
-http://developer.android.com/reference/java/io/FileNotFoundException.html
-http://developer.android.com/reference/android/os/FileObserver.html
-http://developer.android.com/reference/java/io/FileOutputStream.html
-http://developer.android.com/reference/java/io/FilePermission.html
-http://developer.android.com/reference/java/io/FileReader.html
-http://developer.android.com/reference/java/io/FileWriter.html
-http://developer.android.com/reference/java/util/logging/Filter.html
-http://developer.android.com/reference/java/io/FilterInputStream.html
-http://developer.android.com/reference/java/io/FilterOutputStream.html
-http://developer.android.com/reference/java/io/FilterReader.html
-http://developer.android.com/reference/java/io/FilterWriter.html
-http://developer.android.com/reference/android/test/FlakyTest.html
-http://developer.android.com/reference/android/test/InstrumentationTestCase.html
-http://developer.android.com/reference/android/renderscript/Float2.html
-http://developer.android.com/reference/android/renderscript/Float3.html
-http://developer.android.com/reference/android/renderscript/Float4.html
-http://developer.android.com/reference/java/nio/FloatBuffer.html
-http://developer.android.com/reference/android/util/FloatMath.html
-http://developer.android.com/reference/java/lang/Math.html
-http://developer.android.com/reference/java/io/Flushable.html
-http://developer.android.com/reference/android/renderscript/Font.html
-http://developer.android.com/reference/android/renderscript/Font.Style.html
-http://developer.android.com/reference/android/text/style/ForegroundColorSpan.html
-http://developer.android.com/reference/java/text/Format.html
-http://developer.android.com/reference/java/text/Format.Field.html
-http://developer.android.com/reference/android/nfc/FormatException.html
-http://developer.android.com/reference/java/util/FormatFlagsConversionMismatchException.html
-http://developer.android.com/reference/java/util/Formattable.html
-http://developer.android.com/reference/java/util/FormattableFlags.html
-http://developer.android.com/reference/org/apache/http/FormattedHeader.html
-http://developer.android.com/reference/android/text/format/Formatter.html
-http://developer.android.com/reference/java/util/Formatter.html
-http://developer.android.com/reference/java/util/logging/Formatter.html
-http://developer.android.com/reference/java/util/logging/LogRecord.html
-http://developer.android.com/reference/java/util/Formatter.BigDecimalLayoutForm.html
-http://developer.android.com/reference/java/util/FormatterClosedException.html
-http://developer.android.com/reference/android/support/v4/app/Fragment.html
-http://developer.android.com/reference/android/app/Fragment.InstantiationException.html
-http://developer.android.com/reference/android/support/v4/app/Fragment.InstantiationException.html
 http://developer.android.com/reference/android/app/Fragment.SavedState.html
-http://developer.android.com/reference/android/support/v4/app/Fragment.SavedState.html
-http://developer.android.com/reference/android/support/v4/app/FragmentManager.html
-http://developer.android.com/reference/android/support/v4/app/FragmentActivity.html
 http://developer.android.com/reference/android/app/FragmentBreadCrumbs.html
-http://developer.android.com/reference/android/app/FragmentBreadCrumbs.OnBreadCrumbClickListener.html
-http://developer.android.com/reference/android/support/v13/app/FragmentCompat.html
+http://developer.android.com/reference/android/app/Instrumentation.ActivityMonitor.html
+http://developer.android.com/reference/android/app/Instrumentation.ActivityResult.html
+http://developer.android.com/reference/android/app/IntentService.html
+http://developer.android.com/reference/android/app/KeyguardManager.html
+http://developer.android.com/reference/android/app/KeyguardManager.KeyguardLock.html
+http://developer.android.com/reference/android/app/LauncherActivity.html
+http://developer.android.com/reference/android/app/LauncherActivity.IconResizer.html
+http://developer.android.com/reference/android/app/LauncherActivity.ListItem.html
+http://developer.android.com/reference/android/app/ListFragment.html
+http://developer.android.com/reference/android/app/LoaderManager.html
+http://developer.android.com/reference/android/app/LocalActivityManager.html
+http://developer.android.com/reference/android/app/MediaRouteActionProvider.html
+http://developer.android.com/reference/android/app/MediaRouteButton.html
+http://developer.android.com/reference/android/app/NativeActivity.html
+http://developer.android.com/reference/android/app/Notification.html
+http://developer.android.com/reference/android/app/Notification.BigPictureStyle.html
+http://developer.android.com/reference/android/app/Notification.BigTextStyle.html
+http://developer.android.com/reference/android/app/Notification.Builder.html
+http://developer.android.com/reference/android/app/Notification.InboxStyle.html
+http://developer.android.com/reference/android/app/Notification.Style.html
+http://developer.android.com/reference/android/app/NotificationManager.html
+http://developer.android.com/reference/android/app/ProgressDialog.html
+http://developer.android.com/reference/android/app/SearchableInfo.html
+http://developer.android.com/reference/android/app/SearchManager.html
+http://developer.android.com/reference/android/app/TabActivity.html
+http://developer.android.com/reference/android/app/TaskStackBuilder.html
+http://developer.android.com/reference/android/app/TimePickerDialog.html
+http://developer.android.com/reference/android/app/UiModeManager.html
+http://developer.android.com/reference/android/app/WallpaperInfo.html
+http://developer.android.com/reference/android/app/WallpaperManager.html
+http://developer.android.com/reference/android/app/Fragment.InstantiationException.html
+http://developer.android.com/reference/android/app/PendingIntent.CanceledException.html
+http://developer.android.com/reference/android/inputmethodservice/AbstractInputMethodService.html
+http://developer.android.com/reference/android/speech/RecognitionService.html
+http://developer.android.com/reference/android/service/textservice/SpellCheckerService.html
+http://developer.android.com/reference/android/speech/tts/TextToSpeechService.html
+http://developer.android.com/reference/android/net/VpnService.html
+http://developer.android.com/reference/android/service/wallpaper/WallpaperService.html
+http://developer.android.com/reference/android/inputmethodservice/InputMethodService.html
+http://developer.android.com/reference/android/R.styleable.html
+http://developer.android.com/guide/topics/fundamentals/services.html
+http://developer.android.com/guide/developing/tools/aidl.html
+http://developer.android.com/guide/topics/security/security.html
+http://developer.android.com/reference/android/os/Messenger.html
+http://developer.android.com/reference/android/accounts/AccountManager.html
+http://developer.android.com/reference/android/text/ClipboardManager.html
+http://developer.android.com/reference/android/net/ConnectivityManager.html
+http://developer.android.com/reference/android/os/DropBoxManager.html
+http://developer.android.com/reference/android/hardware/input/InputManager.html
+http://developer.android.com/reference/android/view/LayoutInflater.html
+http://developer.android.com/reference/android/location/LocationManager.html
+http://developer.android.com/reference/android/media/MediaRouter.html
+http://developer.android.com/reference/android/nfc/NfcManager.html
+http://developer.android.com/reference/android/os/PowerManager.html
+http://developer.android.com/reference/android/hardware/SensorManager.html
+http://developer.android.com/reference/android/os/storage/StorageManager.html
+http://developer.android.com/reference/android/telephony/TelephonyManager.html
+http://developer.android.com/reference/android/view/textservice/TextServicesManager.html
+http://developer.android.com/reference/android/hardware/usb/UsbManager.html
+http://developer.android.com/reference/android/os/Vibrator.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.html
+http://developer.android.com/reference/android/net/wifi/WifiManager.html
+http://developer.android.com/reference/android/view/WindowManager.html
+http://developer.android.com/reference/java/io/FileDescriptor.html
+http://developer.android.com/reference/android/content/pm/ApplicationInfo.html
+http://developer.android.com/reference/android/content/res/AssetManager.html
+http://developer.android.com/reference/java/io/File.html
+http://developer.android.com/reference/java/lang/ClassLoader.html
+http://developer.android.com/reference/android/os/Environment.html
+http://developer.android.com/reference/android/os/Looper.html
+http://developer.android.com/reference/android/content/res/Resources.Theme.html
+http://developer.android.com/reference/java/io/FileInputStream.html
+http://developer.android.com/reference/java/io/FileOutputStream.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.CursorFactory.html
+http://developer.android.com/reference/android/database/DatabaseErrorHandler.html
+http://developer.android.com/reference/java/util/Formatter.html
+http://developer.android.com/reference/android/os/AsyncTask.html
+http://developer.android.com/reference/android/content/pm/ServiceInfo.html
+http://developer.android.com/reference/android/appwidget/AppWidgetHost.html
+http://developer.android.com/reference/android/view/InputDevice.html
+http://developer.android.com/guide/topics/fundamentals/activities.html
 http://developer.android.com/guide/topics/fundamentals/fragments.html
-http://developer.android.com/reference/android/app/FragmentManager.BackStackEntry.html
+http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html
+http://developer.android.com/reference/java/lang/IllegalStateException.html
+http://developer.android.com/reference/javax/xml/namespace/NamespaceContext.html
+http://developer.android.com/reference/javax/xml/transform/Source.html
+http://developer.android.com/reference/javax/xml/XMLConstants.html
+http://developer.android.com/reference/javax/xml/transform/Transformer.html
+http://developer.android.com/reference/javax/sql/CommonDataSource.html
+http://developer.android.com/reference/javax/sql/ConnectionEventListener.html
+http://developer.android.com/reference/javax/sql/ConnectionPoolDataSource.html
+http://developer.android.com/reference/javax/sql/DataSource.html
+http://developer.android.com/reference/javax/sql/PooledConnection.html
+http://developer.android.com/reference/javax/sql/RowSet.html
+http://developer.android.com/reference/javax/sql/RowSetInternal.html
+http://developer.android.com/reference/javax/sql/RowSetListener.html
+http://developer.android.com/reference/javax/sql/RowSetMetaData.html
+http://developer.android.com/reference/javax/sql/RowSetReader.html
+http://developer.android.com/reference/javax/sql/RowSetWriter.html
+http://developer.android.com/reference/javax/sql/StatementEventListener.html
+http://developer.android.com/reference/javax/sql/ConnectionEvent.html
+http://developer.android.com/reference/javax/sql/RowSetEvent.html
+http://developer.android.com/reference/javax/sql/StatementEvent.html
+http://developer.android.com/reference/android/view/animation/Interpolator.html
+http://developer.android.com/reference/android/view/ViewConfiguration.html
+http://developer.android.com/reference/android/view/accessibility/AccessibilityManager.AccessibilityStateChangeListener.html
+http://developer.android.com/reference/android/os/Parcelable.Creator.html
+http://developer.android.com/reference/android/os/Parcel.html
+http://developer.android.com/reference/android/net/wifi/ScanResult.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.AuthAlgorithm.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.GroupCipher.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.KeyMgmt.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.PairwiseCipher.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.Protocol.html
+http://developer.android.com/reference/android/net/wifi/WifiConfiguration.Status.html
+http://developer.android.com/reference/android/net/wifi/WifiInfo.html
+http://developer.android.com/reference/android/net/wifi/WifiManager.MulticastLock.html
+http://developer.android.com/reference/android/net/wifi/WifiManager.WifiLock.html
+http://developer.android.com/reference/android/net/wifi/WpsInfo.html
+http://developer.android.com/reference/android/net/wifi/SupplicantState.html
+http://developer.android.com/reference/java/security/spec/AlgorithmParameterSpec.html
+http://developer.android.com/reference/java/nio/ByteBuffer.html
+http://developer.android.com/reference/android/test/PerformanceTestCase.html
+http://developer.android.com/reference/android/test/PerformanceTestCase.Intermediates.html
+http://developer.android.com/reference/android/test/TestSuiteProvider.html
+http://developer.android.com/reference/android/test/ActivityInstrumentationTestCase.html
+http://developer.android.com/reference/android/test/ActivityInstrumentationTestCase2.html
+http://developer.android.com/reference/android/test/ActivityTestCase.html
+http://developer.android.com/reference/android/test/ActivityUnitTestCase.html
+http://developer.android.com/reference/android/test/AndroidTestCase.html
+http://developer.android.com/reference/android/test/AndroidTestRunner.html
+http://developer.android.com/reference/android/test/ApplicationTestCase.html
+http://developer.android.com/reference/android/test/InstrumentationTestCase.html
+http://developer.android.com/reference/android/test/InstrumentationTestRunner.html
+http://developer.android.com/reference/android/test/InstrumentationTestSuite.html
+http://developer.android.com/reference/android/test/IsolatedContext.html
+http://developer.android.com/reference/android/test/LoaderTestCase.html
+http://developer.android.com/reference/android/test/MoreAsserts.html
+http://developer.android.com/reference/android/test/ProviderTestCase.html
+http://developer.android.com/reference/android/test/ProviderTestCase2.html
+http://developer.android.com/reference/android/test/RenamingDelegatingContext.html
+http://developer.android.com/reference/android/test/ServiceTestCase.html
+http://developer.android.com/reference/android/test/SingleLaunchActivityTestCase.html
+http://developer.android.com/reference/android/test/SyncBaseInstrumentation.html
+http://developer.android.com/reference/android/test/TouchUtils.html
+http://developer.android.com/reference/android/test/ViewAsserts.html
+http://developer.android.com/reference/android/test/AssertionFailedError.html
+http://developer.android.com/reference/android/test/ComparisonFailure.html
+http://developer.android.com/reference/junit/framework/TestCase.html
+http://developer.android.com/reference/junit/framework/TestSuite.html
+http://developer.android.com/reference/android/test/mock/MockApplication.html
+http://developer.android.com/reference/android/text/util/Rfc822Tokenizer.html
+http://developer.android.com/reference/org/apache/http/impl/DefaultConnectionReuseStrategy.html
+http://developer.android.com/reference/org/apache/http/impl/NoConnectionReuseStrategy.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpContext.html
+http://developer.android.com/reference/android/support/v4/database/DatabaseUtilsCompat.html
+http://developer.android.com/reference/android/database/DatabaseUtils.html
 http://developer.android.com/reference/android/support/v4/app/FragmentManager.BackStackEntry.html
-http://developer.android.com/reference/android/support/v4/app/FragmentTransaction.html
-http://developer.android.com/reference/android/app/FragmentManager.OnBackStackChangedListener.html
 http://developer.android.com/reference/android/support/v4/app/FragmentManager.OnBackStackChangedListener.html
-http://developer.android.com/reference/android/support/v13/app/FragmentPagerAdapter.html
-http://developer.android.com/reference/android/support/v4/view/PagerAdapter.html
+http://developer.android.com/reference/android/support/v4/app/ActivityCompat.html
+http://developer.android.com/reference/android/support/v4/app/Fragment.html
+http://developer.android.com/reference/android/support/v4/app/Fragment.SavedState.html
+http://developer.android.com/reference/android/support/v4/app/FragmentActivity.html
+http://developer.android.com/reference/android/support/v4/app/FragmentManager.html
 http://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html
-http://developer.android.com/reference/android/support/v13/app/FragmentStatePagerAdapter.html
 http://developer.android.com/reference/android/support/v4/app/FragmentStatePagerAdapter.html
-http://developer.android.com/reference/java/nio/channels/GatheringByteChannel.html
-http://developer.android.com/reference/java/security/GeneralSecurityException.html
-http://developer.android.com/reference/java/lang/reflect/GenericArrayType.html
-http://developer.android.com/reference/java/lang/reflect/GenericDeclaration.html
-http://developer.android.com/reference/java/lang/reflect/GenericSignatureFormatError.html
-http://developer.android.com/reference/android/location/Geocoder.html
-http://developer.android.com/reference/android/webkit/GeolocationPermissions.html
-http://developer.android.com/reference/android/webkit/GeolocationPermissions.Callback.html
-http://developer.android.com/reference/android/hardware/GeomagneticField.html
-http://developer.android.com/reference/android/gesture/Gesture.html
-http://developer.android.com/reference/android/gesture/GestureLibraries.html
-http://developer.android.com/reference/android/gesture/GestureLibrary.html
-http://developer.android.com/reference/android/gesture/GestureOverlayView.html
-http://developer.android.com/reference/android/gesture/GestureOverlayView.OnGestureListener.html
-http://developer.android.com/reference/android/gesture/GestureOverlayView.OnGesturePerformedListener.html
-http://developer.android.com/reference/android/gesture/GestureOverlayView.OnGesturingListener.html
-http://developer.android.com/reference/android/gesture/GesturePoint.html
-http://developer.android.com/reference/android/gesture/GestureStore.html
-http://developer.android.com/reference/android/gesture/GestureStroke.html
-http://developer.android.com/reference/android/gesture/GestureUtils.html
-http://developer.android.com/reference/android/text/GetChars.html
-http://developer.android.com/reference/javax/microedition/khronos/opengles/GL.html
-http://developer.android.com/reference/javax/microedition/khronos/opengles/GL10.html
-http://developer.android.com/reference/javax/microedition/khronos/opengles/GL10Ext.html
-http://developer.android.com/reference/javax/microedition/khronos/opengles/GL11.html
-http://developer.android.com/reference/javax/microedition/khronos/opengles/GL11Ext.html
-http://developer.android.com/reference/javax/microedition/khronos/opengles/GL11ExtensionPack.html
-http://developer.android.com/reference/android/opengl/GLDebugHelper.html
-http://developer.android.com/reference/android/opengl/GLES10.html
-http://developer.android.com/reference/android/opengl/GLES10Ext.html
-http://developer.android.com/reference/android/opengl/GLES11.html
-http://developer.android.com/reference/android/opengl/GLException.html
-http://developer.android.com/reference/android/opengl/GLSurfaceView.EGLConfigChooser.html
-http://developer.android.com/reference/android/opengl/GLSurfaceView.EGLContextFactory.html
-http://developer.android.com/reference/android/opengl/GLSurfaceView.EGLWindowSurfaceFactory.html
-http://developer.android.com/reference/android/opengl/GLSurfaceView.GLWrapper.html
-http://developer.android.com/reference/android/opengl/GLSurfaceView.Renderer.html
-http://developer.android.com/reference/android/opengl/GLU.html
-http://developer.android.com/reference/android/opengl/GLUtils.html
-http://developer.android.com/reference/android/location/GpsSatellite.html
-http://developer.android.com/reference/android/location/GpsStatus.html
-http://developer.android.com/reference/android/location/GpsStatus.Listener.html
-http://developer.android.com/reference/android/location/GpsStatus.NmeaListener.html
-http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html
-http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.Orientation.html
-http://developer.android.com/reference/java/util/GregorianCalendar.html
-http://developer.android.com/reference/android/telephony/gsm/GsmCellLocation.html
-http://developer.android.com/reference/java/security/Guard.html
-http://developer.android.com/reference/java/security/GuardedObject.html
-http://developer.android.com/reference/java/util/zip/GZIPInputStream.html
-http://developer.android.com/reference/java/util/zip/GZIPOutputStream.html
-http://developer.android.com/reference/android/os/MessageQueue.html
+http://developer.android.com/reference/android/support/v4/app/FragmentTransaction.html
+http://developer.android.com/reference/android/support/v4/app/ListFragment.html
+http://developer.android.com/reference/android/support/v4/app/LoaderManager.html
+http://developer.android.com/reference/android/support/v4/app/NavUtils.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Action.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.BigPictureStyle.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.BigTextStyle.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.InboxStyle.html
+http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Style.html
+http://developer.android.com/reference/android/support/v4/app/ServiceCompat.html
+http://developer.android.com/reference/android/support/v4/app/ShareCompat.html
+http://developer.android.com/reference/android/support/v4/app/ShareCompat.IntentBuilder.html
+http://developer.android.com/reference/android/support/v4/app/ShareCompat.IntentReader.html
+http://developer.android.com/reference/android/support/v4/app/TaskStackBuilder.html
+http://developer.android.com/reference/android/support/v4/app/TaskStackBuilderHoneycomb.html
+http://developer.android.com/reference/android/support/v4/app/Fragment.InstantiationException.html
+http://developer.android.com/reference/android/support/v4/view/PagerAdapter.html
+http://developer.android.com/reference/org/apache/http/impl/conn/AbstractClientConnAdapter.html
+http://developer.android.com/reference/org/apache/http/impl/AbstractHttpClientConnection.html
+http://developer.android.com/reference/org/apache/http/impl/conn/AbstractPooledConnAdapter.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/BasicPooledConnAdapter.html
+http://developer.android.com/reference/org/apache/http/impl/conn/DefaultClientConnection.html
+http://developer.android.com/reference/org/apache/http/impl/DefaultHttpClientConnection.html
+http://developer.android.com/reference/org/apache/http/conn/ManagedClientConnection.html
+http://developer.android.com/reference/org/apache/http/conn/OperatedClientConnection.html
+http://developer.android.com/reference/org/apache/http/impl/conn/SingleClientConnManager.ConnAdapter.html
+http://developer.android.com/reference/org/apache/http/impl/SocketHttpClientConnection.html
+http://developer.android.com/reference/org/apache/http/impl/conn/AbstractPoolEntry.html
+http://developer.android.com/reference/java/io/IOException.html
+http://developer.android.com/reference/org/apache/http/auth/params/AuthPNames.html
+http://developer.android.com/reference/org/apache/http/auth/params/AuthParamBean.html
+http://developer.android.com/reference/org/apache/http/auth/params/AuthParams.html
+http://developer.android.com/reference/android/content/pm/LabeledIntent.html
+http://developer.android.com/guide/topics/intents/intents-filters.html
+http://developer.android.com/reference/android/view/Menu.html
+http://developer.android.com/reference/java/lang/Integer.html
+http://developer.android.com/reference/android/content/pm/ActivityInfo.html
+http://developer.android.com/reference/android/os/BatteryManager.html
+http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html
+http://developer.android.com/reference/java/net/URISyntaxException.html
+http://developer.android.com/shareables/training/EffectiveNavigation.zip
+http://developer.android.com/reference/java/lang/System.html
+http://developer.android.com/reference/android/os/CancellationSignal.OnCancelListener.html
 http://developer.android.com/reference/android/os/Handler.Callback.html
-http://developer.android.com/reference/org/xml/sax/HandlerBase.html
-http://developer.android.com/reference/javax/net/ssl/HandshakeCompletedEvent.html
-http://developer.android.com/reference/javax/net/ssl/HandshakeCompletedListener.html
-http://developer.android.com/reference/java/util/HashMap.html
-http://developer.android.com/reference/java/util/HashSet.html
-http://developer.android.com/reference/java/util/Hashtable.html
-http://developer.android.com/reference/org/apache/http/Header.html
-http://developer.android.com/reference/org/apache/http/HeaderElement.html
-http://developer.android.com/reference/org/apache/http/message/HeaderGroup.html
-http://developer.android.com/reference/org/apache/http/message/HeaderValueFormatter.html
-http://developer.android.com/reference/org/apache/http/message/HeaderValueParser.html
-http://developer.android.com/reference/android/text/method/HideReturnsTransformationMethod.html
-http://developer.android.com/reference/org/apache/http/conn/scheme/HostNameResolver.html
-http://developer.android.com/reference/javax/net/ssl/HostnameVerifier.html
-http://developer.android.com/reference/android/text/Html.html
-http://developer.android.com/reference/android/text/Html.ImageGetter.html
-http://developer.android.com/reference/android/text/Html.TagHandler.html
-http://developer.android.com/reference/org/apache/http/protocol/HTTP.html
-http://developer.android.com/reference/org/apache/http/params/HttpAbstractParamBean.html
-http://developer.android.com/reference/android/webkit/HttpAuthHandler.html
-http://developer.android.com/reference/org/apache/http/client/HttpClient.html
-http://developer.android.com/reference/org/apache/http/client/params/HttpClientParams.html
-http://developer.android.com/reference/org/apache/http/HttpConnection.html
-http://developer.android.com/reference/org/apache/http/HttpConnectionMetrics.html
-http://developer.android.com/reference/org/apache/http/impl/HttpConnectionMetricsImpl.html
-http://developer.android.com/reference/org/apache/http/params/HttpConnectionParamBean.html
-http://developer.android.com/reference/org/apache/http/params/HttpConnectionParams.html
-http://developer.android.com/reference/java/net/HttpCookie.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpDateGenerator.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpDelete.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpEntityEnclosingRequestBase.html
-http://developer.android.com/reference/org/apache/http/entity/HttpEntityWrapper.html
-http://developer.android.com/reference/org/apache/http/HttpException.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpExpectationVerifier.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpGet.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpHead.html
-http://developer.android.com/reference/org/apache/http/HttpInetConnection.html
-http://developer.android.com/reference/org/apache/http/HttpMessage.html
-http://developer.android.com/reference/org/apache/http/io/HttpMessageParser.html
-http://developer.android.com/reference/org/apache/http/io/HttpMessageWriter.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpOptions.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpPost.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpProcessor.html
-http://developer.android.com/reference/org/apache/http/params/HttpProtocolParamBean.html
-http://developer.android.com/reference/org/apache/http/params/HttpProtocolParams.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpPut.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpRequestBase.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpRequestExecutor.html
-http://developer.android.com/reference/org/apache/http/HttpRequestFactory.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpRequestHandler.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpRequestHandlerRegistry.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpRequestHandlerResolver.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpRequestInterceptorList.html
-http://developer.android.com/reference/org/apache/http/impl/io/HttpRequestParser.html
-http://developer.android.com/reference/org/apache/http/impl/io/HttpRequestWriter.html
-http://developer.android.com/reference/org/apache/http/HttpResponse.html
-http://developer.android.com/reference/android/net/http/HttpResponseCache.html
-http://developer.android.com/reference/org/apache/http/client/HttpResponseException.html
-http://developer.android.com/reference/org/apache/http/HttpResponseFactory.html
-http://developer.android.com/reference/org/apache/http/HttpResponseInterceptor.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpResponseInterceptorList.html
-http://developer.android.com/reference/org/apache/http/impl/io/HttpResponseParser.html
-http://developer.android.com/reference/org/apache/http/impl/io/HttpResponseWriter.html
-http://developer.android.com/reference/java/net/HttpRetryException.html
-http://developer.android.com/reference/org/apache/http/HttpServerConnection.html
-http://developer.android.com/reference/org/apache/http/protocol/HttpService.html
-http://developer.android.com/reference/org/apache/http/HttpStatus.html
-http://developer.android.com/reference/javax/net/ssl/HttpsURLConnection.html
-http://developer.android.com/reference/java/net/HttpURLConnection.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpTrace.html
-http://developer.android.com/reference/org/apache/http/io/HttpTransportMetrics.html
-http://developer.android.com/reference/org/apache/http/impl/io/HttpTransportMetricsImpl.html
-http://developer.android.com/reference/org/apache/http/client/methods/HttpUriRequest.html
-http://developer.android.com/reference/java/net/URLConnection.html
-http://developer.android.com/reference/org/apache/http/HttpVersion.html
 http://developer.android.com/reference/android/os/IBinder.DeathRecipient.html
-http://developer.android.com/reference/android/text/style/IconMarginSpan.html
-http://developer.android.com/reference/java/security/Identity.html
-http://developer.android.com/reference/java/security/Principal.html
-http://developer.android.com/reference/java/security/KeyStore.html
-http://developer.android.com/reference/java/util/IdentityHashMap.html
-http://developer.android.com/reference/org/apache/http/impl/io/IdentityInputStream.html
-http://developer.android.com/reference/org/apache/http/impl/io/IdentityOutputStream.html
-http://developer.android.com/reference/java/security/IdentityScope.html
-http://developer.android.com/reference/org/apache/http/impl/conn/IdleConnectionHandler.html
-http://developer.android.com/reference/java/net/IDN.html
 http://developer.android.com/reference/android/os/IInterface.html
-http://developer.android.com/reference/java/lang/IllegalAccessError.html
+http://developer.android.com/reference/android/os/MessageQueue.IdleHandler.html
+http://developer.android.com/reference/android/os/Parcelable.ClassLoaderCreator.html
+http://developer.android.com/reference/android/os/RecoverySystem.ProgressListener.html
+http://developer.android.com/reference/android/os/Binder.html
+http://developer.android.com/reference/android/os/Build.html
+http://developer.android.com/reference/android/os/Build.VERSION.html
+http://developer.android.com/reference/android/os/ConditionVariable.html
+http://developer.android.com/reference/android/os/CountDownTimer.html
+http://developer.android.com/reference/android/os/Debug.InstructionCount.html
+http://developer.android.com/reference/android/os/Debug.MemoryInfo.html
+http://developer.android.com/reference/android/os/DropBoxManager.Entry.html
+http://developer.android.com/reference/android/os/FileObserver.html
+http://developer.android.com/reference/android/os/HandlerThread.html
+http://developer.android.com/reference/android/os/MemoryFile.html
+http://developer.android.com/reference/android/os/Message.html
+http://developer.android.com/reference/android/os/MessageQueue.html
+http://developer.android.com/reference/android/os/ParcelFileDescriptor.AutoCloseInputStream.html
+http://developer.android.com/reference/android/os/ParcelFileDescriptor.AutoCloseOutputStream.html
+http://developer.android.com/reference/android/os/ParcelUuid.html
+http://developer.android.com/reference/android/os/PatternMatcher.html
+http://developer.android.com/reference/android/os/PowerManager.WakeLock.html
+http://developer.android.com/reference/android/os/Process.html
+http://developer.android.com/reference/android/os/RecoverySystem.html
+http://developer.android.com/reference/android/os/RemoteCallbackList.html
+http://developer.android.com/reference/android/os/ResultReceiver.html
+http://developer.android.com/reference/android/os/StatFs.html
+http://developer.android.com/reference/android/os/StrictMode.html
+http://developer.android.com/reference/android/os/StrictMode.ThreadPolicy.html
+http://developer.android.com/reference/android/os/StrictMode.ThreadPolicy.Builder.html
+http://developer.android.com/reference/android/os/StrictMode.VmPolicy.html
+http://developer.android.com/reference/android/os/StrictMode.VmPolicy.Builder.html
+http://developer.android.com/reference/android/os/SystemClock.html
+http://developer.android.com/reference/android/os/TokenWatcher.html
+http://developer.android.com/reference/android/os/WorkSource.html
+http://developer.android.com/reference/android/os/AsyncTask.Status.html
+http://developer.android.com/reference/android/os/BadParcelableException.html
+http://developer.android.com/reference/android/os/DeadObjectException.html
+http://developer.android.com/reference/android/os/NetworkOnMainThreadException.html
+http://developer.android.com/reference/android/os/ParcelFormatException.html
+http://developer.android.com/reference/android/os/RemoteException.html
+http://developer.android.com/reference/android/os/TransactionTooLargeException.html
+http://developer.android.com/reference/java/lang/Appendable.html
+http://developer.android.com/reference/java/lang/Comparable.html
+http://developer.android.com/reference/java/lang/Iterable.html
+http://developer.android.com/reference/java/lang/Readable.html
+http://developer.android.com/reference/java/lang/Thread.UncaughtExceptionHandler.html
+http://developer.android.com/reference/java/lang/Boolean.html
+http://developer.android.com/reference/java/lang/Byte.html
+http://developer.android.com/reference/java/lang/Character.html
+http://developer.android.com/reference/java/lang/Character.Subset.html
+http://developer.android.com/reference/java/lang/Character.UnicodeBlock.html
+http://developer.android.com/reference/java/lang/Compiler.html
+http://developer.android.com/reference/java/lang/Double.html
+http://developer.android.com/reference/java/lang/Enum.html
+http://developer.android.com/reference/java/lang/InheritableThreadLocal.html
+http://developer.android.com/reference/java/lang/Long.html
+http://developer.android.com/reference/java/lang/Math.html
+http://developer.android.com/reference/java/lang/Number.html
+http://developer.android.com/reference/java/lang/Package.html
+http://developer.android.com/reference/java/lang/Process.html
+http://developer.android.com/reference/java/lang/ProcessBuilder.html
+http://developer.android.com/reference/java/lang/Runtime.html
+http://developer.android.com/reference/java/lang/RuntimePermission.html
+http://developer.android.com/reference/java/lang/SecurityManager.html
+http://developer.android.com/reference/java/lang/Short.html
+http://developer.android.com/reference/java/lang/StrictMath.html
+http://developer.android.com/reference/java/lang/StringBuffer.html
+http://developer.android.com/reference/java/lang/StringBuilder.html
+http://developer.android.com/reference/java/lang/Thread.html
+http://developer.android.com/reference/java/lang/ThreadGroup.html
+http://developer.android.com/reference/java/lang/ThreadLocal.html
+http://developer.android.com/reference/java/lang/Void.html
+http://developer.android.com/reference/java/lang/Thread.State.html
+http://developer.android.com/reference/java/lang/ArithmeticException.html
+http://developer.android.com/reference/java/lang/ArrayIndexOutOfBoundsException.html
+http://developer.android.com/reference/java/lang/ArrayStoreException.html
+http://developer.android.com/reference/java/lang/ClassCastException.html
+http://developer.android.com/reference/java/lang/ClassNotFoundException.html
+http://developer.android.com/reference/java/lang/EnumConstantNotPresentException.html
 http://developer.android.com/reference/java/lang/IllegalAccessException.html
+http://developer.android.com/reference/java/lang/IllegalMonitorStateException.html
+http://developer.android.com/reference/java/lang/IllegalThreadStateException.html
+http://developer.android.com/reference/java/lang/IndexOutOfBoundsException.html
+http://developer.android.com/reference/java/lang/InstantiationException.html
+http://developer.android.com/reference/java/lang/InterruptedException.html
+http://developer.android.com/reference/java/lang/NegativeArraySizeException.html
+http://developer.android.com/reference/java/lang/NoSuchFieldException.html
+http://developer.android.com/reference/java/lang/NoSuchMethodException.html
+http://developer.android.com/reference/java/lang/NumberFormatException.html
+http://developer.android.com/reference/java/lang/StringIndexOutOfBoundsException.html
+http://developer.android.com/reference/java/lang/TypeNotPresentException.html
+http://developer.android.com/reference/java/lang/UnsupportedOperationException.html
+http://developer.android.com/reference/java/lang/AbstractMethodError.html
+http://developer.android.com/reference/java/lang/AssertionError.html
+http://developer.android.com/reference/java/lang/ClassCircularityError.html
+http://developer.android.com/reference/java/lang/ClassFormatError.html
+http://developer.android.com/reference/java/lang/Error.html
+http://developer.android.com/reference/java/lang/ExceptionInInitializerError.html
+http://developer.android.com/reference/java/lang/IllegalAccessError.html
+http://developer.android.com/reference/java/lang/IncompatibleClassChangeError.html
+http://developer.android.com/reference/java/lang/InstantiationError.html
+http://developer.android.com/reference/java/lang/InternalError.html
+http://developer.android.com/reference/java/lang/LinkageError.html
+http://developer.android.com/reference/java/lang/NoClassDefFoundError.html
+http://developer.android.com/reference/java/lang/NoSuchFieldError.html
+http://developer.android.com/reference/java/lang/NoSuchMethodError.html
+http://developer.android.com/reference/java/lang/OutOfMemoryError.html
+http://developer.android.com/reference/java/lang/StackOverflowError.html
+http://developer.android.com/reference/java/lang/ThreadDeath.html
+http://developer.android.com/reference/java/lang/UnknownError.html
+http://developer.android.com/reference/java/lang/UnsatisfiedLinkError.html
+http://developer.android.com/reference/java/lang/UnsupportedClassVersionError.html
+http://developer.android.com/reference/java/lang/VerifyError.html
+http://developer.android.com/reference/java/lang/VirtualMachineError.html
+http://developer.android.com/reference/java/io/Closeable.html
+http://developer.android.com/shareables/sample_images.zip
+http://developer.android.com/reference/android/os/storage/OnObbStateChangeListener.html
+http://developer.android.com/reference/android/view/ActionProvider.VisibilityListener.html
+http://developer.android.com/reference/android/view/Choreographer.FrameCallback.html
+http://developer.android.com/reference/android/view/CollapsibleActionView.html
+http://developer.android.com/reference/android/view/GestureDetector.OnDoubleTapListener.html
+http://developer.android.com/reference/android/view/GestureDetector.OnGestureListener.html
+http://developer.android.com/reference/android/view/InputQueue.Callback.html
+http://developer.android.com/reference/android/view/LayoutInflater.Factory.html
+http://developer.android.com/reference/android/view/LayoutInflater.Factory2.html
+http://developer.android.com/reference/android/view/LayoutInflater.Filter.html
+http://developer.android.com/reference/android/view/MenuItem.html
+http://developer.android.com/reference/android/view/MenuItem.OnActionExpandListener.html
+http://developer.android.com/reference/android/view/MenuItem.OnMenuItemClickListener.html
+http://developer.android.com/reference/android/view/ScaleGestureDetector.OnScaleGestureListener.html
+http://developer.android.com/reference/android/view/SubMenu.html
+http://developer.android.com/reference/android/view/SurfaceHolder.html
+http://developer.android.com/reference/android/view/SurfaceHolder.Callback.html
+http://developer.android.com/reference/android/view/SurfaceHolder.Callback2.html
+http://developer.android.com/reference/android/view/TextureView.SurfaceTextureListener.html
+http://developer.android.com/reference/android/view/ViewStub.OnInflateListener.html
+http://developer.android.com/reference/android/view/ViewTreeObserver.OnDrawListener.html
+http://developer.android.com/reference/android/view/ViewTreeObserver.OnGlobalFocusChangeListener.html
+http://developer.android.com/reference/android/view/ViewTreeObserver.OnPreDrawListener.html
+http://developer.android.com/reference/android/view/ViewTreeObserver.OnScrollChangedListener.html
+http://developer.android.com/reference/android/view/Window.Callback.html
+http://developer.android.com/reference/android/view/AbsSavedState.html
+http://developer.android.com/reference/android/view/ActionProvider.html
+http://developer.android.com/reference/android/view/Choreographer.html
+http://developer.android.com/reference/android/view/ContextThemeWrapper.html
+http://developer.android.com/reference/android/view/Display.html
+http://developer.android.com/reference/android/view/FocusFinder.html
+http://developer.android.com/reference/android/view/GestureDetector.html
+http://developer.android.com/reference/android/view/GestureDetector.SimpleOnGestureListener.html
+http://developer.android.com/reference/android/view/Gravity.html
+http://developer.android.com/reference/android/view/HapticFeedbackConstants.html
+http://developer.android.com/reference/android/view/InputDevice.MotionRange.html
+http://developer.android.com/reference/android/view/InputEvent.html
+http://developer.android.com/reference/android/view/InputQueue.html
+http://developer.android.com/reference/android/view/KeyCharacterMap.html
+http://developer.android.com/reference/android/view/KeyCharacterMap.KeyData.html
+http://developer.android.com/reference/android/view/MenuInflater.html
+http://developer.android.com/reference/android/view/MotionEvent.PointerCoords.html
+http://developer.android.com/reference/android/view/MotionEvent.PointerProperties.html
+http://developer.android.com/reference/android/view/OrientationEventListener.html
+http://developer.android.com/reference/android/view/OrientationListener.html
+http://developer.android.com/reference/android/view/ScaleGestureDetector.html
+http://developer.android.com/reference/android/view/ScaleGestureDetector.SimpleOnScaleGestureListener.html
+http://developer.android.com/reference/android/view/SoundEffectConstants.html
+http://developer.android.com/reference/android/view/Surface.html
+http://developer.android.com/reference/android/view/SurfaceView.html
+http://developer.android.com/reference/android/view/TextureView.html
+http://developer.android.com/reference/android/view/VelocityTracker.html
+http://developer.android.com/reference/android/view/View.BaseSavedState.html
+http://developer.android.com/reference/android/view/ViewDebug.html
+http://developer.android.com/reference/android/view/ViewGroup.MarginLayoutParams.html
+http://developer.android.com/reference/android/view/ViewStub.html
+http://developer.android.com/reference/android/view/Window.html
+http://developer.android.com/reference/android/view/ViewDebug.HierarchyTraceType.html
+http://developer.android.com/reference/android/view/ViewDebug.RecyclerTraceType.html
+http://developer.android.com/reference/android/view/InflateException.html
+http://developer.android.com/reference/android/view/KeyCharacterMap.UnavailableException.html
+http://developer.android.com/reference/android/view/Surface.OutOfResourcesException.html
+http://developer.android.com/reference/android/view/SurfaceHolder.BadSurfaceTypeException.html
+http://developer.android.com/reference/android/view/WindowManager.BadTokenException.html
+http://developer.android.com/reference/android/content/pm/ResolveInfo.html
+http://developer.android.com/reference/org/apache/http/impl/DefaultHttpServerConnection.html
+http://developer.android.com/reference/org/apache/http/impl/SocketHttpServerConnection.html
+http://developer.android.com/reference/java/net/InetAddress.html
+http://developer.android.com/reference/android/media/effect/EffectUpdateListener.html
+http://developer.android.com/reference/android/media/effect/Effect.html
+http://developer.android.com/reference/android/media/effect/EffectContext.html
+http://developer.android.com/reference/android/media/effect/EffectFactory.html
+http://developer.android.com/reference/android/opengl/GLES20.html
+http://developer.android.com/reference/java/sql/ResultSetMetaData.html
+http://developer.android.com/reference/java/sql/Wrapper.html
+http://developer.android.com/reference/java/sql/SQLException.html
+http://developer.android.com/reference/android/util/AndroidRuntimeException.html
+http://developer.android.com/reference/java/lang/annotation/AnnotationTypeMismatchException.html
+http://developer.android.com/reference/java/nio/BufferOverflowException.html
+http://developer.android.com/reference/java/nio/BufferUnderflowException.html
+http://developer.android.com/reference/java/util/ConcurrentModificationException.html
+http://developer.android.com/reference/java/util/EmptyStackException.html
+http://developer.android.com/reference/android/opengl/GLException.html
+http://developer.android.com/reference/java/lang/annotation/IncompleteAnnotationException.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSException.html
+http://developer.android.com/reference/java/lang/reflect/MalformedParameterizedTypeException.html
+http://developer.android.com/reference/android/media/MediaCodec.CryptoException.html
+http://developer.android.com/reference/java/util/MissingResourceException.html
+http://developer.android.com/reference/java/util/NoSuchElementException.html
+http://developer.android.com/reference/android/util/NoSuchPropertyException.html
+http://developer.android.com/reference/android/renderscript/RSRuntimeException.html
+http://developer.android.com/reference/java/util/concurrent/RejectedExecutionException.html
+http://developer.android.com/reference/java/util/concurrent/Executor.html
+http://developer.android.com/reference/android/content/res/Resources.NotFoundException.html
+http://developer.android.com/reference/android/database/StaleDataException.html
+http://developer.android.com/reference/android/util/TimeFormatException.html
+http://developer.android.com/reference/java/lang/reflect/UndeclaredThrowableException.html
+http://developer.android.com/reference/org/apache/http/impl/auth/UnsupportedDigestAlgorithmException.html
+http://developer.android.com/reference/java/nio/channels/AlreadyConnectedException.html
+http://developer.android.com/reference/java/util/concurrent/CancellationException.html
+http://developer.android.com/reference/java/nio/channels/CancelledKeyException.html
+http://developer.android.com/reference/java/nio/channels/ClosedSelectorException.html
+http://developer.android.com/reference/java/nio/channels/ConnectionPendingException.html
+http://developer.android.com/reference/android/database/CursorIndexOutOfBoundsException.html
+http://developer.android.com/reference/java/util/DuplicateFormatFlagsException.html
+http://developer.android.com/reference/java/util/FormatFlagsConversionMismatchException.html
+http://developer.android.com/reference/java/util/FormatterClosedException.html
 http://developer.android.com/reference/java/nio/channels/IllegalBlockingModeException.html
-http://developer.android.com/reference/javax/crypto/IllegalBlockSizeException.html
 http://developer.android.com/reference/java/nio/charset/IllegalCharsetNameException.html
+http://developer.android.com/reference/java/util/concurrent/FutureTask.html
+http://developer.android.com/reference/java/nio/channels/Selector.html
+http://developer.android.com/reference/java/nio/channels/SocketChannel.html
 http://developer.android.com/reference/java/util/IllegalFormatCodePointException.html
 http://developer.android.com/reference/java/util/IllegalFormatConversionException.html
 http://developer.android.com/reference/java/util/IllegalFormatException.html
 http://developer.android.com/reference/java/util/IllegalFormatFlagsException.html
 http://developer.android.com/reference/java/util/IllegalFormatPrecisionException.html
 http://developer.android.com/reference/java/util/IllegalFormatWidthException.html
-http://developer.android.com/reference/java/lang/IllegalMonitorStateException.html
 http://developer.android.com/reference/java/nio/channels/IllegalSelectorException.html
-http://developer.android.com/reference/java/lang/IllegalStateException.html
-http://developer.android.com/reference/java/lang/IllegalThreadStateException.html
-http://developer.android.com/reference/android/graphics/ImageFormat.html
-http://developer.android.com/reference/android/text/style/ImageSpan.html
-http://developer.android.com/reference/java/lang/IncompatibleClassChangeError.html
-http://developer.android.com/reference/java/lang/annotation/IncompleteAnnotationException.html
-http://developer.android.com/reference/java/beans/IndexedPropertyChangeEvent.html
-http://developer.android.com/reference/java/beans/PropertyChangeEvent.html
-http://developer.android.com/reference/java/lang/IndexOutOfBoundsException.html
-http://developer.android.com/reference/java/net/Inet4Address.html
-http://developer.android.com/reference/java/net/Inet6Address.html
-http://developer.android.com/reference/java/net/InetSocketAddress.html
-http://developer.android.com/reference/java/util/zip/Inflater.html
-http://developer.android.com/reference/java/util/zip/InflaterInputStream.html
-http://developer.android.com/reference/java/util/zip/InflaterOutputStream.html
-http://developer.android.com/reference/java/lang/InheritableThreadLocal.html
-http://developer.android.com/reference/java/lang/annotation/Inherited.html
-http://developer.android.com/reference/android/view/inputmethod/InputBinding.html
-http://developer.android.com/reference/android/view/inputmethod/InputConnectionWrapper.html
-http://developer.android.com/reference/android/text/InputFilter.html
-http://developer.android.com/reference/android/text/InputFilter.AllCaps.html
-http://developer.android.com/reference/android/text/InputFilter.LengthFilter.html
-http://developer.android.com/reference/android/hardware/input/InputManager.html
-http://developer.android.com/reference/android/hardware/input/InputManager.InputDeviceListener.html
-http://developer.android.com/reference/android/view/inputmethod/InputMethod.SessionCallback.html
-http://developer.android.com/reference/android/view/inputmethod/InputMethodInfo.html
-http://developer.android.com/reference/android/inputmethodservice/InputMethodService.html
-http://developer.android.com/reference/android/inputmethodservice/InputMethodService.InputMethodImpl.html
-http://developer.android.com/reference/android/inputmethodservice/InputMethodService.InputMethodSessionImpl.html
-http://developer.android.com/reference/android/inputmethodservice/InputMethodService.Insets.html
-http://developer.android.com/reference/android/view/inputmethod/InputMethodSession.EventCallback.html
-http://developer.android.com/reference/android/view/inputmethod/InputMethodSubtype.html
 http://developer.android.com/reference/java/util/InputMismatchException.html
-http://developer.android.com/reference/org/xml/sax/InputSource.html
-http://developer.android.com/reference/org/apache/http/entity/InputStreamEntity.html
-http://developer.android.com/reference/java/io/InputStreamReader.html
-http://developer.android.com/reference/android/text/InputType.html
-http://developer.android.com/reference/android/graphics/drawable/InsetDrawable.html
-http://developer.android.com/reference/java/lang/InstantiationError.html
-http://developer.android.com/reference/java/lang/InstantiationException.html
-http://developer.android.com/reference/android/app/Instrumentation.ActivityMonitor.html
-http://developer.android.com/reference/android/app/Instrumentation.ActivityResult.html
-http://developer.android.com/reference/android/content/pm/InstrumentationInfo.html
-http://developer.android.com/reference/android/test/InstrumentationTestRunner.html
-http://developer.android.com/reference/junit/framework/TestCase.html
-http://developer.android.com/reference/android/test/InstrumentationTestSuite.html
-http://developer.android.com/reference/junit/framework/TestSuite.html
-http://developer.android.com/reference/android/renderscript/Int2.html
-http://developer.android.com/reference/android/renderscript/Int3.html
-http://developer.android.com/reference/android/renderscript/Int4.html
-http://developer.android.com/reference/java/nio/IntBuffer.html
-http://developer.android.com/reference/java/lang/Integer.html
-http://developer.android.com/reference/android/content/Intent.FilterComparison.html
-http://developer.android.com/reference/android/content/Intent.ShortcutIconResource.html
-http://developer.android.com/reference/android/content/IntentFilter.AuthorityEntry.html
-http://developer.android.com/reference/android/content/IntentFilter.MalformedMimeTypeException.html
-http://developer.android.com/reference/android/content/IntentSender.html
-http://developer.android.com/reference/android/content/IntentSender.OnFinished.html
-http://developer.android.com/reference/android/content/IntentSender.SendIntentException.html
-http://developer.android.com/reference/java/net/InterfaceAddress.html
-http://developer.android.com/reference/java/lang/InternalError.html
-http://developer.android.com/reference/android/graphics/Interpolator.html
-http://developer.android.com/reference/android/graphics/Interpolator.Result.html
-http://developer.android.com/reference/java/io/InterruptedIOException.html
-http://developer.android.com/reference/java/nio/channels/InterruptibleChannel.html
-http://developer.android.com/reference/java/security/InvalidAlgorithmParameterException.html
-http://developer.android.com/reference/java/io/InvalidClassException.html
-http://developer.android.com/reference/java/security/InvalidKeyException.html
-http://developer.android.com/reference/java/security/spec/InvalidKeySpecException.html
 http://developer.android.com/reference/java/nio/InvalidMarkException.html
-http://developer.android.com/reference/java/io/InvalidObjectException.html
-http://developer.android.com/reference/java/security/InvalidParameterException.html
-http://developer.android.com/reference/java/security/spec/InvalidParameterSpecException.html
-http://developer.android.com/reference/java/util/prefs/InvalidPreferencesFormatException.html
-http://developer.android.com/reference/java/util/InvalidPropertiesFormatException.html
-http://developer.android.com/reference/java/lang/reflect/InvocationHandler.html
-http://developer.android.com/reference/java/lang/reflect/InvocationTargetException.html
-http://developer.android.com/reference/java/io/IOError.html
-http://developer.android.com/reference/android/nfc/tech/IsoDep.html
-http://developer.android.com/reference/android/nfc/Tag.html
-http://developer.android.com/reference/android/test/IsolatedContext.html
-http://developer.android.com/reference/java/lang/Iterable.html
-http://developer.android.com/reference/javax/crypto/spec/IvParameterSpec.html
-http://developer.android.com/reference/java/util/jar/JarEntry.html
-http://developer.android.com/reference/java/util/jar/JarException.html
-http://developer.android.com/reference/java/util/jar/JarFile.html
-http://developer.android.com/reference/java/util/jar/JarInputStream.html
-http://developer.android.com/reference/java/util/jar/JarOutputStream.html
-http://developer.android.com/reference/java/net/JarURLConnection.html
-http://developer.android.com/reference/android/media/JetPlayer.html
-http://developer.android.com/reference/android/media/JetPlayer.OnJetEventListener.html
-http://developer.android.com/reference/org/json/JSONArray.html
-http://developer.android.com/reference/org/json/JSONException.html
-http://developer.android.com/reference/org/json/JSONObject.html
-http://developer.android.com/reference/android/util/JsonReader.html
-http://developer.android.com/reference/org/json/JSONStringer.html
-http://developer.android.com/reference/android/util/JsonToken.html
-http://developer.android.com/reference/org/json/JSONTokener.html
-http://developer.android.com/reference/android/util/JsonWriter.html
-http://developer.android.com/reference/android/webkit/JsPromptResult.html
-http://developer.android.com/reference/android/webkit/JsResult.html
-http://developer.android.com/reference/android/webkit/WebChromeClient.html
-http://developer.android.com/reference/java/security/Key.html
-http://developer.android.com/reference/javax/crypto/KeyAgreement.html
-http://developer.android.com/reference/javax/crypto/KeyAgreementSpi.html
-http://developer.android.com/reference/android/inputmethodservice/Keyboard.html
-http://developer.android.com/reference/android/inputmethodservice/Keyboard.Key.html
-http://developer.android.com/reference/android/inputmethodservice/Keyboard.Row.html
-http://developer.android.com/reference/android/inputmethodservice/KeyboardView.html
-http://developer.android.com/reference/android/inputmethodservice/KeyboardView.OnKeyboardActionListener.html
-http://developer.android.com/reference/android/security/KeyChain.html
-http://developer.android.com/reference/android/security/KeyChainAliasCallback.html
-http://developer.android.com/reference/android/security/KeyChainException.html
-http://developer.android.com/reference/android/support/v4/view/KeyEventCompat.html
-http://developer.android.com/reference/java/security/KeyException.html
-http://developer.android.com/reference/java/security/KeyFactory.html
-http://developer.android.com/reference/java/security/KeyFactorySpi.html
-http://developer.android.com/reference/javax/crypto/KeyGenerator.html
-http://developer.android.com/reference/javax/crypto/KeyGeneratorSpi.html
-http://developer.android.com/reference/android/app/KeyguardManager.html
-http://developer.android.com/reference/android/app/KeyguardManager.KeyguardLock.html
-http://developer.android.com/reference/android/app/KeyguardManager.OnKeyguardExitResult.html
-http://developer.android.com/reference/java/security/KeyManagementException.html
-http://developer.android.com/reference/javax/net/ssl/KeyManager.html
-http://developer.android.com/reference/javax/net/ssl/KeyManagerFactory.html
-http://developer.android.com/reference/javax/net/ssl/KeyManagerFactorySpi.html
-http://developer.android.com/reference/java/security/KeyPair.html
-http://developer.android.com/reference/java/security/KeyPairGenerator.html
-http://developer.android.com/reference/java/security/KeyPairGeneratorSpi.html
-http://developer.android.com/reference/java/security/KeyRep.html
-http://developer.android.com/reference/java/security/KeyRep.Type.html
-http://developer.android.com/reference/java/security/spec/KeySpec.html
-http://developer.android.com/reference/java/security/KeyStore.Builder.html
-http://developer.android.com/reference/java/security/KeyStore.CallbackHandlerProtection.html
-http://developer.android.com/reference/java/security/KeyStore.Entry.html
-http://developer.android.com/reference/java/security/KeyStore.LoadStoreParameter.html
-http://developer.android.com/reference/java/security/KeyStore.PasswordProtection.html
-http://developer.android.com/reference/java/security/KeyStore.PrivateKeyEntry.html
-http://developer.android.com/reference/java/security/KeyStore.ProtectionParameter.html
-http://developer.android.com/reference/java/security/KeyStore.SecretKeyEntry.html
-http://developer.android.com/reference/java/security/KeyStore.TrustedCertificateEntry.html
-http://developer.android.com/reference/javax/net/ssl/KeyStoreBuilderParameters.html
-http://developer.android.com/reference/java/security/KeyStoreException.html
-http://developer.android.com/reference/java/security/KeyStoreSpi.html
-http://developer.android.com/reference/android/content/pm/LabeledIntent.html
-http://developer.android.com/reference/org/apache/http/util/LangUtils.html
-http://developer.android.com/reference/android/test/suitebuilder/annotation/LargeTest.html
-http://developer.android.com/reference/android/app/LauncherActivity.html
-http://developer.android.com/reference/android/app/LauncherActivity.IconResizer.html
-http://developer.android.com/reference/android/app/LauncherActivity.ListItem.html
-http://developer.android.com/reference/org/apache/http/impl/entity/LaxContentLengthStrategy.html
-http://developer.android.com/reference/android/graphics/drawable/LayerDrawable.html
-http://developer.android.com/reference/org/apache/http/conn/scheme/LayeredSocketFactory.html
-http://developer.android.com/reference/android/graphics/LayerRasterizer.html
-http://developer.android.com/reference/android/text/Layout.html
-http://developer.android.com/reference/android/text/Layout.Alignment.html
-http://developer.android.com/reference/android/text/Layout.Directions.html
-http://developer.android.com/reference/java/security/cert/LDAPCertStoreParameters.html
-http://developer.android.com/reference/android/text/style/LeadingMarginSpan.html
-http://developer.android.com/reference/android/text/style/LeadingMarginSpan.LeadingMarginSpan2.html
-http://developer.android.com/reference/android/text/style/LeadingMarginSpan.Standard.html
-http://developer.android.com/reference/java/util/logging/Level.html
-http://developer.android.com/reference/android/graphics/LightingColorFilter.html
-http://developer.android.com/reference/android/graphics/LinearGradient.html
-http://developer.android.com/reference/android/text/style/LineBackgroundSpan.html
-http://developer.android.com/reference/org/apache/http/message/LineFormatter.html
-http://developer.android.com/reference/android/text/style/LineHeightSpan.html
-http://developer.android.com/reference/android/text/style/LineHeightSpan.WithDensity.html
-http://developer.android.com/reference/java/io/LineNumberInputStream.html
-http://developer.android.com/reference/java/io/LineNumberReader.html
-http://developer.android.com/reference/org/apache/http/message/LineParser.html
-http://developer.android.com/reference/java/lang/LinkageError.html
-http://developer.android.com/reference/java/util/concurrent/LinkedBlockingDeque.html
-http://developer.android.com/reference/java/util/concurrent/LinkedBlockingQueue.html
-http://developer.android.com/reference/java/util/LinkedHashSet.html
-http://developer.android.com/reference/java/util/LinkedList.html
-http://developer.android.com/reference/android/text/util/Linkify.html
-http://developer.android.com/reference/android/text/util/Linkify.MatchFilter.html
-http://developer.android.com/reference/android/text/util/Linkify.TransformFilter.html
-http://developer.android.com/reference/android/text/method/LinkMovementMethod.html
-http://developer.android.com/reference/android/support/v4/app/ListFragment.html
-http://developer.android.com/reference/java/util/ListIterator.html
-http://developer.android.com/reference/android/preference/ListPreference.html
-http://developer.android.com/reference/java/util/ListResourceBundle.html
-http://developer.android.com/reference/android/provider/LiveFolders.html
-http://developer.android.com/reference/android/content/Loader.ForceLoadContentObserver.html
-http://developer.android.com/reference/android/content/Loader.OnLoadCanceledListener.html
-http://developer.android.com/reference/android/content/Loader.OnLoadCompleteListener.html
-http://developer.android.com/reference/android/app/LoaderManager.html
-http://developer.android.com/reference/android/support/v4/app/LoaderManager.html
-http://developer.android.com/reference/android/app/LoaderManager.LoaderCallbacks.html
-http://developer.android.com/reference/android/support/v4/app/LoaderManager.LoaderCallbacks.html
-http://developer.android.com/reference/android/test/LoaderTestCase.html
-http://developer.android.com/reference/android/app/LocalActivityManager.html
-http://developer.android.com/reference/java/util/Locale.html
-http://developer.android.com/reference/android/net/LocalServerSocket.html
-http://developer.android.com/reference/android/net/LocalSocket.html
-http://developer.android.com/reference/android/net/LocalSocketAddress.html
-http://developer.android.com/reference/android/net/LocalSocketAddress.Namespace.html
-http://developer.android.com/reference/android/location/Location.html
-http://developer.android.com/reference/android/location/LocationListener.html
-http://developer.android.com/reference/android/location/LocationManager.html
-http://developer.android.com/reference/android/location/LocationProvider.html
-http://developer.android.com/reference/org/xml/sax/Locator.html
-http://developer.android.com/reference/org/xml/sax/ext/Locator2.html
-http://developer.android.com/reference/org/xml/sax/ext/Locator2Impl.html
-http://developer.android.com/reference/org/xml/sax/helpers/LocatorImpl.html
-http://developer.android.com/reference/java/util/concurrent/locks/LockSupport.html
-http://developer.android.com/reference/android/util/Log.html
-http://developer.android.com/reference/java/util/logging/Logger.html
-http://developer.android.com/reference/java/util/logging/LoggingMXBean.html
-http://developer.android.com/reference/java/util/logging/LoggingPermission.html
-http://developer.android.com/reference/org/apache/http/impl/conn/LoggingSessionInputBuffer.html
-http://developer.android.com/reference/org/apache/http/impl/conn/LoggingSessionOutputBuffer.html
-http://developer.android.com/reference/javax/security/auth/login/LoginException.html
-http://developer.android.com/reference/android/text/LoginFilter.html
-http://developer.android.com/reference/android/text/LoginFilter.PasswordFilterGMail.html
-http://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGeneric.html
-http://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail.html
-http://developer.android.com/reference/java/util/logging/LogManager.html
-http://developer.android.com/reference/android/util/LogPrinter.html
-http://developer.android.com/reference/android/util/Printer.html
-http://developer.android.com/reference/java/lang/Long.html
-http://developer.android.com/reference/android/renderscript/Long2.html
-http://developer.android.com/reference/android/renderscript/Long3.html
-http://developer.android.com/reference/android/renderscript/Long4.html
-http://developer.android.com/reference/java/nio/LongBuffer.html
-http://developer.android.com/reference/android/util/LongSparseArray.html
-http://developer.android.com/reference/android/os/Looper.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSException.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSInput.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSOutput.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSParser.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSParserFilter.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSResourceResolver.html
-http://developer.android.com/reference/org/w3c/dom/ls/LSSerializer.html
-http://developer.android.com/reference/javax/crypto/Mac.html
-http://developer.android.com/reference/javax/crypto/MacSpi.html
-http://developer.android.com/reference/android/net/MailTo.html
-http://developer.android.com/reference/org/apache/http/MalformedChunkCodingException.html
-http://developer.android.com/reference/org/apache/http/cookie/MalformedCookieException.html
-http://developer.android.com/reference/java/nio/charset/MalformedInputException.html
-http://developer.android.com/reference/android/util/MalformedJsonException.html
-http://developer.android.com/reference/java/lang/reflect/MalformedParameterizedTypeException.html
-http://developer.android.com/reference/java/net/MalformedURLException.html
-http://developer.android.com/reference/javax/net/ssl/ManagerFactoryParameters.html
-http://developer.android.com/reference/android/Manifest.html
-http://developer.android.com/reference/java/util/jar/Manifest.html
-http://developer.android.com/reference/android/Manifest.permission_group.html
-http://developer.android.com/reference/java/util/Map.Entry.html
-http://developer.android.com/reference/java/nio/MappedByteBuffer.html
-http://developer.android.com/reference/android/graphics/MaskFilter.html
-http://developer.android.com/reference/android/text/style/MaskFilterSpan.html
-http://developer.android.com/reference/java/util/regex/Matcher.html
-http://developer.android.com/reference/java/util/regex/MatchResult.html
-http://developer.android.com/reference/java/util/regex/Pattern.html
-http://developer.android.com/reference/java/math/MathContext.html
-http://developer.android.com/reference/android/opengl/Matrix.html
-http://developer.android.com/reference/android/graphics/Matrix.ScaleToFit.html
-http://developer.android.com/reference/android/renderscript/Matrix2f.html
-http://developer.android.com/reference/android/renderscript/Matrix3f.html
-http://developer.android.com/reference/android/renderscript/Matrix4f.html
-http://developer.android.com/reference/android/database/MatrixCursor.RowBuilder.html
-http://developer.android.com/reference/android/media/MediaActionSound.html
-http://developer.android.com/reference/android/media/MediaCodec.html
-http://developer.android.com/reference/android/media/MediaCodec.BufferInfo.html
-http://developer.android.com/reference/android/media/MediaCodec.CryptoException.html
-http://developer.android.com/reference/android/media/MediaCodec.CryptoInfo.html
-http://developer.android.com/reference/android/media/MediaCodecInfo.html
-http://developer.android.com/reference/android/media/MediaCodecInfo.CodecCapabilities.html
-http://developer.android.com/reference/android/media/MediaCodecInfo.CodecProfileLevel.html
-http://developer.android.com/reference/android/media/MediaCodecList.html
-http://developer.android.com/reference/android/media/MediaCrypto.html
-http://developer.android.com/reference/android/media/MediaCryptoException.html
-http://developer.android.com/reference/android/media/MediaExtractor.html
-http://developer.android.com/reference/android/media/MediaFormat.html
-http://developer.android.com/reference/android/media/MediaPlayer.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnBufferingUpdateListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnCompletionListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnErrorListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnInfoListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnPreparedListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnSeekCompleteListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnTimedTextListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.OnVideoSizeChangedListener.html
-http://developer.android.com/reference/android/media/MediaPlayer.TrackInfo.html
-http://developer.android.com/reference/android/media/MediaRecorder.html
-http://developer.android.com/reference/android/media/MediaRecorder.AudioEncoder.html
-http://developer.android.com/reference/android/media/MediaRecorder.AudioSource.html
-http://developer.android.com/reference/android/media/MediaRecorder.OnErrorListener.html
-http://developer.android.com/reference/android/media/MediaRecorder.OnInfoListener.html
-http://developer.android.com/reference/android/media/MediaRecorder.OutputFormat.html
-http://developer.android.com/reference/android/media/MediaRecorder.VideoEncoder.html
-http://developer.android.com/reference/android/media/MediaRecorder.VideoSource.html
-http://developer.android.com/reference/android/app/MediaRouteActionProvider.html
-http://developer.android.com/reference/android/app/MediaRouteButton.html
-http://developer.android.com/reference/android/media/MediaRouter.html
-http://developer.android.com/reference/android/media/MediaRouter.Callback.html
-http://developer.android.com/reference/android/media/MediaRouter.RouteCategory.html
-http://developer.android.com/reference/android/media/MediaRouter.RouteGroup.html
-http://developer.android.com/reference/android/media/MediaRouter.RouteInfo.html
-http://developer.android.com/reference/android/media/MediaRouter.SimpleCallback.html
-http://developer.android.com/reference/android/media/MediaRouter.UserRouteInfo.html
-http://developer.android.com/reference/android/media/MediaRouter.VolumeCallback.html
-http://developer.android.com/reference/android/media/MediaScannerConnection.html
-http://developer.android.com/reference/android/media/MediaScannerConnection.MediaScannerConnectionClient.html
-http://developer.android.com/reference/android/media/MediaScannerConnection.OnScanCompletedListener.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.AlbumColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Albums.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.ArtistColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Artists.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Artists.Albums.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.AudioColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Genres.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Genres.Members.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.GenresColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Playlists.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.Playlists.Members.html
-http://developer.android.com/reference/android/provider/MediaStore.Audio.PlaylistsColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Files.html
-http://developer.android.com/reference/android/provider/MediaStore.Files.FileColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Images.html
-http://developer.android.com/reference/android/provider/MediaStore.Images.ImageColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Images.Media.html
-http://developer.android.com/reference/android/provider/MediaStore.Images.Thumbnails.html
-http://developer.android.com/reference/android/provider/MediaStore.MediaColumns.html
-http://developer.android.com/reference/android/provider/MediaStore.Video.html
-http://developer.android.com/reference/android/provider/MediaStore.Video.Media.html
-http://developer.android.com/reference/android/provider/MediaStore.Video.Thumbnails.html
-http://developer.android.com/reference/android/provider/MediaStore.Video.VideoColumns.html
-http://developer.android.com/reference/android/media/MediaSyncEvent.html
-http://developer.android.com/reference/android/test/suitebuilder/annotation/MediumTest.html
-http://developer.android.com/reference/java/lang/reflect/Member.html
-http://developer.android.com/reference/android/os/MemoryFile.html
-http://developer.android.com/reference/java/util/logging/MemoryHandler.html
-http://developer.android.com/reference/android/support/v4/view/MenuCompat.html
-http://developer.android.com/reference/android/support/v4/view/MenuItemCompat.html
-http://developer.android.com/reference/android/database/MergeCursor.html
-http://developer.android.com/reference/android/renderscript/Mesh.html
-http://developer.android.com/reference/android/renderscript/Mesh.AllocationBuilder.html
-http://developer.android.com/reference/android/renderscript/Mesh.Builder.html
-http://developer.android.com/reference/android/renderscript/Mesh.Primitive.html
-http://developer.android.com/reference/android/renderscript/Mesh.TriangleMeshBuilder.html
-http://developer.android.com/reference/java/security/MessageDigest.html
-http://developer.android.com/reference/java/security/MessageDigestSpi.html
-http://developer.android.com/reference/java/text/MessageFormat.html
-http://developer.android.com/reference/java/text/MessageFormat.Field.html
-http://developer.android.com/reference/android/os/MessageQueue.IdleHandler.html
-http://developer.android.com/reference/android/text/method/MetaKeyKeyListener.html
-http://developer.android.com/reference/java/lang/reflect/Method.html
-http://developer.android.com/reference/org/apache/http/MethodNotSupportedException.html
-http://developer.android.com/reference/android/text/style/MetricAffectingSpan.html
-http://developer.android.com/reference/java/security/spec/MGF1ParameterSpec.html
-http://developer.android.com/reference/android/nfc/tech/MifareClassic.html
-http://developer.android.com/reference/android/nfc/tech/MifareUltralight.html
-http://developer.android.com/reference/android/webkit/MimeTypeMap.html
 http://developer.android.com/reference/java/util/MissingFormatArgumentException.html
 http://developer.android.com/reference/java/util/MissingFormatWidthException.html
-http://developer.android.com/reference/java/util/MissingResourceException.html
-http://developer.android.com/reference/android/test/mock/MockApplication.html
-http://developer.android.com/reference/android/test/mock/MockContentProvider.html
-http://developer.android.com/reference/android/test/mock/MockContentResolver.html
-http://developer.android.com/reference/android/test/mock/MockContext.html
-http://developer.android.com/reference/android/test/mock/MockCursor.html
-http://developer.android.com/reference/android/test/mock/MockDialogInterface.html
-http://developer.android.com/reference/android/test/mock/MockPackageManager.html
-http://developer.android.com/reference/android/test/mock/MockResources.html
-http://developer.android.com/reference/java/lang/reflect/Modifier.html
-http://developer.android.com/reference/android/util/MonthDisplayHelper.html
-http://developer.android.com/reference/android/test/MoreAsserts.html
-http://developer.android.com/reference/android/support/v4/view/MotionEventCompat.html
-http://developer.android.com/reference/android/text/method/MovementMethod.html
-http://developer.android.com/reference/android/graphics/Movie.html
-http://developer.android.com/reference/android/mtp/MtpConstants.html
-http://developer.android.com/reference/android/mtp/MtpDevice.html
-http://developer.android.com/reference/android/mtp/MtpDeviceInfo.html
-http://developer.android.com/reference/android/mtp/MtpObjectInfo.html
-http://developer.android.com/reference/android/mtp/MtpStorageInfo.html
-http://developer.android.com/reference/java/net/MulticastSocket.html
-http://developer.android.com/reference/android/preference/MultiSelectListPreference.html
-http://developer.android.com/reference/android/text/method/MultiTapKeyListener.html
-http://developer.android.com/reference/android/content/MutableContextWrapper.html
-http://developer.android.com/reference/org/w3c/dom/NamedNodeMap.html
-http://developer.android.com/reference/org/w3c/dom/NameList.html
-http://developer.android.com/reference/javax/xml/namespace/NamespaceContext.html
-http://developer.android.com/reference/org/xml/sax/helpers/NamespaceSupport.html
-http://developer.android.com/reference/org/apache/http/NameValuePair.html
-http://developer.android.com/reference/android/app/NativeActivity.html
-http://developer.android.com/reference/java/util/SortedMap.html
-http://developer.android.com/reference/java/util/SortedSet.html
-http://developer.android.com/reference/android/support/v4/app/NavUtils.html
-http://developer.android.com/reference/java/sql/NClob.html
-http://developer.android.com/reference/android/nfc/tech/Ndef.html
-http://developer.android.com/reference/android/nfc/tech/NdefFormatable.html
-http://developer.android.com/reference/android/nfc/NdefMessage.html
-http://developer.android.com/reference/android/nfc/NdefRecord.html
-http://developer.android.com/reference/java/lang/NegativeArraySizeException.html
-http://developer.android.com/reference/android/telephony/NeighboringCellInfo.html
-http://developer.android.com/reference/java/net/NetPermission.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDomainHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDraftHeaderParser.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDraftSpec.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDraftSpecFactory.html
-http://developer.android.com/reference/android/accounts/NetworkErrorException.html
-http://developer.android.com/reference/android/net/NetworkInfo.html
-http://developer.android.com/reference/android/net/NetworkInfo.DetailedState.html
-http://developer.android.com/reference/android/net/NetworkInfo.State.html
-http://developer.android.com/reference/java/net/NetworkInterface.html
-http://developer.android.com/reference/android/os/NetworkOnMainThreadException.html
-http://developer.android.com/reference/android/nfc/tech/NfcA.html
-http://developer.android.com/reference/android/nfc/NfcAdapter.html
-http://developer.android.com/reference/android/nfc/NfcAdapter.CreateBeamUrisCallback.html
-http://developer.android.com/reference/android/nfc/NfcAdapter.CreateNdefMessageCallback.html
-http://developer.android.com/reference/android/nfc/NfcAdapter.OnNdefPushCompleteCallback.html
-http://developer.android.com/reference/android/nfc/tech/NfcB.html
-http://developer.android.com/reference/android/nfc/NfcEvent.html
-http://developer.android.com/reference/android/nfc/tech/NfcF.html
-http://developer.android.com/reference/android/nfc/NfcManager.html
-http://developer.android.com/reference/android/nfc/tech/NfcV.html
-http://developer.android.com/reference/android/graphics/NinePatch.html
-http://developer.android.com/reference/android/graphics/drawable/NinePatchDrawable.html
-http://developer.android.com/reference/java/lang/NoClassDefFoundError.html
 http://developer.android.com/reference/java/nio/channels/NoConnectionPendingException.html
-http://developer.android.com/reference/org/apache/http/impl/NoConnectionReuseStrategy.html
-http://developer.android.com/reference/android/text/NoCopySpan.html
-http://developer.android.com/reference/android/text/NoCopySpan.Concrete.html
-http://developer.android.com/reference/org/w3c/dom/Node.html
-http://developer.android.com/reference/java/util/prefs/NodeChangeEvent.html
-http://developer.android.com/reference/java/util/prefs/NodeChangeListener.html
-http://developer.android.com/reference/org/w3c/dom/NodeList.html
-http://developer.android.com/reference/org/apache/http/NoHttpResponseException.html
-http://developer.android.com/reference/android/media/audiofx/NoiseSuppressor.html
 http://developer.android.com/reference/java/nio/channels/NonReadableChannelException.html
-http://developer.android.com/reference/org/apache/http/client/NonRepeatableRequestException.html
 http://developer.android.com/reference/java/nio/channels/NonWritableChannelException.html
-http://developer.android.com/reference/java/text/Normalizer.html
-http://developer.android.com/reference/java/text/Normalizer.Form.html
-http://developer.android.com/reference/java/net/NoRouteToHostException.html
-http://developer.android.com/reference/java/security/NoSuchAlgorithmException.html
-http://developer.android.com/reference/java/util/NoSuchElementException.html
-http://developer.android.com/reference/java/lang/NoSuchFieldError.html
-http://developer.android.com/reference/java/lang/NoSuchFieldException.html
-http://developer.android.com/reference/java/lang/NoSuchMethodError.html
-http://developer.android.com/reference/java/lang/NoSuchMethodException.html
-http://developer.android.com/reference/javax/crypto/NoSuchPaddingException.html
-http://developer.android.com/reference/android/util/NoSuchPropertyException.html
-http://developer.android.com/reference/java/security/NoSuchProviderException.html
-http://developer.android.com/reference/java/io/NotActiveException.html
-http://developer.android.com/reference/org/w3c/dom/Notation.html
-http://developer.android.com/reference/android/app/Notification.BigPictureStyle.html
-http://developer.android.com/reference/android/app/Notification.BigTextStyle.html
-http://developer.android.com/reference/android/app/Notification.Builder.html
-http://developer.android.com/reference/android/app/Notification.InboxStyle.html
-http://developer.android.com/reference/android/app/Notification.Style.html
-http://developer.android.com/reference/android/support/v4/app/NotificationCompat.html
-http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html
-http://developer.android.com/reference/java/io/NotSerializableException.html
 http://developer.android.com/reference/java/nio/channels/NotYetBoundException.html
 http://developer.android.com/reference/java/nio/channels/NotYetConnectedException.html
-http://developer.android.com/reference/android/net/nsd/NsdManager.html
-http://developer.android.com/reference/android/net/nsd/NsdManager.DiscoveryListener.html
-http://developer.android.com/reference/android/net/nsd/NsdManager.RegistrationListener.html
-http://developer.android.com/reference/android/net/nsd/NsdManager.ResolveListener.html
-http://developer.android.com/reference/android/net/nsd/NsdServiceInfo.html
-http://developer.android.com/reference/org/apache/http/impl/auth/NTLMEngine.html
-http://developer.android.com/reference/org/apache/http/impl/auth/NTLMEngineException.html
-http://developer.android.com/reference/org/apache/http/impl/auth/NTLMScheme.html
-http://developer.android.com/reference/javax/crypto/NullCipher.html
-http://developer.android.com/reference/java/lang/Number.html
-http://developer.android.com/reference/java/lang/Short.html
-http://developer.android.com/reference/java/text/NumberFormat.Field.html
-http://developer.android.com/reference/java/lang/NumberFormatException.html
-http://developer.android.com/reference/android/text/method/NumberKeyListener.html
-http://developer.android.com/reference/java/awt/font/NumericShaper.html
-http://developer.android.com/reference/javax/crypto/spec/OAEPParameterSpec.html
-http://developer.android.com/reference/android/content/res/ObbInfo.html
-http://developer.android.com/reference/android/content/res/ObbScanner.html
-http://developer.android.com/reference/java/io/ObjectInput.html
-http://developer.android.com/reference/java/io/ObjectInputStream.html
-http://developer.android.com/reference/java/io/ObjectInputStream.GetField.html
-http://developer.android.com/reference/java/io/ObjectInputValidation.html
-http://developer.android.com/reference/java/io/ObjectOutput.html
-http://developer.android.com/reference/java/io/ObjectOutputStream.html
-http://developer.android.com/reference/java/io/ObjectOutputStream.PutField.html
-http://developer.android.com/reference/java/io/ObjectStreamClass.html
-http://developer.android.com/reference/java/io/ObjectStreamConstants.html
-http://developer.android.com/reference/java/io/ObjectStreamException.html
-http://developer.android.com/reference/java/io/ObjectStreamField.html
-http://developer.android.com/reference/java/util/Observable.html
-http://developer.android.com/reference/java/util/Observer.html
-http://developer.android.com/reference/android/accounts/OnAccountsUpdateListener.html
-http://developer.android.com/reference/android/os/storage/OnObbStateChangeListener.html
-http://developer.android.com/reference/android/os/storage/StorageManager.html
-http://developer.android.com/reference/dalvik/bytecode/OpcodeInfo.html
-http://developer.android.com/reference/dalvik/bytecode/Opcodes.html
-http://developer.android.com/reference/android/provider/OpenableColumns.html
-http://developer.android.com/reference/android/content/OperationApplicationException.html
-http://developer.android.com/reference/android/accounts/OperationCanceledException.html
-http://developer.android.com/reference/android/os/OperationCanceledException.html
-http://developer.android.com/reference/java/io/OptionalDataException.html
-http://developer.android.com/reference/android/gesture/OrientedBoundingBox.html
-http://developer.android.com/reference/java/lang/OutOfMemoryError.html
-http://developer.android.com/reference/javax/xml/transform/OutputKeys.html
-http://developer.android.com/reference/java/io/OutputStreamWriter.html
-http://developer.android.com/reference/android/graphics/drawable/shapes/OvalShape.html
 http://developer.android.com/reference/java/nio/channels/OverlappingFileLockException.html
-http://developer.android.com/reference/java/lang/Override.html
-http://developer.android.com/reference/java/util/jar/Pack200.html
-http://developer.android.com/reference/java/util/jar/Pack200.Packer.html
-http://developer.android.com/reference/java/util/jar/Pack200.Unpacker.html
-http://developer.android.com/reference/java/lang/Package.html
-http://developer.android.com/reference/android/content/pm/PackageInfo.html
-http://developer.android.com/reference/android/content/pm/PackageItemInfo.html
-http://developer.android.com/reference/android/content/pm/PackageItemInfo.DisplayNameComparator.html
-http://developer.android.com/reference/android/content/pm/PackageManager.NameNotFoundException.html
-http://developer.android.com/reference/android/content/pm/PackageStats.html
-http://developer.android.com/reference/android/support/v4/view/PagerTabStrip.html
-http://developer.android.com/reference/android/support/v4/view/PagerTitleStrip.html
-http://developer.android.com/reference/android/graphics/Paint.Align.html
-http://developer.android.com/reference/android/graphics/Paint.Cap.html
-http://developer.android.com/reference/android/graphics/Paint.FontMetrics.html
-http://developer.android.com/reference/android/graphics/Paint.FontMetricsInt.html
-http://developer.android.com/reference/android/graphics/Paint.Join.html
-http://developer.android.com/reference/android/graphics/Paint.Style.html
-http://developer.android.com/reference/android/graphics/drawable/PaintDrawable.html
-http://developer.android.com/reference/android/graphics/PaintFlagsDrawFilter.html
-http://developer.android.com/reference/android/util/Pair.html
-http://developer.android.com/reference/android/text/style/ParagraphStyle.html
-http://developer.android.com/reference/java/lang/reflect/ParameterizedType.html
-http://developer.android.com/reference/java/sql/ParameterMetaData.html
-http://developer.android.com/reference/android/os/Parcel.html
-http://developer.android.com/reference/android/os/Parcelable.ClassLoaderCreator.html
-http://developer.android.com/reference/android/os/Parcelable.Creator.html
-http://developer.android.com/reference/android/support/v4/os/ParcelableCompat.html
-http://developer.android.com/reference/android/support/v4/os/ParcelableCompatCreatorCallbacks.html
-http://developer.android.com/reference/android/text/ParcelableSpan.html
-http://developer.android.com/reference/android/os/ParcelFileDescriptor.AutoCloseInputStream.html
-http://developer.android.com/reference/android/os/ParcelFileDescriptor.AutoCloseOutputStream.html
-http://developer.android.com/reference/android/os/ParcelFormatException.html
-http://developer.android.com/reference/android/os/ParcelUuid.html
-http://developer.android.com/reference/java/util/UUID.html
-http://developer.android.com/reference/android/net/ParseException.html
-http://developer.android.com/reference/java/text/ParseException.html
-http://developer.android.com/reference/org/apache/http/ParseException.html
-http://developer.android.com/reference/java/text/ParsePosition.html
-http://developer.android.com/reference/org/xml/sax/Parser.html
-http://developer.android.com/reference/org/xml/sax/XMLReader.html
-http://developer.android.com/reference/org/xml/sax/helpers/ParserAdapter.html
-http://developer.android.com/reference/javax/xml/parsers/ParserConfigurationException.html
-http://developer.android.com/reference/org/apache/http/message/ParserCursor.html
-http://developer.android.com/reference/org/xml/sax/helpers/ParserFactory.html
-http://developer.android.com/reference/java/net/PasswordAuthentication.html
-http://developer.android.com/reference/javax/security/auth/callback/PasswordCallback.html
-http://developer.android.com/reference/android/text/method/PasswordTransformationMethod.html
-http://developer.android.com/reference/android/graphics/Path.html
-http://developer.android.com/reference/android/graphics/Path.Direction.html
-http://developer.android.com/reference/android/graphics/Path.FillType.html
-http://developer.android.com/reference/dalvik/system/PathClassLoader.html
-http://developer.android.com/reference/android/graphics/PathDashPathEffect.html
-http://developer.android.com/reference/android/graphics/PathDashPathEffect.Style.html
-http://developer.android.com/reference/android/graphics/PathEffect.html
-http://developer.android.com/reference/android/graphics/PathMeasure.html
-http://developer.android.com/reference/android/content/pm/PathPermission.html
-http://developer.android.com/reference/android/content/pm/ProviderInfo.html
-http://developer.android.com/reference/android/graphics/drawable/shapes/PathShape.html
-http://developer.android.com/reference/android/util/Patterns.html
 http://developer.android.com/reference/java/util/regex/PatternSyntaxException.html
-http://developer.android.com/reference/javax/crypto/interfaces/PBEKey.html
-http://developer.android.com/reference/javax/crypto/spec/PBEKeySpec.html
-http://developer.android.com/reference/javax/crypto/spec/PBEParameterSpec.html
-http://developer.android.com/reference/android/app/PendingIntent.CanceledException.html
-http://developer.android.com/reference/android/app/PendingIntent.OnFinished.html
-http://developer.android.com/reference/android/test/PerformanceTestCase.html
-http://developer.android.com/reference/android/test/PerformanceTestCase.Intermediates.html
-http://developer.android.com/reference/android/content/PeriodicSync.html
-http://developer.android.com/reference/java/security/Permission.html
-http://developer.android.com/reference/java/security/PermissionCollection.html
-http://developer.android.com/reference/android/content/pm/PermissionGroupInfo.html
-http://developer.android.com/reference/android/content/pm/PermissionInfo.html
-http://developer.android.com/reference/java/security/Permissions.html
-http://developer.android.com/reference/android/telephony/PhoneNumberFormattingTextWatcher.html
-http://developer.android.com/reference/android/telephony/PhoneNumberUtils.html
-http://developer.android.com/reference/android/telephony/PhoneStateListener.html
-http://developer.android.com/reference/android/graphics/Picture.html
-http://developer.android.com/reference/android/graphics/drawable/PictureDrawable.html
-http://developer.android.com/reference/java/nio/channels/Pipe.html
-http://developer.android.com/reference/java/nio/channels/Pipe.SinkChannel.html
-http://developer.android.com/reference/java/nio/channels/Pipe.SourceChannel.html
-http://developer.android.com/reference/java/io/PipedInputStream.html
-http://developer.android.com/reference/java/io/PipedOutputStream.html
-http://developer.android.com/reference/java/io/PipedReader.html
-http://developer.android.com/reference/java/io/PipedWriter.html
-http://developer.android.com/reference/android/graphics/PixelFormat.html
-http://developer.android.com/reference/android/graphics/PixelXorXfermode.html
-http://developer.android.com/reference/java/security/spec/PKCS8EncodedKeySpec.html
-http://developer.android.com/reference/java/security/cert/PKIXBuilderParameters.html
-http://developer.android.com/reference/java/security/cert/PKIXCertPathBuilderResult.html
-http://developer.android.com/reference/java/security/cert/PKIXCertPathChecker.html
-http://developer.android.com/reference/java/security/cert/PKIXCertPathValidatorResult.html
-http://developer.android.com/reference/java/security/cert/PKIXParameters.html
-http://developer.android.com/reference/org/apache/http/conn/scheme/PlainSocketFactory.html
-http://developer.android.com/reference/android/webkit/PluginStub.html
-http://developer.android.com/reference/android/graphics/PointF.html
-http://developer.android.com/reference/java/security/Policy.html
-http://developer.android.com/reference/java/security/Policy.Parameters.html
-http://developer.android.com/reference/java/security/cert/PolicyNode.html
-http://developer.android.com/reference/java/security/cert/PolicyQualifierInfo.html
-http://developer.android.com/reference/java/security/PolicySpi.html
-http://developer.android.com/reference/android/graphics/PorterDuff.html
-http://developer.android.com/reference/android/graphics/PorterDuff.Mode.html
-http://developer.android.com/reference/android/graphics/PorterDuffColorFilter.html
-http://developer.android.com/reference/android/graphics/PorterDuffXfermode.html
-http://developer.android.com/reference/java/net/PortUnreachableException.html
-http://developer.android.com/reference/android/os/PowerManager.html
-http://developer.android.com/reference/android/os/PowerManager.WakeLock.html
-http://developer.android.com/reference/android/gesture/Prediction.html
-http://developer.android.com/reference/android/preference/Preference.BaseSavedState.html
-http://developer.android.com/reference/android/preference/Preference.OnPreferenceChangeListener.html
-http://developer.android.com/reference/android/preference/Preference.OnPreferenceClickListener.html
-http://developer.android.com/reference/android/preference/PreferenceActivity.Header.html
-http://developer.android.com/reference/android/preference/PreferenceCategory.html
-http://developer.android.com/reference/java/util/prefs/PreferenceChangeEvent.html
-http://developer.android.com/reference/java/util/prefs/PreferenceChangeListener.html
-http://developer.android.com/reference/android/preference/PreferenceFragment.OnPreferenceStartFragmentCallback.html
-http://developer.android.com/reference/android/preference/PreferenceGroup.html
-http://developer.android.com/reference/android/preference/PreferenceManager.html
-http://developer.android.com/reference/android/preference/PreferenceManager.OnActivityDestroyListener.html
-http://developer.android.com/reference/android/preference/PreferenceManager.OnActivityResultListener.html
-http://developer.android.com/reference/android/preference/PreferenceManager.OnActivityStopListener.html
-http://developer.android.com/reference/java/util/prefs/Preferences.html
-http://developer.android.com/reference/android/preference/PreferenceScreen.html
-http://developer.android.com/reference/java/util/prefs/PreferencesFactory.html
-http://developer.android.com/reference/java/sql/PreparedStatement.html
-http://developer.android.com/reference/android/media/audiofx/PresetReverb.html
-http://developer.android.com/reference/android/media/audiofx/PresetReverb.OnParameterChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/PresetReverb.Settings.html
-http://developer.android.com/reference/java/io/PrintStream.html
-http://developer.android.com/reference/android/util/PrintStreamPrinter.html
-http://developer.android.com/reference/java/io/PrintWriter.html
-http://developer.android.com/reference/android/util/PrintWriterPrinter.html
-http://developer.android.com/reference/java/util/concurrent/PriorityBlockingQueue.html
-http://developer.android.com/reference/java/util/PriorityQueue.html
-http://developer.android.com/reference/javax/security/auth/PrivateCredentialPermission.html
-http://developer.android.com/reference/java/security/PrivateKey.html
-http://developer.android.com/reference/java/security/PrivilegedAction.html
-http://developer.android.com/reference/java/security/PrivilegedActionException.html
-http://developer.android.com/reference/java/security/PrivilegedExceptionAction.html
-http://developer.android.com/reference/android/os/Process.html
-http://developer.android.com/reference/java/lang/Process.html
-http://developer.android.com/reference/java/lang/ProcessBuilder.html
-http://developer.android.com/reference/android/drm/ProcessedData.html
-http://developer.android.com/reference/org/w3c/dom/ProcessingInstruction.html
-http://developer.android.com/reference/android/renderscript/Program.html
-http://developer.android.com/reference/android/renderscript/Program.BaseProgramBuilder.html
-http://developer.android.com/reference/android/renderscript/Program.TextureType.html
-http://developer.android.com/reference/android/renderscript/ProgramFragment.html
-http://developer.android.com/reference/android/renderscript/ProgramFragment.Builder.html
-http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.html
-http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.Builder.html
-http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.Builder.EnvMode.html
-http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.Builder.Format.html
-http://developer.android.com/reference/android/renderscript/ProgramRaster.html
-http://developer.android.com/reference/android/renderscript/ProgramRaster.Builder.html
-http://developer.android.com/reference/android/renderscript/ProgramRaster.CullMode.html
-http://developer.android.com/reference/android/renderscript/ProgramStore.html
-http://developer.android.com/reference/android/renderscript/ProgramStore.BlendDstFunc.html
-http://developer.android.com/reference/android/renderscript/ProgramStore.BlendSrcFunc.html
-http://developer.android.com/reference/android/renderscript/ProgramStore.Builder.html
-http://developer.android.com/reference/android/renderscript/ProgramStore.DepthFunc.html
-http://developer.android.com/reference/android/renderscript/ProgramVertex.html
-http://developer.android.com/reference/android/renderscript/ProgramVertex.Builder.html
-http://developer.android.com/reference/android/renderscript/ProgramVertexFixedFunction.html
-http://developer.android.com/reference/android/renderscript/ProgramVertexFixedFunction.Builder.html
-http://developer.android.com/reference/android/renderscript/ProgramVertexFixedFunction.Constants.html
-http://developer.android.com/reference/android/app/ProgressDialog.html
-http://developer.android.com/reference/java/util/Properties.html
-http://developer.android.com/reference/java/beans/PropertyChangeListener.html
-http://developer.android.com/reference/java/beans/PropertyChangeListenerProxy.html
-http://developer.android.com/reference/java/beans/PropertyChangeSupport.html
-http://developer.android.com/reference/java/util/PropertyPermission.html
-http://developer.android.com/reference/java/util/PropertyResourceBundle.html
-http://developer.android.com/reference/junit/framework/Protectable.html
-http://developer.android.com/reference/java/security/ProtectionDomain.html
-http://developer.android.com/reference/java/net/ProtocolException.html
-http://developer.android.com/reference/org/apache/http/ProtocolException.html
-http://developer.android.com/reference/org/apache/http/ProtocolVersion.html
-http://developer.android.com/reference/java/security/Provider.html
-http://developer.android.com/reference/java/security/Provider.Service.html
-http://developer.android.com/reference/java/security/ProviderException.html
-http://developer.android.com/reference/android/test/ProviderTestCase.html
-http://developer.android.com/reference/android/test/ProviderTestCase2.html
-http://developer.android.com/reference/android/net/Proxy.html
-http://developer.android.com/reference/java/lang/reflect/Proxy.html
-http://developer.android.com/reference/java/net/Proxy.html
-http://developer.android.com/reference/java/net/Proxy.Type.html
-http://developer.android.com/reference/java/net/ProxySelector.html
-http://developer.android.com/reference/org/apache/http/impl/conn/ProxySelectorRoutePlanner.html
-http://developer.android.com/reference/javax/crypto/spec/PSource.html
-http://developer.android.com/reference/javax/crypto/spec/PSource.PSpecified.html
-http://developer.android.com/reference/java/security/spec/PSSParameterSpec.html
-http://developer.android.com/reference/java/security/PublicKey.html
-http://developer.android.com/reference/java/io/PushbackInputStream.html
-http://developer.android.com/reference/java/io/PushbackReader.html
-http://developer.android.com/reference/javax/xml/namespace/QName.html
-http://developer.android.com/reference/android/text/style/QuoteSpan.html
-http://developer.android.com/reference/android/text/method/QwertyKeyListener.html
-http://developer.android.com/reference/android/R.html
-http://developer.android.com/reference/android/R.anim.html
-http://developer.android.com/reference/android/R.animator.html
-http://developer.android.com/reference/android/R.array.html
-http://developer.android.com/reference/android/R.bool.html
-http://developer.android.com/reference/android/R.color.html
-http://developer.android.com/reference/android/R.dimen.html
-http://developer.android.com/reference/android/R.drawable.html
-http://developer.android.com/reference/android/R.fraction.html
-http://developer.android.com/reference/android/R.id.html
-http://developer.android.com/reference/android/R.integer.html
-http://developer.android.com/reference/android/R.interpolator.html
-http://developer.android.com/reference/android/R.layout.html
-http://developer.android.com/reference/android/R.menu.html
-http://developer.android.com/reference/android/R.mipmap.html
-http://developer.android.com/reference/android/R.plurals.html
-http://developer.android.com/reference/android/R.raw.html
-http://developer.android.com/reference/android/R.string.html
-http://developer.android.com/reference/android/R.style.html
-http://developer.android.com/reference/android/R.xml.html
-http://developer.android.com/reference/android/graphics/RadialGradient.html
-http://developer.android.com/reference/java/util/Random.html
-http://developer.android.com/reference/java/util/RandomAccess.html
-http://developer.android.com/reference/java/io/RandomAccessFile.html
-http://developer.android.com/reference/android/graphics/Rasterizer.html
-http://developer.android.com/reference/android/text/style/RasterizerSpan.html
-http://developer.android.com/reference/javax/crypto/spec/RC2ParameterSpec.html
-http://developer.android.com/reference/javax/crypto/spec/RC5ParameterSpec.html
-http://developer.android.com/reference/java/lang/Readable.html
-http://developer.android.com/reference/java/nio/channels/ReadableByteChannel.html
-http://developer.android.com/reference/java/nio/ReadOnlyBufferException.html
-http://developer.android.com/reference/java/util/concurrent/locks/ReadWriteLock.html
-http://developer.android.com/reference/org/apache/http/ReasonPhraseCatalog.html
-http://developer.android.com/reference/android/content/ReceiverCallNotAllowedException.html
-http://developer.android.com/reference/android/speech/RecognitionListener.html
-http://developer.android.com/reference/android/speech/RecognitionService.html
-http://developer.android.com/reference/android/speech/RecognitionService.Callback.html
-http://developer.android.com/reference/android/speech/RecognizerIntent.html
-http://developer.android.com/reference/android/speech/RecognizerResultsIntent.html
-http://developer.android.com/reference/android/os/RecoverySystem.html
-http://developer.android.com/reference/android/os/RecoverySystem.ProgressListener.html
-http://developer.android.com/reference/android/graphics/RectF.html
-http://developer.android.com/reference/android/graphics/drawable/shapes/RectShape.html
-http://developer.android.com/reference/org/apache/http/client/RedirectException.html
-http://developer.android.com/reference/org/apache/http/impl/client/RedirectLocations.html
-http://developer.android.com/reference/java/util/concurrent/locks/ReentrantLock.html
-http://developer.android.com/reference/java/util/concurrent/locks/ReentrantReadWriteLock.html
-http://developer.android.com/reference/java/util/concurrent/locks/ReentrantReadWriteLock.ReadLock.html
-http://developer.android.com/reference/java/util/concurrent/locks/ReentrantReadWriteLock.WriteLock.html
-http://developer.android.com/reference/java/sql/Ref.html
-http://developer.android.com/reference/java/lang/reflect/ReflectPermission.html
-http://developer.android.com/reference/android/graphics/Region.Op.html
-http://developer.android.com/reference/android/graphics/RegionIterator.html
-http://developer.android.com/reference/java/util/concurrent/RejectedExecutionException.html
-http://developer.android.com/reference/java/util/concurrent/RejectedExecutionHandler.html
-http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.html
-http://developer.android.com/reference/android/text/style/RelativeSizeSpan.html
-http://developer.android.com/reference/android/os/RemoteCallbackList.html
-http://developer.android.com/reference/android/media/RemoteControlClient.html
-http://developer.android.com/reference/android/media/RemoteControlClient.MetadataEditor.html
-http://developer.android.com/reference/android/os/RemoteException.html
-http://developer.android.com/reference/android/widget/RemoteViews.RemoteView.html
-http://developer.android.com/reference/android/test/RenamingDelegatingContext.html
-http://developer.android.com/reference/android/renderscript/RenderScript.html
-http://developer.android.com/reference/android/renderscript/RenderScript.Priority.html
-http://developer.android.com/reference/android/renderscript/RenderScript.RSErrorHandler.html
-http://developer.android.com/reference/android/renderscript/RenderScript.RSMessageHandler.html
-http://developer.android.com/reference/android/renderscript/RenderScriptGL.html
-http://developer.android.com/reference/android/renderscript/RenderScriptGL.SurfaceConfig.html
-http://developer.android.com/reference/android/text/style/ReplacementSpan.html
-http://developer.android.com/reference/android/text/method/ReplacementTransformationMethod.html
-http://developer.android.com/reference/org/apache/http/client/protocol/RequestAddCookies.html
-http://developer.android.com/reference/org/apache/http/protocol/RequestConnControl.html
-http://developer.android.com/reference/org/apache/http/protocol/RequestContent.html
-http://developer.android.com/reference/org/apache/http/protocol/RequestDate.html
-http://developer.android.com/reference/org/apache/http/client/protocol/RequestDefaultHeaders.html
-http://developer.android.com/reference/org/apache/http/protocol/RequestExpectContinue.html
-http://developer.android.com/reference/org/apache/http/RequestLine.html
-http://developer.android.com/reference/org/apache/http/client/protocol/RequestProxyAuthentication.html
-http://developer.android.com/reference/org/apache/http/client/protocol/RequestTargetAuthentication.html
-http://developer.android.com/reference/org/apache/http/protocol/RequestTargetHost.html
-http://developer.android.com/reference/org/apache/http/protocol/RequestUserAgent.html
-http://developer.android.com/reference/org/apache/http/impl/client/RequestWrapper.html
-http://developer.android.com/reference/android/content/pm/ResolveInfo.html
-http://developer.android.com/reference/android/content/pm/ResolveInfo.DisplayNameComparator.html
-http://developer.android.com/reference/java/util/ResourceBundle.html
-http://developer.android.com/reference/java/util/ResourceBundle.Control.html
-http://developer.android.com/reference/android/support/v4/widget/ResourceCursorAdapter.html
-http://developer.android.com/reference/android/content/res/Resources.NotFoundException.html
-http://developer.android.com/reference/android/content/res/Resources.Theme.html
-http://developer.android.com/reference/java/net/ResponseCache.html
-http://developer.android.com/reference/org/apache/http/protocol/ResponseConnControl.html
-http://developer.android.com/reference/org/apache/http/protocol/ResponseContent.html
-http://developer.android.com/reference/org/apache/http/protocol/ResponseDate.html
-http://developer.android.com/reference/org/apache/http/client/protocol/ResponseProcessCookies.html
-http://developer.android.com/reference/org/apache/http/protocol/ResponseServer.html
-http://developer.android.com/reference/javax/xml/transform/Result.html
-http://developer.android.com/reference/android/os/ResultReceiver.html
-http://developer.android.com/reference/java/sql/ResultSet.html
-http://developer.android.com/reference/java/sql/ResultSetMetaData.html
-http://developer.android.com/reference/java/lang/annotation/Retention.html
-http://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109DomainHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109Spec.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109SpecFactory.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109VersionHandler.html
-http://developer.android.com/reference/org/apache/http/impl/auth/RFC2617Scheme.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965CommentUrlAttributeHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965DiscardAttributeHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965DomainAttributeHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965PortAttributeHandler.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965Spec.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965SpecFactory.html
-http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965VersionAttributeHandler.html
-http://developer.android.com/reference/android/text/util/Rfc822Token.html
-http://developer.android.com/reference/android/text/util/Rfc822Tokenizer.html
-http://developer.android.com/reference/android/media/Ringtone.html
-http://developer.android.com/reference/android/media/RingtoneManager.html
-http://developer.android.com/reference/android/preference/RingtonePreference.html
-http://developer.android.com/reference/android/sax/RootElement.html
-http://developer.android.com/reference/android/graphics/drawable/RotateDrawable.html
-http://developer.android.com/reference/java/math/RoundingMode.html
-http://developer.android.com/reference/android/graphics/drawable/shapes/RoundRectShape.html
-http://developer.android.com/reference/org/apache/http/impl/client/RoutedRequest.html
-http://developer.android.com/reference/org/apache/http/conn/routing/RouteInfo.html
-http://developer.android.com/reference/org/apache/http/conn/routing/RouteInfo.LayerType.html
-http://developer.android.com/reference/org/apache/http/conn/routing/RouteInfo.TunnelType.html
-http://developer.android.com/reference/org/apache/http/conn/routing/RouteTracker.html
-http://developer.android.com/reference/java/sql/RowId.html
-http://developer.android.com/reference/java/sql/RowIdLifetime.html
-http://developer.android.com/reference/javax/sql/RowSet.html
-http://developer.android.com/reference/javax/sql/RowSetEvent.html
-http://developer.android.com/reference/javax/sql/RowSetInternal.html
-http://developer.android.com/reference/javax/sql/RowSetListener.html
-http://developer.android.com/reference/javax/sql/RowSetMetaData.html
-http://developer.android.com/reference/javax/sql/RowSetReader.html
-http://developer.android.com/reference/javax/sql/RowSetWriter.html
-http://developer.android.com/reference/java/security/spec/RSAKeyGenParameterSpec.html
-http://developer.android.com/reference/java/security/spec/RSAMultiPrimePrivateCrtKeySpec.html
-http://developer.android.com/reference/java/security/spec/RSAOtherPrimeInfo.html
-http://developer.android.com/reference/java/security/spec/RSAPrivateCrtKeySpec.html
-http://developer.android.com/reference/java/security/spec/RSAPrivateKeySpec.html
-http://developer.android.com/reference/java/security/spec/RSAPublicKeySpec.html
+http://developer.android.com/reference/java/util/regex/Pattern.html
 http://developer.android.com/reference/android/renderscript/RSDriverException.html
 http://developer.android.com/reference/android/renderscript/RSIllegalArgumentException.html
 http://developer.android.com/reference/android/renderscript/RSInvalidStateException.html
-http://developer.android.com/reference/android/renderscript/RSRuntimeException.html
-http://developer.android.com/reference/android/renderscript/RSSurfaceView.html
-http://developer.android.com/reference/android/renderscript/RSTextureView.html
-http://developer.android.com/reference/java/text/RuleBasedCollator.html
-http://developer.android.com/reference/java/util/concurrent/RunnableFuture.html
-http://developer.android.com/reference/java/util/concurrent/RunnableScheduledFuture.html
-http://developer.android.com/reference/java/util/concurrent/ScheduledFuture.html
-http://developer.android.com/reference/java/lang/Runtime.html
-http://developer.android.com/reference/java/lang/RuntimePermission.html
-http://developer.android.com/reference/android/renderscript/Sampler.html
-http://developer.android.com/reference/android/renderscript/Sampler.Builder.html
-http://developer.android.com/reference/android/renderscript/Sampler.Value.html
-http://developer.android.com/reference/java/sql/Savepoint.html
-http://developer.android.com/reference/org/xml/sax/SAXException.html
-http://developer.android.com/reference/org/xml/sax/SAXNotRecognizedException.html
-http://developer.android.com/reference/org/xml/sax/SAXNotSupportedException.html
-http://developer.android.com/reference/org/xml/sax/SAXParseException.html
-http://developer.android.com/reference/javax/xml/parsers/SAXParser.html
-http://developer.android.com/reference/javax/xml/parsers/SAXParserFactory.html
-http://developer.android.com/reference/javax/xml/transform/sax/SAXResult.html
-http://developer.android.com/reference/javax/xml/transform/sax/SAXSource.html
-http://developer.android.com/reference/javax/xml/transform/sax/SAXTransformerFactory.html
-http://developer.android.com/reference/android/graphics/drawable/ScaleDrawable.html
-http://developer.android.com/reference/android/text/style/ScaleXSpan.html
-http://developer.android.com/reference/java/util/Scanner.html
-http://developer.android.com/reference/android/net/wifi/ScanResult.html
-http://developer.android.com/reference/java/nio/channels/ScatteringByteChannel.html
-http://developer.android.com/reference/java/util/concurrent/ScheduledThreadPoolExecutor.html
-http://developer.android.com/reference/javax/xml/validation/Schema.html
-http://developer.android.com/reference/javax/xml/validation/SchemaFactory.html
-http://developer.android.com/reference/javax/xml/validation/SchemaFactoryLoader.html
-http://developer.android.com/reference/android/renderscript/Script.html
-http://developer.android.com/reference/android/renderscript/Script.Builder.html
-http://developer.android.com/reference/android/text/method/ScrollingMovementMethod.html
-http://developer.android.com/reference/javax/crypto/SealedObject.html
-http://developer.android.com/reference/android/provider/SearchRecentSuggestions.html
-http://developer.android.com/reference/android/content/SearchRecentSuggestionsProvider.html
-http://developer.android.com/reference/android/support/v4/widget/SearchViewCompat.html
-http://developer.android.com/reference/android/support/v4/widget/SearchViewCompat.OnQueryTextListenerCompat.html
-http://developer.android.com/reference/javax/crypto/SecretKey.html
-http://developer.android.com/reference/javax/crypto/SecretKeyFactory.html
-http://developer.android.com/reference/javax/crypto/SecretKeyFactorySpi.html
-http://developer.android.com/reference/javax/crypto/spec/SecretKeySpec.html
-http://developer.android.com/reference/java/net/SecureCacheResponse.html
-http://developer.android.com/reference/java/security/SecureClassLoader.html
-http://developer.android.com/reference/java/security/SecureRandom.html
-http://developer.android.com/reference/java/security/SecureRandomSpi.html
-http://developer.android.com/reference/java/security/Security.html
-http://developer.android.com/reference/java/lang/SecurityException.html
-http://developer.android.com/reference/java/lang/SecurityManager.html
-http://developer.android.com/reference/java/security/SecurityPermission.html
-http://developer.android.com/reference/java/nio/channels/SelectableChannel.html
-http://developer.android.com/reference/android/text/Selection.html
-http://developer.android.com/reference/java/nio/channels/SelectionKey.html
-http://developer.android.com/reference/java/nio/channels/spi/SelectorProvider.html
-http://developer.android.com/reference/java/nio/channels/ServerSocketChannel.html
-http://developer.android.com/reference/java/util/concurrent/Semaphore.html
-http://developer.android.com/reference/android/hardware/Sensor.html
-http://developer.android.com/reference/android/hardware/SensorEvent.html
-http://developer.android.com/reference/android/hardware/SensorEventListener.html
-http://developer.android.com/reference/android/hardware/SensorListener.html
-http://developer.android.com/reference/android/hardware/SensorManager.html
-http://developer.android.com/reference/android/view/textservice/SentenceSuggestionsInfo.html
-http://developer.android.com/reference/java/io/SequenceInputStream.html
-http://developer.android.com/reference/java/io/Serializable.html
-http://developer.android.com/reference/org/apache/http/entity/SerializableEntity.html
-http://developer.android.com/reference/java/io/SerializablePermission.html
-http://developer.android.com/reference/java/net/ServerSocket.html
-http://developer.android.com/reference/javax/net/ServerSocketFactory.html
-http://developer.android.com/reference/android/support/v4/app/ServiceCompat.html
-http://developer.android.com/reference/java/util/ServiceConfigurationError.html
-http://developer.android.com/reference/java/util/ServiceLoader.html
-http://developer.android.com/reference/android/telephony/ServiceState.html
-http://developer.android.com/reference/android/test/ServiceTestCase.html
-http://developer.android.com/reference/org/apache/http/cookie/SetCookie.html
-http://developer.android.com/reference/org/apache/http/cookie/SetCookie2.html
-http://developer.android.com/reference/android/provider/Settings.html
-http://developer.android.com/reference/android/provider/Settings.NameValueTable.html
-http://developer.android.com/reference/android/provider/Settings.SettingNotFoundException.html
-http://developer.android.com/reference/android/provider/Settings.System.html
-http://developer.android.com/reference/android/graphics/Shader.html
-http://developer.android.com/reference/android/graphics/Shader.TileMode.html
-http://developer.android.com/reference/android/graphics/drawable/shapes/Shape.html
-http://developer.android.com/reference/android/graphics/drawable/ShapeDrawable.html
-http://developer.android.com/reference/android/graphics/drawable/ShapeDrawable.ShaderFactory.html
-http://developer.android.com/reference/android/support/v4/app/ShareCompat.html
-http://developer.android.com/reference/android/support/v4/app/ShareCompat.IntentBuilder.html
-http://developer.android.com/reference/android/support/v4/app/ShareCompat.IntentReader.html
-http://developer.android.com/reference/android/content/SharedPreferences.Editor.html
-http://developer.android.com/reference/android/content/SharedPreferences.OnSharedPreferenceChangeListener.html
-http://developer.android.com/reference/android/renderscript/Short2.html
-http://developer.android.com/reference/android/renderscript/Short3.html
-http://developer.android.com/reference/android/renderscript/Short4.html
-http://developer.android.com/reference/java/nio/ShortBuffer.html
-http://developer.android.com/reference/javax/crypto/ShortBufferException.html
-http://developer.android.com/reference/android/telephony/SignalStrength.html
-http://developer.android.com/reference/android/content/pm/Signature.html
-http://developer.android.com/reference/java/security/Signature.html
-http://developer.android.com/reference/java/security/SignatureException.html
-http://developer.android.com/reference/java/security/SignatureSpi.html
-http://developer.android.com/reference/java/security/SignedObject.html
-http://developer.android.com/reference/java/security/Signer.html
-http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.html
-http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.CursorToStringConverter.html
-http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.ViewBinder.html
-http://developer.android.com/reference/java/util/logging/SimpleFormatter.html
-http://developer.android.com/reference/java/util/SimpleTimeZone.html
-http://developer.android.com/reference/org/apache/http/impl/conn/SingleClientConnManager.html
-http://developer.android.com/reference/org/apache/http/impl/conn/SingleClientConnManager.ConnAdapter.html
-http://developer.android.com/reference/org/apache/http/impl/conn/SingleClientConnManager.PoolEntry.html
-http://developer.android.com/reference/android/test/SingleLaunchActivityTestCase.html
-http://developer.android.com/reference/android/text/method/SingleLineTransformationMethod.html
-http://developer.android.com/reference/android/net/sip/SipAudioCall.html
-http://developer.android.com/reference/android/net/sip/SipAudioCall.Listener.html
-http://developer.android.com/reference/android/net/sip/SipErrorCode.html
-http://developer.android.com/reference/android/net/sip/SipException.html
-http://developer.android.com/reference/android/net/sip/SipManager.html
-http://developer.android.com/reference/android/net/sip/SipProfile.html
-http://developer.android.com/reference/android/net/sip/SipProfile.Builder.html
-http://developer.android.com/reference/android/net/sip/SipRegistrationListener.html
-http://developer.android.com/reference/android/net/sip/SipSession.html
-http://developer.android.com/reference/android/net/sip/SipSession.Listener.html
-http://developer.android.com/reference/android/net/sip/SipSession.State.html
-http://developer.android.com/reference/org/apache/http/cookie/SM.html
-http://developer.android.com/reference/android/test/suitebuilder/annotation/SmallTest.html
-http://developer.android.com/reference/android/test/suitebuilder/annotation/Smoke.html
-http://developer.android.com/reference/android/telephony/SmsManager.html
-http://developer.android.com/reference/android/telephony/gsm/SmsManager.html
-http://developer.android.com/reference/android/telephony/SmsMessage.html
-http://developer.android.com/reference/android/telephony/gsm/SmsMessage.html
-http://developer.android.com/reference/android/telephony/SmsMessage.MessageClass.html
-http://developer.android.com/reference/android/telephony/gsm/SmsMessage.MessageClass.html
-http://developer.android.com/reference/android/telephony/SmsMessage.SubmitPdu.html
-http://developer.android.com/reference/android/telephony/gsm/SmsMessage.SubmitPdu.html
-http://developer.android.com/reference/java/net/Socket.html
-http://developer.android.com/reference/java/net/SocketAddress.html
-http://developer.android.com/reference/java/net/SocketException.html
-http://developer.android.com/reference/javax/net/SocketFactory.html
-http://developer.android.com/reference/java/util/logging/SocketHandler.html
-http://developer.android.com/reference/org/apache/http/impl/SocketHttpClientConnection.html
-http://developer.android.com/reference/org/apache/http/impl/SocketHttpServerConnection.html
-http://developer.android.com/reference/java/net/SocketImpl.html
-http://developer.android.com/reference/java/net/SocketImplFactory.html
-http://developer.android.com/reference/org/apache/http/impl/io/SocketInputBuffer.html
-http://developer.android.com/reference/java/net/SocketOptions.html
-http://developer.android.com/reference/org/apache/http/impl/io/SocketOutputBuffer.html
-http://developer.android.com/reference/java/net/SocketPermission.html
-http://developer.android.com/reference/java/net/SocketTimeoutException.html
-http://developer.android.com/reference/android/media/SoundPool.html
-http://developer.android.com/reference/android/media/SoundPool.OnLoadCompleteListener.html
-http://developer.android.com/reference/javax/xml/transform/Source.html
-http://developer.android.com/reference/javax/xml/transform/SourceLocator.html
-http://developer.android.com/reference/android/text/Spannable.html
-http://developer.android.com/reference/android/text/Spannable.Factory.html
-http://developer.android.com/reference/android/text/SpannableString.html
-http://developer.android.com/reference/android/text/SpannableStringBuilder.html
-http://developer.android.com/reference/android/text/Spanned.html
-http://developer.android.com/reference/android/text/SpannedString.html
-http://developer.android.com/reference/android/text/SpanWatcher.html
-http://developer.android.com/reference/android/util/SparseBooleanArray.html
-http://developer.android.com/reference/android/util/SparseIntArray.html
-http://developer.android.com/reference/android/speech/SpeechRecognizer.html
-http://developer.android.com/reference/android/view/textservice/SpellCheckerInfo.html
-http://developer.android.com/reference/android/service/textservice/SpellCheckerService.html
-http://developer.android.com/reference/android/service/textservice/SpellCheckerService.Session.html
-http://developer.android.com/reference/android/view/textservice/SpellCheckerSession.SpellCheckerSessionListener.html
-http://developer.android.com/reference/android/view/textservice/SpellCheckerSubtype.html
-http://developer.android.com/reference/java/sql/SQLClientInfoException.html
-http://developer.android.com/reference/java/sql/SQLData.html
-http://developer.android.com/reference/java/sql/SQLDataException.html
-http://developer.android.com/reference/android/database/SQLException.html
-http://developer.android.com/reference/java/sql/SQLException.html
-http://developer.android.com/reference/java/sql/SQLFeatureNotSupportedException.html
-http://developer.android.com/reference/java/sql/SQLInput.html
-http://developer.android.com/reference/java/sql/SQLIntegrityConstraintViolationException.html
-http://developer.android.com/reference/java/sql/SQLInvalidAuthorizationSpecException.html
+http://developer.android.com/reference/java/nio/ReadOnlyBufferException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteAbortException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteAccessPermException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteBindOrColumnIndexOutOfRangeException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteBlobTooBigException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteCantOpenDatabaseException.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteClosable.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteConstraintException.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteCursor.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteCursorDriver.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.CursorFactory.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteDatabaseCorruptException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteDatabaseLockedException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteDatatypeMismatchException.html
@@ -3536,17 +2015,844 @@
 http://developer.android.com/reference/android/database/sqlite/SQLiteFullException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteMisuseException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteOutOfMemoryException.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteReadOnlyDatabaseException.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteTableLockedException.html
+http://developer.android.com/reference/java/util/UnknownFormatConversionException.html
+http://developer.android.com/reference/java/util/UnknownFormatFlagsException.html
+http://developer.android.com/reference/java/nio/channels/UnresolvedAddressException.html
+http://developer.android.com/reference/java/nio/channels/UnsupportedAddressTypeException.html
+http://developer.android.com/reference/java/nio/charset/UnsupportedCharsetException.html
+http://developer.android.com/reference/java/util/Properties.html
+http://developer.android.com/reference/java/util/Dictionary.html
+http://developer.android.com/reference/java/util/Hashtable.html
+http://developer.android.com/reference/java/util/Map.Entry.html
+http://developer.android.com/reference/java/util/Map.html
+http://developer.android.com/reference/java/util/Collection.html
+http://developer.android.com/reference/java/io/Reader.html
+http://developer.android.com/reference/java/util/Enumeration.html
+http://developer.android.com/reference/java/io/OutputStream.html
+http://developer.android.com/reference/java/io/Writer.html
+http://developer.android.com/reference/android/view/animation/AccelerateDecelerateInterpolator.html
+http://developer.android.com/reference/android/text/Html.html
+http://developer.android.com/reference/android/text/TextUtils.html
+http://developer.android.com/reference/org/apache/http/impl/DefaultHttpResponseFactory.html
+http://developer.android.com/reference/org/apache/http/util/CharArrayBuffer.html
+http://developer.android.com/reference/java/io/Console.html
+http://developer.android.com/reference/java/nio/channels/Channel.html
+http://developer.android.com/reference/java/nio/channels/spi/SelectorProvider.html
+http://developer.android.com/reference/android/telephony/CellLocation.html
+http://developer.android.com/reference/android/telephony/NeighboringCellInfo.html
+http://developer.android.com/reference/android/telephony/PhoneNumberFormattingTextWatcher.html
+http://developer.android.com/reference/android/telephony/PhoneNumberUtils.html
+http://developer.android.com/reference/android/telephony/PhoneStateListener.html
+http://developer.android.com/reference/android/telephony/ServiceState.html
+http://developer.android.com/reference/android/telephony/SignalStrength.html
+http://developer.android.com/reference/android/telephony/SmsManager.html
+http://developer.android.com/reference/android/telephony/SmsMessage.html
+http://developer.android.com/reference/android/telephony/SmsMessage.SubmitPdu.html
+http://developer.android.com/reference/android/telephony/SmsMessage.MessageClass.html
+http://developer.android.com/shareables/training/ActivityLifecycle.zip
+http://developer.android.com/reference/android/media/RingtoneManager.html
+http://developer.android.com/reference/org/apache/http/impl/AbstractHttpServerConnection.html
+http://developer.android.com/reference/org/apache/http/impl/DefaultHttpRequestFactory.html
+http://developer.android.com/reference/org/apache/http/impl/EnglishReasonPhraseCatalog.html
+http://developer.android.com/reference/org/apache/http/impl/HttpConnectionMetricsImpl.html
+http://developer.android.com/reference/java/net/Socket.html
+http://developer.android.com/reference/org/apache/http/impl/entity/EntityDeserializer.html
+http://developer.android.com/reference/org/apache/http/impl/entity/EntitySerializer.html
+http://developer.android.com/about/versions/android-1.5.html
+http://developer.android.com/about/versions/android-1.6.html
+http://developer.android.com/about/versions/android-2.1.html
+http://developer.android.com/about/versions/android-2.2.html
+http://developer.android.com/about/versions/android-2.3.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnCompletionListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnErrorListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnPreparedListener.html
+http://developer.android.com/resources/tutorials/views/hello-tabwidget.html
+http://developer.android.com/reference/android/support/v4/view/ViewPager.html
+http://developer.android.com/reference/android/support/v4/view/PagerTitleStrip.html
+http://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener.html
+http://developer.android.com/reference/android/app/admin/DeviceAdminReceiver.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteCursorDriver.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteTransactionListener.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteClosable.html
+http://developer.android.com/reference/android/database/sqlite/SQLiteCursor.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteProgram.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteQuery.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteQueryBuilder.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteReadOnlyDatabaseException.html
 http://developer.android.com/reference/android/database/sqlite/SQLiteStatement.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteTableLockedException.html
-http://developer.android.com/reference/android/database/sqlite/SQLiteTransactionListener.html
+http://developer.android.com/reference/java/nio/charset/Charset.html
+http://developer.android.com/reference/java/nio/charset/CharsetDecoder.html
+http://developer.android.com/reference/java/nio/charset/CharsetEncoder.html
+http://developer.android.com/reference/java/nio/charset/CoderResult.html
+http://developer.android.com/reference/java/nio/charset/CodingErrorAction.html
+http://developer.android.com/reference/java/nio/charset/CharacterCodingException.html
+http://developer.android.com/reference/java/nio/charset/MalformedInputException.html
+http://developer.android.com/reference/java/nio/charset/UnmappableCharacterException.html
+http://developer.android.com/reference/java/nio/charset/CoderMalfunctionError.html
+http://developer.android.com/reference/android/database/ContentObserver.html
+http://developer.android.com/reference/android/database/DataSetObserver.html
+http://developer.android.com/reference/android/support/v4/view/AccessibilityDelegateCompat.html
+http://developer.android.com/reference/android/support/v4/view/KeyEventCompat.html
+http://developer.android.com/reference/android/support/v4/view/MenuCompat.html
+http://developer.android.com/reference/android/support/v4/view/MenuItemCompat.html
+http://developer.android.com/reference/android/support/v4/view/MotionEventCompat.html
+http://developer.android.com/reference/android/support/v4/view/PagerTabStrip.html
+http://developer.android.com/reference/android/support/v4/view/VelocityTrackerCompat.html
+http://developer.android.com/reference/android/support/v4/view/ViewCompat.html
+http://developer.android.com/reference/android/support/v4/view/ViewCompatJB.html
+http://developer.android.com/reference/android/support/v4/view/ViewConfigurationCompat.html
+http://developer.android.com/reference/android/support/v4/view/ViewGroupCompat.html
+http://developer.android.com/reference/android/support/v4/view/ViewPager.LayoutParams.html
+http://developer.android.com/reference/android/support/v4/view/ViewPager.SavedState.html
+http://developer.android.com/reference/android/support/v4/view/ViewPager.SimpleOnPageChangeListener.html
+http://developer.android.com/reference/android/content/pm/ApplicationInfo.DisplayNameComparator.html
+http://developer.android.com/reference/android/content/pm/ComponentInfo.html
+http://developer.android.com/reference/android/content/pm/ConfigurationInfo.html
+http://developer.android.com/reference/android/content/pm/FeatureInfo.html
+http://developer.android.com/reference/android/content/pm/InstrumentationInfo.html
+http://developer.android.com/reference/android/content/pm/PackageInfo.html
+http://developer.android.com/reference/android/content/pm/PackageItemInfo.html
+http://developer.android.com/reference/android/content/pm/PackageItemInfo.DisplayNameComparator.html
+http://developer.android.com/reference/android/content/pm/PackageStats.html
+http://developer.android.com/reference/android/content/pm/PermissionGroupInfo.html
+http://developer.android.com/reference/android/content/pm/PermissionInfo.html
+http://developer.android.com/reference/android/content/pm/ResolveInfo.DisplayNameComparator.html
+http://developer.android.com/reference/android/content/pm/Signature.html
+http://developer.android.com/reference/android/content/pm/PackageManager.NameNotFoundException.html
+http://developer.android.com/reference/android/util/Printer.html
+http://developer.android.com/reference/android/content/res/XmlResourceParser.html
+http://developer.android.com/reference/android/speech/tts/SynthesisCallback.html
+http://developer.android.com/reference/android/speech/tts/TextToSpeech.OnInitListener.html
+http://developer.android.com/reference/android/speech/tts/TextToSpeech.OnUtteranceCompletedListener.html
+http://developer.android.com/reference/android/speech/tts/SynthesisRequest.html
+http://developer.android.com/reference/android/speech/tts/TextToSpeech.html
+http://developer.android.com/reference/android/speech/tts/TextToSpeech.Engine.html
+http://developer.android.com/reference/android/speech/tts/TextToSpeech.EngineInfo.html
+http://developer.android.com/reference/android/speech/tts/UtteranceProgressListener.html
+http://developer.android.com/reference/android/view/animation/AccelerateInterpolator.html
+http://developer.android.com/reference/android/view/animation/AnticipateInterpolator.html
+http://developer.android.com/reference/android/view/animation/AnticipateOvershootInterpolator.html
+http://developer.android.com/reference/android/view/animation/BounceInterpolator.html
+http://developer.android.com/reference/android/view/animation/CycleInterpolator.html
+http://developer.android.com/reference/android/view/animation/DecelerateInterpolator.html
+http://developer.android.com/reference/android/view/animation/LinearInterpolator.html
+http://developer.android.com/reference/android/view/animation/OvershootInterpolator.html
+http://developer.android.com/reference/javax/microedition/khronos/opengles/GL.html
+http://developer.android.com/reference/javax/microedition/khronos/opengles/GL10.html
+http://developer.android.com/reference/javax/microedition/khronos/opengles/GL10Ext.html
+http://developer.android.com/reference/javax/microedition/khronos/opengles/GL11.html
+http://developer.android.com/reference/javax/microedition/khronos/opengles/GL11Ext.html
+http://developer.android.com/reference/javax/microedition/khronos/opengles/GL11ExtensionPack.html
+http://developer.android.com/reference/android/preference/Preference.OnPreferenceChangeListener.html
+http://developer.android.com/reference/android/preference/Preference.OnPreferenceClickListener.html
+http://developer.android.com/reference/android/preference/PreferenceFragment.OnPreferenceStartFragmentCallback.html
+http://developer.android.com/reference/android/preference/PreferenceManager.OnActivityDestroyListener.html
+http://developer.android.com/reference/android/preference/PreferenceManager.OnActivityResultListener.html
+http://developer.android.com/reference/android/preference/PreferenceManager.OnActivityStopListener.html
+http://developer.android.com/reference/android/preference/MultiSelectListPreference.html
+http://developer.android.com/reference/android/preference/PreferenceActivity.Header.html
+http://developer.android.com/reference/android/preference/PreferenceGroup.html
+http://developer.android.com/reference/android/preference/RingtonePreference.html
+http://developer.android.com/reference/android/preference/SwitchPreference.html
+http://developer.android.com/reference/android/preference/TwoStatePreference.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_menu.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_status_bar.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_tab.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_dialog.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_list.html
+http://developer.android.com/shareables/icon_templates-v4.0.zip
+http://developer.android.com/shareables/icon_templates-v2.3.zip
+http://developer.android.com/shareables/icon_templates-v2.0.zip
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_action_bar.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LocalService.html
+http://developer.android.com/reference/org/xmlpull/v1/sax2/Driver.html
+http://developer.android.com/reference/java/io/DataInput.html
+http://developer.android.com/reference/java/io/DataOutput.html
+http://developer.android.com/reference/java/io/Externalizable.html
+http://developer.android.com/reference/java/io/FileFilter.html
+http://developer.android.com/reference/java/io/FilenameFilter.html
+http://developer.android.com/reference/java/io/Flushable.html
+http://developer.android.com/reference/java/io/ObjectInput.html
+http://developer.android.com/reference/java/io/ObjectInputValidation.html
+http://developer.android.com/reference/java/io/ObjectOutput.html
+http://developer.android.com/reference/java/io/ObjectStreamConstants.html
+http://developer.android.com/reference/java/io/BufferedInputStream.html
+http://developer.android.com/reference/java/io/BufferedOutputStream.html
+http://developer.android.com/reference/java/io/BufferedReader.html
+http://developer.android.com/reference/java/io/BufferedWriter.html
+http://developer.android.com/reference/java/io/ByteArrayInputStream.html
+http://developer.android.com/reference/java/io/ByteArrayOutputStream.html
+http://developer.android.com/reference/java/io/CharArrayReader.html
+http://developer.android.com/reference/java/io/CharArrayWriter.html
+http://developer.android.com/reference/java/io/DataInputStream.html
+http://developer.android.com/reference/java/io/DataOutputStream.html
+http://developer.android.com/reference/java/io/FilePermission.html
+http://developer.android.com/reference/java/io/FileReader.html
+http://developer.android.com/reference/java/io/FileWriter.html
+http://developer.android.com/reference/java/io/FilterInputStream.html
+http://developer.android.com/reference/java/io/FilterOutputStream.html
+http://developer.android.com/reference/java/io/FilterReader.html
+http://developer.android.com/reference/java/io/FilterWriter.html
+http://developer.android.com/reference/java/io/InputStreamReader.html
+http://developer.android.com/reference/java/io/LineNumberInputStream.html
+http://developer.android.com/reference/java/io/LineNumberReader.html
+http://developer.android.com/reference/java/io/ObjectInputStream.html
+http://developer.android.com/reference/java/io/ObjectInputStream.GetField.html
+http://developer.android.com/reference/java/io/ObjectOutputStream.html
+http://developer.android.com/reference/java/io/ObjectOutputStream.PutField.html
+http://developer.android.com/reference/java/io/ObjectStreamClass.html
+http://developer.android.com/reference/java/io/ObjectStreamField.html
+http://developer.android.com/reference/java/io/OutputStreamWriter.html
+http://developer.android.com/reference/java/io/PipedInputStream.html
+http://developer.android.com/reference/java/io/PipedOutputStream.html
+http://developer.android.com/reference/java/io/PipedReader.html
+http://developer.android.com/reference/java/io/PipedWriter.html
+http://developer.android.com/reference/java/io/PushbackInputStream.html
+http://developer.android.com/reference/java/io/PushbackReader.html
+http://developer.android.com/reference/java/io/RandomAccessFile.html
+http://developer.android.com/reference/java/io/SequenceInputStream.html
+http://developer.android.com/reference/java/io/SerializablePermission.html
+http://developer.android.com/reference/java/io/StreamTokenizer.html
+http://developer.android.com/reference/java/io/StringBufferInputStream.html
+http://developer.android.com/reference/java/io/StringReader.html
+http://developer.android.com/reference/java/io/StringWriter.html
+http://developer.android.com/reference/java/io/CharConversionException.html
+http://developer.android.com/reference/java/io/EOFException.html
+http://developer.android.com/reference/java/io/InterruptedIOException.html
+http://developer.android.com/reference/java/io/InvalidClassException.html
+http://developer.android.com/reference/java/io/InvalidObjectException.html
+http://developer.android.com/reference/java/io/NotActiveException.html
+http://developer.android.com/reference/java/io/NotSerializableException.html
+http://developer.android.com/reference/java/io/OptionalDataException.html
+http://developer.android.com/reference/java/io/StreamCorruptedException.html
+http://developer.android.com/reference/java/io/SyncFailedException.html
+http://developer.android.com/reference/java/io/UnsupportedEncodingException.html
+http://developer.android.com/reference/java/io/UTFDataFormatException.html
+http://developer.android.com/reference/java/io/WriteAbortedException.html
+http://developer.android.com/reference/java/io/IOError.html
+http://developer.android.com/reference/android/view/inputmethod/InputMethod.html
+http://developer.android.com/reference/android/view/inputmethod/InputMethod.SessionCallback.html
+http://developer.android.com/reference/android/view/inputmethod/InputMethodSession.html
+http://developer.android.com/reference/android/view/inputmethod/InputMethodSession.EventCallback.html
+http://developer.android.com/reference/android/view/inputmethod/BaseInputConnection.html
+http://developer.android.com/reference/android/view/inputmethod/CompletionInfo.html
+http://developer.android.com/reference/android/view/inputmethod/CorrectionInfo.html
+http://developer.android.com/reference/android/view/inputmethod/ExtractedText.html
+http://developer.android.com/reference/android/view/inputmethod/ExtractedTextRequest.html
+http://developer.android.com/reference/android/view/inputmethod/InputBinding.html
+http://developer.android.com/reference/android/view/inputmethod/InputConnectionWrapper.html
+http://developer.android.com/reference/android/view/inputmethod/InputMethodInfo.html
+http://developer.android.com/reference/android/view/inputmethod/InputMethodSubtype.html
+http://developer.android.com/reference/android/graphics/Color.html
+http://developer.android.com/reference/junit/framework/Assert.html
+http://developer.android.com/reference/junit/framework/TestResult.html
+http://developer.android.com/reference/junit/framework/Test.html
+http://developer.android.com/reference/javax/crypto/spec/DESedeKeySpec.html
+http://developer.android.com/reference/javax/crypto/spec/DESKeySpec.html
+http://developer.android.com/reference/javax/crypto/spec/DHGenParameterSpec.html
+http://developer.android.com/reference/javax/crypto/spec/DHParameterSpec.html
+http://developer.android.com/reference/javax/crypto/spec/DHPrivateKeySpec.html
+http://developer.android.com/reference/javax/crypto/spec/DHPublicKeySpec.html
+http://developer.android.com/reference/javax/crypto/spec/IvParameterSpec.html
+http://developer.android.com/reference/javax/crypto/spec/OAEPParameterSpec.html
+http://developer.android.com/reference/javax/crypto/spec/PBEKeySpec.html
+http://developer.android.com/reference/javax/crypto/spec/PBEParameterSpec.html
+http://developer.android.com/reference/javax/crypto/spec/PSource.html
+http://developer.android.com/reference/javax/crypto/spec/PSource.PSpecified.html
+http://developer.android.com/reference/javax/crypto/spec/RC2ParameterSpec.html
+http://developer.android.com/reference/javax/crypto/spec/RC5ParameterSpec.html
+http://developer.android.com/reference/java/util/Comparator.html
+http://developer.android.com/reference/java/util/Deque.html
+http://developer.android.com/reference/java/util/EventListener.html
+http://developer.android.com/reference/java/util/Formattable.html
+http://developer.android.com/reference/java/util/ListIterator.html
+http://developer.android.com/reference/java/util/NavigableMap.html
+http://developer.android.com/reference/java/util/NavigableSet.html
+http://developer.android.com/reference/java/util/Observer.html
+http://developer.android.com/reference/java/util/Queue.html
+http://developer.android.com/reference/java/util/RandomAccess.html
+http://developer.android.com/reference/java/util/SortedMap.html
+http://developer.android.com/reference/java/util/SortedSet.html
+http://developer.android.com/reference/java/util/AbstractCollection.html
+http://developer.android.com/reference/java/util/AbstractList.html
+http://developer.android.com/reference/java/util/AbstractMap.html
+http://developer.android.com/reference/java/util/AbstractMap.SimpleEntry.html
+http://developer.android.com/reference/java/util/AbstractMap.SimpleImmutableEntry.html
+http://developer.android.com/reference/java/util/AbstractQueue.html
+http://developer.android.com/reference/java/util/AbstractSequentialList.html
+http://developer.android.com/reference/java/util/AbstractSet.html
+http://developer.android.com/reference/java/util/ArrayDeque.html
+http://developer.android.com/reference/java/util/Arrays.html
+http://developer.android.com/reference/java/util/BitSet.html
+http://developer.android.com/reference/java/util/Calendar.html
+http://developer.android.com/reference/java/util/Collections.html
+http://developer.android.com/reference/java/util/Currency.html
+http://developer.android.com/reference/java/util/Date.html
+http://developer.android.com/reference/java/util/EnumMap.html
+http://developer.android.com/reference/java/util/EnumSet.html
+http://developer.android.com/reference/java/util/EventListenerProxy.html
+http://developer.android.com/reference/java/util/EventObject.html
+http://developer.android.com/reference/java/util/FormattableFlags.html
+http://developer.android.com/reference/java/util/GregorianCalendar.html
+http://developer.android.com/reference/java/util/HashMap.html
+http://developer.android.com/reference/java/util/HashSet.html
+http://developer.android.com/reference/java/util/IdentityHashMap.html
+http://developer.android.com/reference/java/util/LinkedHashMap.html
+http://developer.android.com/reference/java/util/LinkedHashSet.html
+http://developer.android.com/reference/java/util/LinkedList.html
+http://developer.android.com/reference/java/util/ListResourceBundle.html
+http://developer.android.com/reference/java/util/Locale.html
+http://developer.android.com/reference/java/util/Observable.html
+http://developer.android.com/reference/java/util/PriorityQueue.html
+http://developer.android.com/reference/java/util/PropertyPermission.html
+http://developer.android.com/reference/java/util/PropertyResourceBundle.html
+http://developer.android.com/reference/java/util/Random.html
+http://developer.android.com/reference/java/util/ResourceBundle.html
+http://developer.android.com/reference/java/util/ResourceBundle.Control.html
+http://developer.android.com/reference/java/util/Scanner.html
+http://developer.android.com/reference/java/util/ServiceLoader.html
+http://developer.android.com/reference/java/util/SimpleTimeZone.html
+http://developer.android.com/reference/java/util/Stack.html
+http://developer.android.com/reference/java/util/StringTokenizer.html
+http://developer.android.com/reference/java/util/Timer.html
+http://developer.android.com/reference/java/util/TimerTask.html
+http://developer.android.com/reference/java/util/TimeZone.html
+http://developer.android.com/reference/java/util/TreeMap.html
+http://developer.android.com/reference/java/util/TreeSet.html
+http://developer.android.com/reference/java/util/UUID.html
+http://developer.android.com/reference/java/util/Vector.html
+http://developer.android.com/reference/java/util/WeakHashMap.html
+http://developer.android.com/reference/java/util/Formatter.BigDecimalLayoutForm.html
+http://developer.android.com/reference/java/util/InvalidPropertiesFormatException.html
+http://developer.android.com/reference/java/util/TooManyListenersException.html
+http://developer.android.com/reference/java/util/ServiceConfigurationError.html
+http://developer.android.com/reference/java/text/SimpleDateFormat.html
+http://developer.android.com/reference/java/text/DateFormat.html
+http://developer.android.com/reference/java/nio/channels/ByteChannel.html
+http://developer.android.com/reference/java/nio/channels/GatheringByteChannel.html
+http://developer.android.com/reference/java/nio/channels/InterruptibleChannel.html
+http://developer.android.com/reference/java/nio/channels/ReadableByteChannel.html
+http://developer.android.com/reference/java/nio/channels/ScatteringByteChannel.html
+http://developer.android.com/reference/java/nio/channels/WritableByteChannel.html
+http://developer.android.com/reference/java/nio/channels/Channels.html
+http://developer.android.com/reference/java/nio/channels/DatagramChannel.html
+http://developer.android.com/reference/java/nio/channels/FileChannel.html
+http://developer.android.com/reference/java/nio/channels/FileChannel.MapMode.html
+http://developer.android.com/reference/java/nio/channels/FileLock.html
+http://developer.android.com/reference/java/nio/channels/Pipe.html
+http://developer.android.com/reference/java/nio/channels/Pipe.SinkChannel.html
+http://developer.android.com/reference/java/nio/channels/Pipe.SourceChannel.html
+http://developer.android.com/reference/java/nio/channels/SelectableChannel.html
+http://developer.android.com/reference/java/nio/channels/SelectionKey.html
+http://developer.android.com/reference/java/nio/channels/ServerSocketChannel.html
+http://developer.android.com/reference/java/nio/channels/AsynchronousCloseException.html
+http://developer.android.com/reference/java/nio/channels/ClosedByInterruptException.html
+http://developer.android.com/reference/java/nio/channels/ClosedChannelException.html
+http://developer.android.com/reference/java/nio/channels/FileLockInterruptionException.html
+http://developer.android.com/reference/java/nio/channels/spi/AbstractSelectableChannel.html
+http://developer.android.com/reference/java/nio/channels/spi/AbstractInterruptibleChannel.html
+http://developer.android.com/reference/java/net/SocketAddress.html
+http://developer.android.com/reference/android/text/method/MovementMethod.html
+http://developer.android.com/reference/android/text/TextUtils.TruncateAt.html
+http://developer.android.com/reference/android/text/InputFilter.html
+http://developer.android.com/reference/android/content/res/ColorStateList.html
+http://developer.android.com/reference/android/text/method/KeyListener.html
+http://developer.android.com/reference/android/text/Layout.html
+http://developer.android.com/reference/android/text/method/LinkMovementMethod.html
+http://developer.android.com/reference/android/text/TextPaint.html
+http://developer.android.com/reference/android/text/Selection.html
+http://developer.android.com/reference/android/text/method/TransformationMethod.html
+http://developer.android.com/reference/android/graphics/Typeface.html
+http://developer.android.com/reference/android/text/style/URLSpan.html
+http://developer.android.com/reference/android/text/util/Linkify.html
+http://developer.android.com/reference/android/text/Editable.Factory.html
+http://developer.android.com/reference/android/text/Spannable.Factory.html
+http://developer.android.com/reference/android/graphics/drawable/Animatable.html
+http://developer.android.com/reference/android/graphics/drawable/AnimationDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/BitmapDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/ClipDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/ColorDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/Drawable.ConstantState.html
+http://developer.android.com/reference/android/graphics/drawable/DrawableContainer.html
+http://developer.android.com/reference/android/graphics/drawable/DrawableContainer.DrawableContainerState.html
+http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/InsetDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/LayerDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/NinePatchDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/PaintDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/PictureDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/RotateDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/ScaleDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/ShapeDrawable.ShaderFactory.html
+http://developer.android.com/reference/android/graphics/drawable/StateListDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/TransitionDrawable.html
+http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.Orientation.html
+http://developer.android.com/reference/android/appwidget/AppWidgetHostView.html
+http://developer.android.com/reference/android/inputmethodservice/ExtractEditText.html
+http://developer.android.com/reference/android/gesture/GestureOverlayView.html
+http://developer.android.com/reference/android/inputmethodservice/KeyboardView.html
+http://developer.android.com/reference/android/inputmethodservice/Keyboard.html
+http://developer.android.com/reference/android/renderscript/RSSurfaceView.html
+http://developer.android.com/reference/android/renderscript/RSTextureView.html
+http://developer.android.com/reference/android/accounts/AccountAuthenticatorActivity.html
+http://developer.android.com/reference/android/support/v13/dreams/BasicDream.html
+http://developer.android.com/reference/android/app/admin/DeviceAdminInfo.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/DeviceAdminSample.html
+http://developer.android.com/resources/samples/get.html
+http://developer.android.com/guide/appendix/g-app-intents.html
+http://developer.android.com/resources/samples/index.html
+http://developer.android.com/resources/samples/NotePad/index.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnConnectionPNames.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnManagerPNames.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnPerRoute.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnRoutePNames.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnConnectionParamBean.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnManagerParamBean.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnManagerParams.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnPerRouteBean.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnRouteParamBean.html
+http://developer.android.com/reference/org/apache/http/conn/params/ConnRouteParams.html
+http://developer.android.com/reference/org/apache/http/conn/ClientConnectionManager.html
+http://developer.android.com/reference/android/test/mock/MockContentResolver.html
+http://developer.android.com/shareables/training/LocationAware.zip
+http://developer.android.com/reference/android/location/LocationProvider.html
+http://developer.android.com/reference/android/R.style.html
+http://developer.android.com/reference/android/content/res/AssetFileDescriptor.AutoCloseInputStream.html
+http://developer.android.com/reference/android/content/res/AssetFileDescriptor.AutoCloseOutputStream.html
+http://developer.android.com/reference/android/content/res/AssetManager.AssetInputStream.html
+http://developer.android.com/reference/android/content/res/ObbInfo.html
+http://developer.android.com/reference/android/content/res/ObbScanner.html
+http://developer.android.com/reference/java/security/spec/KeySpec.html
+http://developer.android.com/reference/javax/crypto/SecretKey.html
+http://developer.android.com/reference/junit/framework/Protectable.html
+http://developer.android.com/reference/junit/framework/TestListener.html
+http://developer.android.com/reference/junit/framework/TestFailure.html
+http://developer.android.com/reference/junit/framework/AssertionFailedError.html
+http://developer.android.com/reference/junit/framework/ComparisonFailure.html
+http://developer.android.com/reference/android/test/suitebuilder/TestSuiteBuilder.FailedToCreateTests.html
+http://developer.android.com/reference/javax/xml/transform/dom/DOMLocator.html
+http://developer.android.com/reference/javax/xml/transform/dom/DOMResult.html
+http://developer.android.com/reference/javax/xml/transform/dom/DOMSource.html
+http://developer.android.com/reference/javax/xml/transform/TransformerException.html
+http://developer.android.com/reference/javax/xml/transform/SourceLocator.html
+http://developer.android.com/reference/android/graphics/BitmapFactory.Options.html
+http://developer.android.com/reference/java/math/BigInteger.html
+http://developer.android.com/shareables/app_widget_templates-v4.0.zip
+http://developer.android.com/resources/tutorials/views/hello-formstuff.html
+http://developer.android.com/reference/android/opengl/GLSurfaceView.EGLConfigChooser.html
+http://developer.android.com/reference/android/opengl/GLSurfaceView.EGLContextFactory.html
+http://developer.android.com/reference/android/opengl/GLSurfaceView.EGLWindowSurfaceFactory.html
+http://developer.android.com/reference/android/opengl/GLSurfaceView.GLWrapper.html
+http://developer.android.com/reference/android/opengl/GLSurfaceView.Renderer.html
+http://developer.android.com/reference/android/opengl/ETC1.html
+http://developer.android.com/reference/android/opengl/ETC1Util.html
+http://developer.android.com/reference/android/opengl/ETC1Util.ETC1Texture.html
+http://developer.android.com/reference/android/opengl/GLDebugHelper.html
+http://developer.android.com/reference/android/opengl/GLES10.html
+http://developer.android.com/reference/android/opengl/GLES10Ext.html
+http://developer.android.com/reference/android/opengl/GLES11.html
+http://developer.android.com/reference/android/opengl/GLES11Ext.html
+http://developer.android.com/reference/android/opengl/GLU.html
+http://developer.android.com/reference/android/opengl/GLUtils.html
+http://developer.android.com/reference/android/opengl/Matrix.html
+http://developer.android.com/reference/android/opengl/Visibility.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicBoolean.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicInteger.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicIntegerArray.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicLong.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicLongArray.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicLongFieldUpdater.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicMarkableReference.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicReference.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicReferenceArray.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.html
+http://developer.android.com/reference/java/util/concurrent/atomic/AtomicStampedReference.html
+http://developer.android.com/reference/android/test/mock/MockContext.html
+http://developer.android.com/shareables/training/FragmentBasics.zip
+http://developer.android.com/reference/org/apache/http/entity/StringEntity.html
+http://developer.android.com/reference/org/apache/http/entity/AbstractHttpEntity.html
+http://developer.android.com/reference/org/apache/http/protocol/HTTP.html
+http://developer.android.com/reference/android/view/animation/AlphaAnimation.html
+http://developer.android.com/reference/android/view/animation/Animation.Description.html
+http://developer.android.com/reference/android/view/animation/AnimationSet.html
+http://developer.android.com/reference/android/view/animation/AnimationUtils.html
+http://developer.android.com/reference/android/view/animation/GridLayoutAnimationController.html
+http://developer.android.com/reference/android/view/animation/GridLayoutAnimationController.AnimationParameters.html
+http://developer.android.com/reference/android/view/animation/LayoutAnimationController.AnimationParameters.html
+http://developer.android.com/reference/android/view/animation/RotateAnimation.html
+http://developer.android.com/reference/android/view/animation/ScaleAnimation.html
+http://developer.android.com/reference/android/view/animation/TranslateAnimation.html
+http://developer.android.com/reference/javax/xml/datatype/DatatypeConstants.html
+http://developer.android.com/reference/javax/xml/datatype/DatatypeConstants.Field.html
+http://developer.android.com/reference/javax/xml/datatype/DatatypeFactory.html
+http://developer.android.com/reference/javax/xml/datatype/Duration.html
+http://developer.android.com/reference/javax/xml/datatype/XMLGregorianCalendar.html
+http://developer.android.com/reference/javax/xml/datatype/DatatypeConfigurationException.html
+http://developer.android.com/resources/samples/MultiResolution/index.html
+http://developer.android.com/guide/practices/screens-support-1.5.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/DensityActivity.html
+http://developer.android.com/reference/android/util/DisplayMetrics.html
+http://developer.android.com/reference/android/graphics/BitmapFactory.html
+http://developer.android.com/resources/dashboard/screens.html
+http://developer.android.com/reference/java/sql/Connection.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html
+http://developer.android.com/guide/topics/network/sip.html
+http://developer.android.com/reference/android/graphics/SurfaceTexture.OnFrameAvailableListener.html
+http://developer.android.com/reference/android/graphics/AvoidXfermode.html
+http://developer.android.com/reference/android/graphics/BitmapRegionDecoder.html
+http://developer.android.com/reference/android/graphics/BitmapShader.html
+http://developer.android.com/reference/android/graphics/BlurMaskFilter.html
+http://developer.android.com/reference/android/graphics/Camera.html
+http://developer.android.com/reference/android/graphics/ColorMatrix.html
+http://developer.android.com/reference/android/graphics/ColorMatrixColorFilter.html
+http://developer.android.com/reference/android/graphics/ComposePathEffect.html
+http://developer.android.com/reference/android/graphics/ComposeShader.html
+http://developer.android.com/reference/android/graphics/CornerPathEffect.html
+http://developer.android.com/reference/android/graphics/DashPathEffect.html
+http://developer.android.com/reference/android/graphics/DiscretePathEffect.html
+http://developer.android.com/reference/android/graphics/DrawFilter.html
+http://developer.android.com/reference/android/graphics/EmbossMaskFilter.html
+http://developer.android.com/reference/android/graphics/ImageFormat.html
+http://developer.android.com/reference/android/graphics/Interpolator.html
+http://developer.android.com/reference/android/graphics/LayerRasterizer.html
+http://developer.android.com/reference/android/graphics/LightingColorFilter.html
+http://developer.android.com/reference/android/graphics/LinearGradient.html
+http://developer.android.com/reference/android/graphics/MaskFilter.html
+http://developer.android.com/reference/android/graphics/Movie.html
+http://developer.android.com/reference/android/graphics/NinePatch.html
+http://developer.android.com/reference/android/graphics/Paint.FontMetrics.html
+http://developer.android.com/reference/android/graphics/Paint.FontMetricsInt.html
+http://developer.android.com/reference/android/graphics/PaintFlagsDrawFilter.html
+http://developer.android.com/reference/android/graphics/PathDashPathEffect.html
+http://developer.android.com/reference/android/graphics/PathEffect.html
+http://developer.android.com/reference/android/graphics/PathMeasure.html
+http://developer.android.com/reference/android/graphics/Picture.html
+http://developer.android.com/reference/android/graphics/PixelFormat.html
+http://developer.android.com/reference/android/graphics/PixelXorXfermode.html
+http://developer.android.com/reference/android/graphics/PointF.html
+http://developer.android.com/reference/android/graphics/PorterDuff.html
+http://developer.android.com/reference/android/graphics/PorterDuffColorFilter.html
+http://developer.android.com/reference/android/graphics/PorterDuffXfermode.html
+http://developer.android.com/reference/android/graphics/RadialGradient.html
+http://developer.android.com/reference/android/graphics/Rasterizer.html
+http://developer.android.com/reference/android/graphics/RectF.html
+http://developer.android.com/reference/android/graphics/RegionIterator.html
+http://developer.android.com/reference/android/graphics/Shader.html
+http://developer.android.com/reference/android/graphics/SumPathEffect.html
+http://developer.android.com/reference/android/graphics/SurfaceTexture.html
+http://developer.android.com/reference/android/graphics/SweepGradient.html
+http://developer.android.com/reference/android/graphics/Xfermode.html
+http://developer.android.com/reference/android/graphics/YuvImage.html
+http://developer.android.com/reference/android/graphics/AvoidXfermode.Mode.html
+http://developer.android.com/reference/android/graphics/Bitmap.CompressFormat.html
+http://developer.android.com/reference/android/graphics/Bitmap.Config.html
+http://developer.android.com/reference/android/graphics/BlurMaskFilter.Blur.html
+http://developer.android.com/reference/android/graphics/Canvas.EdgeType.html
+http://developer.android.com/reference/android/graphics/Canvas.VertexMode.html
+http://developer.android.com/reference/android/graphics/Interpolator.Result.html
+http://developer.android.com/reference/android/graphics/Matrix.ScaleToFit.html
+http://developer.android.com/reference/android/graphics/Paint.Align.html
+http://developer.android.com/reference/android/graphics/Paint.Cap.html
+http://developer.android.com/reference/android/graphics/Paint.Join.html
+http://developer.android.com/reference/android/graphics/Paint.Style.html
+http://developer.android.com/reference/android/graphics/Path.Direction.html
+http://developer.android.com/reference/android/graphics/Path.FillType.html
+http://developer.android.com/reference/android/graphics/PathDashPathEffect.Style.html
+http://developer.android.com/reference/android/graphics/Region.Op.html
+http://developer.android.com/reference/android/graphics/Shader.TileMode.html
+http://developer.android.com/reference/android/graphics/SurfaceTexture.OutOfResourcesException.html
+http://developer.android.com/reference/android/media/MediaPlayer.html
+http://developer.android.com/reference/android/media/MediaRecorder.html
+http://developer.android.com/reference/android/media/CamcorderProfile.html
+http://developer.android.com/reference/android/renderscript/Allocation.MipmapControl.html
+http://developer.android.com/reference/java/net/Authenticator.RequestorType.html
+http://developer.android.com/reference/java/sql/ClientInfoStatus.html
+http://developer.android.com/reference/android/webkit/ConsoleMessage.MessageLevel.html
+http://developer.android.com/reference/android/database/CursorJoiner.Result.html
+http://developer.android.com/reference/android/renderscript/Element.DataKind.html
+http://developer.android.com/reference/android/renderscript/Element.DataType.html
+http://developer.android.com/reference/java/lang/annotation/ElementType.html
+http://developer.android.com/reference/android/renderscript/FileA3D.EntryType.html
+http://developer.android.com/reference/android/renderscript/Font.Style.html
+http://developer.android.com/reference/android/util/JsonToken.html
+http://developer.android.com/reference/android/text/Layout.Alignment.html
+http://developer.android.com/reference/android/net/LocalSocketAddress.Namespace.html
+http://developer.android.com/reference/android/renderscript/Mesh.Primitive.html
+http://developer.android.com/reference/android/net/NetworkInfo.DetailedState.html
+http://developer.android.com/reference/android/net/NetworkInfo.State.html
+http://developer.android.com/reference/java/text/Normalizer.Form.html
+http://developer.android.com/reference/android/renderscript/Program.TextureType.html
+http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.Builder.EnvMode.html
+http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.Builder.Format.html
+http://developer.android.com/reference/android/renderscript/ProgramRaster.CullMode.html
+http://developer.android.com/reference/android/renderscript/ProgramStore.BlendDstFunc.html
+http://developer.android.com/reference/android/renderscript/ProgramStore.BlendSrcFunc.html
+http://developer.android.com/reference/android/renderscript/ProgramStore.DepthFunc.html
+http://developer.android.com/reference/java/net/Proxy.Type.html
+http://developer.android.com/reference/android/renderscript/RenderScript.Priority.html
+http://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html
+http://developer.android.com/reference/java/math/RoundingMode.html
+http://developer.android.com/reference/org/apache/http/conn/routing/RouteInfo.LayerType.html
+http://developer.android.com/reference/org/apache/http/conn/routing/RouteInfo.TunnelType.html
+http://developer.android.com/reference/java/sql/RowIdLifetime.html
+http://developer.android.com/reference/javax/net/ssl/SSLEngineResult.HandshakeStatus.html
+http://developer.android.com/reference/javax/net/ssl/SSLEngineResult.Status.html
+http://developer.android.com/reference/android/renderscript/Sampler.Value.html
+http://developer.android.com/reference/android/telephony/gsm/SmsMessage.MessageClass.html
+http://developer.android.com/reference/android/text/method/TextKeyListener.Capitalize.html
+http://developer.android.com/reference/java/util/concurrent/TimeUnit.html
+http://developer.android.com/reference/android/renderscript/Type.CubemapFace.html
+http://developer.android.com/reference/android/webkit/WebSettings.LayoutAlgorithm.html
+http://developer.android.com/reference/android/webkit/WebSettings.PluginState.html
+http://developer.android.com/reference/android/webkit/WebSettings.RenderPriority.html
+http://developer.android.com/reference/android/webkit/WebSettings.TextSize.html
+http://developer.android.com/reference/android/webkit/WebSettings.html
+http://developer.android.com/reference/android/webkit/WebSettings.ZoomDensity.html
+http://developer.android.com/reference/android/util/Xml.Encoding.html
+http://developer.android.com/reference/java/security/cert/CertPath.html
+http://developer.android.com/sdk/api_diff/10/changes.html
+http://developer.android.com/reference/android/nfc/NdefRecord.html
+http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html
+http://developer.android.com/reference/android/bluetooth/BluetoothAdapter.html
+http://developer.android.com/reference/android/media/MediaMetadataRetriever.html
+http://developer.android.com/reference/android/media/MediaRecorder.AudioEncoder.html
+http://developer.android.com/reference/android/media/MediaRecorder.OutputFormat.html
+http://developer.android.com/reference/android/speech/RecognizerResultsIntent.html
+http://developer.android.com/reference/android/test/UiThreadTest.html
+http://developer.android.com/shareables/training/TabCompat.zip
+http://developer.android.com/reference/junit/runner/BaseTestRunner.html
+http://developer.android.com/reference/junit/runner/TestSuiteLoader.html
+http://developer.android.com/reference/javax/xml/transform/ErrorListener.html
+http://developer.android.com/reference/javax/xml/transform/Result.html
+http://developer.android.com/reference/javax/xml/transform/Templates.html
+http://developer.android.com/reference/javax/xml/transform/URIResolver.html
+http://developer.android.com/reference/javax/xml/transform/OutputKeys.html
+http://developer.android.com/reference/javax/xml/transform/TransformerFactory.html
+http://developer.android.com/reference/javax/xml/transform/TransformerConfigurationException.html
+http://developer.android.com/reference/javax/xml/transform/TransformerFactoryConfigurationError.html
+http://developer.android.com/reference/javax/xml/transform/sax/SAXSource.html
+http://developer.android.com/reference/javax/xml/transform/stream/StreamSource.html
+http://developer.android.com/resources/samples/ContactManager/index.html
+http://developer.android.com/resources/samples/SampleSyncAdapter/index.html
+http://developer.android.com/reference/android/accounts/AbstractAccountAuthenticator.html
+http://developer.android.com/reference/java/util/jar/Pack200.Packer.html
+http://developer.android.com/reference/java/util/jar/Pack200.Unpacker.html
+http://developer.android.com/reference/java/util/jar/Attributes.html
+http://developer.android.com/reference/java/util/jar/Attributes.Name.html
+http://developer.android.com/reference/java/util/jar/JarEntry.html
+http://developer.android.com/reference/java/util/jar/JarFile.html
+http://developer.android.com/reference/java/util/jar/JarInputStream.html
+http://developer.android.com/reference/java/util/jar/JarOutputStream.html
+http://developer.android.com/reference/java/util/jar/Manifest.html
+http://developer.android.com/reference/java/util/jar/Pack200.html
+http://developer.android.com/reference/java/util/jar/JarException.html
+http://developer.android.com/reference/java/sql/PreparedStatement.html
+http://developer.android.com/reference/android/net/Uri.Builder.html
+http://developer.android.com/reference/java/lang/reflect/GenericSignatureFormatError.html
+http://developer.android.com/reference/android/webkit/HttpAuthHandler.html
+http://developer.android.com/reference/android/webkit/SslErrorHandler.html
+http://developer.android.com/reference/java/nio/channels/spi/AbstractSelectionKey.html
+http://developer.android.com/reference/java/util/concurrent/CopyOnWriteArrayList.html
+http://developer.android.com/reference/android/util/TypedValue.html
+http://developer.android.com/reference/android/hardware/Camera.html
+http://developer.android.com/reference/java/lang/annotation/Annotation.html
+http://developer.android.com/reference/java/lang/annotation/AnnotationFormatError.html
+http://developer.android.com/resources/samples/SoftKeyboard/index.html
+http://developer.android.com/reference/android/text/InputType.html
+http://developer.android.com/reference/android/test/mock/MockCursor.html
+http://developer.android.com/reference/android/test/mock/MockDialogInterface.html
+http://developer.android.com/reference/android/test/mock/MockPackageManager.html
+http://developer.android.com/reference/android/test/mock/MockResources.html
+http://developer.android.com/reference/android/database/CrossProcessCursor.html
+http://developer.android.com/reference/android/database/AbstractCursor.html
+http://developer.android.com/reference/android/database/AbstractCursor.SelfContentObserver.html
+http://developer.android.com/reference/android/database/AbstractWindowedCursor.html
+http://developer.android.com/reference/android/database/CharArrayBuffer.html
+http://developer.android.com/reference/android/database/ContentObservable.html
+http://developer.android.com/reference/android/database/CrossProcessCursorWrapper.html
+http://developer.android.com/reference/android/database/CursorJoiner.html
+http://developer.android.com/reference/android/database/CursorWindow.html
+http://developer.android.com/reference/android/database/CursorWrapper.html
+http://developer.android.com/reference/android/database/DatabaseUtils.InsertHelper.html
+http://developer.android.com/reference/android/database/DataSetObservable.html
+http://developer.android.com/reference/android/database/DefaultDatabaseErrorHandler.html
+http://developer.android.com/reference/android/database/MatrixCursor.html
+http://developer.android.com/reference/android/database/MatrixCursor.RowBuilder.html
+http://developer.android.com/reference/android/database/MergeCursor.html
+http://developer.android.com/reference/android/database/Observable.html
+http://developer.android.com/reference/android/telephony/gsm/GsmCellLocation.html
+http://developer.android.com/reference/android/telephony/gsm/SmsManager.html
+http://developer.android.com/reference/android/telephony/gsm/SmsMessage.html
+http://developer.android.com/reference/android/telephony/gsm/SmsMessage.SubmitPdu.html
+http://developer.android.com/reference/android/text/method/ArrowKeyMovementMethod.html
+http://developer.android.com/reference/android/text/method/BaseKeyListener.html
+http://developer.android.com/reference/android/text/method/BaseMovementMethod.html
+http://developer.android.com/reference/android/text/method/CharacterPickerDialog.html
+http://developer.android.com/reference/android/text/method/DateKeyListener.html
+http://developer.android.com/reference/android/text/method/DateTimeKeyListener.html
+http://developer.android.com/reference/android/text/method/DialerKeyListener.html
+http://developer.android.com/reference/android/text/method/DigitsKeyListener.html
+http://developer.android.com/reference/android/text/method/HideReturnsTransformationMethod.html
+http://developer.android.com/reference/android/text/method/MetaKeyKeyListener.html
+http://developer.android.com/reference/android/text/method/MultiTapKeyListener.html
+http://developer.android.com/reference/android/text/method/NumberKeyListener.html
+http://developer.android.com/reference/android/text/method/PasswordTransformationMethod.html
+http://developer.android.com/reference/android/text/method/QwertyKeyListener.html
+http://developer.android.com/reference/android/text/method/ReplacementTransformationMethod.html
+http://developer.android.com/reference/android/text/method/ScrollingMovementMethod.html
+http://developer.android.com/reference/android/text/method/SingleLineTransformationMethod.html
+http://developer.android.com/reference/android/text/method/TextKeyListener.html
+http://developer.android.com/reference/android/text/method/TimeKeyListener.html
+http://developer.android.com/reference/android/text/method/Touch.html
+http://developer.android.com/reference/android/text/Spannable.html
+http://developer.android.com/reference/junit/runner/Version.html
+http://developer.android.com/reference/android/media/SoundPool.html
+http://developer.android.com/reference/android/media/AudioManager.OnAudioFocusChangeListener.html
+http://developer.android.com/reference/java/nio/CharBuffer.html
+http://developer.android.com/shareables/training/NewsReader.zip
+http://developer.android.com/reference/javax/security/auth/callback/Callback.html
+http://developer.android.com/reference/javax/security/auth/callback/PasswordCallback.html
+http://developer.android.com/reference/javax/security/auth/callback/UnsupportedCallbackException.html
+http://developer.android.com/reference/android/webkit/DownloadListener.html
+http://developer.android.com/reference/android/webkit/GeolocationPermissions.Callback.html
+http://developer.android.com/reference/android/webkit/PluginStub.html
+http://developer.android.com/reference/android/webkit/ValueCallback.html
+http://developer.android.com/reference/android/webkit/WebChromeClient.CustomViewCallback.html
+http://developer.android.com/reference/android/webkit/WebIconDatabase.IconListener.html
+http://developer.android.com/reference/android/webkit/WebStorage.QuotaUpdater.html
+http://developer.android.com/reference/android/webkit/WebView.FindListener.html
+http://developer.android.com/reference/android/webkit/WebView.PictureListener.html
+http://developer.android.com/reference/android/webkit/CacheManager.html
+http://developer.android.com/reference/android/webkit/CacheManager.CacheResult.html
+http://developer.android.com/reference/android/webkit/ConsoleMessage.html
+http://developer.android.com/reference/android/webkit/CookieManager.html
+http://developer.android.com/reference/android/webkit/CookieSyncManager.html
+http://developer.android.com/reference/android/webkit/DateSorter.html
+http://developer.android.com/reference/android/webkit/GeolocationPermissions.html
+http://developer.android.com/reference/android/webkit/JsPromptResult.html
+http://developer.android.com/reference/android/webkit/JsResult.html
+http://developer.android.com/reference/android/webkit/MimeTypeMap.html
+http://developer.android.com/reference/android/webkit/URLUtil.html
+http://developer.android.com/reference/android/webkit/WebBackForwardList.html
+http://developer.android.com/reference/android/webkit/WebChromeClient.html
+http://developer.android.com/reference/android/webkit/WebHistoryItem.html
+http://developer.android.com/reference/android/webkit/WebIconDatabase.html
+http://developer.android.com/reference/android/webkit/WebResourceResponse.html
+http://developer.android.com/reference/android/webkit/WebStorage.html
+http://developer.android.com/reference/android/webkit/WebStorage.Origin.html
+http://developer.android.com/reference/android/webkit/WebView.HitTestResult.html
+http://developer.android.com/reference/android/webkit/WebView.WebViewTransport.html
+http://developer.android.com/reference/android/webkit/WebViewClient.html
+http://developer.android.com/reference/android/webkit/WebViewDatabase.html
+http://developer.android.com/reference/android/webkit/WebViewFragment.html
+http://developer.android.com/guide/developing/debug-tasks.html
+http://developer.android.com/reference/android/net/http/SslCertificate.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/AbstractCookieAttributeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/AbstractCookieSpec.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicClientCookie.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicClientCookie2.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicCommentHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicDomainHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicExpiresHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicMaxAgeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicPathHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BasicSecureHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BestMatchSpec.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BestMatchSpecFactory.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BrowserCompatSpec.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/BrowserCompatSpecFactory.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/CookieSpecBase.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/DateUtils.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDomainHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDraftHeaderParser.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDraftSpec.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/NetscapeDraftSpecFactory.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109DomainHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109Spec.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109SpecFactory.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2109VersionHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965CommentUrlAttributeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965DiscardAttributeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965DomainAttributeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965PortAttributeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965Spec.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965SpecFactory.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/RFC2965VersionAttributeHandler.html
+http://developer.android.com/reference/org/apache/http/impl/cookie/DateParseException.html
+http://developer.android.com/reference/org/apache/http/cookie/CookieAttributeHandler.html
+http://developer.android.com/reference/java/security/spec/ECField.html
+http://developer.android.com/reference/java/security/spec/DSAParameterSpec.html
+http://developer.android.com/reference/java/security/spec/DSAPrivateKeySpec.html
+http://developer.android.com/reference/java/security/spec/DSAPublicKeySpec.html
+http://developer.android.com/reference/java/security/spec/ECFieldF2m.html
+http://developer.android.com/reference/java/security/spec/ECFieldFp.html
+http://developer.android.com/reference/java/security/spec/ECGenParameterSpec.html
+http://developer.android.com/reference/java/security/spec/ECParameterSpec.html
+http://developer.android.com/reference/java/security/spec/ECPoint.html
+http://developer.android.com/reference/java/security/spec/ECPrivateKeySpec.html
+http://developer.android.com/reference/java/security/spec/ECPublicKeySpec.html
+http://developer.android.com/reference/java/security/spec/EllipticCurve.html
+http://developer.android.com/reference/java/security/spec/EncodedKeySpec.html
+http://developer.android.com/reference/java/security/spec/MGF1ParameterSpec.html
+http://developer.android.com/reference/java/security/spec/PSSParameterSpec.html
+http://developer.android.com/reference/java/security/spec/RSAKeyGenParameterSpec.html
+http://developer.android.com/reference/java/security/spec/RSAMultiPrimePrivateCrtKeySpec.html
+http://developer.android.com/reference/java/security/spec/RSAOtherPrimeInfo.html
+http://developer.android.com/reference/java/security/spec/RSAPrivateCrtKeySpec.html
+http://developer.android.com/reference/java/security/spec/RSAPrivateKeySpec.html
+http://developer.android.com/reference/java/security/spec/RSAPublicKeySpec.html
+http://developer.android.com/reference/java/security/spec/InvalidKeySpecException.html
+http://developer.android.com/reference/java/security/spec/InvalidParameterSpecException.html
+http://developer.android.com/reference/org/apache/http/client/params/AllClientPNames.html
+http://developer.android.com/reference/org/apache/http/auth/Credentials.html
+http://developer.android.com/reference/org/apache/http/params/CoreProtocolPNames.html
+http://developer.android.com/reference/android/inputmethodservice/KeyboardView.OnKeyboardActionListener.html
+http://developer.android.com/reference/android/inputmethodservice/AbstractInputMethodService.AbstractInputMethodImpl.html
+http://developer.android.com/reference/android/inputmethodservice/AbstractInputMethodService.AbstractInputMethodSessionImpl.html
+http://developer.android.com/reference/android/inputmethodservice/InputMethodService.InputMethodImpl.html
+http://developer.android.com/reference/android/inputmethodservice/InputMethodService.InputMethodSessionImpl.html
+http://developer.android.com/reference/android/inputmethodservice/InputMethodService.Insets.html
+http://developer.android.com/reference/android/inputmethodservice/Keyboard.Key.html
+http://developer.android.com/reference/android/inputmethodservice/Keyboard.Row.html
+http://developer.android.com/reference/android/R.id.html
+http://developer.android.com/reference/java/sql/Array.html
+http://developer.android.com/reference/java/sql/Blob.html
+http://developer.android.com/reference/java/sql/CallableStatement.html
+http://developer.android.com/reference/java/sql/Clob.html
+http://developer.android.com/reference/java/sql/DatabaseMetaData.html
+http://developer.android.com/reference/java/sql/Driver.html
+http://developer.android.com/reference/java/sql/NClob.html
+http://developer.android.com/reference/java/sql/ParameterMetaData.html
+http://developer.android.com/reference/java/sql/Ref.html
+http://developer.android.com/reference/java/sql/ResultSet.html
+http://developer.android.com/reference/java/sql/RowId.html
+http://developer.android.com/reference/java/sql/Savepoint.html
+http://developer.android.com/reference/java/sql/SQLData.html
+http://developer.android.com/reference/java/sql/SQLInput.html
+http://developer.android.com/reference/java/sql/SQLOutput.html
+http://developer.android.com/reference/java/sql/SQLXML.html
+http://developer.android.com/reference/java/sql/Statement.html
+http://developer.android.com/reference/java/sql/Struct.html
+http://developer.android.com/reference/java/sql/Date.html
+http://developer.android.com/reference/java/sql/DriverManager.html
+http://developer.android.com/reference/java/sql/DriverPropertyInfo.html
+http://developer.android.com/reference/java/sql/SQLPermission.html
+http://developer.android.com/reference/java/sql/Time.html
+http://developer.android.com/reference/java/sql/Timestamp.html
+http://developer.android.com/reference/java/sql/Types.html
+http://developer.android.com/reference/java/sql/BatchUpdateException.html
+http://developer.android.com/reference/java/sql/DataTruncation.html
+http://developer.android.com/reference/java/sql/SQLClientInfoException.html
+http://developer.android.com/reference/java/sql/SQLDataException.html
+http://developer.android.com/reference/java/sql/SQLFeatureNotSupportedException.html
+http://developer.android.com/reference/java/sql/SQLIntegrityConstraintViolationException.html
+http://developer.android.com/reference/java/sql/SQLInvalidAuthorizationSpecException.html
 http://developer.android.com/reference/java/sql/SQLNonTransientConnectionException.html
 http://developer.android.com/reference/java/sql/SQLNonTransientException.html
-http://developer.android.com/reference/java/sql/SQLOutput.html
-http://developer.android.com/reference/java/sql/SQLPermission.html
 http://developer.android.com/reference/java/sql/SQLRecoverableException.html
 http://developer.android.com/reference/java/sql/SQLSyntaxErrorException.html
 http://developer.android.com/reference/java/sql/SQLTimeoutException.html
@@ -3554,346 +2860,206 @@
 http://developer.android.com/reference/java/sql/SQLTransientConnectionException.html
 http://developer.android.com/reference/java/sql/SQLTransientException.html
 http://developer.android.com/reference/java/sql/SQLWarning.html
-http://developer.android.com/reference/java/sql/SQLXML.html
-http://developer.android.com/reference/android/net/http/SslCertificate.html
-http://developer.android.com/reference/android/net/http/SslCertificate.DName.html
-http://developer.android.com/reference/android/net/SSLCertificateSocketFactory.html
-http://developer.android.com/reference/android/net/SSLSessionCache.html
-http://developer.android.com/reference/javax/net/ssl/SSLContext.html
-http://developer.android.com/reference/javax/net/ssl/SSLContextSpi.html
-http://developer.android.com/reference/javax/net/ssl/SSLEngine.html
-http://developer.android.com/reference/javax/net/ssl/SSLEngineResult.html
-http://developer.android.com/reference/javax/net/ssl/SSLEngineResult.HandshakeStatus.html
-http://developer.android.com/reference/javax/net/ssl/SSLEngineResult.Status.html
-http://developer.android.com/reference/android/net/http/SslError.html
-http://developer.android.com/reference/android/webkit/SslErrorHandler.html
-http://developer.android.com/reference/javax/net/ssl/SSLException.html
-http://developer.android.com/reference/javax/net/ssl/SSLHandshakeException.html
-http://developer.android.com/reference/javax/net/ssl/SSLKeyException.html
-http://developer.android.com/reference/javax/net/ssl/SSLParameters.html
-http://developer.android.com/reference/javax/net/ssl/SSLPeerUnverifiedException.html
-http://developer.android.com/reference/javax/net/ssl/SSLPermission.html
-http://developer.android.com/reference/javax/net/ssl/SSLProtocolException.html
-http://developer.android.com/reference/javax/net/ssl/SSLServerSocket.html
-http://developer.android.com/reference/javax/net/ssl/SSLServerSocketFactory.html
-http://developer.android.com/reference/javax/net/ssl/SSLSession.html
-http://developer.android.com/reference/javax/net/ssl/SSLSessionBindingEvent.html
-http://developer.android.com/reference/javax/net/ssl/SSLSessionBindingListener.html
-http://developer.android.com/reference/javax/net/ssl/SSLSessionContext.html
-http://developer.android.com/reference/javax/net/ssl/SSLSocket.html
-http://developer.android.com/reference/javax/net/ssl/SSLSocketFactory.html
-http://developer.android.com/reference/org/apache/http/conn/ssl/SSLSocketFactory.html
-http://developer.android.com/reference/java/util/Stack.html
-http://developer.android.com/reference/java/lang/StackOverflowError.html
-http://developer.android.com/reference/java/lang/StackTraceElement.html
-http://developer.android.com/reference/android/database/StaleDataException.html
-http://developer.android.com/reference/android/sax/StartElementListener.html
-http://developer.android.com/reference/android/graphics/drawable/StateListDrawable.html
-http://developer.android.com/reference/java/sql/Statement.html
-http://developer.android.com/reference/javax/sql/StatementEvent.html
-http://developer.android.com/reference/javax/sql/StatementEventListener.html
-http://developer.android.com/reference/android/util/StateSet.html
-http://developer.android.com/reference/android/os/StatFs.html
-http://developer.android.com/reference/android/text/StaticLayout.html
-http://developer.android.com/reference/org/apache/http/StatusLine.html
-http://developer.android.com/reference/java/io/StreamCorruptedException.html
-http://developer.android.com/reference/java/util/logging/StreamHandler.html
-http://developer.android.com/reference/javax/xml/transform/stream/StreamResult.html
-http://developer.android.com/reference/javax/xml/transform/stream/StreamSource.html
-http://developer.android.com/reference/java/io/StreamTokenizer.html
-http://developer.android.com/reference/org/apache/http/impl/entity/StrictContentLengthStrategy.html
-http://developer.android.com/reference/org/apache/http/conn/ssl/StrictHostnameVerifier.html
-http://developer.android.com/reference/java/lang/StrictMath.html
-http://developer.android.com/reference/android/os/StrictMode.html
-http://developer.android.com/reference/android/os/StrictMode.ThreadPolicy.html
-http://developer.android.com/reference/android/os/StrictMode.ThreadPolicy.Builder.html
-http://developer.android.com/reference/android/os/StrictMode.VmPolicy.html
-http://developer.android.com/reference/android/os/StrictMode.VmPolicy.Builder.html
-http://developer.android.com/reference/android/text/style/StrikethroughSpan.html
-http://developer.android.com/reference/java/lang/StringBuffer.html
-http://developer.android.com/reference/java/io/StringBufferInputStream.html
-http://developer.android.com/reference/java/io/StringReader.html
-http://developer.android.com/reference/java/lang/StringBuilder.html
-http://developer.android.com/reference/android/util/StringBuilderPrinter.html
-http://developer.android.com/reference/java/text/StringCharacterIterator.html
-http://developer.android.com/reference/org/apache/http/entity/StringEntity.html
-http://developer.android.com/reference/java/lang/StringIndexOutOfBoundsException.html
-http://developer.android.com/reference/java/util/StringTokenizer.html
-http://developer.android.com/reference/java/io/StringWriter.html
-http://developer.android.com/reference/java/sql/Struct.html
-http://developer.android.com/reference/android/text/style/StyleSpan.html
-http://developer.android.com/reference/javax/security/auth/Subject.html
-http://developer.android.com/reference/javax/security/auth/SubjectDomainCombiner.html
-http://developer.android.com/reference/android/text/style/SubscriptSpan.html
-http://developer.android.com/reference/android/graphics/SumPathEffect.html
-http://developer.android.com/reference/android/text/style/SuperscriptSpan.html
-http://developer.android.com/reference/android/net/wifi/SupplicantState.html
-http://developer.android.com/reference/android/test/suitebuilder/annotation/Suppress.html
-http://developer.android.com/reference/android/annotation/SuppressLint.html
-http://developer.android.com/reference/java/lang/SuppressWarnings.html
-http://developer.android.com/reference/android/graphics/SurfaceTexture.OnFrameAvailableListener.html
-http://developer.android.com/reference/android/graphics/SurfaceTexture.OutOfResourcesException.html
-http://developer.android.com/reference/android/graphics/SweepGradient.html
-http://developer.android.com/reference/android/preference/SwitchPreference.html
-http://developer.android.com/reference/android/content/SyncAdapterType.html
-http://developer.android.com/reference/android/test/SyncBaseInstrumentation.html
-http://developer.android.com/reference/org/apache/http/protocol/SyncBasicHttpContext.html
-http://developer.android.com/reference/android/content/SyncContext.html
-http://developer.android.com/reference/java/io/SyncFailedException.html
-http://developer.android.com/reference/java/util/concurrent/SynchronousQueue.html
-http://developer.android.com/reference/android/content/SyncInfo.html
-http://developer.android.com/reference/android/content/SyncResult.html
-http://developer.android.com/reference/android/provider/SyncStateContract.html
-http://developer.android.com/reference/android/provider/SyncStateContract.Columns.html
-http://developer.android.com/reference/android/provider/SyncStateContract.Constants.html
-http://developer.android.com/reference/android/provider/SyncStateContract.Helpers.html
-http://developer.android.com/reference/android/content/SyncStats.html
-http://developer.android.com/reference/android/content/SyncStatusObserver.html
-http://developer.android.com/reference/android/speech/tts/SynthesisCallback.html
-http://developer.android.com/reference/android/speech/tts/SynthesisRequest.html
-http://developer.android.com/reference/java/lang/System.html
-http://developer.android.com/reference/android/os/SystemClock.html
-http://developer.android.com/reference/android/app/TabActivity.html
-http://developer.android.com/reference/android/text/style/TabStopSpan.html
-http://developer.android.com/reference/android/text/style/TabStopSpan.Standard.html
-http://developer.android.com/reference/android/nfc/TagLostException.html
-http://developer.android.com/reference/android/nfc/tech/TagTechnology.html
-http://developer.android.com/reference/java/lang/annotation/Target.html
-http://developer.android.com/reference/android/annotation/TargetApi.html
-http://developer.android.com/reference/android/app/TaskStackBuilder.html
-http://developer.android.com/reference/android/support/v4/app/TaskStackBuilder.html
-http://developer.android.com/reference/android/support/v4/app/TaskStackBuilderHoneycomb.html
-http://developer.android.com/reference/android/telephony/TelephonyManager.html
-http://developer.android.com/reference/javax/xml/transform/Templates.html
-http://developer.android.com/reference/javax/xml/transform/sax/TemplatesHandler.html
-http://developer.android.com/reference/junit/framework/Test.html
-http://developer.android.com/reference/junit/framework/TestFailure.html
-http://developer.android.com/reference/junit/framework/TestListener.html
-http://developer.android.com/reference/android/test/suitebuilder/TestMethod.html
-http://developer.android.com/reference/junit/framework/TestResult.html
-http://developer.android.com/reference/android/test/suitebuilder/TestSuiteBuilder.html
-http://developer.android.com/reference/android/test/suitebuilder/TestSuiteBuilder.FailedToCreateTests.html
-http://developer.android.com/reference/junit/runner/TestSuiteLoader.html
-http://developer.android.com/reference/android/test/TestSuiteProvider.html
-http://developer.android.com/reference/dalvik/annotation/TestTarget.html
-http://developer.android.com/reference/dalvik/annotation/TestTargetClass.html
-http://developer.android.com/reference/org/w3c/dom/Text.html
-http://developer.android.com/reference/android/text/style/TextAppearanceSpan.html
-http://developer.android.com/reference/java/awt/font/TextAttribute.html
-http://developer.android.com/reference/android/sax/TextElementListener.html
-http://developer.android.com/reference/android/view/textservice/TextInfo.html
-http://developer.android.com/reference/android/text/method/TextKeyListener.html
-http://developer.android.com/reference/android/text/method/TextKeyListener.Capitalize.html
-http://developer.android.com/reference/android/text/TextPaint.html
-http://developer.android.com/reference/android/view/textservice/TextServicesManager.html
-http://developer.android.com/reference/android/speech/tts/TextToSpeech.Engine.html
-http://developer.android.com/reference/android/speech/tts/TextToSpeech.EngineInfo.html
-http://developer.android.com/reference/android/speech/tts/TextToSpeech.OnInitListener.html
-http://developer.android.com/reference/android/speech/tts/TextToSpeech.OnUtteranceCompletedListener.html
-http://developer.android.com/reference/android/speech/tts/TextToSpeechService.html
-http://developer.android.com/reference/android/text/TextUtils.html
-http://developer.android.com/reference/android/text/TextUtils.EllipsizeCallback.html
-http://developer.android.com/reference/android/text/TextUtils.SimpleStringSplitter.html
-http://developer.android.com/reference/android/text/TextUtils.StringSplitter.html
-http://developer.android.com/reference/android/text/TextUtils.TruncateAt.html
-http://developer.android.com/reference/android/text/TextWatcher.html
-http://developer.android.com/reference/java/lang/Thread.State.html
-http://developer.android.com/reference/java/lang/Thread.UncaughtExceptionHandler.html
-http://developer.android.com/reference/java/lang/ThreadDeath.html
-http://developer.android.com/reference/java/lang/ThreadGroup.html
-http://developer.android.com/reference/java/lang/ThreadLocal.html
-http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.AbortPolicy.html
-http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.CallerRunsPolicy.html
-http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.DiscardOldestPolicy.html
-http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.DiscardPolicy.html
-http://developer.android.com/reference/java/lang/Throwable.html
-http://developer.android.com/reference/android/media/ThumbnailUtils.html
-http://developer.android.com/reference/android/text/format/Time.html
-http://developer.android.com/reference/java/sql/Time.html
-http://developer.android.com/reference/android/media/TimedText.html
-http://developer.android.com/reference/android/util/TimeFormatException.html
-http://developer.android.com/reference/android/text/method/TimeKeyListener.html
-http://developer.android.com/reference/java/util/concurrent/TimeoutException.html
-http://developer.android.com/reference/android/app/TimePickerDialog.html
-http://developer.android.com/reference/android/app/TimePickerDialog.OnTimeSetListener.html
-http://developer.android.com/reference/java/util/Timer.html
-http://developer.android.com/reference/java/util/TimerTask.html
-http://developer.android.com/reference/java/security/Timestamp.html
-http://developer.android.com/reference/java/sql/Timestamp.html
-http://developer.android.com/reference/java/util/concurrent/TimeUnit.html
-http://developer.android.com/reference/android/util/TimeUtils.html
-http://developer.android.com/reference/android/util/TimingLogger.html
-http://developer.android.com/reference/android/os/TokenWatcher.html
-http://developer.android.com/reference/android/media/ToneGenerator.html
-http://developer.android.com/reference/java/util/TooManyListenersException.html
-http://developer.android.com/reference/android/text/method/Touch.html
-http://developer.android.com/reference/android/test/TouchUtils.html
-http://developer.android.com/reference/android/net/TrafficStats.html
-http://developer.android.com/reference/android/support/v4/net/TrafficStatsCompat.html
-http://developer.android.com/reference/android/support/v4/net/TrafficStatsCompatIcs.html
-http://developer.android.com/reference/android/os/TransactionTooLargeException.html
-http://developer.android.com/reference/android/text/method/TransformationMethod.html
-http://developer.android.com/reference/javax/xml/transform/TransformerConfigurationException.html
-http://developer.android.com/reference/javax/xml/transform/TransformerException.html
-http://developer.android.com/reference/javax/xml/transform/TransformerFactory.html
-http://developer.android.com/reference/javax/xml/transform/TransformerFactoryConfigurationError.html
-http://developer.android.com/reference/javax/xml/transform/sax/TransformerHandler.html
-http://developer.android.com/reference/android/graphics/drawable/TransitionDrawable.html
-http://developer.android.com/reference/java/util/TreeMap.html
-http://developer.android.com/reference/java/util/TreeSet.html
-http://developer.android.com/reference/java/security/cert/TrustAnchor.html
-http://developer.android.com/reference/javax/net/ssl/TrustManagerFactory.html
-http://developer.android.com/reference/javax/net/ssl/TrustManagerFactorySpi.html
-http://developer.android.com/reference/org/apache/http/impl/client/TunnelRefusedException.html
-http://developer.android.com/reference/android/preference/TwoStatePreference.html
-http://developer.android.com/reference/java/lang/reflect/Type.html
-http://developer.android.com/reference/android/renderscript/Type.Builder.html
-http://developer.android.com/reference/android/renderscript/Type.CubemapFace.html
-http://developer.android.com/reference/android/util/TypedValue.html
-http://developer.android.com/reference/android/graphics/Typeface.html
-http://developer.android.com/reference/android/text/style/TypefaceSpan.html
-http://developer.android.com/reference/org/w3c/dom/TypeInfo.html
-http://developer.android.com/reference/javax/xml/validation/TypeInfoProvider.html
-http://developer.android.com/reference/javax/xml/validation/ValidatorHandler.html
-http://developer.android.com/reference/java/lang/TypeNotPresentException.html
-http://developer.android.com/reference/java/sql/Types.html
-http://developer.android.com/reference/java/lang/reflect/TypeVariable.html
-http://developer.android.com/reference/android/test/UiThreadTest.html
-http://developer.android.com/reference/java/lang/reflect/UndeclaredThrowableException.html
-http://developer.android.com/reference/android/text/style/UnderlineSpan.html
-http://developer.android.com/reference/java/lang/UnknownError.html
-http://developer.android.com/reference/java/util/UnknownFormatConversionException.html
-http://developer.android.com/reference/java/util/UnknownFormatFlagsException.html
-http://developer.android.com/reference/java/net/UnknownHostException.html
-http://developer.android.com/reference/java/net/UnknownServiceException.html
-http://developer.android.com/reference/java/nio/charset/UnmappableCharacterException.html
-http://developer.android.com/reference/java/security/UnrecoverableEntryException.html
-http://developer.android.com/reference/java/security/UnrecoverableKeyException.html
-http://developer.android.com/reference/java/nio/channels/UnresolvedAddressException.html
-http://developer.android.com/reference/java/security/UnresolvedPermission.html
-http://developer.android.com/reference/java/lang/UnsatisfiedLinkError.html
-http://developer.android.com/reference/java/nio/channels/UnsupportedAddressTypeException.html
-http://developer.android.com/reference/javax/security/auth/callback/UnsupportedCallbackException.html
-http://developer.android.com/reference/java/nio/charset/UnsupportedCharsetException.html
-http://developer.android.com/reference/java/lang/UnsupportedClassVersionError.html
-http://developer.android.com/reference/org/apache/http/impl/auth/UnsupportedDigestAlgorithmException.html
-http://developer.android.com/reference/java/io/UnsupportedEncodingException.html
-http://developer.android.com/reference/org/apache/http/UnsupportedHttpVersionException.html
-http://developer.android.com/reference/java/lang/UnsupportedOperationException.html
-http://developer.android.com/reference/android/text/style/UpdateAppearance.html
-http://developer.android.com/reference/android/text/style/UpdateLayout.html
+http://developer.android.com/sdk/win-usb.html
+http://developer.android.com/reference/java/net/ContentHandlerFactory.html
+http://developer.android.com/reference/java/net/CookiePolicy.html
+http://developer.android.com/reference/java/net/CookieStore.html
+http://developer.android.com/reference/java/net/DatagramSocketImplFactory.html
+http://developer.android.com/reference/java/net/FileNameMap.html
+http://developer.android.com/reference/java/net/SocketImplFactory.html
+http://developer.android.com/reference/java/net/SocketOptions.html
+http://developer.android.com/reference/java/net/URLStreamHandlerFactory.html
+http://developer.android.com/reference/java/net/Authenticator.html
+http://developer.android.com/reference/java/net/CacheRequest.html
+http://developer.android.com/reference/java/net/CacheResponse.html
+http://developer.android.com/reference/java/net/ContentHandler.html
+http://developer.android.com/reference/java/net/CookieHandler.html
+http://developer.android.com/reference/java/net/CookieManager.html
+http://developer.android.com/reference/java/net/DatagramPacket.html
+http://developer.android.com/reference/java/net/DatagramSocket.html
+http://developer.android.com/reference/java/net/DatagramSocketImpl.html
+http://developer.android.com/reference/java/net/HttpCookie.html
+http://developer.android.com/reference/java/net/HttpURLConnection.html
+http://developer.android.com/reference/java/net/IDN.html
+http://developer.android.com/reference/java/net/Inet4Address.html
+http://developer.android.com/reference/java/net/Inet6Address.html
+http://developer.android.com/reference/java/net/InetSocketAddress.html
+http://developer.android.com/reference/java/net/InterfaceAddress.html
+http://developer.android.com/reference/java/net/JarURLConnection.html
+http://developer.android.com/reference/java/net/MulticastSocket.html
+http://developer.android.com/reference/java/net/NetPermission.html
+http://developer.android.com/reference/java/net/NetworkInterface.html
+http://developer.android.com/reference/java/net/PasswordAuthentication.html
+http://developer.android.com/reference/java/net/Proxy.html
+http://developer.android.com/reference/java/net/ProxySelector.html
+http://developer.android.com/reference/java/net/ResponseCache.html
+http://developer.android.com/reference/java/net/SecureCacheResponse.html
+http://developer.android.com/reference/java/net/ServerSocket.html
+http://developer.android.com/reference/java/net/SocketImpl.html
+http://developer.android.com/reference/java/net/SocketPermission.html
 http://developer.android.com/reference/java/net/URI.html
-http://developer.android.com/reference/org/apache/http/protocol/UriPatternMatcher.html
-http://developer.android.com/reference/javax/xml/transform/URIResolver.html
-http://developer.android.com/reference/java/net/URISyntaxException.html
-http://developer.android.com/reference/org/apache/http/client/utils/URIUtils.html
 http://developer.android.com/reference/java/net/URL.html
 http://developer.android.com/reference/java/net/URLClassLoader.html
 http://developer.android.com/reference/java/net/URLDecoder.html
-http://developer.android.com/reference/org/apache/http/client/entity/UrlEncodedFormEntity.html
-http://developer.android.com/reference/org/apache/http/client/utils/URLEncodedUtils.html
 http://developer.android.com/reference/java/net/URLEncoder.html
-http://developer.android.com/reference/android/net/UrlQuerySanitizer.html
-http://developer.android.com/reference/android/net/UrlQuerySanitizer.IllegalCharacterValueSanitizer.html
-http://developer.android.com/reference/android/net/UrlQuerySanitizer.ParameterValuePair.html
-http://developer.android.com/reference/android/net/UrlQuerySanitizer.ValueSanitizer.html
-http://developer.android.com/reference/android/text/style/URLSpan.html
 http://developer.android.com/reference/java/net/URLStreamHandler.html
-http://developer.android.com/reference/java/net/URLStreamHandlerFactory.html
-http://developer.android.com/reference/android/webkit/URLUtil.html
-http://developer.android.com/reference/android/hardware/usb/UsbAccessory.html
-http://developer.android.com/reference/android/hardware/usb/UsbConstants.html
-http://developer.android.com/reference/android/hardware/usb/UsbDevice.html
-http://developer.android.com/reference/android/hardware/usb/UsbDeviceConnection.html
-http://developer.android.com/reference/android/hardware/usb/UsbEndpoint.html
-http://developer.android.com/reference/android/hardware/usb/UsbInterface.html
-http://developer.android.com/reference/android/hardware/usb/UsbManager.html
-http://developer.android.com/reference/android/hardware/usb/UsbRequest.html
-http://developer.android.com/reference/org/w3c/dom/UserDataHandler.html
-http://developer.android.com/reference/android/provider/UserDictionary.html
-http://developer.android.com/reference/android/provider/UserDictionary.Words.html
-http://developer.android.com/reference/org/apache/http/client/UserTokenHandler.html
-http://developer.android.com/reference/java/io/UTFDataFormatException.html
-http://developer.android.com/reference/javax/xml/validation/Validator.html
-http://developer.android.com/reference/android/webkit/ValueCallback.html
-http://developer.android.com/reference/java/util/Vector.html
-http://developer.android.com/reference/android/support/v4/view/VelocityTrackerCompat.html
-http://developer.android.com/reference/java/lang/VerifyError.html
-http://developer.android.com/reference/junit/runner/Version.html
-http://developer.android.com/reference/org/apache/http/util/VersionInfo.html
-http://developer.android.com/reference/android/os/Vibrator.html
-http://developer.android.com/reference/android/test/ViewAsserts.html
-http://developer.android.com/reference/android/support/v4/view/ViewCompat.html
-http://developer.android.com/reference/android/support/v4/view/ViewCompatJB.html
-http://developer.android.com/reference/android/support/v4/view/ViewConfigurationCompat.html
-http://developer.android.com/reference/android/view/ViewDebug.CapturedViewProperty.html
-http://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
-http://developer.android.com/reference/android/view/ViewDebug.FlagToString.html
-http://developer.android.com/reference/android/view/ViewDebug.IntToString.html
-http://developer.android.com/reference/android/support/v4/view/ViewGroupCompat.html
-http://developer.android.com/reference/android/support/v4/view/ViewPager.LayoutParams.html
-http://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener.html
-http://developer.android.com/reference/android/support/v4/view/ViewPager.SavedState.html
-http://developer.android.com/reference/android/support/v4/view/ViewPager.SimpleOnPageChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/Virtualizer.html
-http://developer.android.com/reference/android/media/audiofx/Virtualizer.OnParameterChangeListener.html
-http://developer.android.com/reference/android/media/audiofx/Virtualizer.Settings.html
-http://developer.android.com/reference/java/lang/VirtualMachineError.html
-http://developer.android.com/reference/android/opengl/Visibility.html
-http://developer.android.com/reference/android/media/audiofx/Visualizer.html
-http://developer.android.com/reference/android/media/audiofx/Visualizer.OnDataCaptureListener.html
-http://developer.android.com/reference/android/provider/VoicemailContract.html
-http://developer.android.com/reference/android/provider/VoicemailContract.Status.html
-http://developer.android.com/reference/android/provider/VoicemailContract.Voicemails.html
-http://developer.android.com/reference/java/lang/Void.html
-http://developer.android.com/reference/android/net/VpnService.html
-http://developer.android.com/reference/android/net/VpnService.Builder.html
-http://developer.android.com/reference/android/app/WallpaperInfo.html
-http://developer.android.com/reference/android/app/WallpaperManager.html
-http://developer.android.com/reference/android/service/wallpaper/WallpaperService.html
+http://developer.android.com/reference/java/net/BindException.html
+http://developer.android.com/reference/java/net/ConnectException.html
+http://developer.android.com/reference/java/net/HttpRetryException.html
+http://developer.android.com/reference/java/net/MalformedURLException.html
+http://developer.android.com/reference/java/net/NoRouteToHostException.html
+http://developer.android.com/reference/java/net/PortUnreachableException.html
+http://developer.android.com/reference/java/net/ProtocolException.html
+http://developer.android.com/reference/java/net/SocketException.html
+http://developer.android.com/reference/java/net/SocketTimeoutException.html
+http://developer.android.com/reference/java/net/UnknownHostException.html
+http://developer.android.com/reference/java/net/UnknownServiceException.html
+http://developer.android.com/reference/javax/net/ssl/HttpsURLConnection.html
+http://developer.android.com/reference/javax/xml/parsers/DocumentBuilderFactory.html
+http://developer.android.com/reference/javax/xml/parsers/SAXParser.html
+http://developer.android.com/reference/javax/xml/parsers/SAXParserFactory.html
+http://developer.android.com/reference/javax/xml/parsers/ParserConfigurationException.html
+http://developer.android.com/reference/javax/xml/parsers/FactoryConfigurationError.html
+http://developer.android.com/reference/org/xml/sax/XMLReader.html
+http://developer.android.com/reference/java/nio/Buffer.html
+http://developer.android.com/reference/java/nio/ByteOrder.html
+http://developer.android.com/reference/java/nio/DoubleBuffer.html
+http://developer.android.com/reference/java/nio/FloatBuffer.html
+http://developer.android.com/reference/java/nio/IntBuffer.html
+http://developer.android.com/reference/java/nio/LongBuffer.html
+http://developer.android.com/reference/java/nio/MappedByteBuffer.html
+http://developer.android.com/reference/java/nio/ShortBuffer.html
+http://developer.android.com/reference/org/apache/http/impl/auth/NTLMEngine.html
+http://developer.android.com/reference/org/apache/http/impl/auth/AuthSchemeBase.html
+http://developer.android.com/reference/org/apache/http/impl/auth/BasicScheme.html
+http://developer.android.com/reference/org/apache/http/impl/auth/BasicSchemeFactory.html
+http://developer.android.com/reference/org/apache/http/impl/auth/DigestScheme.html
+http://developer.android.com/reference/org/apache/http/impl/auth/DigestSchemeFactory.html
+http://developer.android.com/reference/org/apache/http/impl/auth/NTLMScheme.html
+http://developer.android.com/reference/org/apache/http/impl/auth/RFC2617Scheme.html
+http://developer.android.com/reference/org/apache/http/impl/auth/NTLMEngineException.html
+http://developer.android.com/reference/android/util/AndroidException.html
 http://developer.android.com/reference/android/service/wallpaper/WallpaperService.Engine.html
-http://developer.android.com/reference/java/util/WeakHashMap.html
-http://developer.android.com/reference/android/webkit/WebBackForwardList.html
-http://developer.android.com/reference/android/webkit/WebChromeClient.CustomViewCallback.html
-http://developer.android.com/reference/android/webkit/WebHistoryItem.html
-http://developer.android.com/reference/android/webkit/WebIconDatabase.html
-http://developer.android.com/reference/android/webkit/WebIconDatabase.IconListener.html
-http://developer.android.com/reference/android/webkit/WebResourceResponse.html
-http://developer.android.com/reference/android/webkit/WebSettings.LayoutAlgorithm.html
-http://developer.android.com/reference/android/webkit/WebSettings.PluginState.html
-http://developer.android.com/reference/android/webkit/WebSettings.RenderPriority.html
-http://developer.android.com/reference/android/webkit/WebSettings.TextSize.html
-http://developer.android.com/reference/android/webkit/WebSettings.ZoomDensity.html
-http://developer.android.com/reference/android/webkit/WebStorage.html
-http://developer.android.com/reference/android/webkit/WebStorage.Origin.html
-http://developer.android.com/reference/android/webkit/WebStorage.QuotaUpdater.html
-http://developer.android.com/reference/android/webkit/WebView.FindListener.html
-http://developer.android.com/reference/android/webkit/WebView.HitTestResult.html
-http://developer.android.com/reference/android/webkit/WebView.PictureListener.html
-http://developer.android.com/reference/android/webkit/WebView.WebViewTransport.html
-http://developer.android.com/reference/android/webkit/WebViewDatabase.html
-http://developer.android.com/reference/android/webkit/WebViewFragment.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.AuthAlgorithm.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.GroupCipher.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.KeyMgmt.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.PairwiseCipher.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.Protocol.html
-http://developer.android.com/reference/android/net/wifi/WifiConfiguration.Status.html
-http://developer.android.com/reference/android/net/wifi/WifiInfo.html
-http://developer.android.com/reference/android/net/wifi/WifiManager.html
-http://developer.android.com/reference/android/net/wifi/WifiManager.MulticastLock.html
-http://developer.android.com/reference/android/net/wifi/WifiManager.WifiLock.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pConfig.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pDevice.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pDeviceList.html
-http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pDnsSdServiceInfo.html
-http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pDnsSdServiceRequest.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pGroup.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pInfo.html
+http://developer.android.com/reference/android/location/GpsStatus.Listener.html
+http://developer.android.com/reference/android/location/GpsStatus.NmeaListener.html
+http://developer.android.com/reference/android/location/LocationListener.html
+http://developer.android.com/reference/android/location/Address.html
+http://developer.android.com/reference/android/location/Criteria.html
+http://developer.android.com/reference/android/location/Geocoder.html
+http://developer.android.com/reference/android/location/GpsSatellite.html
+http://developer.android.com/reference/android/location/GpsStatus.html
+http://developer.android.com/reference/android/location/Location.html
+http://developer.android.com/reference/org/apache/http/auth/BasicUserPrincipal.html
+http://developer.android.com/reference/java/security/acl/Group.html
+http://developer.android.com/reference/org/apache/http/auth/NTUserPrincipal.html
+http://developer.android.com/reference/javax/security/auth/x500/X500Principal.html
+http://developer.android.com/reference/android/hardware/Camera.Parameters.html
+http://developer.android.com/reference/android/hardware/Camera.PictureCallback.html
+http://developer.android.com/reference/android/media/MediaRecorder.AudioSource.html
+http://developer.android.com/reference/android/media/MediaRecorder.VideoSource.html
+http://developer.android.com/reference/android/media/MediaRecorder.VideoEncoder.html
+http://developer.android.com/reference/android/hardware/Camera.Area.html
+http://developer.android.com/reference/android/hardware/Camera.FaceDetectionListener.html
+http://developer.android.com/sdk/api_diff/15/changes.html
+http://developer.android.com/reference/android/view/textservice/SpellCheckerSession.html
+http://developer.android.com/reference/android/view/textservice/SuggestionsInfo.html
+http://developer.android.com/reference/android/text/style/SuggestionSpan.html
+http://developer.android.com/reference/java/lang/annotation/Target.html
+http://developer.android.com/resources/faq/troubleshooting.html
+http://developer.android.com/reference/org/apache/http/client/AuthenticationHandler.html
+http://developer.android.com/reference/org/apache/http/client/CookieStore.html
+http://developer.android.com/reference/org/apache/http/client/CredentialsProvider.html
+http://developer.android.com/reference/org/apache/http/client/HttpRequestRetryHandler.html
+http://developer.android.com/reference/org/apache/http/client/RedirectHandler.html
+http://developer.android.com/reference/org/apache/http/client/RequestDirector.html
+http://developer.android.com/reference/org/apache/http/client/ResponseHandler.html
+http://developer.android.com/reference/org/apache/http/client/UserTokenHandler.html
+http://developer.android.com/reference/org/apache/http/client/CircularRedirectException.html
+http://developer.android.com/reference/org/apache/http/client/ClientProtocolException.html
+http://developer.android.com/reference/org/apache/http/client/HttpResponseException.html
+http://developer.android.com/reference/org/apache/http/client/NonRepeatableRequestException.html
+http://developer.android.com/reference/org/apache/http/client/RedirectException.html
+http://developer.android.com/reference/org/apache/http/impl/client/AbstractHttpClient.html
+http://developer.android.com/reference/android/net/http/AndroidHttpClient.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultHttpClient.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpUriRequest.html
+http://developer.android.com/reference/android/accessibilityservice/AccessibilityServiceInfo.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/accessibility/ClockBackService.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/accessibility/TaskBackService.html
+http://developer.android.com/reference/dalvik/bytecode/Opcodes.html
+http://developer.android.com/reference/dalvik/bytecode/OpcodeInfo.html
+http://developer.android.com/reference/android/text/Spanned.html
+http://developer.android.com/resources/faq/index.html
+http://developer.android.com/reference/android/renderscript/Allocation.html
+http://developer.android.com/reference/android/renderscript/AllocationAdapter.html
+http://developer.android.com/reference/android/renderscript/BaseObj.html
+http://developer.android.com/reference/android/renderscript/Byte2.html
+http://developer.android.com/reference/android/renderscript/Byte3.html
+http://developer.android.com/reference/android/renderscript/Byte4.html
+http://developer.android.com/reference/android/renderscript/Double2.html
+http://developer.android.com/reference/android/renderscript/Double3.html
+http://developer.android.com/reference/android/renderscript/Double4.html
+http://developer.android.com/reference/android/renderscript/Element.html
+http://developer.android.com/reference/android/renderscript/Element.Builder.html
+http://developer.android.com/reference/android/renderscript/FieldPacker.html
+http://developer.android.com/reference/android/renderscript/FileA3D.html
+http://developer.android.com/reference/android/renderscript/FileA3D.IndexEntry.html
+http://developer.android.com/reference/android/renderscript/Float2.html
+http://developer.android.com/reference/android/renderscript/Float3.html
+http://developer.android.com/reference/android/renderscript/Float4.html
+http://developer.android.com/reference/android/renderscript/Font.html
+http://developer.android.com/reference/android/renderscript/Int2.html
+http://developer.android.com/reference/android/renderscript/Int3.html
+http://developer.android.com/reference/android/renderscript/Int4.html
+http://developer.android.com/reference/android/renderscript/Long2.html
+http://developer.android.com/reference/android/renderscript/Long3.html
+http://developer.android.com/reference/android/renderscript/Long4.html
+http://developer.android.com/reference/android/renderscript/Matrix2f.html
+http://developer.android.com/reference/android/renderscript/Matrix3f.html
+http://developer.android.com/reference/android/renderscript/Matrix4f.html
+http://developer.android.com/reference/android/renderscript/Mesh.html
+http://developer.android.com/reference/android/renderscript/Mesh.AllocationBuilder.html
+http://developer.android.com/reference/android/renderscript/Mesh.Builder.html
+http://developer.android.com/reference/android/renderscript/Mesh.TriangleMeshBuilder.html
+http://developer.android.com/reference/android/renderscript/Program.html
+http://developer.android.com/reference/android/renderscript/Program.BaseProgramBuilder.html
+http://developer.android.com/reference/android/renderscript/ProgramFragment.html
+http://developer.android.com/reference/android/renderscript/ProgramFragment.Builder.html
+http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.html
+http://developer.android.com/reference/android/renderscript/ProgramFragmentFixedFunction.Builder.html
+http://developer.android.com/reference/android/renderscript/ProgramRaster.html
+http://developer.android.com/reference/android/renderscript/ProgramRaster.Builder.html
+http://developer.android.com/reference/android/renderscript/ProgramStore.html
+http://developer.android.com/reference/android/renderscript/ProgramStore.Builder.html
+http://developer.android.com/reference/android/renderscript/ProgramVertex.html
+http://developer.android.com/reference/android/renderscript/ProgramVertex.Builder.html
+http://developer.android.com/reference/android/renderscript/ProgramVertexFixedFunction.html
+http://developer.android.com/reference/android/renderscript/ProgramVertexFixedFunction.Builder.html
+http://developer.android.com/reference/android/renderscript/ProgramVertexFixedFunction.Constants.html
+http://developer.android.com/reference/android/renderscript/RenderScript.html
+http://developer.android.com/reference/android/renderscript/RenderScript.RSErrorHandler.html
+http://developer.android.com/reference/android/renderscript/RenderScript.RSMessageHandler.html
+http://developer.android.com/reference/android/renderscript/RenderScriptGL.html
+http://developer.android.com/reference/android/renderscript/RenderScriptGL.SurfaceConfig.html
+http://developer.android.com/reference/android/renderscript/Sampler.html
+http://developer.android.com/reference/android/renderscript/Sampler.Builder.html
+http://developer.android.com/reference/android/renderscript/Script.html
+http://developer.android.com/reference/android/renderscript/Script.Builder.html
+http://developer.android.com/reference/android/renderscript/Script.FieldBase.html
+http://developer.android.com/reference/android/renderscript/ScriptC.html
+http://developer.android.com/reference/android/renderscript/Short2.html
+http://developer.android.com/reference/android/renderscript/Short3.html
+http://developer.android.com/reference/android/renderscript/Short4.html
+http://developer.android.com/reference/android/renderscript/Type.html
+http://developer.android.com/reference/android/renderscript/Type.Builder.html
+http://developer.android.com/reference/android/util/Pair.html
+http://developer.android.com/reference/org/apache/http/impl/entity/LaxContentLengthStrategy.html
+http://developer.android.com/reference/org/apache/http/impl/entity/StrictContentLengthStrategy.html
+http://developer.android.com/reference/org/apache/http/entity/ContentLengthStrategy.html
+http://developer.android.com/reference/java/util/zip/ZipError.html
+http://developer.android.com/reference/android/media/MediaScannerConnection.html
+http://developer.android.com/reference/java/util/zip/GZIPOutputStream.html
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.ActionListener.html
-http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.Channel.html
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.ChannelListener.html
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.ConnectionInfoListener.html
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.DnsSdServiceResponseListener.html
@@ -3902,156 +3068,771 @@
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.PeerListListener.html
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.ServiceResponseListener.html
 http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.UpnpServiceResponseListener.html
-http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pServiceInfo.html
-http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pServiceRequest.html
-http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pUpnpServiceInfo.html
-http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pUpnpServiceRequest.html
-http://developer.android.com/reference/java/lang/reflect/WildcardType.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pConfig.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pDevice.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pDeviceList.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pGroup.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pInfo.html
+http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.Channel.html
+http://developer.android.com/resources/samples/WiFiDirectDemo/index.html
+http://developer.android.com/reference/android/support/v13/app/FragmentPagerAdapter.html
+http://developer.android.com/reference/android/support/v13/app/FragmentStatePagerAdapter.html
+http://developer.android.com/reference/android/hardware/usb/UsbAccessory.html
+http://developer.android.com/reference/android/hardware/usb/UsbDevice.html
+http://developer.android.com/reference/android/bluetooth/BluetoothProfile.html
+http://developer.android.com/reference/android/bluetooth/BluetoothProfile.ServiceListener.html
+http://developer.android.com/reference/android/bluetooth/BluetoothA2dp.html
+http://developer.android.com/reference/android/bluetooth/BluetoothAssignedNumbers.html
+http://developer.android.com/reference/android/bluetooth/BluetoothClass.html
+http://developer.android.com/reference/android/bluetooth/BluetoothClass.Device.html
+http://developer.android.com/reference/android/bluetooth/BluetoothClass.Device.Major.html
+http://developer.android.com/reference/android/bluetooth/BluetoothClass.Service.html
+http://developer.android.com/reference/android/bluetooth/BluetoothHeadset.html
+http://developer.android.com/reference/android/bluetooth/BluetoothHealth.html
+http://developer.android.com/reference/android/bluetooth/BluetoothHealthAppConfiguration.html
+http://developer.android.com/reference/android/bluetooth/BluetoothHealthCallback.html
+http://developer.android.com/reference/android/bluetooth/BluetoothServerSocket.html
+http://developer.android.com/reference/android/bluetooth/BluetoothSocket.html
+http://developer.android.com/guide/topics/wireless/bluetooth.html
+http://developer.android.com/reference/renderscript/index.html
+http://developer.android.com/sdk/tools-notes.html
+http://developer.android.com/reference/java/util/concurrent/BlockingDeque.html
+http://developer.android.com/reference/java/util/concurrent/LinkedBlockingDeque.html
+http://developer.android.com/reference/android/media/AudioRecord.OnRecordPositionUpdateListener.html
+http://developer.android.com/reference/android/media/AudioTrack.OnPlaybackPositionUpdateListener.html
+http://developer.android.com/reference/android/media/JetPlayer.OnJetEventListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnBufferingUpdateListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnInfoListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnSeekCompleteListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnTimedTextListener.html
+http://developer.android.com/reference/android/media/MediaPlayer.OnVideoSizeChangedListener.html
+http://developer.android.com/reference/android/media/MediaRecorder.OnErrorListener.html
+http://developer.android.com/reference/android/media/MediaRecorder.OnInfoListener.html
+http://developer.android.com/reference/android/media/MediaScannerConnection.MediaScannerConnectionClient.html
+http://developer.android.com/reference/android/media/MediaScannerConnection.OnScanCompletedListener.html
+http://developer.android.com/reference/android/media/SoundPool.OnLoadCompleteListener.html
+http://developer.android.com/reference/android/media/AsyncPlayer.html
+http://developer.android.com/reference/android/media/AudioFormat.html
+http://developer.android.com/reference/android/media/AudioRecord.html
+http://developer.android.com/reference/android/media/AudioTrack.html
+http://developer.android.com/reference/android/media/CameraProfile.html
+http://developer.android.com/reference/android/media/ExifInterface.html
+http://developer.android.com/reference/android/media/FaceDetector.html
+http://developer.android.com/reference/android/media/FaceDetector.Face.html
+http://developer.android.com/reference/android/media/JetPlayer.html
+http://developer.android.com/reference/android/media/MediaActionSound.html
+http://developer.android.com/reference/android/media/MediaCodec.html
+http://developer.android.com/reference/android/media/MediaCodec.BufferInfo.html
+http://developer.android.com/reference/android/media/MediaCodec.CryptoInfo.html
+http://developer.android.com/reference/android/media/MediaCodecInfo.html
+http://developer.android.com/reference/android/media/MediaCodecInfo.CodecCapabilities.html
+http://developer.android.com/reference/android/media/MediaCodecInfo.CodecProfileLevel.html
+http://developer.android.com/reference/android/media/MediaCodecList.html
+http://developer.android.com/reference/android/media/MediaCrypto.html
+http://developer.android.com/reference/android/media/MediaExtractor.html
+http://developer.android.com/reference/android/media/MediaFormat.html
+http://developer.android.com/reference/android/media/MediaPlayer.TrackInfo.html
+http://developer.android.com/reference/android/media/MediaRouter.Callback.html
+http://developer.android.com/reference/android/media/MediaRouter.RouteCategory.html
+http://developer.android.com/reference/android/media/MediaRouter.RouteGroup.html
+http://developer.android.com/reference/android/media/MediaRouter.RouteInfo.html
+http://developer.android.com/reference/android/media/MediaRouter.SimpleCallback.html
+http://developer.android.com/reference/android/media/MediaRouter.UserRouteInfo.html
+http://developer.android.com/reference/android/media/MediaRouter.VolumeCallback.html
+http://developer.android.com/reference/android/media/MediaSyncEvent.html
+http://developer.android.com/reference/android/media/RemoteControlClient.html
+http://developer.android.com/reference/android/media/RemoteControlClient.MetadataEditor.html
+http://developer.android.com/reference/android/media/Ringtone.html
+http://developer.android.com/reference/android/media/ThumbnailUtils.html
+http://developer.android.com/reference/android/media/TimedText.html
+http://developer.android.com/reference/android/media/ToneGenerator.html
+http://developer.android.com/reference/android/media/MediaCryptoException.html
+http://developer.android.com/reference/org/xml/sax/AttributeList.html
+http://developer.android.com/reference/org/xml/sax/Attributes.html
+http://developer.android.com/reference/org/xml/sax/ContentHandler.html
+http://developer.android.com/reference/org/xml/sax/DocumentHandler.html
+http://developer.android.com/reference/org/xml/sax/DTDHandler.html
+http://developer.android.com/reference/org/xml/sax/EntityResolver.html
+http://developer.android.com/reference/org/xml/sax/ErrorHandler.html
+http://developer.android.com/reference/org/xml/sax/Locator.html
+http://developer.android.com/reference/org/xml/sax/Parser.html
+http://developer.android.com/reference/org/xml/sax/XMLFilter.html
+http://developer.android.com/reference/org/xml/sax/HandlerBase.html
+http://developer.android.com/reference/org/xml/sax/InputSource.html
+http://developer.android.com/reference/org/xml/sax/SAXException.html
+http://developer.android.com/reference/org/xml/sax/SAXNotRecognizedException.html
+http://developer.android.com/reference/org/xml/sax/SAXNotSupportedException.html
+http://developer.android.com/reference/org/xml/sax/SAXParseException.html
+http://developer.android.com/reference/org/xml/sax/ext/Attributes2.html
+http://developer.android.com/reference/org/xml/sax/ext/Locator2.html
+http://developer.android.com/reference/org/xml/sax/ext/EntityResolver2.html
+http://developer.android.com/reference/org/xml/sax/ext/DeclHandler.html
+http://developer.android.com/reference/org/xml/sax/ext/LexicalHandler.html
+http://developer.android.com/reference/org/xml/sax/helpers/DefaultHandler.html
+http://developer.android.com/reference/android/support/v4/widget/CursorAdapter.html
+http://developer.android.com/reference/android/support/v4/widget/ResourceCursorAdapter.html
+http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.html
+http://developer.android.com/shareables/training/CustomView.zip
+http://developer.android.com/guide/developing/tools/adt.html
+http://developer.android.com/reference/android/util/Base64.html
+http://developer.android.com/reference/android/util/Base64InputStream.html
+http://developer.android.com/reference/android/util/Base64OutputStream.html
+http://developer.android.com/reference/android/util/Config.html
+http://developer.android.com/reference/android/util/DebugUtils.html
+http://developer.android.com/reference/android/util/EventLog.html
+http://developer.android.com/reference/android/util/EventLog.Event.html
+http://developer.android.com/reference/android/util/EventLogTags.html
+http://developer.android.com/reference/android/util/EventLogTags.Description.html
+http://developer.android.com/reference/android/util/FloatMath.html
+http://developer.android.com/reference/android/util/JsonReader.html
+http://developer.android.com/reference/android/util/JsonWriter.html
+http://developer.android.com/reference/android/util/LogPrinter.html
+http://developer.android.com/reference/android/util/LongSparseArray.html
+http://developer.android.com/reference/android/util/LruCache.html
+http://developer.android.com/reference/android/util/MonthDisplayHelper.html
+http://developer.android.com/reference/android/util/Patterns.html
+http://developer.android.com/reference/android/util/PrintStreamPrinter.html
+http://developer.android.com/reference/android/util/PrintWriterPrinter.html
+http://developer.android.com/reference/android/util/SparseIntArray.html
+http://developer.android.com/reference/android/util/StateSet.html
+http://developer.android.com/reference/android/util/StringBuilderPrinter.html
+http://developer.android.com/reference/android/util/TimeUtils.html
+http://developer.android.com/reference/android/util/TimingLogger.html
+http://developer.android.com/reference/android/util/Xml.html
+http://developer.android.com/reference/android/util/Base64DataException.html
+http://developer.android.com/reference/android/util/MalformedJsonException.html
+http://developer.android.com/reference/org/apache/http/client/params/ClientPNames.html
+http://developer.android.com/reference/org/apache/http/client/params/AuthPolicy.html
+http://developer.android.com/reference/org/apache/http/client/params/ClientParamBean.html
+http://developer.android.com/reference/org/apache/http/client/params/CookiePolicy.html
+http://developer.android.com/reference/org/apache/http/client/params/HttpClientParams.html
+http://developer.android.com/reference/org/apache/http/util/ByteArrayBuffer.html
+http://developer.android.com/reference/org/apache/http/util/EncodingUtils.html
+http://developer.android.com/reference/org/apache/http/util/EntityUtils.html
+http://developer.android.com/reference/org/apache/http/util/ExceptionUtils.html
+http://developer.android.com/reference/org/apache/http/util/LangUtils.html
+http://developer.android.com/reference/org/apache/http/util/VersionInfo.html
+http://developer.android.com/reference/javax/xml/transform/sax/SAXTransformerFactory.html
+http://developer.android.com/reference/org/apache/http/auth/AuthSchemeFactory.html
+http://developer.android.com/reference/org/apache/http/auth/AuthScheme.html
+http://developer.android.com/reference/org/xml/sax/helpers/AttributeListImpl.html
+http://developer.android.com/reference/org/xml/sax/helpers/AttributesImpl.html
+http://developer.android.com/reference/org/xml/sax/helpers/LocatorImpl.html
+http://developer.android.com/reference/org/xml/sax/helpers/NamespaceSupport.html
+http://developer.android.com/reference/org/xml/sax/helpers/ParserAdapter.html
+http://developer.android.com/reference/org/xml/sax/helpers/ParserFactory.html
+http://developer.android.com/reference/org/xml/sax/helpers/XMLFilterImpl.html
+http://developer.android.com/reference/org/xml/sax/helpers/XMLReaderAdapter.html
+http://developer.android.com/reference/org/xml/sax/helpers/XMLReaderFactory.html
+http://developer.android.com/reference/java/util/zip/ZipOutputStream.html
+http://developer.android.com/reference/java/util/zip/DeflaterOutputStream.html
+http://developer.android.com/reference/java/util/zip/Deflater.html
+http://developer.android.com/reference/java/util/zip/ZipEntry.html
+http://developer.android.com/reference/java/text/AttributedCharacterIterator.html
+http://developer.android.com/reference/java/text/CharacterIterator.html
+http://developer.android.com/reference/java/text/Annotation.html
+http://developer.android.com/reference/java/text/AttributedCharacterIterator.Attribute.html
+http://developer.android.com/reference/java/text/AttributedString.html
+http://developer.android.com/reference/java/text/Bidi.html
+http://developer.android.com/reference/java/text/BreakIterator.html
+http://developer.android.com/reference/java/text/ChoiceFormat.html
+http://developer.android.com/reference/java/text/CollationElementIterator.html
+http://developer.android.com/reference/java/text/CollationKey.html
+http://developer.android.com/reference/java/text/Collator.html
+http://developer.android.com/reference/java/text/DateFormat.Field.html
+http://developer.android.com/reference/java/text/DateFormatSymbols.html
+http://developer.android.com/reference/java/text/DecimalFormat.html
+http://developer.android.com/reference/java/text/DecimalFormatSymbols.html
+http://developer.android.com/reference/java/text/FieldPosition.html
+http://developer.android.com/reference/java/text/Format.html
+http://developer.android.com/reference/java/text/Format.Field.html
+http://developer.android.com/reference/java/text/MessageFormat.html
+http://developer.android.com/reference/java/text/MessageFormat.Field.html
+http://developer.android.com/reference/java/text/Normalizer.html
+http://developer.android.com/reference/java/text/NumberFormat.html
+http://developer.android.com/reference/java/text/NumberFormat.Field.html
+http://developer.android.com/reference/java/text/ParsePosition.html
+http://developer.android.com/reference/java/text/RuleBasedCollator.html
+http://developer.android.com/reference/java/text/StringCharacterIterator.html
+http://developer.android.com/reference/java/text/ParseException.html
+http://developer.android.com/reference/org/apache/http/conn/ClientConnectionManagerFactory.html
+http://developer.android.com/reference/org/apache/http/conn/ClientConnectionOperator.html
+http://developer.android.com/reference/org/apache/http/conn/ClientConnectionRequest.html
+http://developer.android.com/reference/org/apache/http/conn/ConnectionKeepAliveStrategy.html
+http://developer.android.com/reference/org/apache/http/conn/ConnectionReleaseTrigger.html
+http://developer.android.com/reference/org/apache/http/conn/EofSensorWatcher.html
+http://developer.android.com/reference/org/apache/http/conn/BasicEofSensorWatcher.html
+http://developer.android.com/reference/org/apache/http/conn/BasicManagedEntity.html
+http://developer.android.com/reference/org/apache/http/conn/EofSensorInputStream.html
+http://developer.android.com/reference/org/apache/http/conn/MultihomePlainSocketFactory.html
+http://developer.android.com/reference/org/apache/http/conn/ConnectionPoolTimeoutException.html
+http://developer.android.com/reference/org/apache/http/conn/ConnectTimeoutException.html
+http://developer.android.com/reference/org/apache/http/conn/HttpHostConnectException.html
+http://developer.android.com/reference/org/apache/http/impl/conn/SingleClientConnManager.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/ThreadSafeClientConnManager.html
+http://developer.android.com/reference/org/apache/http/conn/scheme/SchemeRegistry.html
+http://developer.android.com/reference/org/apache/http/conn/routing/HttpRoute.html
+http://developer.android.com/reference/android/support/v13/app/FragmentCompat.html
+http://developer.android.com/reference/java/security/cert/Certificate.html
+http://developer.android.com/reference/java/security/cert/CertificateException.html
+http://developer.android.com/reference/renderscript/rs__core_8rsh.html
+http://developer.android.com/reference/javax/xml/transform/sax/TemplatesHandler.html
+http://developer.android.com/reference/javax/xml/transform/sax/TransformerHandler.html
+http://developer.android.com/reference/javax/xml/transform/sax/SAXResult.html
+http://developer.android.com/reference/android/sax/ElementListener.html
+http://developer.android.com/reference/android/sax/EndElementListener.html
+http://developer.android.com/reference/android/sax/EndTextElementListener.html
+http://developer.android.com/reference/android/sax/StartElementListener.html
+http://developer.android.com/reference/android/sax/TextElementListener.html
+http://developer.android.com/reference/android/sax/Element.html
+http://developer.android.com/reference/android/sax/RootElement.html
+http://developer.android.com/reference/android/view/textservice/SpellCheckerSession.SpellCheckerSessionListener.html
+http://developer.android.com/reference/android/view/textservice/SentenceSuggestionsInfo.html
+http://developer.android.com/reference/android/view/textservice/SpellCheckerInfo.html
+http://developer.android.com/reference/android/view/textservice/SpellCheckerSubtype.html
+http://developer.android.com/reference/android/view/textservice/TextInfo.html
+http://developer.android.com/reference/android/telephony/cdma/CdmaCellLocation.html
+http://developer.android.com/reference/org/apache/http/conn/routing/HttpRoutePlanner.html
+http://developer.android.com/videos/index.html
+http://developer.android.com/reference/org/apache/http/cookie/Cookie.html
+http://developer.android.com/reference/org/apache/http/cookie/CookieOrigin.html
+http://developer.android.com/reference/org/apache/http/cookie/CookieSpec.html
+http://developer.android.com/reference/org/apache/http/cookie/MalformedCookieException.html
+http://developer.android.com/guide/topics/ui/layout-objects.html
+http://developer.android.com/resources/samples/ApiDemos/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/LabelView.html
+http://developer.android.com/resources/samples/ApiDemos/res/layout/custom_view_1.html
+http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html
+http://developer.android.com/reference/android/text/GetChars.html
+http://developer.android.com/reference/android/text/Html.ImageGetter.html
+http://developer.android.com/reference/android/text/Html.TagHandler.html
+http://developer.android.com/reference/android/text/NoCopySpan.html
+http://developer.android.com/reference/android/text/ParcelableSpan.html
+http://developer.android.com/reference/android/text/SpanWatcher.html
+http://developer.android.com/reference/android/text/TextUtils.EllipsizeCallback.html
+http://developer.android.com/reference/android/text/TextUtils.StringSplitter.html
+http://developer.android.com/reference/android/text/AlteredCharSequence.html
+http://developer.android.com/reference/android/text/AndroidCharacter.html
+http://developer.android.com/reference/android/text/Annotation.html
+http://developer.android.com/reference/android/text/AutoText.html
+http://developer.android.com/reference/android/text/BoringLayout.html
+http://developer.android.com/reference/android/text/BoringLayout.Metrics.html
+http://developer.android.com/reference/android/text/DynamicLayout.html
+http://developer.android.com/reference/android/text/InputFilter.AllCaps.html
+http://developer.android.com/reference/android/text/InputFilter.LengthFilter.html
+http://developer.android.com/reference/android/text/Layout.Directions.html
+http://developer.android.com/reference/android/text/LoginFilter.html
+http://developer.android.com/reference/android/text/LoginFilter.PasswordFilterGMail.html
+http://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGeneric.html
+http://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail.html
+http://developer.android.com/reference/android/text/NoCopySpan.Concrete.html
+http://developer.android.com/reference/android/text/SpannableString.html
+http://developer.android.com/reference/android/text/SpannableStringBuilder.html
+http://developer.android.com/reference/android/text/SpannedString.html
+http://developer.android.com/reference/android/text/StaticLayout.html
+http://developer.android.com/reference/android/text/TextUtils.SimpleStringSplitter.html
+http://developer.android.com/reference/java/math/BigDecimal.html
+http://developer.android.com/reference/java/math/MathContext.html
+http://developer.android.com/reference/java/security/interfaces/DSAKey.html
+http://developer.android.com/reference/java/security/interfaces/DSAKeyPairGenerator.html
+http://developer.android.com/reference/java/security/interfaces/DSAParams.html
+http://developer.android.com/reference/java/security/interfaces/DSAPrivateKey.html
+http://developer.android.com/reference/java/security/interfaces/DSAPublicKey.html
+http://developer.android.com/reference/java/security/interfaces/ECKey.html
+http://developer.android.com/reference/java/security/interfaces/ECPrivateKey.html
+http://developer.android.com/reference/java/security/interfaces/ECPublicKey.html
+http://developer.android.com/reference/java/security/interfaces/RSAKey.html
+http://developer.android.com/reference/java/security/interfaces/RSAMultiPrimePrivateCrtKey.html
+http://developer.android.com/reference/java/security/interfaces/RSAPrivateCrtKey.html
+http://developer.android.com/reference/java/security/interfaces/RSAPrivateKey.html
+http://developer.android.com/reference/java/security/interfaces/RSAPublicKey.html
+http://developer.android.com/reference/android/hardware/Camera.AutoFocusCallback.html
+http://developer.android.com/reference/android/hardware/Camera.AutoFocusMoveCallback.html
+http://developer.android.com/reference/android/hardware/Camera.ErrorCallback.html
+http://developer.android.com/reference/android/hardware/Camera.OnZoomChangeListener.html
+http://developer.android.com/reference/android/hardware/Camera.PreviewCallback.html
+http://developer.android.com/reference/android/hardware/Camera.ShutterCallback.html
+http://developer.android.com/reference/android/hardware/SensorEventListener.html
+http://developer.android.com/reference/android/hardware/SensorListener.html
+http://developer.android.com/reference/android/hardware/Camera.CameraInfo.html
+http://developer.android.com/reference/android/hardware/Camera.Face.html
+http://developer.android.com/reference/android/hardware/Camera.Size.html
+http://developer.android.com/reference/android/hardware/GeomagneticField.html
+http://developer.android.com/reference/android/hardware/Sensor.html
+http://developer.android.com/reference/android/hardware/SensorEvent.html
+http://developer.android.com/reference/org/apache/http/conn/scheme/HostNameResolver.html
+http://developer.android.com/reference/org/apache/http/conn/scheme/LayeredSocketFactory.html
+http://developer.android.com/reference/org/apache/http/conn/scheme/SocketFactory.html
+http://developer.android.com/reference/org/apache/http/conn/scheme/PlainSocketFactory.html
+http://developer.android.com/reference/org/apache/http/conn/scheme/Scheme.html
+http://developer.android.com/reference/org/apache/http/entity/BasicHttpEntity.html
+http://developer.android.com/reference/org/apache/http/entity/BufferedHttpEntity.html
+http://developer.android.com/reference/org/apache/http/entity/ByteArrayEntity.html
+http://developer.android.com/reference/org/apache/http/entity/EntityTemplate.html
+http://developer.android.com/reference/org/apache/http/entity/FileEntity.html
+http://developer.android.com/reference/org/apache/http/entity/HttpEntityWrapper.html
+http://developer.android.com/reference/org/apache/http/entity/InputStreamEntity.html
+http://developer.android.com/reference/org/apache/http/entity/SerializableEntity.html
+http://developer.android.com/reference/dalvik/system/BaseDexClassLoader.html
+http://developer.android.com/reference/dalvik/system/DexClassLoader.html
+http://developer.android.com/reference/dalvik/system/DexFile.html
+http://developer.android.com/reference/dalvik/system/PathClassLoader.html
+http://developer.android.com/reference/java/util/regex/MatchResult.html
+http://developer.android.com/reference/java/util/regex/Matcher.html
+http://developer.android.com/reference/android/Manifest.html
+http://developer.android.com/reference/android/Manifest.permission_group.html
+http://developer.android.com/reference/android/R.html
+http://developer.android.com/reference/android/R.anim.html
+http://developer.android.com/reference/android/R.animator.html
+http://developer.android.com/reference/android/R.array.html
+http://developer.android.com/reference/android/R.bool.html
+http://developer.android.com/reference/android/R.color.html
+http://developer.android.com/reference/android/R.dimen.html
+http://developer.android.com/reference/android/R.drawable.html
+http://developer.android.com/reference/android/R.fraction.html
+http://developer.android.com/reference/android/R.integer.html
+http://developer.android.com/reference/android/R.interpolator.html
+http://developer.android.com/reference/android/R.layout.html
+http://developer.android.com/reference/android/R.menu.html
+http://developer.android.com/reference/android/R.mipmap.html
+http://developer.android.com/reference/android/R.plurals.html
+http://developer.android.com/reference/android/R.raw.html
+http://developer.android.com/reference/android/R.string.html
+http://developer.android.com/reference/android/R.xml.html
+http://developer.android.com/reference/org/xml/sax/ext/DefaultHandler2.html
+http://developer.android.com/sdk/api_diff/3/changes.html
+http://developer.android.com/about/versions/android-1.5-highlights.html
+http://developer.android.com/reference/android/speech/RecognizerIntent.html
+http://developer.android.com/reference/android/media/audiofx/EnvironmentalReverb.html
+http://developer.android.com/reference/android/media/audiofx/AudioEffect.html
+http://developer.android.com/reference/org/apache/http/impl/conn/DefaultClientConnectionOperator.html
+http://developer.android.com/reference/org/apache/http/impl/conn/DefaultHttpRoutePlanner.html
+http://developer.android.com/reference/org/apache/http/impl/conn/DefaultResponseParser.html
+http://developer.android.com/reference/org/apache/http/impl/conn/IdleConnectionHandler.html
+http://developer.android.com/reference/org/apache/http/impl/conn/LoggingSessionInputBuffer.html
+http://developer.android.com/reference/org/apache/http/impl/conn/LoggingSessionOutputBuffer.html
+http://developer.android.com/reference/org/apache/http/impl/conn/ProxySelectorRoutePlanner.html
+http://developer.android.com/reference/org/apache/http/impl/conn/SingleClientConnManager.PoolEntry.html
 http://developer.android.com/reference/org/apache/http/impl/conn/Wire.html
-http://developer.android.com/reference/android/os/WorkSource.html
-http://developer.android.com/reference/android/net/wifi/WpsInfo.html
-http://developer.android.com/reference/java/sql/Wrapper.html
+http://developer.android.com/reference/android/net/http/HttpResponseCache.html
+http://developer.android.com/reference/android/net/http/SslCertificate.DName.html
+http://developer.android.com/reference/android/net/http/SslError.html
+http://developer.android.com/reference/android/support/v4/accessibilityservice/AccessibilityServiceInfoCompat.html
+http://developer.android.com/reference/org/apache/http/cookie/SetCookie.html
+http://developer.android.com/reference/android/net/UrlQuerySanitizer.ValueSanitizer.html
+http://developer.android.com/reference/android/net/Credentials.html
+http://developer.android.com/reference/android/net/DhcpInfo.html
+http://developer.android.com/reference/android/net/LocalServerSocket.html
+http://developer.android.com/reference/android/net/LocalSocket.html
+http://developer.android.com/reference/android/net/LocalSocketAddress.html
+http://developer.android.com/reference/android/net/MailTo.html
+http://developer.android.com/reference/android/net/NetworkInfo.html
+http://developer.android.com/reference/android/net/Proxy.html
+http://developer.android.com/reference/android/net/SSLCertificateSocketFactory.html
+http://developer.android.com/reference/android/net/SSLSessionCache.html
+http://developer.android.com/reference/android/net/UrlQuerySanitizer.html
+http://developer.android.com/reference/android/net/UrlQuerySanitizer.IllegalCharacterValueSanitizer.html
+http://developer.android.com/reference/android/net/UrlQuerySanitizer.ParameterValuePair.html
+http://developer.android.com/reference/android/net/VpnService.Builder.html
+http://developer.android.com/reference/android/net/ParseException.html
+http://developer.android.com/reference/javax/net/ssl/HandshakeCompletedListener.html
+http://developer.android.com/reference/java/util/prefs/NodeChangeListener.html
+http://developer.android.com/reference/java/util/prefs/PreferenceChangeListener.html
+http://developer.android.com/reference/java/beans/PropertyChangeListener.html
+http://developer.android.com/reference/java/beans/PropertyChangeListenerProxy.html
+http://developer.android.com/reference/javax/net/ssl/SSLSessionBindingListener.html
+http://developer.android.com/sdk/compatibility-library.html
+http://developer.android.com/reference/javax/security/auth/AuthPermission.html
+http://developer.android.com/reference/java/util/logging/LoggingPermission.html
+http://developer.android.com/reference/java/lang/reflect/ReflectPermission.html
+http://developer.android.com/reference/javax/net/ssl/SSLPermission.html
+http://developer.android.com/reference/android/nfc/NfcAdapter.CreateBeamUrisCallback.html
+http://developer.android.com/reference/android/nfc/NfcAdapter.CreateNdefMessageCallback.html
+http://developer.android.com/reference/android/nfc/NfcAdapter.OnNdefPushCompleteCallback.html
+http://developer.android.com/reference/android/nfc/NfcEvent.html
+http://developer.android.com/reference/android/nfc/FormatException.html
+http://developer.android.com/reference/android/nfc/TagLostException.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/RefQueueWorker.html
+http://developer.android.com/reference/java/util/concurrent/RunnableFuture.html
+http://developer.android.com/reference/java/util/concurrent/RunnableScheduledFuture.html
+http://developer.android.com/reference/java/util/concurrent/Future.html
+http://developer.android.com/reference/java/util/concurrent/ScheduledFuture.html
+http://developer.android.com/reference/android/text/style/AlignmentSpan.html
+http://developer.android.com/reference/android/text/style/LeadingMarginSpan.html
+http://developer.android.com/reference/android/text/style/LeadingMarginSpan.LeadingMarginSpan2.html
+http://developer.android.com/reference/android/text/style/LineBackgroundSpan.html
+http://developer.android.com/reference/android/text/style/LineHeightSpan.html
+http://developer.android.com/reference/android/text/style/LineHeightSpan.WithDensity.html
+http://developer.android.com/reference/android/text/style/ParagraphStyle.html
+http://developer.android.com/reference/android/text/style/TabStopSpan.html
+http://developer.android.com/reference/android/text/style/UpdateAppearance.html
+http://developer.android.com/reference/android/text/style/UpdateLayout.html
 http://developer.android.com/reference/android/text/style/WrapTogetherSpan.html
-http://developer.android.com/reference/java/nio/channels/WritableByteChannel.html
-http://developer.android.com/reference/java/io/WriteAbortedException.html
-http://developer.android.com/reference/javax/security/auth/x500/X500Principal.html
+http://developer.android.com/reference/android/text/style/AbsoluteSizeSpan.html
+http://developer.android.com/reference/android/text/style/AlignmentSpan.Standard.html
+http://developer.android.com/reference/android/text/style/BackgroundColorSpan.html
+http://developer.android.com/reference/android/text/style/BulletSpan.html
+http://developer.android.com/reference/android/text/style/CharacterStyle.html
+http://developer.android.com/reference/android/text/style/ClickableSpan.html
+http://developer.android.com/reference/android/text/style/DrawableMarginSpan.html
+http://developer.android.com/reference/android/text/style/DynamicDrawableSpan.html
+http://developer.android.com/reference/android/text/style/EasyEditSpan.html
+http://developer.android.com/reference/android/text/style/ForegroundColorSpan.html
+http://developer.android.com/reference/android/text/style/IconMarginSpan.html
+http://developer.android.com/reference/android/text/style/ImageSpan.html
+http://developer.android.com/reference/android/text/style/LeadingMarginSpan.Standard.html
+http://developer.android.com/reference/android/text/style/MaskFilterSpan.html
+http://developer.android.com/reference/android/text/style/MetricAffectingSpan.html
+http://developer.android.com/reference/android/text/style/QuoteSpan.html
+http://developer.android.com/reference/android/text/style/RasterizerSpan.html
+http://developer.android.com/reference/android/text/style/RelativeSizeSpan.html
+http://developer.android.com/reference/android/text/style/ReplacementSpan.html
+http://developer.android.com/reference/android/text/style/ScaleXSpan.html
+http://developer.android.com/reference/android/text/style/StrikethroughSpan.html
+http://developer.android.com/reference/android/text/style/StyleSpan.html
+http://developer.android.com/reference/android/text/style/SubscriptSpan.html
+http://developer.android.com/reference/android/text/style/SuperscriptSpan.html
+http://developer.android.com/reference/android/text/style/TabStopSpan.Standard.html
+http://developer.android.com/reference/android/text/style/TextAppearanceSpan.html
+http://developer.android.com/reference/android/text/style/TypefaceSpan.html
+http://developer.android.com/reference/android/text/style/UnderlineSpan.html
+http://developer.android.com/reference/javax/crypto/interfaces/DHKey.html
+http://developer.android.com/reference/javax/crypto/interfaces/DHPrivateKey.html
+http://developer.android.com/reference/javax/crypto/interfaces/DHPublicKey.html
+http://developer.android.com/reference/javax/crypto/interfaces/PBEKey.html
+http://developer.android.com/reference/java/util/concurrent/ArrayBlockingQueue.html
+http://developer.android.com/reference/java/util/concurrent/ConcurrentLinkedQueue.html
+http://developer.android.com/reference/java/util/concurrent/DelayQueue.html
+http://developer.android.com/reference/java/util/concurrent/Delayed.html
+http://developer.android.com/reference/java/util/concurrent/LinkedBlockingQueue.html
+http://developer.android.com/reference/java/util/concurrent/PriorityBlockingQueue.html
+http://developer.android.com/reference/java/util/concurrent/SynchronousQueue.html
+http://developer.android.com/reference/java/util/concurrent/BlockingQueue.html
+http://developer.android.com/resources/samples/HoneycombGallery/index.html
+http://developer.android.com/resources/samples/ActionBarCompat/index.html
+http://developer.android.com/reference/android/mtp/MtpConstants.html
+http://developer.android.com/reference/android/mtp/MtpDevice.html
+http://developer.android.com/reference/android/mtp/MtpDeviceInfo.html
+http://developer.android.com/reference/android/mtp/MtpObjectInfo.html
+http://developer.android.com/reference/android/mtp/MtpStorageInfo.html
+http://developer.android.com/reference/org/apache/http/entity/ContentProducer.html
+http://developer.android.com/reference/javax/security/auth/PrivateCredentialPermission.html
+http://developer.android.com/reference/javax/net/ssl/HostnameVerifier.html
+http://developer.android.com/reference/javax/net/ssl/KeyManager.html
+http://developer.android.com/reference/javax/net/ssl/ManagerFactoryParameters.html
+http://developer.android.com/reference/javax/net/ssl/SSLSession.html
+http://developer.android.com/reference/javax/net/ssl/SSLSessionContext.html
+http://developer.android.com/reference/javax/net/ssl/TrustManager.html
+http://developer.android.com/reference/javax/net/ssl/X509KeyManager.html
+http://developer.android.com/reference/javax/net/ssl/X509TrustManager.html
+http://developer.android.com/reference/javax/net/ssl/CertPathTrustManagerParameters.html
+http://developer.android.com/reference/javax/net/ssl/HandshakeCompletedEvent.html
+http://developer.android.com/reference/javax/net/ssl/KeyManagerFactory.html
+http://developer.android.com/reference/javax/net/ssl/KeyManagerFactorySpi.html
+http://developer.android.com/reference/javax/net/ssl/KeyStoreBuilderParameters.html
+http://developer.android.com/reference/javax/net/ssl/SSLContext.html
+http://developer.android.com/reference/javax/net/ssl/SSLContextSpi.html
+http://developer.android.com/reference/javax/net/ssl/SSLEngine.html
+http://developer.android.com/reference/javax/net/ssl/SSLEngineResult.html
+http://developer.android.com/reference/javax/net/ssl/SSLParameters.html
+http://developer.android.com/reference/javax/net/ssl/SSLServerSocket.html
+http://developer.android.com/reference/javax/net/ssl/SSLServerSocketFactory.html
+http://developer.android.com/reference/javax/net/ssl/SSLSessionBindingEvent.html
+http://developer.android.com/reference/javax/net/ssl/SSLSocket.html
+http://developer.android.com/reference/javax/net/ssl/SSLSocketFactory.html
+http://developer.android.com/reference/javax/net/ssl/TrustManagerFactory.html
+http://developer.android.com/reference/javax/net/ssl/TrustManagerFactorySpi.html
+http://developer.android.com/reference/javax/net/ssl/X509ExtendedKeyManager.html
+http://developer.android.com/reference/javax/net/ssl/SSLException.html
+http://developer.android.com/reference/javax/net/ssl/SSLHandshakeException.html
+http://developer.android.com/reference/javax/net/ssl/SSLKeyException.html
+http://developer.android.com/reference/javax/net/ssl/SSLPeerUnverifiedException.html
+http://developer.android.com/reference/javax/net/ssl/SSLProtocolException.html
 http://developer.android.com/reference/java/security/cert/X509Certificate.html
-http://developer.android.com/reference/javax/security/cert/X509Certificate.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/index.html
+http://developer.android.com/reference/java/util/prefs/PreferencesFactory.html
+http://developer.android.com/reference/java/util/prefs/AbstractPreferences.html
+http://developer.android.com/reference/java/util/prefs/NodeChangeEvent.html
+http://developer.android.com/reference/java/util/prefs/PreferenceChangeEvent.html
+http://developer.android.com/reference/java/util/prefs/Preferences.html
+http://developer.android.com/reference/java/util/prefs/BackingStoreException.html
+http://developer.android.com/reference/java/util/prefs/InvalidPreferencesFormatException.html
+http://developer.android.com/reference/java/util/zip/ZipException.html
+http://developer.android.com/reference/javax/xml/validation/Schema.html
+http://developer.android.com/tools/debug-tasks.html
+http://developer.android.com/reference/java/util/zip/CheckedInputStream.html
+http://developer.android.com/reference/javax/crypto/CipherInputStream.html
+http://developer.android.com/reference/java/util/zip/DeflaterInputStream.html
+http://developer.android.com/reference/java/util/zip/InflaterInputStream.html
+http://developer.android.com/reference/java/util/zip/GZIPInputStream.html
+http://developer.android.com/reference/java/util/zip/ZipInputStream.html
+http://developer.android.com/reference/android/text/format/Time.html
+http://developer.android.com/reference/org/apache/http/params/HttpAbstractParamBean.html
+http://developer.android.com/reference/org/apache/http/cookie/ClientCookie.html
+http://developer.android.com/reference/org/apache/http/cookie/CookieSpecFactory.html
+http://developer.android.com/reference/org/apache/http/cookie/SetCookie2.html
+http://developer.android.com/reference/org/apache/http/cookie/SM.html
+http://developer.android.com/reference/org/apache/http/cookie/CookieIdentityComparator.html
+http://developer.android.com/reference/org/apache/http/cookie/CookiePathComparator.html
+http://developer.android.com/reference/org/apache/http/cookie/CookieSpecRegistry.html
+http://developer.android.com/reference/java/lang/annotation/Retention.html
+http://developer.android.com/reference/android/hardware/input/InputManager.InputDeviceListener.html
+http://developer.android.com/reference/org/apache/http/auth/AUTH.html
+http://developer.android.com/reference/org/apache/http/auth/AuthSchemeRegistry.html
+http://developer.android.com/reference/org/apache/http/auth/AuthScope.html
+http://developer.android.com/reference/org/apache/http/auth/AuthState.html
+http://developer.android.com/reference/org/apache/http/auth/NTCredentials.html
+http://developer.android.com/reference/org/apache/http/auth/UsernamePasswordCredentials.html
+http://developer.android.com/reference/org/apache/http/auth/AuthenticationException.html
+http://developer.android.com/reference/org/apache/http/auth/InvalidCredentialsException.html
+http://developer.android.com/reference/org/apache/http/auth/MalformedChallengeException.html
+http://developer.android.com/reference/org/apache/http/impl/io/AbstractSessionOutputBuffer.html
+http://developer.android.com/reference/org/apache/http/impl/io/SocketOutputBuffer.html
+http://developer.android.com/sdk/api_diff/14/changes.html
+http://developer.android.com/resources/samples/SampleSyncAdapter/res/xml-v14/contacts.html
+http://developer.android.com/resources/samples/VoicemailProviderDemo/index.html
+http://developer.android.com/resources/samples/RandomMusicPlayer/index.html
+http://developer.android.com/resources/samples/AndroidBeamDemo/src/com/example/android/beam/Beam.html
+http://developer.android.com/reference/android/service/textservice/SpellCheckerService.Session.html
+http://developer.android.com/resources/samples/SpellChecker/SampleSpellCheckerService/index.html
+http://developer.android.com/resources/samples/SpellChecker/HelloSpellChecker/index.html
+http://developer.android.com/resources/samples/TtsEngine/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ActionBarShareActionProviderActivity.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/index.html
+http://developer.android.com/resources/samples/ApiDemos/res/layout/switches.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/Switches.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/OverscanActivity.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/Hover.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchPaint.html
+http://developer.android.com/reference/java/util/logging/Filter.html
+http://developer.android.com/reference/java/util/logging/LoggingMXBean.html
+http://developer.android.com/reference/java/util/logging/ConsoleHandler.html
+http://developer.android.com/reference/java/util/logging/ErrorManager.html
+http://developer.android.com/reference/java/util/logging/FileHandler.html
+http://developer.android.com/reference/java/util/logging/Formatter.html
+http://developer.android.com/reference/java/util/logging/Handler.html
+http://developer.android.com/reference/java/util/logging/Level.html
+http://developer.android.com/reference/java/util/logging/Logger.html
+http://developer.android.com/reference/java/util/logging/LogManager.html
+http://developer.android.com/reference/java/util/logging/LogRecord.html
+http://developer.android.com/reference/java/util/logging/MemoryHandler.html
+http://developer.android.com/reference/java/util/logging/SimpleFormatter.html
+http://developer.android.com/reference/java/util/logging/SocketHandler.html
+http://developer.android.com/reference/java/util/logging/StreamHandler.html
+http://developer.android.com/reference/java/util/logging/XMLFormatter.html
+http://developer.android.com/reference/org/apache/http/impl/client/EntityEnclosingRequestWrapper.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpDelete.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpEntityEnclosingRequestBase.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpGet.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpHead.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpOptions.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpPost.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpPut.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpRequestBase.html
+http://developer.android.com/reference/org/apache/http/client/methods/HttpTrace.html
+http://developer.android.com/reference/org/apache/http/impl/client/RequestWrapper.html
+http://developer.android.com/reference/java/security/cert/CertPathValidator.html
+http://developer.android.com/reference/org/apache/http/protocol/ExecutionContext.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpExpectationVerifier.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpProcessor.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpRequestHandler.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpRequestHandlerResolver.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpRequestInterceptorList.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpResponseInterceptorList.html
+http://developer.android.com/reference/org/apache/http/protocol/BasicHttpContext.html
+http://developer.android.com/reference/org/apache/http/protocol/BasicHttpProcessor.html
+http://developer.android.com/reference/org/apache/http/protocol/DefaultedHttpContext.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpDateGenerator.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpRequestExecutor.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpRequestHandlerRegistry.html
+http://developer.android.com/reference/org/apache/http/protocol/HttpService.html
+http://developer.android.com/reference/org/apache/http/protocol/RequestConnControl.html
+http://developer.android.com/reference/org/apache/http/protocol/RequestContent.html
+http://developer.android.com/reference/org/apache/http/protocol/RequestDate.html
+http://developer.android.com/reference/org/apache/http/protocol/RequestExpectContinue.html
+http://developer.android.com/reference/org/apache/http/protocol/RequestTargetHost.html
+http://developer.android.com/reference/org/apache/http/protocol/RequestUserAgent.html
+http://developer.android.com/reference/org/apache/http/protocol/ResponseConnControl.html
+http://developer.android.com/reference/org/apache/http/protocol/ResponseContent.html
+http://developer.android.com/reference/org/apache/http/protocol/ResponseDate.html
+http://developer.android.com/reference/org/apache/http/protocol/ResponseServer.html
+http://developer.android.com/reference/org/apache/http/protocol/SyncBasicHttpContext.html
+http://developer.android.com/reference/org/apache/http/protocol/UriPatternMatcher.html
+http://developer.android.com/reference/java/lang/reflect/AnnotatedElement.html
+http://developer.android.com/reference/java/lang/reflect/GenericArrayType.html
+http://developer.android.com/reference/java/lang/reflect/GenericDeclaration.html
+http://developer.android.com/reference/java/lang/reflect/InvocationHandler.html
+http://developer.android.com/reference/java/lang/reflect/Member.html
+http://developer.android.com/reference/java/lang/reflect/ParameterizedType.html
+http://developer.android.com/reference/java/lang/reflect/Type.html
+http://developer.android.com/reference/java/lang/reflect/TypeVariable.html
+http://developer.android.com/reference/java/lang/reflect/WildcardType.html
+http://developer.android.com/reference/java/lang/reflect/AccessibleObject.html
+http://developer.android.com/reference/java/lang/reflect/Array.html
+http://developer.android.com/reference/java/lang/reflect/Constructor.html
+http://developer.android.com/reference/java/lang/reflect/Field.html
+http://developer.android.com/reference/java/lang/reflect/Method.html
+http://developer.android.com/reference/java/lang/reflect/Modifier.html
+http://developer.android.com/reference/java/lang/reflect/Proxy.html
+http://developer.android.com/reference/java/lang/reflect/InvocationTargetException.html
+http://developer.android.com/sdk/api_diff/11/changes.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/DragAndDropDemo.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List15.html
+http://developer.android.com/resources/samples/USB/AdbTest/index.html
+http://developer.android.com/resources/samples/USB/MissileLauncher/index.html
+http://developer.android.com/reference/android/hardware/usb/UsbInterface.html
+http://developer.android.com/reference/android/hardware/usb/UsbEndpoint.html
+http://developer.android.com/reference/android/hardware/usb/UsbDeviceConnection.html
+http://developer.android.com/reference/android/hardware/usb/UsbRequest.html
+http://developer.android.com/reference/android/hardware/usb/UsbConstants.html
+http://developer.android.com/reference/org/apache/http/impl/client/BasicCookieStore.html
+http://developer.android.com/reference/android/support/v4/os/ParcelableCompatCreatorCallbacks.html
+http://developer.android.com/reference/android/support/v4/os/ParcelableCompat.html
+http://developer.android.com/reference/java/util/zip/Checksum.html
+http://developer.android.com/reference/java/util/zip/Adler32.html
+http://developer.android.com/reference/java/util/zip/CheckedOutputStream.html
+http://developer.android.com/reference/java/util/zip/CRC32.html
+http://developer.android.com/reference/java/util/zip/Inflater.html
+http://developer.android.com/reference/java/util/zip/InflaterOutputStream.html
+http://developer.android.com/reference/java/util/zip/ZipFile.html
+http://developer.android.com/reference/java/util/zip/DataFormatException.html
+http://developer.android.com/reference/org/apache/http/params/CoreConnectionPNames.html
+http://developer.android.com/reference/org/apache/http/params/AbstractHttpParams.html
+http://developer.android.com/reference/org/apache/http/params/BasicHttpParams.html
+http://developer.android.com/reference/org/apache/http/params/DefaultedHttpParams.html
+http://developer.android.com/reference/org/apache/http/params/HttpConnectionParamBean.html
+http://developer.android.com/reference/org/apache/http/params/HttpConnectionParams.html
+http://developer.android.com/reference/org/apache/http/params/HttpProtocolParamBean.html
+http://developer.android.com/reference/org/apache/http/params/HttpProtocolParams.html
+http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/FragmentTabsPager.html
+http://developer.android.com/guide/samples/index.html
+http://developer.android.com/shareables/training/MobileAds.zip
+http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NotePadProvider.html
+http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NotePad.html
+http://developer.android.com/shareables/training/nsdchat.zip
+http://developer.android.com/reference/java/util/concurrent/Callable.html
+http://developer.android.com/reference/java/util/concurrent/CompletionService.html
+http://developer.android.com/reference/java/util/concurrent/ConcurrentMap.html
+http://developer.android.com/reference/java/util/concurrent/ConcurrentNavigableMap.html
+http://developer.android.com/reference/java/util/concurrent/ExecutorService.html
+http://developer.android.com/reference/java/util/concurrent/RejectedExecutionHandler.html
+http://developer.android.com/reference/java/util/concurrent/ScheduledExecutorService.html
+http://developer.android.com/reference/java/util/concurrent/ThreadFactory.html
+http://developer.android.com/reference/java/util/concurrent/AbstractExecutorService.html
+http://developer.android.com/reference/java/util/concurrent/ConcurrentHashMap.html
+http://developer.android.com/reference/java/util/concurrent/ConcurrentSkipListMap.html
+http://developer.android.com/reference/java/util/concurrent/ConcurrentSkipListSet.html
+http://developer.android.com/reference/java/util/concurrent/CopyOnWriteArraySet.html
+http://developer.android.com/reference/java/util/concurrent/CountDownLatch.html
+http://developer.android.com/reference/java/util/concurrent/CyclicBarrier.html
+http://developer.android.com/reference/java/util/concurrent/Exchanger.html
+http://developer.android.com/reference/java/util/concurrent/ExecutorCompletionService.html
+http://developer.android.com/reference/java/util/concurrent/Executors.html
+http://developer.android.com/reference/java/util/concurrent/ScheduledThreadPoolExecutor.html
+http://developer.android.com/reference/java/util/concurrent/Semaphore.html
+http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.html
+http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.AbortPolicy.html
+http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.CallerRunsPolicy.html
+http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.DiscardOldestPolicy.html
+http://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.DiscardPolicy.html
+http://developer.android.com/reference/java/util/concurrent/BrokenBarrierException.html
+http://developer.android.com/reference/java/util/concurrent/ExecutionException.html
+http://developer.android.com/reference/java/util/concurrent/TimeoutException.html
+http://developer.android.com/resources/samples/JetBoy/index.html
+http://developer.android.com/guide/topics/media/jet/jetcreator_manual.html
+http://developer.android.com/reference/java/beans/PropertyChangeEvent.html
+http://developer.android.com/reference/java/beans/IndexedPropertyChangeEvent.html
+http://developer.android.com/reference/java/security/cert/CertPathBuilderResult.html
+http://developer.android.com/reference/java/security/cert/CertPathParameters.html
+http://developer.android.com/reference/java/security/cert/CertPathValidatorResult.html
+http://developer.android.com/reference/java/security/cert/CertSelector.html
+http://developer.android.com/reference/java/security/cert/CertStoreParameters.html
+http://developer.android.com/reference/java/security/cert/CRLSelector.html
+http://developer.android.com/reference/java/security/cert/PolicyNode.html
+http://developer.android.com/reference/java/security/cert/X509Extension.html
+http://developer.android.com/reference/java/security/cert/Certificate.CertificateRep.html
+http://developer.android.com/reference/java/security/cert/CertificateFactory.html
+http://developer.android.com/reference/java/security/cert/CertificateFactorySpi.html
+http://developer.android.com/reference/java/security/cert/CertPath.CertPathRep.html
+http://developer.android.com/reference/java/security/cert/CertPathBuilder.html
+http://developer.android.com/reference/java/security/cert/CertPathBuilderSpi.html
+http://developer.android.com/reference/java/security/cert/CertPathValidatorSpi.html
+http://developer.android.com/reference/java/security/cert/CertStore.html
+http://developer.android.com/reference/java/security/cert/CertStoreSpi.html
+http://developer.android.com/reference/java/security/cert/CollectionCertStoreParameters.html
+http://developer.android.com/reference/java/security/cert/CRL.html
+http://developer.android.com/reference/java/security/cert/LDAPCertStoreParameters.html
+http://developer.android.com/reference/java/security/cert/PKIXBuilderParameters.html
+http://developer.android.com/reference/java/security/cert/PKIXCertPathBuilderResult.html
+http://developer.android.com/reference/java/security/cert/PKIXCertPathChecker.html
+http://developer.android.com/reference/java/security/cert/PKIXCertPathValidatorResult.html
+http://developer.android.com/reference/java/security/cert/PKIXParameters.html
+http://developer.android.com/reference/java/security/cert/PolicyQualifierInfo.html
+http://developer.android.com/reference/java/security/cert/TrustAnchor.html
 http://developer.android.com/reference/java/security/cert/X509CertSelector.html
 http://developer.android.com/reference/java/security/cert/X509CRL.html
 http://developer.android.com/reference/java/security/cert/X509CRLEntry.html
 http://developer.android.com/reference/java/security/cert/X509CRLSelector.html
-http://developer.android.com/reference/java/security/spec/X509EncodedKeySpec.html
-http://developer.android.com/reference/javax/net/ssl/X509ExtendedKeyManager.html
-http://developer.android.com/reference/java/security/cert/X509Extension.html
-http://developer.android.com/reference/javax/net/ssl/X509KeyManager.html
-http://developer.android.com/reference/javax/net/ssl/X509TrustManager.html
-http://developer.android.com/reference/android/util/Xml.html
-http://developer.android.com/reference/android/util/Xml.Encoding.html
-http://developer.android.com/reference/javax/xml/XMLConstants.html
-http://developer.android.com/reference/org/xml/sax/XMLFilter.html
-http://developer.android.com/reference/org/xml/sax/helpers/XMLFilterImpl.html
-http://developer.android.com/reference/java/util/logging/XMLFormatter.html
-http://developer.android.com/reference/javax/xml/datatype/XMLGregorianCalendar.html
-http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html
-http://developer.android.com/reference/org/xmlpull/v1/XmlPullParserException.html
-http://developer.android.com/reference/org/xmlpull/v1/XmlPullParserFactory.html
-http://developer.android.com/reference/org/xml/sax/helpers/XMLReaderAdapter.html
-http://developer.android.com/reference/org/xml/sax/helpers/XMLReaderFactory.html
-http://developer.android.com/reference/android/content/res/XmlResourceParser.html
-http://developer.android.com/reference/org/xmlpull/v1/XmlSerializer.html
-http://developer.android.com/reference/javax/xml/xpath/XPath.html
-http://developer.android.com/reference/javax/xml/xpath/XPathConstants.html
-http://developer.android.com/reference/javax/xml/xpath/XPathException.html
-http://developer.android.com/reference/javax/xml/xpath/XPathExpression.html
-http://developer.android.com/reference/javax/xml/xpath/XPathExpressionException.html
-http://developer.android.com/reference/javax/xml/xpath/XPathFactory.html
-http://developer.android.com/reference/javax/xml/xpath/XPathFactoryConfigurationException.html
-http://developer.android.com/reference/javax/xml/xpath/XPathFunction.html
-http://developer.android.com/reference/javax/xml/xpath/XPathFunctionException.html
-http://developer.android.com/reference/javax/xml/xpath/XPathFunctionResolver.html
-http://developer.android.com/reference/javax/xml/xpath/XPathVariableResolver.html
-http://developer.android.com/reference/android/graphics/YuvImage.html
-http://developer.android.com/reference/java/util/zip/ZipEntry.html
-http://developer.android.com/reference/java/util/zip/ZipError.html
-http://developer.android.com/reference/java/util/zip/ZipException.html
-http://developer.android.com/reference/java/util/zip/ZipFile.html
-http://developer.android.com/reference/java/util/zip/ZipInputStream.html
-http://developer.android.com/reference/java/util/zip/ZipOutputStream.html
-http://developer.android.com/sdk/compatibility-library.html
-http://developer.android.com/resources/samples/MultiResolution/index.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design.html
-http://developer.android.com/guide/practices/screens-support-1.5.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/DensityActivity.html
-http://developer.android.com/resources/dashboard/screens.html
-http://developer.android.com/shareables/training/CustomView.zip
-http://developer.android.com/resources/faq/troubleshooting.html
-http://developer.android.com/shareables/training/ActivityLifecycle.zip
-http://developer.android.com/resources/tutorials/localization/index.html
-http://developer.android.com/resources/samples/AccelerometerPlay/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/os/RotationVectorDemo.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/os/Sensors.html
+http://developer.android.com/reference/java/security/cert/CertificateEncodingException.html
+http://developer.android.com/reference/java/security/cert/CertificateExpiredException.html
+http://developer.android.com/reference/java/security/cert/CertificateNotYetValidException.html
+http://developer.android.com/reference/java/security/cert/CertificateParsingException.html
+http://developer.android.com/reference/java/security/cert/CertPathBuilderException.html
+http://developer.android.com/reference/java/security/cert/CertPathValidatorException.html
+http://developer.android.com/reference/java/security/cert/CertStoreException.html
+http://developer.android.com/reference/java/security/cert/CRLException.html
 http://developer.android.com/resources/samples/BluetoothChat/index.html
 http://developer.android.com/resources/samples/BluetoothHDP/index.html
-http://developer.android.com/resources/samples/ContactManager/index.html
-http://developer.android.com/guide/developing/tools/traceview.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html
-http://developer.android.com/resources/samples/AndroidBeamDemo/index.html
-http://developer.android.com/resources/samples/TicTacToeMain/index.html
-http://developer.android.com/resources/tutorials/views/hello-formstuff.html
-http://developer.android.com/shareables/training/FragmentBasics.zip
-http://developer.android.com/guide/samples/index.html
-http://developer.android.com/resources/samples/JetBoy/index.html
-http://developer.android.com/guide/topics/media/jet/jetcreator_manual.html
-http://developer.android.com/shareables/training/EffectiveNavigation.zip
-http://developer.android.com/resources/tutorials/views/hello-tabwidget.html
-http://developer.android.com/design/patterns/swipe-views
-http://developer.android.com/shareables/training/NetworkUsage.zip
-http://developer.android.com/sdk/api_diff/15/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/15/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/15/changes/changes-summary.html
-http://developer.android.com/guide/topics/wireless/bluetooth.html
-http://developer.android.com/reference/renderscript/index.html
-http://developer.android.com/resources/samples/SpellChecker/SampleSpellCheckerService/index.html
-http://developer.android.com/resources/samples/SpellChecker/HelloSpellChecker/index.html
-http://developer.android.com/resources/samples/BackupRestore/src/com/example/android/backuprestore/ExampleAgent.html
-http://developer.android.com/resources/samples/BackupRestore/index.html
+http://developer.android.com/reference/org/apache/http/impl/io/AbstractMessageParser.html
+http://developer.android.com/reference/android/accounts/AccountManagerCallback.html
+http://developer.android.com/reference/android/accounts/AccountManagerFuture.html
+http://developer.android.com/reference/android/accounts/OnAccountsUpdateListener.html
+http://developer.android.com/reference/android/accounts/AccountAuthenticatorResponse.html
+http://developer.android.com/reference/android/accounts/AuthenticatorDescription.html
+http://developer.android.com/reference/android/accounts/AccountsException.html
+http://developer.android.com/reference/android/accounts/AuthenticatorException.html
+http://developer.android.com/reference/android/accounts/NetworkErrorException.html
+http://developer.android.com/reference/android/accounts/OperationCanceledException.html
+http://developer.android.com/reference/android/support/v4/content/LocalBroadcastManager.html
 http://developer.android.com/guide/topics/fundamentals.html
-http://developer.android.com/guide/topics/intents/intents-filters.html
-http://developer.android.com/guide/topics/fundamentals/loaders.html
-http://developer.android.com/resources/tutorials/views/hello-timepicker.html
-http://developer.android.com/shareables/training/TabCompat.zip
-http://developer.android.com/distribute/googleplay/promote/product-pages.html
-http://developer.android.com/resources/samples/TicTacToeLib/AndroidManifest.html
-http://developer.android.com/resources/samples/TicTacToeMain/AndroidManifest.html
-http://developer.android.com/sdk/api_diff/10/changes.html
-http://developer.android.com/resources/samples/NFCDemo/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/nfc/TechFilter.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/nfc/ForegroundDispatch.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/nfc/ForegroundNdefPush.html
-http://developer.android.com/sdk/api_diff/13/changes.html
-http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html
-http://developer.android.com/guide/developing/tools/aidl.html
-http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html
-http://developer.android.com/guide/topics/network/sip.html
-http://developer.android.com/resources/tutorials/views/hello-gallery.html
-http://developer.android.com/sdk/api_diff/16/changes.html
-http://developer.android.com/guide/topics/ui/layout-objects.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/LabelView.html
-http://developer.android.com/resources/samples/ApiDemos/res/layout/custom_view_1.html
-http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html
-http://developer.android.com/shareables/training/LocationAware.zip
-http://developer.android.com/training/tutorials/views/hello-tabwidget.html
+http://developer.android.com/reference/org/apache/http/client/methods/AbortableHttpRequest.html
+http://developer.android.com/reference/org/apache/http/impl/client/AbstractAuthenticationHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/BasicCredentialsProvider.html
+http://developer.android.com/reference/org/apache/http/impl/client/BasicResponseHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/ClientParamsStack.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultConnectionKeepAliveStrategy.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultHttpRequestRetryHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultProxyAuthenticationHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultRedirectHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultRequestDirector.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultTargetAuthenticationHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/DefaultUserTokenHandler.html
+http://developer.android.com/reference/org/apache/http/impl/client/RedirectLocations.html
+http://developer.android.com/reference/org/apache/http/impl/client/RoutedRequest.html
+http://developer.android.com/reference/org/apache/http/impl/client/TunnelRefusedException.html
+http://developer.android.com/reference/org/apache/http/conn/ssl/X509HostnameVerifier.html
+http://developer.android.com/reference/org/apache/http/conn/ssl/AbstractVerifier.html
+http://developer.android.com/reference/org/apache/http/conn/ssl/AllowAllHostnameVerifier.html
+http://developer.android.com/reference/org/apache/http/conn/ssl/BrowserCompatHostnameVerifier.html
+http://developer.android.com/reference/org/apache/http/conn/ssl/SSLSocketFactory.html
+http://developer.android.com/reference/org/apache/http/conn/ssl/StrictHostnameVerifier.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/BasicPoolEntry.html
+http://developer.android.com/reference/org/apache/http/conn/routing/RouteTracker.html
 http://developer.android.com/guide/google/gcm/client-javadoc/index.html
 http://developer.android.com/guide/google/gcm/server-javadoc/index.html
-http://developer.android.com/guide/topics/clipboard/copy-paste.html
-http://developer.android.com/sdk/api_diff/10/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/10/changes/changes-summary.html
-http://developer.android.com/tools/help/running
-http://developer.android.com/tools/help/generating
-http://developer.android.com/tools/help/analyzing
-http://developer.android.com/resources/tutorials/views/hello-listview.html
-http://developer.android.com/guide/practices/design/responsiveness.html
-http://developer.android.com/resources/samples/SipDemo/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/BouncingBalls.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/LayoutAnimations.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/LayoutAnimationsByDefault.html
-http://developer.android.com/resources/samples/ApiDemos/res/layout/layout_animations_by_default.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/MultiPropertyAnimation.html
-http://developer.android.com/resources/samples/ActionBarCompat/index.html
-http://developer.android.com/guide/topics/fundamentals/activities.html
-http://developer.android.com/guide/topics/fundamentals/services.html
+http://developer.android.com/reference/javax/xml/validation/SchemaFactory.html
+http://developer.android.com/reference/javax/xml/validation/SchemaFactoryLoader.html
+http://developer.android.com/reference/javax/xml/validation/TypeInfoProvider.html
+http://developer.android.com/reference/javax/xml/validation/Validator.html
+http://developer.android.com/reference/javax/xml/validation/ValidatorHandler.html
+http://developer.android.com/reference/java/lang/ref/WeakReference.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGLConfig.html
+http://developer.android.com/reference/javax/security/auth/Destroyable.html
+http://developer.android.com/reference/javax/security/auth/DestroyFailedException.html
+http://developer.android.com/reference/javax/xml/transform/stream/StreamResult.html
 http://developer.android.com/reference/renderscript/globals.html
 http://developer.android.com/reference/renderscript/annotated.html
-http://developer.android.com/sdk/win-usb.html
-http://developer.android.com/training/tutorials/views/hello-gallery.html
-http://developer.android.com/resources/faq/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/DragAndDropDemo.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/DraggableDot.html
-http://developer.android.com/shareables/training/MobileAds.zip
 http://developer.android.com/reference/renderscript/rs__types_8rsh_source.html
 http://developer.android.com/reference/renderscript/rs__allocation_8rsh_source.html
 http://developer.android.com/reference/renderscript/rs__atomic_8rsh_source.html
@@ -4069,13 +3850,230 @@
 http://developer.android.com/reference/renderscript/structrs__script.html
 http://developer.android.com/reference/renderscript/structrs__allocation.html
 http://developer.android.com/reference/renderscript/rs__core_8rsh_source.html
-http://developer.android.com/sdk/api_diff/11/changes.html
-http://developer.android.com/resources/samples/StackWidget/index.html
-http://developer.android.com/resources/samples/WeatherListWidget/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderCursor.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List15.html
+http://developer.android.com/reference/javax/security/auth/Subject.html
+http://developer.android.com/reference/javax/security/auth/SubjectDomainCombiner.html
+http://developer.android.com/reference/android/drm/DrmManagerClient.OnErrorListener.html
+http://developer.android.com/reference/android/drm/DrmManagerClient.OnEventListener.html
+http://developer.android.com/reference/android/drm/DrmManagerClient.OnInfoListener.html
+http://developer.android.com/reference/android/drm/DrmStore.ConstraintsColumns.html
+http://developer.android.com/reference/android/drm/DrmConvertedStatus.html
+http://developer.android.com/reference/android/drm/DrmErrorEvent.html
+http://developer.android.com/reference/android/drm/DrmEvent.html
+http://developer.android.com/reference/android/drm/DrmInfo.html
+http://developer.android.com/reference/android/drm/DrmInfoEvent.html
+http://developer.android.com/reference/android/drm/DrmInfoRequest.html
+http://developer.android.com/reference/android/drm/DrmInfoStatus.html
+http://developer.android.com/reference/android/drm/DrmManagerClient.html
+http://developer.android.com/reference/android/drm/DrmRights.html
+http://developer.android.com/reference/android/drm/DrmStore.html
+http://developer.android.com/reference/android/drm/DrmStore.Action.html
+http://developer.android.com/reference/android/drm/DrmStore.DrmObjectType.html
+http://developer.android.com/reference/android/drm/DrmStore.Playback.html
+http://developer.android.com/reference/android/drm/DrmStore.RightsStatus.html
+http://developer.android.com/reference/android/drm/DrmSupportInfo.html
+http://developer.android.com/reference/android/drm/DrmUtils.html
+http://developer.android.com/reference/android/drm/DrmUtils.ExtendedMetadataParser.html
+http://developer.android.com/reference/android/drm/ProcessedData.html
+http://developer.android.com/guide/developing/device.html
+http://developer.android.com/sdk/adding-components.html
+http://developer.android.com/reference/java/security/acl/Acl.html
+http://developer.android.com/reference/java/security/acl/AclEntry.html
+http://developer.android.com/reference/java/security/acl/Owner.html
+http://developer.android.com/reference/java/security/acl/Permission.html
+http://developer.android.com/reference/java/security/acl/AclNotFoundException.html
+http://developer.android.com/reference/java/security/acl/LastOwnerException.html
+http://developer.android.com/reference/java/security/acl/NotOwnerException.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSResourceResolver.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSInput.html
+http://developer.android.com/reference/javax/crypto/Cipher.html
+http://developer.android.com/reference/javax/crypto/KeyGenerator.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List2.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html
+http://developer.android.com/reference/android/support/v4/util/LongSparseArray.html
+http://developer.android.com/reference/android/support/v4/util/LruCache.html
+http://developer.android.com/reference/android/support/v4/util/SparseArrayCompat.html
+http://developer.android.com/reference/org/xml/sax/ext/Attributes2Impl.html
+http://developer.android.com/reference/org/xml/sax/ext/Locator2Impl.html
+http://developer.android.com/reference/java/util/concurrent/locks/Lock.html
+http://developer.android.com/guide/developing/tools/draw9patch.html
+http://developer.android.com/guide/practices/design/responsiveness.html
+http://developer.android.com/reference/org/apache/http/impl/io/AbstractMessageWriter.html
+http://developer.android.com/reference/org/apache/http/impl/io/AbstractSessionInputBuffer.html
+http://developer.android.com/reference/org/apache/http/impl/io/ChunkedInputStream.html
+http://developer.android.com/reference/org/apache/http/impl/io/ChunkedOutputStream.html
+http://developer.android.com/reference/org/apache/http/impl/io/ContentLengthInputStream.html
+http://developer.android.com/reference/org/apache/http/impl/io/ContentLengthOutputStream.html
+http://developer.android.com/reference/org/apache/http/impl/io/HttpRequestParser.html
+http://developer.android.com/reference/org/apache/http/impl/io/HttpRequestWriter.html
+http://developer.android.com/reference/org/apache/http/impl/io/HttpResponseParser.html
+http://developer.android.com/reference/org/apache/http/impl/io/HttpResponseWriter.html
+http://developer.android.com/reference/org/apache/http/impl/io/HttpTransportMetricsImpl.html
+http://developer.android.com/reference/org/apache/http/impl/io/IdentityInputStream.html
+http://developer.android.com/reference/org/apache/http/impl/io/IdentityOutputStream.html
+http://developer.android.com/reference/org/apache/http/impl/io/SocketInputBuffer.html
+http://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSOutput.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSParser.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSParserFilter.html
+http://developer.android.com/reference/org/w3c/dom/ls/LSSerializer.html
+http://developer.android.com/sdk/api_diff/10/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/changes-summary.html
+http://developer.android.com/reference/org/apache/http/cookie/params/CookieSpecParamBean.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/PoolEntryRequest.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/RefQueueHandler.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/AbstractConnPool.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/BasicPoolEntryRef.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/ConnPoolByRoute.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/RouteSpecificPool.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/WaitingThread.html
+http://developer.android.com/reference/org/apache/http/impl/conn/tsccm/WaitingThreadAborter.html
+http://developer.android.com/reference/java/lang/ref/Reference.html
+http://developer.android.com/reference/org/apache/http/client/protocol/RequestAddCookies.html
+http://developer.android.com/reference/org/apache/http/client/protocol/RequestDefaultHeaders.html
+http://developer.android.com/reference/org/apache/http/client/protocol/RequestProxyAuthentication.html
+http://developer.android.com/reference/org/apache/http/client/protocol/RequestTargetAuthentication.html
+http://developer.android.com/resources/samples/SipDemo/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/GLSurfaceViewActivity.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/GLES20Activity.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchRotateActivity.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CompressedTextureActivity.html
+http://developer.android.com/resources/dashboard/opengl.html
+http://developer.android.com/guide/faq/index.html
+http://developer.android.com/reference/java/beans/PropertyChangeSupport.html
+http://developer.android.com/reference/java/nio/channels/spi/AbstractSelector.html
+http://developer.android.com/resources/tutorials/views/hello-datepicker.html
+http://developer.android.com/resources/tutorials/views/hello-timepicker.html
+http://developer.android.com/shareables/training/BitmapFun.zip
+http://developer.android.com/resources/tutorials/views/index.html
+http://developer.android.com/resources/samples/RenderScript/HelloCompute/index.html
+http://developer.android.com/resources/samples/RenderScript/HelloCompute/src/com/example/android/rs/hellocompute/mono.html
+http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.CursorToStringConverter.html
+http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.ViewBinder.html
+http://developer.android.com/reference/android/support/v4/widget/EdgeEffectCompat.html
+http://developer.android.com/reference/android/support/v4/widget/SearchViewCompat.html
+http://developer.android.com/reference/android/support/v4/widget/SearchViewCompat.OnQueryTextListenerCompat.html
+http://developer.android.com/shareables/training/NetworkUsage.zip
+http://developer.android.com/reference/renderscript/rs__element_8rsh.html
 http://developer.android.com/reference/renderscript/structrs__element.html
+http://developer.android.com/guide/topics/location/obtaining-user-location.html
+http://developer.android.com/sdk/api_diff/8/changes.html
+http://developer.android.com/about/versions/android-2.2-highlights.html
+http://developer.android.com/reference/android/speech/RecognitionListener.html
+http://developer.android.com/shareables/training/PhotoIntentActivity.zip
+http://developer.android.com/guide/topics/fundamentals/loaders.html
+http://developer.android.com/reference/javax/crypto/CipherOutputStream.html
+http://developer.android.com/reference/javax/crypto/CipherSpi.html
+http://developer.android.com/reference/javax/crypto/EncryptedPrivateKeyInfo.html
+http://developer.android.com/reference/javax/crypto/ExemptionMechanism.html
+http://developer.android.com/reference/javax/crypto/ExemptionMechanismSpi.html
+http://developer.android.com/reference/javax/crypto/KeyAgreement.html
+http://developer.android.com/reference/javax/crypto/KeyAgreementSpi.html
+http://developer.android.com/reference/javax/crypto/KeyGeneratorSpi.html
+http://developer.android.com/reference/javax/crypto/Mac.html
+http://developer.android.com/reference/javax/crypto/MacSpi.html
+http://developer.android.com/reference/javax/crypto/NullCipher.html
+http://developer.android.com/reference/javax/crypto/SealedObject.html
+http://developer.android.com/reference/javax/crypto/SecretKeyFactory.html
+http://developer.android.com/reference/javax/crypto/SecretKeyFactorySpi.html
+http://developer.android.com/reference/javax/crypto/BadPaddingException.html
+http://developer.android.com/reference/javax/crypto/ExemptionMechanismException.html
+http://developer.android.com/reference/javax/crypto/IllegalBlockSizeException.html
+http://developer.android.com/reference/javax/crypto/NoSuchPaddingException.html
+http://developer.android.com/reference/javax/crypto/ShortBufferException.html
+http://developer.android.com/reference/org/json/JSONArray.html
+http://developer.android.com/reference/org/json/JSONObject.html
+http://developer.android.com/reference/org/json/JSONStringer.html
+http://developer.android.com/reference/org/json/JSONTokener.html
+http://developer.android.com/reference/org/json/JSONException.html
+http://developer.android.com/reference/android/view/ViewDebug.CapturedViewProperty.html
+http://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
+http://developer.android.com/reference/android/view/ViewDebug.FlagToString.html
+http://developer.android.com/reference/android/view/ViewDebug.IntToString.html
+http://developer.android.com/tools/sdk/ndk/overview.html
+http://developer.android.com/reference/java/lang/ref/PhantomReference.html
+http://developer.android.com/reference/java/lang/ref/SoftReference.html
+http://developer.android.com/sdk/api_diff/14/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/14/changes/changes-summary.html
+http://developer.android.com/guide/faq/framework.html
+http://developer.android.com/guide/faq/licensingandoss.html
+http://developer.android.com/guide/faq/security.html
+http://developer.android.com/reference/android/gesture/GestureOverlayView.OnGestureListener.html
+http://developer.android.com/reference/android/gesture/GestureOverlayView.OnGesturePerformedListener.html
+http://developer.android.com/reference/android/gesture/GestureOverlayView.OnGesturingListener.html
+http://developer.android.com/reference/android/gesture/Gesture.html
+http://developer.android.com/reference/android/gesture/GestureLibraries.html
+http://developer.android.com/reference/android/gesture/GestureLibrary.html
+http://developer.android.com/reference/android/gesture/GesturePoint.html
+http://developer.android.com/reference/android/gesture/GestureStore.html
+http://developer.android.com/reference/android/gesture/GestureStroke.html
+http://developer.android.com/reference/android/gesture/GestureUtils.html
+http://developer.android.com/reference/android/gesture/OrientedBoundingBox.html
+http://developer.android.com/reference/android/gesture/Prediction.html
+http://developer.android.com/resources/samples/TicTacToeLib/AndroidManifest.html
+http://developer.android.com/resources/samples/TicTacToeMain/AndroidManifest.html
+http://developer.android.com/sdk/eclipse-adt.html
+http://developer.android.com/resources/tutorials/views/hello-webview.html
+http://developer.android.com/resources/samples/BackupRestore/src/com/example/android/backuprestore/ExampleAgent.html
+http://developer.android.com/resources/samples/BackupRestore/index.html
+http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher_archive.html
+http://developer.android.com/guide/topics/nfc/index.html
+http://developer.android.com/guide/developing/tools/traceview.html
+http://developer.android.com/resources/samples/AccelerometerPlay/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/os/RotationVectorDemo.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/os/Sensors.html
+http://developer.android.com/guide/topics/clipboard/copy-paste.html
+http://developer.android.com/resources/samples/SpinnerTest/index.html
+http://developer.android.com/resources/samples/Spinner/index.html
+http://developer.android.com/reference/org/apache/http/cookie/params/CookieSpecPNames.html
+http://developer.android.com/reference/android/speech/RecognitionService.Callback.html
+http://developer.android.com/reference/android/speech/SpeechRecognizer.html
+http://developer.android.com/reference/javax/security/cert/X509Certificate.html
+http://developer.android.com/guide/topics/testing/index.html
+http://developer.android.com/guide/google/gcm/server-javadoc/allclasses-frame.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-summary.html
+http://developer.android.com/reference/android/support/v4/content/ContextCompat.html
+http://developer.android.com/reference/java/nio/charset/spi/CharsetProvider.html
+http://developer.android.com/resources/community-groups.html
+http://developer.android.com/reference/android/test/suitebuilder/TestMethod.html
+http://developer.android.com/reference/android/test/suitebuilder/TestSuiteBuilder.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/BouncingBalls.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/LayoutAnimations.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/LayoutAnimationsByDefault.html
+http://developer.android.com/resources/samples/ApiDemos/res/layout/layout_animations_by_default.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/animation/MultiPropertyAnimation.html
+http://developer.android.com/reference/java/lang/Deprecated.html
+http://developer.android.com/reference/java/lang/annotation/Documented.html
+http://developer.android.com/reference/android/test/FlakyTest.html
+http://developer.android.com/reference/java/lang/annotation/Inherited.html
+http://developer.android.com/reference/android/test/suitebuilder/annotation/LargeTest.html
+http://developer.android.com/reference/android/test/suitebuilder/annotation/MediumTest.html
+http://developer.android.com/reference/java/lang/Override.html
+http://developer.android.com/reference/android/widget/RemoteViews.RemoteView.html
+http://developer.android.com/reference/android/test/suitebuilder/annotation/SmallTest.html
+http://developer.android.com/reference/android/test/suitebuilder/annotation/Smoke.html
+http://developer.android.com/reference/android/test/suitebuilder/annotation/Suppress.html
+http://developer.android.com/reference/android/annotation/SuppressLint.html
+http://developer.android.com/reference/java/lang/SuppressWarnings.html
+http://developer.android.com/reference/android/annotation/TargetApi.html
+http://developer.android.com/reference/dalvik/annotation/TestTarget.html
+http://developer.android.com/reference/dalvik/annotation/TestTargetClass.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html
+http://developer.android.com/reference/android/support/v4/content/Loader.OnLoadCompleteListener.html
+http://developer.android.com/reference/android/support/v4/content/AsyncTaskLoader.html
+http://developer.android.com/reference/android/support/v4/content/IntentCompat.html
+http://developer.android.com/reference/android/support/v4/content/Loader.ForceLoadContentObserver.html
+http://developer.android.com/reference/javax/net/SocketFactory.html
+http://developer.android.com/reference/javax/net/ServerSocketFactory.html
+http://developer.android.com/reference/org/apache/http/conn/routing/HttpRouteDirector.html
+http://developer.android.com/reference/org/apache/http/conn/routing/RouteInfo.html
+http://developer.android.com/reference/org/apache/http/conn/routing/BasicRouteDirector.html
+http://developer.android.com/guide/topics/usb/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ActionBarMechanics.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/content/ClipboardSample.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/SearchViewActionBar.html
+http://developer.android.com/resources/samples/RenderScript/index.html
 http://developer.android.com/reference/renderscript/structrs__type.html
 http://developer.android.com/reference/renderscript/structrs__sampler.html
 http://developer.android.com/reference/renderscript/structrs__mesh.html
@@ -4088,31 +4086,1477 @@
 http://developer.android.com/reference/renderscript/structrs__matrix4x4.html
 http://developer.android.com/reference/renderscript/structrs__matrix3x3.html
 http://developer.android.com/reference/renderscript/structrs__matrix2x2.html
-http://developer.android.com/sdk/api_diff/15/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/15/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/15/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/15/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/15/changes/fields_index_all.html
-http://developer.android.com/guide/topics/nfc/index.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_action_bar.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ActionBarShareActionProviderActivity.html
+http://developer.android.com/sdk/ndk/index.html
+http://developer.android.com/sdk/api_diff/9/changes.html
+http://developer.android.com/sdk/api_diff/16/changes.html
+http://developer.android.com/reference/android/media/audiofx/AcousticEchoCanceler.html
+http://developer.android.com/reference/android/media/audiofx/AutomaticGainControl.html
+http://developer.android.com/reference/android/media/audiofx/NoiseSuppressor.html
+http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pServiceInfo.html
+http://developer.android.com/reference/android/text/util/Linkify.MatchFilter.html
+http://developer.android.com/reference/android/text/util/Linkify.TransformFilter.html
+http://developer.android.com/reference/android/text/util/Rfc822Token.html
+http://developer.android.com/reference/renderscript/rs__object_8rsh.html
+http://developer.android.com/reference/org/apache/http/conn/util/InetAddressUtils.html
+http://developer.android.com/reference/org/apache/http/client/protocol/ClientContext.html
+http://developer.android.com/reference/org/apache/http/client/protocol/ClientContextConfigurer.html
+http://developer.android.com/reference/org/apache/http/client/protocol/ResponseProcessCookies.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGL.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGL10.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGL11.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGLContext.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGLDisplay.html
+http://developer.android.com/reference/javax/microedition/khronos/egl/EGLSurface.html
+http://developer.android.com/reference/renderscript/rs__allocation_8rsh.html
+http://developer.android.com/reference/renderscript/rs__atomic_8rsh.html
+http://developer.android.com/reference/renderscript/rs__cl_8rsh.html
+http://developer.android.com/reference/renderscript/rs__debug_8rsh.html
+http://developer.android.com/reference/renderscript/rs__math_8rsh.html
+http://developer.android.com/reference/renderscript/rs__matrix_8rsh.html
+http://developer.android.com/reference/renderscript/rs__quaternion_8rsh.html
+http://developer.android.com/reference/renderscript/rs__sampler_8rsh.html
+http://developer.android.com/reference/renderscript/rs__time_8rsh.html
+http://developer.android.com/reference/renderscript/globals_func.html
+http://developer.android.com/reference/renderscript/globals_type.html
+http://developer.android.com/reference/renderscript/globals_enum.html
+http://developer.android.com/reference/renderscript/rs__graphics_8rsh.html
+http://developer.android.com/reference/javax/security/auth/login/LoginException.html
+http://developer.android.com/reference/android/media/audiofx/AudioEffect.OnControlStatusChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/AudioEffect.OnEnableStatusChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/BassBoost.OnParameterChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/EnvironmentalReverb.OnParameterChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/Equalizer.OnParameterChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/PresetReverb.OnParameterChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/Virtualizer.OnParameterChangeListener.html
+http://developer.android.com/reference/android/media/audiofx/Visualizer.OnDataCaptureListener.html
+http://developer.android.com/reference/android/media/audiofx/AudioEffect.Descriptor.html
+http://developer.android.com/reference/android/media/audiofx/BassBoost.html
+http://developer.android.com/reference/android/media/audiofx/BassBoost.Settings.html
+http://developer.android.com/reference/android/media/audiofx/EnvironmentalReverb.Settings.html
+http://developer.android.com/reference/android/media/audiofx/Equalizer.html
+http://developer.android.com/reference/android/media/audiofx/Equalizer.Settings.html
+http://developer.android.com/reference/android/media/audiofx/PresetReverb.html
+http://developer.android.com/reference/android/media/audiofx/PresetReverb.Settings.html
+http://developer.android.com/reference/android/media/audiofx/Virtualizer.html
+http://developer.android.com/reference/android/media/audiofx/Virtualizer.Settings.html
+http://developer.android.com/reference/android/media/audiofx/Visualizer.html
+http://developer.android.com/reference/android/text/format/DateFormat.html
+http://developer.android.com/reference/android/text/format/DateUtils.html
+http://developer.android.com/reference/android/text/format/Formatter.html
+http://developer.android.com/resources/samples/AndroidBeamDemo/index.html
+http://developer.android.com/resources/articles/creating-input-method.html
+http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/10/changes/android.media.MediaRecorder.AudioEncoder.html
+http://developer.android.com/sdk/api_diff/10/changes/android.nfc.NfcAdapter.html
+http://developer.android.com/sdk/api_diff/10/changes/android.media.MediaRecorder.OutputFormat.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.bluetooth.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.nfc.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.speech.html
+http://developer.android.com/sdk/api_diff/10/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/10/changes/android.graphics.BitmapFactory.Options.html
+http://developer.android.com/sdk/api_diff/10/changes/android.bluetooth.BluetoothAdapter.html
+http://developer.android.com/sdk/api_diff/10/changes/android.bluetooth.BluetoothDevice.html
+http://developer.android.com/sdk/api_diff/10/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/10/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/10/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/10/changes/jdiff_statistics.html
 http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ActionBarSettingsActionProviderActivity.html
 http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentTabs.html
 http://developer.android.com/resources/samples/HoneycombGallery/src/com/example/android/hcgallery/TitlesFragment.html
-http://developer.android.com/guide/topics/testing/index.html
-http://developer.android.com/sdk/tools-notes.html
-http://developer.android.com/sdk/api_diff/13/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/13/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/13/changes/changes-summary.html
-http://developer.android.com/guide/faq/index.html
-http://developer.android.com/sdk/eclipse-adt.html
-http://developer.android.com/guide/google/gcm/client-javadoc/allclasses-frame.html
-http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/package-summary.html
+http://developer.android.com/sdk/installing.html
+http://developer.android.com/tools/help/layoutopt.html
+http://developer.android.com/sdk/api_diff/16/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/16/changes/changes-summary.html
+http://developer.android.com/resources/samples/TicTacToeMain/index.html
+http://developer.android.com/reference/java/util/concurrent/locks/Condition.html
+http://developer.android.com/sdk/api_diff/12/changes.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/GameControllerInput.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/GameView.html
+http://developer.android.com/reference/android/net/rtp/RtpStream.html
+http://developer.android.com/reference/android/net/rtp/AudioStream.html
+http://developer.android.com/reference/android/net/rtp/AudioGroup.html
+http://developer.android.com/reference/android/net/rtp/AudioCodec.html
+http://developer.android.com/sdk/api_diff/4/changes.html
+http://developer.android.com/about/versions/android-1.6-highlights.html
+http://developer.android.com/sdk/api_diff/7/changes.html
+http://developer.android.com/about/versions/android-2.0-highlights.html
+http://developer.android.com/reference/renderscript/rs__mesh_8rsh_source.html
+http://developer.android.com/reference/renderscript/rs__program_8rsh_source.html
+http://developer.android.com/reference/renderscript/rs__graphics_8rsh_source.html
 http://developer.android.com/sdk/api_diff/11/changes/jdiff_topleftframe.html
 http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_all.html
 http://developer.android.com/sdk/api_diff/11/changes/changes-summary.html
+http://developer.android.com/guide/topics/providers/%7B@docRoot%3C/code
+http://developer.android.com/reference/java/util/concurrent/locks/ReadWriteLock.html
+http://developer.android.com/reference/java/util/concurrent/locks/AbstractOwnableSynchronizer.html
+http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.html
+http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.ConditionObject.html
+http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedSynchronizer.html
+http://developer.android.com/reference/java/util/concurrent/locks/AbstractQueuedSynchronizer.ConditionObject.html
+http://developer.android.com/reference/java/util/concurrent/locks/LockSupport.html
+http://developer.android.com/reference/java/util/concurrent/locks/ReentrantLock.html
+http://developer.android.com/reference/java/util/concurrent/locks/ReentrantReadWriteLock.html
+http://developer.android.com/reference/java/util/concurrent/locks/ReentrantReadWriteLock.ReadLock.html
+http://developer.android.com/reference/java/util/concurrent/locks/ReentrantReadWriteLock.WriteLock.html
+http://developer.android.com/sdk/api_diff/11/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/11/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/11/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/11/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/11/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/changes-summary.html
+http://developer.android.com/guide/google/gcm/client-javadoc/allclasses-frame.html
+http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/package-summary.html
 http://developer.android.com/guide/topics/ui/binding.html
-http://developer.android.com/sdk/api_diff/15/changes/jdiff_statistics.html
+http://developer.android.com/reference/javax/security/cert/CertificateException.html
+http://developer.android.com/reference/javax/security/cert/CertificateEncodingException.html
+http://developer.android.com/reference/javax/security/cert/CertificateExpiredException.html
+http://developer.android.com/reference/javax/security/cert/CertificateNotYetValidException.html
+http://developer.android.com/reference/javax/security/cert/CertificateParsingException.html
+http://developer.android.com/about/versions/android-2.0.html
+http://developer.android.com/sdk/api_diff/5/changes.html
+http://developer.android.com/reference/renderscript/structrs__tm.html
+http://developer.android.com/sdk/api_diff/7/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/7/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/7/changes/changes-summary.html
+http://developer.android.com/resources/tutorials/views/hello-spinner.html
+http://developer.android.com/resources/tutorials/views/hello-listview.html
+http://developer.android.com/resources/tutorials/views/hello-gridview.html
+http://developer.android.com/sdk/api_diff/16/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/16/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/16/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/16/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/16/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.app.admin.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.location.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.net.wifi.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.opengl.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.service.wallpaper.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.telephony.gsm.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.text.format.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.view.inputmethod.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_dalvik.bytecode.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_dalvik.system.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.awt.font.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.io.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.lang.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.lang.reflect.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.net.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.nio.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.security.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.sql.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.text.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.concurrent.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.concurrent.atomic.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.concurrent.locks.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.logging.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.zip.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.net.ssl.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.security.auth.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.security.auth.x500.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.sql.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.datatype.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.parsers.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.transform.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.validation.html
+http://developer.android.com/sdk/api_diff/9/changes/pkg_org.apache.http.protocol.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/DraggableDot.html
+http://developer.android.com/sdk/api_diff/4/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/4/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/11/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/11/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.AbsListView.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.AbstractCursor.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.AbstractThreadedSyncAdapter.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.AbstractWindowedCursor.html
+http://developer.android.com/sdk/api_diff/11/changes/android.accounts.AccountManager.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.ActivityManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.ActivityManager.RecentTaskInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.AlarmClock.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.AlertDialog.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.AlertDialog.Builder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.util.AndroidException.html
+http://developer.android.com/sdk/api_diff/11/changes/android.util.AndroidRuntimeException.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.animation.Animation.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.ApplicationInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.appwidget.AppWidgetHost.html
+http://developer.android.com/sdk/api_diff/11/changes/android.appwidget.AppWidgetManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.appwidget.AppWidgetProviderInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.ArrayAdapter.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.method.ArrowKeyMovementMethod.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.AsyncTask.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/11/changes/android.media.AudioManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.accounts.AuthenticatorDescription.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.BaseInputConnection.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.method.BaseKeyListener.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.text.method.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.BatteryManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.BitmapFactory.Options.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.bluetooth.html
+http://developer.android.com/sdk/api_diff/11/changes/android.bluetooth.BluetoothAdapter.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.BroadcastReceiver.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.Browser.SearchColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.Bundle.html
+http://developer.android.com/sdk/api_diff/11/changes/android.webkit.CacheManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.webkit.CacheManager.CacheResult.html
+http://developer.android.com/sdk/api_diff/11/changes/android.media.CamcorderProfile.html
+http://developer.android.com/sdk/api_diff/11/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/11/changes/android.hardware.Camera.Parameters.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.Canvas.html
+http://developer.android.com/sdk/api_diff/11/changes/java.lang.Character.UnicodeBlock.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.ClipboardManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.ColorDrawable.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.ComponentInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.CommonDataKinds.Email.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.CommonDataKinds.Relation.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Contacts.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Contacts.AggregationSuggestions.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Contacts.Photo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.ContactsColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.ContactStatusColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.DataColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.DataColumnsWithJoins.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.GroupsColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Intents.Insert.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.RawContacts.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.RawContactsColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.StatusColumns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentProvider.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentProviderClient.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentResolver.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentValues.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.ContextWrapper.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.view.inputmethod.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.Cursor.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.CursorAdapter.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.CursorWindow.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.CursorWrapper.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.database.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.DatabaseUtils.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.DatePicker.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.DatePickerDialog.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.Debug.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.Deque.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.admin.DeviceAdminInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.admin.DeviceAdminReceiver.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.admin.DevicePolicyManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.Dialog.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.DownloadManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.DownloadManager.Request.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.Drawable.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.DrawableContainer.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.DrawableContainer.DrawableContainerState.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.DropBoxManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.EditorInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.Environment.html
+http://developer.android.com/sdk/api_diff/11/changes/android.media.ExifInterface.html
+http://developer.android.com/sdk/api_diff/11/changes/android.opengl.GLSurfaceView.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.GridView.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.ImageView.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputConnection.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputConnectionWrapper.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputMethod.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputMethodInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputMethodManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.InputMethodService.html
+http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.InputMethodService.InputMethodImpl.html
+http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.InputMethodService.Insets.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.InputType.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.animation.Interpolator.html
+http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.Keyboard.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.KeyCharacterMap.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.KeyCharacterMap.KeyData.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.LayerDrawable.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.LayoutInflater.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.LinearLayout.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.ListView.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.test.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.Locale.html
+http://developer.android.com/sdk/api_diff/11/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/11/changes/android.media.MediaRecorder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.media.MediaRecorder.AudioSource.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.MediaStore.Audio.Genres.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.MenuItem.html
+http://developer.android.com/sdk/api_diff/11/changes/android.test.mock.MockContext.html
+http://developer.android.com/sdk/api_diff/11/changes/android.test.mock.MockCursor.html
+http://developer.android.com/sdk/api_diff/11/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.MotionEvent.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.preference.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.NavigableMap.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.NavigableSet.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.Notification.html
+http://developer.android.com/sdk/api_diff/11/changes/java.lang.Object.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_dalvik.bytecode.html
+http://developer.android.com/sdk/api_diff/11/changes/dalvik.bytecode.Opcodes.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.OverScroller.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.PackageStats.html
+http://developer.android.com/sdk/api_diff/11/changes/android.util.Patterns.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.PendingIntent.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.PopupWindow.html
+http://developer.android.com/sdk/api_diff/11/changes/android.preference.Preference.html
+http://developer.android.com/sdk/api_diff/11/changes/android.preference.PreferenceActivity.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.ProgressDialog.html
+http://developer.android.com/sdk/api_diff/11/changes/android.net.Proxy.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.Queue.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.QuickContactBadge.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.method.QwertyKeyListener.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.dimen.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.drawable.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.id.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.layout.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.string.html
+http://developer.android.com/sdk/api_diff/11/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/11/changes/android.speech.RecognizerIntent.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.ResourceBundle.html
+http://developer.android.com/sdk/api_diff/11/changes/java.util.ResourceBundle.Control.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.ResourceCursorAdapter.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.ScaleGestureDetector.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.Scroller.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.method.ScrollingMovementMethod.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.SearchManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.hardware.SensorManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.Service.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.Settings.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.Settings.Secure.html
+http://developer.android.com/sdk/api_diff/11/changes/android.provider.Settings.System.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.SharedPreferences.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.SharedPreferences.Editor.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.SimpleCursorAdapter.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.SpannableStringBuilder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.util.SparseArray.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.Spinner.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.database.sqlite.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteCursor.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteDatabase.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteOpenHelper.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteProgram.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteQueryBuilder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteStatement.html
+http://developer.android.com/sdk/api_diff/11/changes/android.util.StateSet.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.StrictMode.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.StrictMode.ThreadPolicy.Builder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.StrictMode.VmPolicy.Builder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.Surface.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.SurfaceHolder.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.SyncAdapterType.html
+http://developer.android.com/sdk/api_diff/11/changes/android.content.SyncInfo.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.TabWidget.html
+http://developer.android.com/sdk/api_diff/11/changes/android.telephony.TelephonyManager.html
+http://developer.android.com/sdk/api_diff/11/changes/android.speech.tts.TextToSpeech.Engine.html
+http://developer.android.com/sdk/api_diff/11/changes/android.widget.TextView.html
+http://developer.android.com/sdk/api_diff/11/changes/android.text.format.Time.html
+http://developer.android.com/sdk/api_diff/11/changes/android.net.Uri.html
+http://developer.android.com/sdk/api_diff/11/changes/android.net.Uri.Builder.html
+http://developer.android.com/sdk/api_diff/11/changes/android.os.Vibrator.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.ViewGroup.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.ViewParent.html
+http://developer.android.com/sdk/api_diff/11/changes/android.app.WallpaperManager.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/11/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/11/changes/android.webkit.WebView.html
+http://developer.android.com/sdk/api_diff/11/changes/android.webkit.WebViewClient.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.Window.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.Window.Callback.html
+http://developer.android.com/sdk/api_diff/11/changes/android.view.WindowManager.LayoutParams.html
+http://developer.android.com/sdk/api_diff/9/changes/android.util.DisplayMetrics.html
+http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pDnsSdServiceInfo.html
+http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pDnsSdServiceRequest.html
+http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pServiceRequest.html
+http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pUpnpServiceInfo.html
+http://developer.android.com/reference/android/net/wifi/p2p/nsd/WifiP2pUpnpServiceRequest.html
+http://developer.android.com/sdk/api_diff/11/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/4/changes/java.util.concurrent.locks.AbstractQueuedSynchronizer.html
+http://developer.android.com/sdk/api_diff/4/changes/android.provider.Settings.Secure.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/4/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/4/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/4/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/4/changes/android.location.Address.html
+http://developer.android.com/sdk/api_diff/4/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.graphics.drawable.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.inputmethodservice.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.location.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.net.wifi.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.opengl.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.telephony.gsm.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.test.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.text.style.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.view.animation.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/4/changes/android.test.AndroidTestCase.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.AnimationDrawable.html
+http://developer.android.com/sdk/api_diff/4/changes/android.R.anim.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ApplicationInfo.html
+http://developer.android.com/sdk/api_diff/4/changes/android.media.AudioManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.widget.AutoCompleteTextView.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.Bitmap.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.BitmapDrawable.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.BitmapFactory.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.BitmapFactory.Options.html
+http://developer.android.com/sdk/api_diff/4/changes/android.os.Build.html
+http://developer.android.com/sdk/api_diff/4/changes/android.os.Build.VERSION.html
+http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsMessage.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.Canvas.html
+http://developer.android.com/sdk/api_diff/4/changes/android.widget.CheckedTextView.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.ComponentName.html
+http://developer.android.com/sdk/api_diff/4/changes/android.view.VelocityTracker.html
+http://developer.android.com/sdk/api_diff/4/changes/android.util.Config.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ConfigurationInfo.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.ContentProvider.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.ContextWrapper.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.Typeface.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.Drawable.html
+http://developer.android.com/sdk/api_diff/4/changes/android.net.wifi.WifiManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.telephony.TelephonyManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.provider.MediaStore.Audio.Genres.Members.html
+http://developer.android.com/sdk/api_diff/4/changes/android.provider.MediaStore.Audio.Media.html
+http://developer.android.com/sdk/api_diff/4/changes/android.util.TypedValue.html
+http://developer.android.com/sdk/api_diff/4/changes/android.util.DisplayMetrics.html
+http://developer.android.com/sdk/api_diff/4/changes/android.app.Dialog.html
+http://developer.android.com/sdk/api_diff/4/changes/android.view.Window.Callback.html
+http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsMessage.SubmitPdu.html
+http://developer.android.com/sdk/api_diff/4/changes/android.app.SearchManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.test.mock.MockContext.html
+http://developer.android.com/sdk/api_diff/4/changes/android.media.MediaRecorder.html
+http://developer.android.com/sdk/api_diff/4/changes/android.os.RemoteCallbackList.html
+http://developer.android.com/sdk/api_diff/4/changes/android.widget.ListView.html
+http://developer.android.com/sdk/api_diff/4/changes/android.widget.TabWidget.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.NinePatch.html
+http://developer.android.com/sdk/api_diff/4/changes/android.app.PendingIntent.html
+http://developer.android.com/sdk/api_diff/4/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.view.ViewConfiguration.html
+http://developer.android.com/sdk/api_diff/4/changes/android.widget.PopupWindow.html
+http://developer.android.com/sdk/api_diff/4/changes/android.widget.TabHost.TabSpec.html
+http://developer.android.com/sdk/api_diff/4/changes/android.text.style.ImageSpan.html
+http://developer.android.com/sdk/api_diff/4/changes/android.inputmethodservice.KeyboardView.html
+http://developer.android.com/sdk/api_diff/4/changes/android.app.LauncherActivity.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_java.util.concurrent.html
+http://developer.android.com/sdk/api_diff/4/changes/pkg_java.util.concurrent.locks.html
+http://developer.android.com/sdk/api_diff/4/changes/android.app.LauncherActivity.ListItem.html
+http://developer.android.com/sdk/api_diff/4/changes/android.hardware.SensorManager.html
+http://developer.android.com/sdk/api_diff/4/changes/android.Manifest.permission_group.html
+http://developer.android.com/sdk/api_diff/4/changes/android.media.MediaRecorder.AudioSource.html
+http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.NinePatchDrawable.html
+http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ProviderInfo.html
+http://developer.android.com/sdk/api_diff/4/changes/android.R.drawable.html
+http://developer.android.com/sdk/api_diff/4/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/4/changes/android.provider.Settings.System.html
+http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsMessage.MessageClass.html
+http://developer.android.com/sdk/api_diff/4/changes/android.view.Surface.html
+http://developer.android.com/sdk/api_diff/4/changes/java.util.concurrent.TimeUnit.html
+http://developer.android.com/sdk/api_diff/4/changes/android.media.ToneGenerator.html
+http://developer.android.com/sdk/api_diff/16/changes/constructors_index_removals.html
+http://developer.android.com/sdk/api_diff/16/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/16/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ClipData.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ClipData.Item.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.Action.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.DrmObjectType.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.Playback.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.RightsStatus.html
+http://developer.android.com/sdk/api_diff/16/changes/android.nfc.FormatException.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.GeolocationPermissions.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.AllocationBuilder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.TriangleMeshBuilder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.nfc.NdefMessage.html
+http://developer.android.com/sdk/api_diff/16/changes/android.nfc.NdefRecord.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Constants.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.SurfaceConfig.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RSSurfaceView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RSTextureView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.SQLException.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteException.html
+http://developer.android.com/sdk/api_diff/16/changes/junit.framework.TestSuite.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebStorage.html
+http://developer.android.com/sdk/api_diff/9/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/9/changes/android.app.ActivityManager.RunningAppProcessInfo.html
+http://developer.android.com/sdk/api_diff/9/changes/android.app.Notification.html
+http://developer.android.com/reference/javax/security/cert/Certificate.html
+http://developer.android.com/sdk/api_diff/16/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/4/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/4/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/4/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/4/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/4/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/4/changes/fields_index_all.html
+http://developer.android.com/reference/android/support/v4/content/pm/ActivityInfoCompat.html
+http://developer.android.com/reference/org/apache/http/client/utils/CloneUtils.html
+http://developer.android.com/reference/android/support/v4/net/ConnectivityManagerCompat.html
+http://developer.android.com/reference/android/support/v4/net/TrafficStatsCompat.html
+http://developer.android.com/reference/android/support/v4/net/TrafficStatsCompatIcs.html
+http://developer.android.com/reference/org/apache/http/client/utils/URIUtils.html
+http://developer.android.com/reference/org/apache/http/client/utils/URLEncodedUtils.html
+http://developer.android.com/reference/renderscript/rs__mesh_8rsh.html
+http://developer.android.com/reference/renderscript/rs__program_8rsh.html
+http://developer.android.com/sdk/api_diff/9/changes/org.apache.http.protocol.HTTP.html
+http://developer.android.com/resources/samples/NFCDemo/index.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/AudioFxDemo.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/SecureView.html
+http://developer.android.com/sdk/api_diff/16/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/16/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.accessibilityservice.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.animation.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.appwidget.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.bluetooth.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.database.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.database.sqlite.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.drm.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.graphics.drawable.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.media.audiofx.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.net.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.net.wifi.p2p.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.nfc.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.nfc.tech.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.renderscript.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.security.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.service.textservice.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.speech.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.test.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.text.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.accessibility.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.inputmethod.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.textservice.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_junit.framework.html
+http://developer.android.com/sdk/api_diff/16/changes/pkg_junit.runner.html
+http://developer.android.com/sdk/api_diff/11/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/11/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.app.admin.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.view.animation.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.appwidget.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.inputmethodservice.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.net.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.graphics.drawable.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.text.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.speech.tts.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_java.util.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.accounts.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.text.format.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.speech.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.opengl.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/11/changes/pkg_java.lang.html
+http://developer.android.com/sdk/api_diff/11/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/11/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/11/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/16/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/16/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/16/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ContentResolver.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.Notification.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityNodeInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/16/changes/android.net.wifi.p2p.WifiP2pManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewTreeObserver.html
+http://developer.android.com/sdk/api_diff/16/changes/android.test.InstrumentationTestSuite.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Program.BaseProgramBuilder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaPlayer.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.UserDictionary.Words.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.SurfaceTexture.html
+http://developer.android.com/sdk/api_diff/16/changes/android.appwidget.AppWidgetManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.html
+http://developer.android.com/sdk/api_diff/16/changes/android.os.Vibrator.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.AsyncTaskLoader.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.Loader.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.CursorWindow.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteClosable.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteDatabase.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteProgram.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSubtype.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Font.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.FileA3D.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.Cursor.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.KeyCharacterMap.html
+http://developer.android.com/sdk/api_diff/16/changes/android.os.StrictMode.VmPolicy.Builder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.animation.LayoutTransition.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.ContentObservable.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.ContentObserver.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.Canvas.html
+http://developer.android.com/sdk/api_diff/16/changes/android.os.TokenWatcher.html
+http://developer.android.com/sdk/api_diff/16/changes/junit.framework.TestResult.html
+http://developer.android.com/sdk/api_diff/16/changes/android.text.Html.html
+http://developer.android.com/sdk/api_diff/16/changes/junit.framework.Assert.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Element.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.Gravity.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.View.AccessibilityDelegate.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityEvent.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.PendingIntent.html
+http://developer.android.com/sdk/api_diff/16/changes/junit.framework.ComparisonFailure.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.ImageView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Sampler.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.AudioRecord.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.ToneGenerator.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramStore.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Allocation.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.CheckedTextView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.GridView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.AutoCompleteTextView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Program.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.Display.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.CalendarView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.nfc.NfcAdapter.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmSupportInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityServiceInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.InputDevice.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.LinearLayout.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.res.Resources.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.Spinner.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.FileA3D.IndexEntry.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.InputEvent.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.AdapterViewFlipper.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.FrameLayout.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.SearchManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.RelativeLayout.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.TextView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.SearchView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewStub.html
+http://developer.android.com/sdk/api_diff/16/changes/junit.runner.BaseTestRunner.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.Camera.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.ActivityManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.net.SSLCertificateSocketFactory.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.drawable.GradientDrawable.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewParent.html
+http://developer.android.com/sdk/api_diff/16/changes/android.bluetooth.BluetoothAdapter.html
+http://developer.android.com/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityService.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.audiofx.Visualizer.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.Switch.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.AbsSeekBar.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ActionMode.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.AudioManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.net.ConnectivityManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.nfc.tech.IsoDep.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.KeyguardManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.Paint.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ActionProvider.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.Contacts.html
+http://developer.android.com/sdk/api_diff/16/changes/android.net.Uri.html
+http://developer.android.com/sdk/api_diff/16/changes/android.appwidget.AppWidgetProvider.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteOpenHelper.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener.html
+http://developer.android.com/sdk/api_diff/16/changes/android.service.textservice.SpellCheckerService.Session.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ContentProvider.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ContentProviderClient.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQueryBuilder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmManagerClient.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewGroup.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.DownloadManager.Request.html
+http://developer.android.com/sdk/api_diff/16/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaRecorder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityRecord.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.TextureView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Script.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ContextWrapper.html
+http://developer.android.com/sdk/api_diff/16/changes/android.test.mock.MockContext.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.Fragment.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewDebug.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.inputmethod.InputMethodManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.appwidget.AppWidgetHostView.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.JsResult.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewPropertyAnimator.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.AbstractThreadedSyncAdapter.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.IntentSender.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.SharedPreferences.Editor.html
+http://developer.android.com/sdk/api_diff/4/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/4/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/4/changes/fields_index_changes.html
+http://developer.android.com/guide/faq/troubleshooting.html
+http://developer.android.com/sdk/api_diff/4/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/4/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.xml.transform.TransformerFactory.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.ApplicationInfo.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.PackageInfo.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.PackageItemInfo.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.xml.validation.SchemaFactory.html
+http://developer.android.com/sdk/api_diff/9/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/9/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/9/changes/android.R.drawable.html
+http://developer.android.com/sdk/api_diff/9/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.ActivityManager.MemoryInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.ActivityManager.RunningAppProcessInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.Notification.html
+http://developer.android.com/sdk/api_diff/16/changes/android.app.WallpaperManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.AbstractCursor.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ClipDescription.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.ComponentCallbacks2.html
+http://developer.android.com/sdk/api_diff/13/changes.html
+http://developer.android.com/about/versions/android-3.1-highlights.html
+http://developer.android.com/about/versions/android-2.0.1.html
+http://developer.android.com/sdk/api_diff/6/changes.html
+http://developer.android.com/about/versions/android-1.1.html
+http://developer.android.com/sdk/api_diff/9/changes/java.awt.font.TextAttribute.html
+http://developer.android.com/sdk/api_diff/4/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/4/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.AbsListView.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.accessibility.AccessibilityEvent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.accessibility.AccessibilityManager.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.view.accessibility.html
+http://developer.android.com/sdk/api_diff/14/changes/android.accessibilityservice.AccessibilityService.html
+http://developer.android.com/sdk/api_diff/14/changes/android.accessibilityservice.AccessibilityServiceInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.AccessibleObject.html
+http://developer.android.com/sdk/api_diff/14/changes/android.accounts.AccountManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.MotionEvent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.Settings.html
+http://developer.android.com/sdk/api_diff/14/changes/android.media.AudioManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.ActionBar.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.ActionBar.Tab.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.ActionMode.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.AdapterViewAnimator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.FieldPacker.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.MediaStore.Audio.AudioColumns.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.AlertDialog.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Allocation.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.AllocationAdapter.html
+http://developer.android.com/sdk/api_diff/14/changes/java.security.AllPermission.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebView.HitTestResult.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.accessibilityservice.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.accounts.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.animation.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.app.admin.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.app.backup.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.appwidget.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.bluetooth.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.database.sqlite.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.inputmethodservice.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.net.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.net.http.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.net.wifi.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.nfc.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.nfc.tech.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.opengl.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.preference.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.renderscript.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.service.wallpaper.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.speech.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.speech.tts.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.text.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.text.style.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.view.inputmethod.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.Animator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.Application.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.ApplicationInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.appwidget.AppWidgetProviderInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.Settings.Secure.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.backup.BackupAgent.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_dalvik.system.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.BaseObj.html
+http://developer.android.com/sdk/api_diff/14/changes/java.security.BasicPermission.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/14/changes/android.bluetooth.BluetoothAdapter.html
+http://developer.android.com/sdk/api_diff/14/changes/android.bluetooth.BluetoothProfile.html
+http://developer.android.com/sdk/api_diff/14/changes/android.bluetooth.BluetoothSocket.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Build.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Byte2.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Byte3.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Byte4.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.CallLog.Calls.html
+http://developer.android.com/sdk/api_diff/14/changes/android.hardware.Camera.Parameters.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewPropertyAnimator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.graphics.Canvas.html
+http://developer.android.com/sdk/api_diff/14/changes/android.preference.CheckBoxPreference.html
+http://developer.android.com/sdk/api_diff/14/changes/java.lang.Class.html
+http://developer.android.com/sdk/api_diff/14/changes/android.net.TrafficStats.html
+http://developer.android.com/sdk/api_diff/14/changes/android.util.SparseArray.html
+http://developer.android.com/sdk/api_diff/14/changes/android.util.SparseBooleanArray.html
+http://developer.android.com/sdk/api_diff/14/changes/android.util.SparseIntArray.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.MenuItem.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.speech.SpeechRecognizer.html
+http://developer.android.com/sdk/api_diff/14/changes/android.util.Config.html
+http://developer.android.com/sdk/api_diff/14/changes/android.net.ConnectivityManager.html
+http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.Constructor.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.CommonDataKinds.Photo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.Contacts.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.Contacts.Photo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.ContactsColumns.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.GroupsColumns.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.Intents.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.RawContactsColumns.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.RawContactsEntity.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.SettingsColumns.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.StatusUpdates.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.ContentProvider.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.NdefRecord.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_dalvik.annotation.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Debug.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Debug.MemoryInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.admin.DeviceAdminInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.admin.DevicePolicyManager.html
+http://developer.android.com/sdk/api_diff/14/changes/dalvik.system.DexClassLoader.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.NfcAdapter.html
+http://developer.android.com/sdk/api_diff/14/changes/android.service.wallpaper.WallpaperService.Engine.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.ParcelFileDescriptor.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Element.html
+http://developer.android.com/sdk/api_diff/14/changes/java.io.ObjectOutputStream.html
+http://developer.android.com/sdk/api_diff/14/changes/java.io.ObjectInputStream.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.Gravity.html
+http://developer.android.com/sdk/api_diff/14/changes/java.io.FilePermission.html
+http://developer.android.com/sdk/api_diff/14/changes/java.net.SocketPermission.html
+http://developer.android.com/sdk/api_diff/14/changes/java.security.Permission.html
+http://developer.android.com/sdk/api_diff/14/changes/java.security.UnresolvedPermission.html
+http://developer.android.com/sdk/api_diff/14/changes/javax.security.auth.PrivateCredentialPermission.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.FloatEvaluator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.IntEvaluator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.TypeEvaluator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.ExpandableListView.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.PackageStats.html
+http://developer.android.com/sdk/api_diff/14/changes/android.speech.RecognizerIntent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.preference.PreferenceActivity.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.SearchManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.net.wifi.WifiManager.html
+http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.Field.html
+http://developer.android.com/sdk/api_diff/14/changes/dalvik.system.PathClassLoader.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.WindowManager.LayoutParams.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.ServiceInfo.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Script.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.WallpaperManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.Fragment.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.FragmentManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.FragmentManager.BackStackEntry.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.FrameLayout.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.Surface.html
+http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.Method.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.OverScroller.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.Scroller.html
+http://developer.android.com/sdk/api_diff/14/changes/android.database.sqlite.SQLiteOpenHelper.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.inputmethod.InputMethodSubtype.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.LinearLayout.html
+http://developer.android.com/sdk/api_diff/14/changes/android.opengl.GLUtils.html
+http://developer.android.com/sdk/api_diff/14/changes/android.speech.tts.TextToSpeech.html
+http://developer.android.com/sdk/api_diff/14/changes/android.graphics.Paint.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.inputmethod.InputMethodManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Looper.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.IsoDep.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.MifareClassic.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.MifareUltralight.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcA.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcB.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcF.html
+http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcV.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Handler.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.TextView.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.SyncAdapterType.html
+http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/14/changes/android.graphics.SurfaceTexture.html
+http://developer.android.com/sdk/api_diff/14/changes/android.preference.Preference.html
+http://developer.android.com/sdk/api_diff/14/changes/android.net.http.SslError.html
+http://developer.android.com/sdk/api_diff/14/changes/java.util.logging.Handler.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewConfiguration.html
+http://developer.android.com/sdk/api_diff/14/changes/android.R.color.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.PopupMenu.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.InputDevice.html
+http://developer.android.com/sdk/api_diff/14/changes/android.inputmethodservice.InputMethodService.html
+http://developer.android.com/sdk/api_diff/14/changes/android.inputmethodservice.InputMethodService.InputMethodSessionImpl.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.inputmethod.InputMethodSession.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Int2.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Int3.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Int4.html
+http://developer.android.com/sdk/api_diff/14/changes/android.speech.tts.TextToSpeech.Engine.html
+http://developer.android.com/sdk/api_diff/14/changes/android.content.IntentSender.html
+http://developer.android.com/sdk/api_diff/14/changes/android.text.Layout.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.io.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.lang.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.lang.ref.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.lang.reflect.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.net.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.security.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_java.util.logging.html
+http://developer.android.com/sdk/api_diff/14/changes/pkg_javax.security.auth.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.LayoutTransition.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.LiveFolders.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Long2.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Long3.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Long4.html
+http://developer.android.com/sdk/api_diff/14/changes/android.opengl.Matrix.html
+http://developer.android.com/sdk/api_diff/14/changes/android.media.MediaMetadataRetriever.html
+http://developer.android.com/sdk/api_diff/14/changes/android.media.MediaPlayer.html
+http://developer.android.com/sdk/api_diff/14/changes/android.media.MediaRecorder.html
+http://developer.android.com/sdk/api_diff/14/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.Notification.Builder.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.ObjectAnimator.html
+http://developer.android.com/sdk/api_diff/14/changes/android.animation.PropertyValuesHolder.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.SearchView.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewGroup.html
+http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebChromeClient.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.Service.html
+http://developer.android.com/sdk/api_diff/14/changes/android.util.Patterns.html
+http://developer.android.com/sdk/api_diff/14/changes/android.app.PendingIntent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.Process.html
+http://developer.android.com/sdk/api_diff/14/changes/android.R.integer.html
+http://developer.android.com/sdk/api_diff/14/changes/android.R.string.html
+http://developer.android.com/sdk/api_diff/14/changes/android.provider.Settings.System.html
+http://developer.android.com/sdk/api_diff/14/changes/android.os.RecoverySystem.html
+http://developer.android.com/sdk/api_diff/14/changes/android.graphics.RectF.html
+http://developer.android.com/sdk/api_diff/14/changes/java.lang.ref.ReferenceQueue.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.RenderScriptGL.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewParent.html
+http://developer.android.com/sdk/api_diff/14/changes/android.hardware.Sensor.html
+http://developer.android.com/sdk/api_diff/14/changes/android.view.Window.html
+http://developer.android.com/sdk/api_diff/14/changes/android.net.SSLCertificateSocketFactory.html
+http://developer.android.com/sdk/api_diff/14/changes/android.database.sqlite.SQLiteQueryBuilder.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Short2.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Short3.html
+http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Short4.html
+http://developer.android.com/sdk/api_diff/14/changes/android.widget.StackView.html
+http://developer.android.com/sdk/api_diff/14/changes/dalvik.annotation.TestTarget.html
+http://developer.android.com/sdk/api_diff/14/changes/dalvik.annotation.TestTargetClass.html
+http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebSettings.TextSize.html
+http://developer.android.com/sdk/api_diff/4/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/4/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/4/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.File.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.IOException.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.ObjectStreamClass.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.PipedInputStream.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.PipedReader.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.PrintStream.html
+http://developer.android.com/sdk/api_diff/9/changes/java.io.PrintWriter.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.AvoidXfermode.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.PixelFormat.html
+http://developer.android.com/sdk/api_diff/16/changes/android.graphics.PixelXorXfermode.html
+http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Camera.Parameters.html
+http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Sensor.html
+http://developer.android.com/sdk/api_diff/9/changes/android.hardware.SensorManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.AttendeesColumns.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.EventsColumns.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.RemindersColumns.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.CommonDataKinds.Phone.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.DataUsageFeedback.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.PhoneLookupColumns.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.MediaStore.MediaColumns.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.Settings.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.Settings.Secure.html
+http://developer.android.com/sdk/api_diff/16/changes/android.provider.Settings.System.html
+http://developer.android.com/sdk/api_diff/14/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/16/changes/android.speech.RecognizerIntent.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.CookieManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebIconDatabase.html
+http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebView.HitTestResult.html
+http://developer.android.com/sdk/api_diff/9/changes/android.widget.ListView.html
+http://developer.android.com/sdk/api_diff/9/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.AbstractExecutorService.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ConcurrentHashMap.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ExecutorService.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.Executors.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.FutureTask.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ScheduledThreadPoolExecutor.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ThreadPoolExecutor.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.TimeUnit.html
+http://developer.android.com/sdk/api_diff/16/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/16/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/16/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/13/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/13/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/13/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.inputmethod.BaseInputConnection.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.inputmethod.InputConnection.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.inputmethod.InputConnectionWrapper.html
+http://developer.android.com/sdk/api_diff/9/changes/android.app.admin.DevicePolicyManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/9/changes/java.nio.Buffer.html
+http://developer.android.com/sdk/api_diff/16/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/16/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/16/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaRecorder.OutputFormat.html
+http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaRecorder.AudioEncoder.html
+http://developer.android.com/sdk/api_diff/16/changes/android.security.KeyChain.html
+http://developer.android.com/sdk/api_diff/16/changes/android.util.DisplayMetrics.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.GridLayout.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.ServiceInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.inputmethod.EditorInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/16/changes/android.os.Process.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.PermissionInfo.html
+http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.PackageInfo.html
+http://developer.android.com/sdk/api_diff/7/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/7/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/7/changes/android.app.WallpaperManager.html
+http://developer.android.com/sdk/api_diff/7/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/7/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/7/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/7/changes/android.webkit.GeolocationPermissions.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/7/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/7/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/7/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/7/changes/android.webkit.CacheManager.CacheResult.html
+http://developer.android.com/sdk/api_diff/7/changes/android.media.MediaRecorder.AudioSource.html
+http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebStorage.html
+http://developer.android.com/sdk/api_diff/7/changes/android.graphics.Rect.html
+http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebView.html
+http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebChromeClient.html
+http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/7/changes/android.widget.ViewFlipper.html
+http://developer.android.com/sdk/api_diff/7/changes/android.view.ViewGroup.html
+http://developer.android.com/sdk/api_diff/7/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/7/changes/android.os.PowerManager.html
+http://developer.android.com/sdk/api_diff/7/changes/android.telephony.PhoneStateListener.html
+http://developer.android.com/sdk/api_diff/7/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/7/changes/android.telephony.NeighboringCellInfo.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.HandshakeCompletedEvent.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.KeyStoreBuilderParameters.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLContext.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLContextSpi.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLEngine.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLSessionBindingEvent.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLSessionContext.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLSocket.html
+http://developer.android.com/sdk/api_diff/9/changes/android.provider.ContactsContract.CommonDataKinds.Nickname.html
+http://developer.android.com/sdk/api_diff/9/changes/android.provider.MediaStore.html
+http://developer.android.com/sdk/api_diff/9/changes/android.provider.Settings.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicBoolean.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicInteger.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicIntegerArray.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicIntegerFieldUpdater.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicLong.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicLongArray.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicLongFieldUpdater.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicReference.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicReferenceArray.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicReferenceFieldUpdater.html
+http://developer.android.com/sdk/api_diff/11/changes/constructors_index_removals.html
+http://developer.android.com/sdk/api_diff/11/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/11/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/7/changes/jdiff_statistics.html
+http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/package-tree.html
+http://developer.android.com/guide/google/gcm/client-javadoc/deprecated-list.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index-all.html
+http://developer.android.com/guide/google/gcm/client-javadoc/help-doc.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/package-summary.html
+http://developer.android.com/guide/google/gcm/client-javadoc/allclasses-noframe.html
+http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBaseIntentService.html
+http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBroadcastReceiver.html
+http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMConstants.html
+http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMRegistrar.html
+http://developer.android.com/sdk/api_diff/9/changes/dalvik.system.PathClassLoader.html
+http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.AbstractOwnableSynchronizer.html
+http://developer.android.com/sdk/api_diff/9/changes/java.security.AccessController.html
+http://developer.android.com/sdk/api_diff/9/changes/android.location.Criteria.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.MotionEvent.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.sql.PooledConnection.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.Calendar.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.reflect.Array.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.Array.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.Arrays.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.Collections.html
+http://developer.android.com/sdk/api_diff/9/changes/android.media.AudioTrack.html
+http://developer.android.com/sdk/api_diff/9/changes/android.media.MediaPlayer.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.DatabaseMetaData.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.BatchUpdateException.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.Blob.html
+http://developer.android.com/sdk/api_diff/9/changes/java.text.BreakIterator.html
+http://developer.android.com/sdk/api_diff/9/changes/android.os.Build.html
+http://developer.android.com/sdk/api_diff/9/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.CallableStatement.html
+http://developer.android.com/sdk/api_diff/9/changes/android.media.CamcorderProfile.html
+http://developer.android.com/sdk/api_diff/9/changes/android.media.CameraProfile.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.TreeSet.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.TreeMap.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.Class.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.ResourceBundle.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.Clob.html
+http://developer.android.com/sdk/api_diff/9/changes/java.text.CollationKey.html
+http://developer.android.com/sdk/api_diff/9/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.Connection.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.sql.ConnectionPoolDataSource.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.System.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.Math.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.StrictMath.html
+http://developer.android.com/sdk/api_diff/9/changes/android.os.ParcelFileDescriptor.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.sql.DataSource.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.DataTruncation.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.xml.datatype.DatatypeFactory.html
+http://developer.android.com/sdk/api_diff/9/changes/java.text.DateFormatSymbols.html
+http://developer.android.com/sdk/api_diff/9/changes/android.text.format.DateUtils.html
+http://developer.android.com/sdk/api_diff/9/changes/java.text.DecimalFormatSymbols.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.LinkedList.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.security.auth.Subject.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.xml.parsers.DocumentBuilderFactory.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.Double.html
+http://developer.android.com/sdk/api_diff/9/changes/android.os.DropBoxManager.Entry.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.Enum.html
+http://developer.android.com/sdk/api_diff/9/changes/android.os.Environment.html
+http://developer.android.com/sdk/api_diff/9/changes/android.media.ExifInterface.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.Float.html
+http://developer.android.com/sdk/api_diff/9/changes/java.text.Format.html
+http://developer.android.com/sdk/api_diff/9/changes/android.location.Geocoder.html
+http://developer.android.com/sdk/api_diff/9/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.Package.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.LockSupport.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.String.html
+http://developer.android.com/sdk/api_diff/9/changes/java.lang.reflect.Member.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/9/changes/java.net.NetworkInterface.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.ResultSet.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock.html
+http://developer.android.com/sdk/api_diff/9/changes/java.security.Policy.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.security.auth.x500.X500Principal.html
+http://developer.android.com/sdk/api_diff/9/changes/java.net.SocketImpl.html
+http://developer.android.com/sdk/api_diff/9/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/9/changes/android.telephony.gsm.GsmCellLocation.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.ReentrantReadWriteLock.html
+http://developer.android.com/sdk/api_diff/9/changes/java.text.NumberFormat.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.ViewConfiguration.html
+http://developer.android.com/sdk/api_diff/9/changes/android.opengl.GLES20.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.logging.Logger.html
+http://developer.android.com/sdk/api_diff/9/changes/android.graphics.ImageFormat.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.Statement.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLException.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.Properties.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.Locale.html
+http://developer.android.com/sdk/api_diff/9/changes/android.location.LocationManager.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.Types.html
+http://developer.android.com/sdk/api_diff/9/changes/android.media.MediaRecorder.html
+http://developer.android.com/sdk/api_diff/9/changes/android.telephony.TelephonyManager.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.xml.parsers.SAXParserFactory.html
+http://developer.android.com/sdk/api_diff/9/changes/android.service.wallpaper.WallpaperService.Engine.html
+http://developer.android.com/sdk/api_diff/9/changes/dalvik.bytecode.Opcodes.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.ParameterMetaData.html
+http://developer.android.com/sdk/api_diff/9/changes/android.os.PowerManager.WakeLock.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.PreparedStatement.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.PropertyResourceBundle.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLInput.html
+http://developer.android.com/sdk/api_diff/9/changes/java.util.Scanner.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.ResultSetMetaData.html
+http://developer.android.com/sdk/api_diff/9/changes/javax.sql.RowSet.html
+http://developer.android.com/sdk/api_diff/9/changes/android.net.wifi.WifiManager.WifiLock.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLOutput.html
+http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLWarning.html
+http://developer.android.com/sdk/api_diff/9/changes/android.view.Window.html
+http://developer.android.com/sdk/api_diff/9/changes/java.security.UnrecoverableKeyException.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.AdapterViewAnimator.html
+http://developer.android.com/sdk/api_diff/16/changes/android.widget.Gallery.html
+http://developer.android.com/guide/google/gcm/client-javadoc/overview-tree.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?deprecated-list.html
+http://developer.android.com/sdk/api_diff/13/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/13/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/13/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/13/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/13/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/16/changes/android.test.AssertionFailedError.html
+http://developer.android.com/sdk/api_diff/16/changes/junit.framework.AssertionFailedError.html
+http://developer.android.com/sdk/api_diff/16/changes/android.test.ComparisonFailure.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.FileA3D.EntryType.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Font.Style.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.Primitive.html
+http://developer.android.com/sdk/api_diff/16/changes/android.os.ParcelFileDescriptor.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.EnvMode.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.Format.html
+http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.CullMode.html
+http://developer.android.com/sdk/api_diff/16/changes/android.hardware.SensorManager.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQuery.html
+http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteStatement.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewDebug.HierarchyTraceType.html
+http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewDebug.RecyclerTraceType.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMConstants.html
+http://developer.android.com/guide/google/gcm/client-javadoc/constant-values.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentRetainInstance.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMBroadcastReceiver.html
+http://developer.android.com/sdk/api_diff/13/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/13/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.ActivityGroup.html
+http://developer.android.com/sdk/api_diff/13/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/13/changes/android.content.pm.ApplicationInfo.html
+http://developer.android.com/sdk/api_diff/13/changes/android.os.Binder.html
+http://developer.android.com/sdk/api_diff/13/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/13/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/13/changes/android.net.ConnectivityManager.html
+http://developer.android.com/sdk/api_diff/13/changes/android.view.Display.html
+http://developer.android.com/sdk/api_diff/13/changes/android.util.DisplayMetrics.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.Fragment.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.FragmentManager.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.FragmentTransaction.html
+http://developer.android.com/sdk/api_diff/13/changes/android.os.IBinder.html
+http://developer.android.com/sdk/api_diff/13/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.KeyguardManager.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.KeyguardManager.KeyguardLock.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.LocalActivityManager.html
+http://developer.android.com/sdk/api_diff/13/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/13/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/13/changes/android.os.ParcelFileDescriptor.html
+http://developer.android.com/sdk/api_diff/13/changes/android.graphics.Point.html
+http://developer.android.com/sdk/api_diff/13/changes/android.graphics.PointF.html
+http://developer.android.com/sdk/api_diff/13/changes/android.os.PowerManager.html
+http://developer.android.com/sdk/api_diff/13/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/13/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/13/changes/android.app.TabActivity.html
+http://developer.android.com/sdk/api_diff/13/changes/android.telephony.TelephonyManager.html
+http://developer.android.com/sdk/api_diff/13/changes/android.hardware.usb.UsbDeviceConnection.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?constant-values.html
+http://developer.android.com/sdk/api_diff/13/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/15/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/15/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/15/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/13/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/13/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.hardware.usb.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.net.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/13/changes/pkg_android.view.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/package-tree.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerService.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?index-all.html
+http://developer.android.com/sdk/api_diff/4/changes/classes_index_removals.html
+http://developer.android.com/sdk/api_diff/4/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/4/changes/classes_index_changes.html
+http://developer.android.com/guide/appendix/api-levels.html
+http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/SearchViewFilterMode.html
+http://developer.android.com/shareables/search_icons.zip
+http://developer.android.com/resources/samples/SearchableDictionary/src/com/example/android/searchabledict/SearchableDictionary.html
+http://developer.android.com/sdk/api_diff/6/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/6/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/6/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/10/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/14/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/14/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/14/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/14/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/14/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/10/changes/classes_index_changes.html
+http://developer.android.com/tools/help/sqlite3.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-tree.html
+http://developer.android.com/guide/google/gcm/server-javadoc/deprecated-list.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index-all.html
+http://developer.android.com/guide/google/gcm/server-javadoc/help-doc.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/package-summary.html
+http://developer.android.com/guide/google/gcm/server-javadoc/allclasses-noframe.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Constants.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.Builder.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/MulticastResult.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Result.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Sender.html
+http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/InvalidRequestException.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMRegistrar.html
+http://developer.android.com/sdk/api_diff/16/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/16/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/9/changes/fields_index_all.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/InvalidRequestException.html
+http://developer.android.com/guide/google/gcm/server-javadoc/serialized-form.html
+http://developer.android.com/sdk/api_diff/6/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/6/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/6/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/6/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/6/changes/fields_index_all.html
+http://developer.android.com/guide/google/gcm/server-javadoc/overview-tree.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?help-doc.html
+http://developer.android.com/guide/google/gcm/server-javadoc/constant-values.html
+http://developer.android.com/sdk/api_diff/11/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/11/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/9/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/6/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/6/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/6/changes/android.accounts.AbstractAccountAuthenticator.html
+http://developer.android.com/sdk/api_diff/6/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/6/changes/pkg_android.accounts.html
+http://developer.android.com/sdk/api_diff/6/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/6/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/6/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/6/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/6/changes/android.view.WindowManager.LayoutParams.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/package-tree.html
+http://developer.android.com/sdk/api_diff/14/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/14/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/14/changes/methods_index_changes.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/MulticastResult.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMBaseIntentService.html
+http://developer.android.com/sdk/api_diff/6/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/9/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/9/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/15/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/15/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/15/changes/android.provider.Settings.Secure.html
+http://developer.android.com/sdk/api_diff/15/changes/android.view.accessibility.AccessibilityRecord.html
+http://developer.android.com/sdk/api_diff/15/changes/android.bluetooth.BluetoothDevice.html
+http://developer.android.com/sdk/api_diff/15/changes/android.provider.CalendarContract.CalendarColumns.html
 http://developer.android.com/sdk/api_diff/15/changes/pkg_android.html
 http://developer.android.com/sdk/api_diff/15/changes/pkg_android.app.html
 http://developer.android.com/sdk/api_diff/15/changes/pkg_android.appwidget.html
@@ -4134,499 +5578,658 @@
 http://developer.android.com/sdk/api_diff/15/changes/pkg_android.view.textservice.html
 http://developer.android.com/sdk/api_diff/15/changes/pkg_android.webkit.html
 http://developer.android.com/sdk/api_diff/15/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/14/changes.html
-http://developer.android.com/sdk/api_diff/12/changes.html
-http://developer.android.com/about/versions/android-3.1-highlights.html
-http://developer.android.com/about/versions/android-2.3.html
-http://developer.android.com/sdk/api_diff/9/changes.html
-http://developer.android.com/about/versions/android-2.2.html
-http://developer.android.com/sdk/api_diff/8/changes.html
-http://developer.android.com/about/versions/android-2.2-highlights.html
-http://developer.android.com/about/versions/android-2.1.html
-http://developer.android.com/sdk/api_diff/7/changes.html
-http://developer.android.com/about/versions/android-2.0-highlights.html
-http://developer.android.com/about/versions/android-2.0.1.html
-http://developer.android.com/sdk/api_diff/6/changes.html
-http://developer.android.com/about/versions/android-2.0.html
-http://developer.android.com/sdk/api_diff/5/changes.html
-http://developer.android.com/about/versions/android-1.6.html
-http://developer.android.com/sdk/api_diff/4/changes.html
-http://developer.android.com/about/versions/android-1.6-highlights.html
-http://developer.android.com/about/versions/android-1.5.html
-http://developer.android.com/sdk/api_diff/3/changes.html
-http://developer.android.com/about/versions/android-1.5-highlights.html
-http://developer.android.com/about/versions/android-1.1.html
-http://developer.android.com/sdk/api_diff/10/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.bluetooth.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.nfc.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.speech.html
-http://developer.android.com/sdk/api_diff/10/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/15/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/15/changes/android.os.IBinder.html
-http://developer.android.com/sdk/api_diff/15/changes/android.os.RemoteException.html
-http://developer.android.com/sdk/api_diff/15/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/15/changes/android.view.View.html
-http://developer.android.com/resources/samples/WiFiDirectDemo/index.html
-http://developer.android.com/sdk/api_diff/15/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/15/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/15/changes/android.view.accessibility.AccessibilityRecord.html
 http://developer.android.com/sdk/api_diff/15/changes/android.appwidget.AppWidgetHostView.html
-http://developer.android.com/sdk/api_diff/15/changes/android.bluetooth.BluetoothDevice.html
-http://developer.android.com/sdk/api_diff/15/changes/android.provider.CalendarContract.AttendeesColumns.html
-http://developer.android.com/sdk/api_diff/15/changes/android.provider.CalendarContract.CalendarColumns.html
 http://developer.android.com/sdk/api_diff/15/changes/android.provider.CalendarContract.EventsColumns.html
+http://developer.android.com/sdk/api_diff/15/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/15/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/15/changes/android.provider.CalendarContract.AttendeesColumns.html
+http://developer.android.com/sdk/api_diff/15/changes/android.view.View.html
 http://developer.android.com/sdk/api_diff/15/changes/android.media.CamcorderProfile.html
 http://developer.android.com/sdk/api_diff/15/changes/android.hardware.Camera.Parameters.html
-http://developer.android.com/sdk/api_diff/15/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/15/changes/android.database.CursorWindow.html
-http://developer.android.com/sdk/api_diff/15/changes/android.app.Fragment.html
-http://developer.android.com/sdk/api_diff/15/changes/android.opengl.GLES11Ext.html
+http://developer.android.com/sdk/api_diff/15/changes/android.view.textservice.SpellCheckerSession.html
 http://developer.android.com/sdk/api_diff/15/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/15/changes/android.database.CursorWindow.html
+http://developer.android.com/sdk/api_diff/15/changes/android.text.style.SuggestionSpan.html
+http://developer.android.com/sdk/api_diff/15/changes/android.app.Fragment.html
+http://developer.android.com/sdk/api_diff/15/changes/android.speech.tts.TextToSpeech.html
+http://developer.android.com/sdk/api_diff/15/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/15/changes/android.opengl.GLES11Ext.html
+http://developer.android.com/sdk/api_diff/15/changes/android.os.IBinder.html
+http://developer.android.com/sdk/api_diff/15/changes/android.provider.MediaStore.html
+http://developer.android.com/sdk/api_diff/15/changes/android.speech.tts.TextToSpeech.Engine.html
+http://developer.android.com/sdk/api_diff/15/changes/android.view.KeyEvent.html
 http://developer.android.com/sdk/api_diff/15/changes/android.Manifest.permission.html
 http://developer.android.com/sdk/api_diff/15/changes/android.media.MediaMetadataRetriever.html
-http://developer.android.com/sdk/api_diff/15/changes/android.provider.MediaStore.html
-http://developer.android.com/sdk/api_diff/15/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/15/changes/android.provider.Settings.Secure.html
 http://developer.android.com/sdk/api_diff/15/changes/android.service.textservice.SpellCheckerService.Session.html
-http://developer.android.com/sdk/api_diff/15/changes/android.view.textservice.SpellCheckerSession.html
-http://developer.android.com/sdk/api_diff/15/changes/android.view.textservice.SuggestionsInfo.html
-http://developer.android.com/sdk/api_diff/15/changes/android.text.style.SuggestionSpan.html
-http://developer.android.com/sdk/api_diff/15/changes/android.graphics.SurfaceTexture.html
-http://developer.android.com/sdk/api_diff/15/changes/android.speech.tts.TextToSpeech.html
-http://developer.android.com/sdk/api_diff/15/changes/android.speech.tts.TextToSpeech.Engine.html
 http://developer.android.com/sdk/api_diff/15/changes/android.speech.tts.TextToSpeechService.html
+http://developer.android.com/sdk/api_diff/15/changes/android.os.RemoteException.html
+http://developer.android.com/sdk/api_diff/15/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/15/changes/android.view.textservice.SuggestionsInfo.html
+http://developer.android.com/sdk/api_diff/15/changes/android.graphics.SurfaceTexture.html
 http://developer.android.com/sdk/api_diff/15/changes/android.service.wallpaper.WallpaperService.Engine.html
-http://developer.android.com/sdk/api_diff/15/changes/android.webkit.WebSettings.html
 http://developer.android.com/sdk/api_diff/15/changes/android.webkit.WebSettings.LayoutAlgorithm.html
-http://developer.android.com/resources/tutorials/views/index.html
-http://developer.android.com/guide/topics/ui/layout/grid.html
-http://developer.android.com/resources/community-groups.html
-http://developer.android.com/tools/sdk/ndk/overview.html
-http://developer.android.com/resources/tutorials/views/hello-spinner.html
-http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/11/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/11/changes/android.test.mock.MockCursor.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.AbsListView.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.AbstractCursor.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.AbstractThreadedSyncAdapter.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.AbstractWindowedCursor.html
-http://developer.android.com/sdk/api_diff/11/changes/android.accounts.AccountManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.bluetooth.BluetoothAdapter.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.DropBoxManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.Settings.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.admin.DeviceAdminReceiver.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.admin.DevicePolicyManager.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.ActivityManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.ActivityManager.RecentTaskInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.Deque.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.Queue.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.ArrayAdapter.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/11/changes/android.preference.PreferenceActivity.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.CommonDataKinds.Email.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.RawContacts.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.AlarmClock.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.AlertDialog.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.AlertDialog.Builder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.SyncAdapterType.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.DownloadManager.Request.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.accounts.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.app.admin.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.appwidget.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.bluetooth.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.database.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.database.sqlite.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.graphics.drawable.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.inputmethodservice.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.net.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.opengl.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.preference.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.speech.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.speech.tts.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.test.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.text.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.text.format.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.text.method.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.view.animation.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.view.inputmethod.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/11/changes/android.util.AndroidException.html
-http://developer.android.com/sdk/api_diff/11/changes/android.util.AndroidRuntimeException.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.animation.Animation.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.DatabaseUtils.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.ApplicationInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.appwidget.AppWidgetHost.html
-http://developer.android.com/sdk/api_diff/11/changes/android.appwidget.AppWidgetManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.appwidget.AppWidgetProviderInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.method.ArrowKeyMovementMethod.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.AsyncTask.html
-http://developer.android.com/sdk/api_diff/11/changes/android.media.AudioManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.accounts.AuthenticatorDescription.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.GroupsColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.Settings.System.html
-http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.InputMethodService.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.BaseInputConnection.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.method.BaseKeyListener.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.BatteryManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteDatabase.html
-http://developer.android.com/sdk/api_diff/11/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteProgram.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.BitmapFactory.Options.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.BroadcastReceiver.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.Browser.SearchColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteQueryBuilder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.KeyCharacterMap.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.Bundle.html
-http://developer.android.com/sdk/api_diff/11/changes/android.webkit.CacheManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.webkit.CacheManager.CacheResult.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentProvider.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentResolver.html
-http://developer.android.com/sdk/api_diff/11/changes/android.media.CamcorderProfile.html
-http://developer.android.com/sdk/api_diff/11/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/11/changes/android.hardware.Camera.Parameters.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.method.ScrollingMovementMethod.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.Canvas.html
-http://developer.android.com/sdk/api_diff/11/changes/android.webkit.WebView.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.StatusColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.InputMethodService.InputMethodImpl.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputMethod.html
-http://developer.android.com/sdk/api_diff/11/changes/java.lang.Character.UnicodeBlock.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.ListView.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.ResourceBundle.html
-http://developer.android.com/sdk/api_diff/11/changes/android.net.Uri.Builder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.ClipboardManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.ColorDrawable.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.DownloadManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.WallpaperManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputConnection.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputConnectionWrapper.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.ComponentInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.DrawableContainer.DrawableContainerState.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.ContactStatusColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.CommonDataKinds.Relation.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Contacts.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Contacts.AggregationSuggestions.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Contacts.Photo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.ContactsColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.DataColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.DataColumnsWithJoins.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.Intents.Insert.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.ContactsContract.RawContactsColumns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentProviderClient.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.ContentValues.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.ContextWrapper.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.Cursor.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.CursorAdapter.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.CursorWindow.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.CursorWrapper.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_dalvik.bytecode.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.DatePicker.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.DatePickerDialog.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.Debug.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.SyncInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.StrictMode.VmPolicy.Builder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.StrictMode.ThreadPolicy.Builder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.admin.DeviceAdminInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.Dialog.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.drawable.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.dimen.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.Window.Callback.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.ViewGroup.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.Drawable.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.DrawableContainer.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.EditorInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.Environment.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteStatement.html
-http://developer.android.com/sdk/api_diff/11/changes/android.media.ExifInterface.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.PackageStats.html
-http://developer.android.com/sdk/api_diff/11/changes/android.speech.RecognizerIntent.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.Window.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.WindowManager.LayoutParams.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.Notification.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.SearchManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.MenuItem.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.PendingIntent.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.ImageView.html
-http://developer.android.com/sdk/api_diff/11/changes/android.net.Uri.html
-http://developer.android.com/sdk/api_diff/11/changes/java.lang.Object.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.MediaStore.Audio.Genres.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.ResourceBundle.Control.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputMethodManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.ScaleGestureDetector.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.TextView.html
-http://developer.android.com/sdk/api_diff/11/changes/android.net.Proxy.html
-http://developer.android.com/sdk/api_diff/11/changes/android.preference.Preference.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.LayoutInflater.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.method.QwertyKeyListener.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.animation.Interpolator.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.Locale.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.format.Time.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.GridView.html
-http://developer.android.com/sdk/api_diff/11/changes/android.test.mock.MockContext.html
-http://developer.android.com/sdk/api_diff/11/changes/android.opengl.GLSurfaceView.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.LinearLayout.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.SharedPreferences.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.inputmethod.InputMethodInfo.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.SpannableStringBuilder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.Vibrator.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.NavigableMap.html
-http://developer.android.com/sdk/api_diff/11/changes/java.util.NavigableSet.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.id.html
-http://developer.android.com/sdk/api_diff/11/changes/android.provider.Settings.Secure.html
-http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.InputMethodService.Insets.html
-http://developer.android.com/sdk/api_diff/11/changes/android.text.InputType.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.PopupWindow.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_java.lang.html
-http://developer.android.com/sdk/api_diff/11/changes/pkg_java.util.html
-http://developer.android.com/sdk/api_diff/11/changes/android.speech.tts.TextToSpeech.Engine.html
-http://developer.android.com/sdk/api_diff/11/changes/android.inputmethodservice.Keyboard.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.KeyCharacterMap.KeyData.html
-http://developer.android.com/sdk/api_diff/11/changes/android.graphics.drawable.LayerDrawable.html
-http://developer.android.com/sdk/api_diff/11/changes/android.hardware.SensorManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.layout.html
-http://developer.android.com/sdk/api_diff/11/changes/android.media.MediaRecorder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.media.MediaRecorder.AudioSource.html
-http://developer.android.com/sdk/api_diff/11/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.Spinner.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.MotionEvent.html
-http://developer.android.com/sdk/api_diff/11/changes/android.telephony.TelephonyManager.html
-http://developer.android.com/sdk/api_diff/11/changes/android.os.StrictMode.html
-http://developer.android.com/sdk/api_diff/11/changes/android.util.StateSet.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteOpenHelper.html
-http://developer.android.com/sdk/api_diff/11/changes/dalvik.bytecode.Opcodes.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.OverScroller.html
-http://developer.android.com/sdk/api_diff/11/changes/android.util.Patterns.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.ProgressDialog.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.Surface.html
-http://developer.android.com/sdk/api_diff/11/changes/android.content.SharedPreferences.Editor.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.QuickContactBadge.html
-http://developer.android.com/sdk/api_diff/11/changes/android.R.string.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/11/changes/android.util.SparseArray.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.ResourceCursorAdapter.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.Scroller.html
-http://developer.android.com/sdk/api_diff/11/changes/android.app.Service.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.TabWidget.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.SurfaceHolder.html
-http://developer.android.com/sdk/api_diff/11/changes/android.webkit.WebViewClient.html
-http://developer.android.com/sdk/api_diff/11/changes/android.widget.SimpleCursorAdapter.html
-http://developer.android.com/sdk/api_diff/11/changes/android.database.sqlite.SQLiteCursor.html
-http://developer.android.com/sdk/api_diff/11/changes/android.view.ViewParent.html
-http://developer.android.com/resources/samples/RenderScript/HelloCompute/index.html
-http://developer.android.com/resources/samples/RenderScript/HelloCompute/src/com/example/android/rs/hellocompute/mono.html
-http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NotePadProvider.html
-http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NotePad.html
-http://developer.android.com/sdk/api_diff/11/changes/jdiff_statistics.html
-http://developer.android.com/training/tutorials/views/index.html
-http://developer.android.com/reference/renderscript/structrs__tm.html
-http://developer.android.com/reference/renderscript/rs__sampler_8rsh.html
-http://developer.android.com/reference/renderscript/rs__math_8rsh.html
-http://developer.android.com/reference/renderscript/rs__cl_8rsh.html
-http://developer.android.com/resources/tutorials/views/hello-tablelayout.html
-http://developer.android.com/sdk/api_diff/7/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/7/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/changes-summary.html
-http://developer.android.com/resources/browser.html?tag=sample
-http://developer.android.com/reference/renderscript/rs__time_8rsh.html
-http://developer.android.com/tools/help/sqlite3.html
-http://developer.android.com/guide/developing/tools/draw9patch.html
-http://developer.android.com/sdk/api_diff/7/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/7/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/10/changes/android.nfc.NfcAdapter.html
-http://developer.android.com/sdk/api_diff/10/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/resources/tutorials/views/hello-gridview.html
-http://developer.android.com/sdk/api_diff/13/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/13/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.ActivityGroup.html
-http://developer.android.com/sdk/api_diff/13/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/13/changes/android.os.ParcelFileDescriptor.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.hardware.usb.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.net.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/13/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/13/changes/android.content.pm.ApplicationInfo.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.FragmentTransaction.html
-http://developer.android.com/sdk/api_diff/13/changes/android.os.Binder.html
-http://developer.android.com/sdk/api_diff/13/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/13/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/13/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/13/changes/android.net.ConnectivityManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.graphics.Point.html
-http://developer.android.com/sdk/api_diff/13/changes/android.graphics.PointF.html
-http://developer.android.com/sdk/api_diff/13/changes/android.util.DisplayMetrics.html
-http://developer.android.com/sdk/api_diff/13/changes/android.view.Display.html
-http://developer.android.com/sdk/api_diff/13/changes/android.os.IBinder.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.KeyguardManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.Fragment.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.FragmentManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/13/changes/android.hardware.usb.UsbDeviceConnection.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.KeyguardManager.KeyguardLock.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.LocalActivityManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/13/changes/android.telephony.TelephonyManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.os.PowerManager.html
-http://developer.android.com/sdk/api_diff/13/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/13/changes/android.app.TabActivity.html
-http://developer.android.com/reference/renderscript/rs__element_8rsh.html
-http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBaseIntentService.html
-http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMBroadcastReceiver.html
-http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMConstants.html
-http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/GCMRegistrar.html
-http://developer.android.com/sdk/api_diff/13/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/7/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/7/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/7/changes/android.R.attr.html
-http://developer.android.com/guide/faq/framework.html
-http://developer.android.com/guide/faq/licensingandoss.html
-http://developer.android.com/guide/faq/security.html
-http://developer.android.com/sdk/api_diff/7/changes/android.content.Intent.html
-http://developer.android.com/reference/renderscript/rs__allocation_8rsh.html
-http://developer.android.com/sdk/api_diff/10/changes/android.bluetooth.BluetoothAdapter.html
-http://developer.android.com/sdk/api_diff/10/changes/android.bluetooth.BluetoothDevice.html
-http://developer.android.com/sdk/api_diff/12/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/12/changes/changes-summary.html
-http://developer.android.com/sdk/api_diff/8/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/8/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/8/changes/changes-summary.html
-http://developer.android.com/guide/topics/usb/index.html
-http://developer.android.com/guide/topics/testing/provider_testing.html
-http://developer.android.com/guide/practices/optimizing-for-3.0.html
-http://developer.android.com/shareables/training/DeviceManagement.zip
-http://developer.android.com/resources/samples/USB/AdbTest/index.html
-http://developer.android.com/resources/samples/USB/MissileLauncher/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/GameControllerInput.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/GameView.html
-http://developer.android.com/sdk/api_diff/16/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/16/changes/changes-summary.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/GLSurfaceViewActivity.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/GLES20Activity.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchRotateActivity.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CompressedTextureActivity.html
-http://developer.android.com/resources/tutorials/opengl/opengl-es10.html
-http://developer.android.com/resources/tutorials/opengl/opengl-es20.html
-http://developer.android.com/resources/dashboard/opengl.html
-http://developer.android.com/reference/renderscript/globals_func.html
-http://developer.android.com/reference/renderscript/globals_type.html
-http://developer.android.com/reference/renderscript/globals_enum.html
-http://developer.android.com/reference/renderscript/rs__object_8rsh.html
-http://developer.android.com/reference/renderscript/rs__debug_8rsh.html
-http://developer.android.com/reference/renderscript/rs__graphics_8rsh.html
-http://developer.android.com/reference/renderscript/rs__matrix_8rsh.html
-http://developer.android.com/reference/renderscript/rs__quaternion_8rsh.html
-http://developer.android.com/sdk/api_diff/10/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/guide/developing/device.html
-http://developer.android.com/sdk/adding-components.html
-http://developer.android.com/sdk/api_diff/7/changes/android.webkit.CacheManager.CacheResult.html
-http://developer.android.com/sdk/api_diff/7/changes/android.webkit.GeolocationPermissions.html
-http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebChromeClient.html
-http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebStorage.html
-http://developer.android.com/sdk/api_diff/7/changes/android.webkit.WebView.html
-http://developer.android.com/sdk/ndk/index.html
-http://developer.android.com/sdk/api_diff/10/changes/android.content.Context.html
-http://developer.android.com/guide/google/play/AboutLibraries
-http://developer.android.com/reference/renderscript/rs__atomic_8rsh.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/AudioFxDemo.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/SecureView.html
-http://developer.android.com/sdk/api_diff/8/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/8/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/8/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/8/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/8/changes/fields_index_all.html
-http://developer.android.com/sdk/api_diff/10/changes/android.media.MediaRecorder.AudioEncoder.html
-http://developer.android.com/sdk/api_diff/10/changes/android.media.MediaRecorder.OutputFormat.html
-http://developer.android.com/sdk/api_diff/7/changes/android.graphics.Rect.html
-http://developer.android.com/guide/faq/troubleshooting.html
-http://developer.android.com/sdk/api_diff/7/changes/android.app.WallpaperManager.html
-http://developer.android.com/sdk/api_diff/7/changes/android.media.MediaRecorder.AudioSource.html
-http://developer.android.com/sdk/api_diff/7/changes/android.widget.ViewFlipper.html
-http://developer.android.com/sdk/api_diff/7/changes/android.telephony.PhoneStateListener.html
-http://developer.android.com/sdk/api_diff/7/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/7/changes/android.os.PowerManager.html
-http://developer.android.com/sdk/api_diff/7/changes/android.telephony.NeighboringCellInfo.html
-http://developer.android.com/sdk/api_diff/7/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/7/changes/android.view.ViewGroup.html
-http://developer.android.com/sdk/api_diff/7/changes/android.view.View.html
-http://developer.android.com/resources/samples/Support4Demos/index.html
-http://developer.android.com/resources/samples/Support13Demos/index.html
+http://developer.android.com/sdk/api_diff/14/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/14/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/constructors_index_removals.html
+http://developer.android.com/sdk/api_diff/9/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/constructors_index_changes.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?index-all.html
+http://developer.android.com/sdk/api_diff/15/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/15/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/15/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/15/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/15/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/15/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/10/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/10/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/10/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/classes_index_removals.html
+http://developer.android.com/sdk/api_diff/9/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/14/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/14/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/14/changes/fields_index_changes.html
 http://developer.android.com/sdk/api_diff/5/changes/jdiff_topleftframe.html
 http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_all.html
 http://developer.android.com/sdk/api_diff/5/changes/changes-summary.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?constant-values.html
+http://developer.android.com/sdk/api_diff/15/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/15/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/15/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.SettingsColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.text.style.AbsoluteSizeSpan.html
+http://developer.android.com/sdk/api_diff/5/changes/android.inputmethodservice.AbstractInputMethodService.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_java.util.concurrent.locks.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/5/changes/android.database.AbstractWindowedCursor.html
+http://developer.android.com/sdk/api_diff/5/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/5/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.ContentResolver.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Intents.Insert.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Settings.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.MotionEvent.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.ActivityManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.ActivityManager.RunningAppProcessInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.ActivityManager.RunningServiceInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.location.LocationManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.PluginList.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.ContactMethods.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Settings.System.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.AllocationLimitError.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.database.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.database.sqlite.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.graphics.drawable.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.inputmethodservice.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.location.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.opengl.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.test.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.text.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.text.format.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.text.style.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.view.animation.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/5/changes/android.test.AndroidTestRunner.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.animation.Animation.html
+http://developer.android.com/sdk/api_diff/5/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/5/changes/android.hardware.Camera.Parameters.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.ContentProvider.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Intents.html
+http://developer.android.com/sdk/api_diff/5/changes/android.media.AudioFormat.html
+http://developer.android.com/sdk/api_diff/5/changes/android.media.AudioManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.html
+http://developer.android.com/sdk/api_diff/5/changes/android.widget.AutoCompleteTextView.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.ContactMethodsColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/5/changes/android.os.BatteryManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.database.sqlite.SQLiteDatabase.html
+http://developer.android.com/sdk/api_diff/5/changes/android.graphics.drawable.BitmapDrawable.html
+http://developer.android.com/sdk/api_diff/5/changes/java.util.concurrent.BlockingQueue.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.BroadcastReceiver.html
+http://developer.android.com/sdk/api_diff/5/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.CallbackProxy.html
+http://developer.android.com/sdk/api_diff/5/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.NotificationManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.MediaStore.Images.Thumbnails.html
+http://developer.android.com/sdk/api_diff/5/changes/android.widget.MediaController.MediaPlayerControl.html
+http://developer.android.com/sdk/api_diff/5/changes/android.widget.VideoView.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.OrganizationColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.telephony.PhoneNumberUtils.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Extensions.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.ExtensionsColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.GroupMembership.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Groups.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.GroupsColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Intents.UI.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Organizations.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.ContactMethods.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.Extensions.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.Phones.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PeopleColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Phones.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PhonesColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Photos.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PhotosColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PresenceColumns.html
+http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Settings.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.ContextWrapper.html
+http://developer.android.com/sdk/api_diff/5/changes/android.graphics.drawable.Drawable.html
+http://developer.android.com/sdk/api_diff/5/changes/android.os.Debug.MemoryInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.database.CursorWindow.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_dalvik.system.html
+http://developer.android.com/sdk/api_diff/5/changes/android.database.DatabaseUtils.html
+http://developer.android.com/sdk/api_diff/5/changes/android.text.format.DateUtils.html
+http://developer.android.com/sdk/api_diff/5/changes/android.text.TextPaint.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.Dialog.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.Plugin.html
+http://developer.android.com/sdk/api_diff/5/changes/android.graphics.drawable.Drawable.ConstantState.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ServiceInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebViewClient.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.WindowManager.LayoutParams.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.Notification.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.ViewGroup.html
+http://developer.android.com/sdk/api_diff/5/changes/android.text.format.Formatter.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.PluginData.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/5/changes/android.telephony.NeighboringCellInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.UrlInterceptHandler.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.UrlInterceptRegistry.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebView.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.ViewConfiguration.html
+http://developer.android.com/sdk/api_diff/5/changes/android.widget.SimpleCursorTreeAdapter.html
+http://developer.android.com/sdk/api_diff/5/changes/android.opengl.GLSurfaceView.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.Surface.html
+http://developer.android.com/sdk/api_diff/5/changes/android.os.HandlerThread.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.HapticFeedbackConstants.html
+http://developer.android.com/sdk/api_diff/5/changes/android.telephony.TelephonyManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.test.InstrumentationTestCase.html
+http://developer.android.com/sdk/api_diff/5/changes/android.inputmethodservice.InputMethodService.html
+http://developer.android.com/sdk/api_diff/5/changes/android.text.InputType.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.IntentService.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ProviderInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/pkg_java.util.concurrent.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.KeyEvent.Callback.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.LauncherActivity.html
+http://developer.android.com/sdk/api_diff/5/changes/android.media.MediaPlayer.html
+http://developer.android.com/sdk/api_diff/5/changes/android.test.mock.MockContext.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.Window.Callback.html
+http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebChromeClient.html
+http://developer.android.com/sdk/api_diff/5/changes/android.telephony.PhoneStateListener.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.Service.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.PackageInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.graphics.PixelFormat.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.PotentialDeadlockError.html
+http://developer.android.com/sdk/api_diff/5/changes/android.R.drawable.html
+http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ResolveInfo.html
+http://developer.android.com/sdk/api_diff/5/changes/android.app.SearchManager.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.SurfaceView.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.StaleDexCacheError.html
+http://developer.android.com/sdk/api_diff/5/changes/android.media.ToneGenerator.html
+http://developer.android.com/sdk/api_diff/5/changes/android.view.SurfaceHolder.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.TemporaryDirectory.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.TouchDex.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.VMDebug.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.VMRuntime.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.VMStack.html
+http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.Zygote.html
+http://developer.android.com/sdk/api_diff/5/changes/jdiff_statistics.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Constants.html
+http://developer.android.com/sdk/api_diff/3/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/3/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/5/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/5/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/5/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/5/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/5/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/13/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/10/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/10/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/6/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/9/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/9/changes/packages_index_changes.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?overview-tree.html
+http://developer.android.com/sdk/api_diff/13/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/13/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/5/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/5/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/6/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/6/changes/fields_index_changes.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?help-doc.html
+http://developer.android.com/sdk/api_diff/5/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/5/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/15/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/15/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/15/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/15/changes/classes_index_changes.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Message.html
+http://developer.android.com/sdk/api_diff/13/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/13/changes/fields_index_changes.html
+http://developer.android.com/guide/developing/debugging/index.html
+http://developer.android.com/guide/developing/tools/adb.html
+http://developer.android.com/guide/publishing/app-signing.html
+http://developer.android.com/guide/developing/devices/managing-avds.html
+http://developer.android.com/sdk/api_diff/5/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/5/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/5/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/12/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/12/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/14/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/14/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/3/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/3/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/3/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/3/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/6/changes/packages_index_changes.html
+http://developer.android.com/guide/google/gcm/client-javadoc/index.html?overview-tree.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Message.Builder.html
 http://developer.android.com/sdk/api_diff/12/changes/packages_index_all.html
 http://developer.android.com/sdk/api_diff/12/changes/classes_index_all.html
 http://developer.android.com/sdk/api_diff/12/changes/constructors_index_all.html
 http://developer.android.com/sdk/api_diff/12/changes/methods_index_all.html
 http://developer.android.com/sdk/api_diff/12/changes/fields_index_all.html
-http://developer.android.com/guide/developing/other-ide.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/ActionBarMechanics.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/content/ClipboardSample.html
-http://developer.android.com/resources/samples/RenderScript/index.html
-http://developer.android.com/resources/samples/SampleSyncAdapter/res/xml-v14/contacts.html
-http://developer.android.com/resources/samples/VoicemailProviderDemo/index.html
-http://developer.android.com/resources/samples/RandomMusicPlayer/index.html
-http://developer.android.com/resources/samples/AndroidBeamDemo/src/com/example/android/beam/Beam.html
-http://developer.android.com/resources/samples/TtsEngine/index.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/index.html
-http://developer.android.com/resources/samples/ApiDemos/res/layout/switches.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/Switches.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/OverscanActivity.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/Hover.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/TouchPaint.html
+http://developer.android.com/sdk/api_diff/14/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/14/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/12/changes/classes_index_removals.html
+http://developer.android.com/sdk/api_diff/12/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/12/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.ActivityManager.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.ActivityManager.RecentTaskInfo.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.animation.Animation.html
+http://developer.android.com/sdk/api_diff/12/changes/android.content.pm.ApplicationInfo.html
+http://developer.android.com/sdk/api_diff/12/changes/android.appwidget.AppWidgetProviderInfo.html
+http://developer.android.com/sdk/api_diff/12/changes/android.text.method.BaseMovementMethod.html
+http://developer.android.com/sdk/api_diff/12/changes/android.graphics.Bitmap.html
+http://developer.android.com/sdk/api_diff/12/changes/android.provider.Browser.html
+http://developer.android.com/sdk/api_diff/12/changes/android.os.Build.VERSION_CODES.html
+http://developer.android.com/sdk/api_diff/12/changes/android.os.Bundle.html
+http://developer.android.com/sdk/api_diff/12/changes/android.graphics.Camera.html
+http://developer.android.com/sdk/api_diff/12/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/12/changes/android.util.Config.html
+http://developer.android.com/sdk/api_diff/12/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.CookieManager.html
+http://developer.android.com/sdk/api_diff/12/changes/android.widget.DatePicker.html
+http://developer.android.com/sdk/api_diff/12/changes/android.util.DebugUtils.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.Dialog.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.DialogFragment.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.DownloadManager.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.DownloadManager.Request.html
+http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmErrorEvent.html
+http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmEvent.html
+http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmInfoEvent.html
+http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmManagerClient.OnEventListener.html
+http://developer.android.com/sdk/api_diff/12/changes/android.util.EventLog.html
+http://developer.android.com/sdk/api_diff/12/changes/android.text.format.Formatter.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.Fragment.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.FragmentBreadCrumbs.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.InputDevice.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.InputDevice.MotionRange.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.InputEvent.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.inputmethod.InputMethodSubtype.html
+http://developer.android.com/sdk/api_diff/12/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/12/changes/android.provider.MediaStore.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.MotionEvent.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.MotionEvent.PointerCoords.html
+http://developer.android.com/sdk/api_diff/12/changes/android.text.method.MovementMethod.html
+http://developer.android.com/sdk/api_diff/12/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/12/changes/android.os.ParcelFileDescriptor.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/12/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/12/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/12/changes/android.app.SearchManager.html
+http://developer.android.com/sdk/api_diff/12/changes/android.net.sip.SipProfile.html
+http://developer.android.com/sdk/api_diff/12/changes/android.net.sip.SipProfile.Builder.html
+http://developer.android.com/sdk/api_diff/12/changes/android.text.SpannableStringBuilder.html
+http://developer.android.com/sdk/api_diff/12/changes/android.net.http.SslCertificate.html
+http://developer.android.com/sdk/api_diff/12/changes/android.util.StateSet.html
+http://developer.android.com/sdk/api_diff/12/changes/android.util.TimeUtils.html
+http://developer.android.com/sdk/api_diff/12/changes/android.net.TrafficStats.html
+http://developer.android.com/sdk/api_diff/12/changes/android.animation.ValueAnimator.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.ViewConfiguration.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebHistoryItem.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebSettings.LayoutAlgorithm.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebView.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebView.PictureListener.html
+http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebViewClient.html
+http://developer.android.com/sdk/api_diff/12/changes/android.net.wifi.WifiManager.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.Window.html
+http://developer.android.com/sdk/api_diff/12/changes/android.view.Window.Callback.html
+http://developer.android.com/sdk/api_diff/12/changes/android.util.Xml.html
+http://developer.android.com/sdk/api_diff/12/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/12/changes/fields_index_changes.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Sender.html
+http://developer.android.com/sdk/api_diff/12/changes/jdiff_statistics.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Result.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?serialized-form.html
+http://developer.android.com/sdk/api_diff/3/changes/jdiff_statistics.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.app.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.content.res.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.database.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.database.sqlite.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.graphics.drawable.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.graphics.drawable.shapes.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.location.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.media.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.net.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.net.wifi.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.opengl.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.preference.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.telephony.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.telephony.gsm.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.test.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.test.mock.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.test.suitebuilder.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.text.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.text.method.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.text.style.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.util.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.view.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.view.animation.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.webkit.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_dalvik.system.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_java.lang.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_java.util.jar.html
+http://developer.android.com/sdk/api_diff/3/changes/pkg_java.util.logging.html
+http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.animation.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.appwidget.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.content.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.content.pm.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.drm.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.graphics.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.hardware.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.http.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.sip.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.wifi.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.os.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.provider.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.text.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.text.format.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.text.method.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.view.animation.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.view.inputmethod.html
+http://developer.android.com/sdk/api_diff/12/changes/pkg_android.widget.html
+http://developer.android.com/sdk/api_diff/12/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/12/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.shapes.Shape.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.AbsoluteSizeSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.AlignmentSpan.Standard.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.BackgroundColorSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.BulletSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ClickableSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.DynamicDrawableSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ForegroundColorSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ImageSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.LeadingMarginSpan.Standard.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.MaskFilterSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.QuoteSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.RasterizerSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.RelativeSizeSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ScaleXSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.StrikethroughSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.StyleSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.SubscriptSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.SuperscriptSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.TextAppearanceSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.TypefaceSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.URLSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.UnderlineSpan.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.style.UpdateLayout.html
+http://developer.android.com/sdk/api_diff/15/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/15/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/android.test.ActivityInstrumentationTestCase.html
+http://developer.android.com/sdk/api_diff/3/changes/android.test.InstrumentationTestCase.html
+http://developer.android.com/sdk/api_diff/3/changes/android.test.ProviderTestCase.html
+http://developer.android.com/sdk/api_diff/3/changes/android.test.TouchUtils.html
+http://developer.android.com/sdk/api_diff/3/changes/java.lang.Character.UnicodeBlock.html
+http://developer.android.com/sdk/api_diff/3/changes/java.lang.Class.html
+http://developer.android.com/sdk/api_diff/3/changes/constructors_index_removals.html
+http://developer.android.com/sdk/api_diff/3/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/3/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.Annotation.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.GestureDetector.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Handler.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.KeyEvent.html
+http://developer.android.com/sdk/api_diff/3/changes/android.net.NetworkInfo.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.OrientationListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.RemoteViews.ActionException.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.ResourceCursorAdapter.html
+http://developer.android.com/sdk/api_diff/3/changes/android.test.suitebuilder.TestMethod.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.TransitionDrawable.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewConfiguration.html
+http://developer.android.com/sdk/api_diff/3/changes/dalvik.system.DexFile.html
+http://developer.android.com/sdk/api_diff/3/changes/dalvik.system.VMDebug.html
+http://developer.android.com/sdk/api_diff/3/changes/dalvik.system.Zygote.html
+http://developer.android.com/sdk/api_diff/3/changes/android.location.Location.html
+http://developer.android.com/sdk/api_diff/3/changes/android.location.LocationManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.hardware.Camera.html
+http://developer.android.com/sdk/api_diff/3/changes/android.hardware.SensorListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.hardware.SensorManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.telephony.gsm.SmsMessage.html
+http://developer.android.com/sdk/api_diff/3/changes/android.webkit.URLUtil.html
+http://developer.android.com/sdk/api_diff/3/changes/android.webkit.UrlInterceptHandler.html
+http://developer.android.com/sdk/api_diff/3/changes/android.webkit.UrlInterceptRegistry.html
+http://developer.android.com/sdk/api_diff/3/changes/android.webkit.WebHistoryItem.html
+http://developer.android.com/sdk/api_diff/3/changes/android.webkit.WebSettings.html
+http://developer.android.com/sdk/api_diff/3/changes/android.webkit.WebView.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.res.AssetFileDescriptor.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.res.Configuration.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.res.Resources.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.res.TypedArray.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.LauncherActivity.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.PopupWindow.OnDismissListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.AlertDialog.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.DialogInterface.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.KeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.media.MediaRecorder.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.AutoText.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.Touch.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.RemoteViews.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.Settings.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.AlarmManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.MetaKeyKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.Contacts.Intents.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.PopupWindow.html
+http://developer.android.com/sdk/api_diff/3/changes/android.R.id.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.Settings.System.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.ActivityManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.BaseKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.util.TimeUtils.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.AutoCompleteTextView.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.Contacts.Intents.Insert.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.GestureDetector.SimpleOnGestureListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Video.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.SpanWatcher.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.TextWatcher.html
+http://developer.android.com/sdk/api_diff/3/changes/android.media.MediaRecorder.OutputFormat.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.QwertyKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.AbsSeekBar.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.WindowManager.LayoutParams.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.AbsoluteLayout.html
+http://developer.android.com/sdk/api_diff/3/changes/java.util.logging.LogManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.Gravity.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.CursorAdapter.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.TextView.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DateKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DateTimeKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DialerKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.TimeKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/java.util.jar.Pack200.Unpacker.html
+http://developer.android.com/sdk/api_diff/3/changes/android.media.MediaPlayer.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Video.VideoColumns.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.Chronometer.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.MultiTapKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.media.AudioManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewTreeObserver.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.pm.PackageInfo.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.Spanned.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DigitsKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.R.attr.html
+http://developer.android.com/sdk/api_diff/3/changes/android.telephony.TelephonyManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.media.SoundPool.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Environment.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.MovementMethod.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.TextUtils.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.ParcelFileDescriptor.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.RotateDrawable.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.ScaleDrawable.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Audio.AlbumColumns.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Audio.Media.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.RectF.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Looper.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.Contacts.PeopleColumns.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.ArrowKeyMovementMethod.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.TextKeyListener.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewDebug.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.Scroller.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.AbsListView.html
+http://developer.android.com/sdk/api_diff/3/changes/android.net.ConnectivityManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.KeyCharacterMap.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.ProgressBar.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.SimpleCursorAdapter.html
+http://developer.android.com/sdk/api_diff/3/changes/android.R.string.html
+http://developer.android.com/sdk/api_diff/3/changes/java.util.jar.Pack200.Packer.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Images.Media.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Build.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.IBinder.html
+http://developer.android.com/sdk/api_diff/3/changes/android.text.method.ScrollingMovementMethod.html
+http://developer.android.com/sdk/api_diff/3/changes/android.util.SparseIntArray.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.Intent.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.ContentResolver.html
+http://developer.android.com/sdk/api_diff/3/changes/android.net.wifi.WifiManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.BroadcastReceiver.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.Menu.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.animation.Animation.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.animation.Transformation.html
+http://developer.android.com/sdk/api_diff/3/changes/java.util.logging.Level.html
+http://developer.android.com/sdk/api_diff/3/changes/android.R.style.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Binder.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewParent.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.GridView.html
+http://developer.android.com/sdk/api_diff/3/changes/android.test.mock.MockPackageManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.View.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.ListView.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.PendingIntent.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.pm.PackageManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.telephony.PhoneNumberUtils.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.ContentProvider.html
+http://developer.android.com/sdk/api_diff/3/changes/android.Manifest.permission.html
+http://developer.android.com/sdk/api_diff/3/changes/android.widget.ArrayAdapter.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.pm.ActivityInfo.html
+http://developer.android.com/sdk/api_diff/3/changes/android.database.sqlite.SQLiteDatabase.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.Activity.html
+http://developer.android.com/sdk/api_diff/3/changes/android.preference.DialogPreference.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.Window.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.Bitmap.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Debug.html
+http://developer.android.com/sdk/api_diff/3/changes/android.provider.Browser.html
+http://developer.android.com/sdk/api_diff/3/changes/android.os.Parcel.html
+http://developer.android.com/sdk/api_diff/3/changes/android.database.DatabaseUtils.html
+http://developer.android.com/sdk/api_diff/3/changes/android.media.RingtoneManager.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.Rect.html
+http://developer.android.com/sdk/api_diff/3/changes/android.database.Cursor.html
+http://developer.android.com/sdk/api_diff/3/changes/android.database.CursorWrapper.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.MotionEvent.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.Drawable.html
+http://developer.android.com/sdk/api_diff/3/changes/android.R.drawable.html
+http://developer.android.com/sdk/api_diff/3/changes/android.app.Instrumentation.html
+http://developer.android.com/sdk/api_diff/3/changes/android.graphics.Canvas.html
+http://developer.android.com/sdk/api_diff/3/changes/android.content.Context.html
+http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewGroup.html
+http://developer.android.com/sdk/api_diff/3/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/3/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/7/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/7/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/7/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/7/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/7/changes/fields_index_all.html
+http://developer.android.com/sdk/api_diff/7/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/7/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/6/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/3/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/3/changes/fields_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_removals.html
+http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_additions.html
+http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_changes.html
+http://developer.android.com/sdk/api_diff/12/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/12/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/12/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/5/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/5/changes/constructors_index_changes.html
+http://developer.android.com/resources/samples/Support4Demos/index.html
+http://developer.android.com/resources/samples/Support13Demos/index.html
+http://developer.android.com/sdk/api_diff/7/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/7/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/7/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/7/changes/classes_index_additions.html
+http://developer.android.com/sdk/api_diff/7/changes/classes_index_changes.html
+http://developer.android.com/sdk/api_diff/7/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/7/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/8/changes/jdiff_topleftframe.html
+http://developer.android.com/sdk/api_diff/8/changes/alldiffs_index_all.html
+http://developer.android.com/sdk/api_diff/8/changes/changes-summary.html
+http://developer.android.com/sdk/api_diff/5/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/5/changes/packages_index_changes.html
+http://developer.android.com/sdk/api_diff/12/changes/constructors_index_removals.html
+http://developer.android.com/sdk/api_diff/12/changes/constructors_index_additions.html
+http://developer.android.com/sdk/api_diff/12/changes/constructors_index_changes.html
+http://developer.android.com/sdk/api_diff/3/changes/methods_index_removals.html
+http://developer.android.com/sdk/api_diff/3/changes/methods_index_additions.html
+http://developer.android.com/sdk/api_diff/3/changes/methods_index_changes.html
+http://developer.android.com/sdk/api_diff/8/changes/packages_index_all.html
+http://developer.android.com/sdk/api_diff/8/changes/classes_index_all.html
+http://developer.android.com/sdk/api_diff/8/changes/constructors_index_all.html
+http://developer.android.com/sdk/api_diff/8/changes/methods_index_all.html
+http://developer.android.com/sdk/api_diff/8/changes/fields_index_all.html
+http://developer.android.com/guide/google/gcm/server-javadoc/index.html?deprecated-list.html
 http://developer.android.com/sdk/api_diff/8/changes/alldiffs_index_removals.html
 http://developer.android.com/sdk/api_diff/8/changes/alldiffs_index_additions.html
 http://developer.android.com/sdk/api_diff/8/changes/alldiffs_index_changes.html
@@ -4793,1627 +6396,18 @@
 http://developer.android.com/sdk/api_diff/8/changes/android.hardware.Sensor.html
 http://developer.android.com/sdk/api_diff/8/changes/javax.xml.XMLConstants.html
 http://developer.android.com/sdk/api_diff/8/changes/jdiff_statistics.html
-http://developer.android.com/resources/samples/SoftKeyboard/index.html
-http://developer.android.com/sdk/api_diff/11/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/11/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/11/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/11/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/11/changes/fields_index_all.html
-http://developer.android.com/guide/google/gcm/client-javadoc/com/google/android/gcm/package-tree.html
-http://developer.android.com/guide/google/gcm/client-javadoc/deprecated-list.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index-all.html
-http://developer.android.com/guide/google/gcm/client-javadoc/help-doc.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/package-summary.html
-http://developer.android.com/guide/google/gcm/client-javadoc/allclasses-noframe.html
-http://developer.android.com/sdk/api_diff/12/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/12/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.MotionEvent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmEvent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.provider.Browser.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.SearchManager.html
-http://developer.android.com/sdk/api_diff/12/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/12/changes/android.content.pm.ApplicationInfo.html
-http://developer.android.com/sdk/api_diff/12/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.DownloadManager.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.InputDevice.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.ActivityManager.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.ActivityManager.RecentTaskInfo.html
-http://developer.android.com/sdk/api_diff/12/changes/android.appwidget.AppWidgetProviderInfo.html
-http://developer.android.com/sdk/api_diff/12/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmErrorEvent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmInfoEvent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.DownloadManager.Request.html
-http://developer.android.com/sdk/api_diff/12/changes/android.net.wifi.WifiManager.html
-http://developer.android.com/sdk/api_diff/12/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/8/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/8/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/8/changes/fields_index_changes.html
-http://developer.android.com/resources/samples/SpinnerTest/index.html
-http://developer.android.com/resources/samples/Spinner/index.html
-http://developer.android.com/sdk/api_diff/13/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/13/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/13/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/13/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/13/changes/fields_index_all.html
-http://developer.android.com/guide/appendix/install-location.html
-http://developer.android.com/sdk/api_diff/10/changes/android.graphics.BitmapFactory.Options.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.drm.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.text.format.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.appwidget.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.http.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.view.inputmethod.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.sip.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.text.method.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.net.wifi.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.animation.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.view.animation.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.text.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/12/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/12/changes/android.drm.DrmManagerClient.OnEventListener.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebView.PictureListener.html
-http://developer.android.com/sdk/api_diff/12/changes/android.util.DebugUtils.html
-http://developer.android.com/sdk/api_diff/12/changes/android.net.TrafficStats.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebSettings.LayoutAlgorithm.html
-http://developer.android.com/sdk/api_diff/12/changes/android.util.TimeUtils.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.InputEvent.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.MotionEvent.PointerCoords.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.InputDevice.MotionRange.html
-http://developer.android.com/sdk/api_diff/12/changes/android.text.format.Formatter.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.inputmethod.InputMethodSubtype.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.CookieManager.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebHistoryItem.html
-http://developer.android.com/sdk/api_diff/12/changes/android.graphics.Camera.html
-http://developer.android.com/sdk/api_diff/12/changes/android.net.http.SslCertificate.html
-http://developer.android.com/sdk/api_diff/12/changes/android.util.Config.html
-http://developer.android.com/sdk/api_diff/12/changes/android.util.EventLog.html
-http://developer.android.com/sdk/api_diff/12/changes/android.util.StateSet.html
-http://developer.android.com/sdk/api_diff/12/changes/android.text.method.MovementMethod.html
-http://developer.android.com/sdk/api_diff/12/changes/android.util.Xml.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebView.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.FragmentBreadCrumbs.html
-http://developer.android.com/sdk/api_diff/12/changes/android.os.ParcelFileDescriptor.html
-http://developer.android.com/sdk/api_diff/12/changes/android.graphics.Bitmap.html
-http://developer.android.com/sdk/api_diff/12/changes/android.net.sip.SipProfile.Builder.html
-http://developer.android.com/sdk/api_diff/12/changes/android.net.sip.SipProfile.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.ViewConfiguration.html
-http://developer.android.com/sdk/api_diff/12/changes/android.widget.DatePicker.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.DialogFragment.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.Fragment.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.Window.Callback.html
-http://developer.android.com/sdk/api_diff/12/changes/android.text.method.BaseMovementMethod.html
-http://developer.android.com/sdk/api_diff/12/changes/android.provider.MediaStore.html
-http://developer.android.com/sdk/api_diff/12/changes/android.text.SpannableStringBuilder.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.animation.Animation.html
-http://developer.android.com/sdk/api_diff/12/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/12/changes/android.webkit.WebViewClient.html
-http://developer.android.com/sdk/api_diff/12/changes/android.animation.ValueAnimator.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.Dialog.html
-http://developer.android.com/sdk/api_diff/12/changes/android.os.Bundle.html
-http://developer.android.com/sdk/api_diff/12/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/12/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/12/changes/android.view.Window.html
-http://developer.android.com/sdk/api_diff/5/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/5/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/5/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/5/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/5/changes/fields_index_all.html
-http://developer.android.com/training/tutorials/views/hello-tablelayout.html
-http://developer.android.com/reference/renderscript/rs__mesh_8rsh_source.html
-http://developer.android.com/reference/renderscript/rs__program_8rsh_source.html
-http://developer.android.com/reference/renderscript/rs__graphics_8rsh_source.html
-http://developer.android.com/reference/renderscript/rs__mesh_8rsh.html
-http://developer.android.com/sdk/api_diff/12/changes/constructors_index_removals.html
-http://developer.android.com/sdk/api_diff/12/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/12/changes/constructors_index_changes.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/package-tree.html
-http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/5/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.SettingsColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.text.style.AbsoluteSizeSpan.html
-http://developer.android.com/sdk/api_diff/5/changes/android.inputmethodservice.AbstractInputMethodService.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_java.util.concurrent.locks.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/5/changes/android.database.AbstractWindowedCursor.html
-http://developer.android.com/sdk/api_diff/5/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/5/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.ContentResolver.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Intents.Insert.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Settings.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.MotionEvent.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.ActivityManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.ActivityManager.RunningAppProcessInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.ActivityManager.RunningServiceInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.location.LocationManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.PluginList.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.ContactMethods.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Settings.System.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.AllocationLimitError.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.database.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.database.sqlite.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.graphics.drawable.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.inputmethodservice.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.location.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.opengl.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.test.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.text.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.text.format.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.text.style.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.view.animation.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/5/changes/android.test.AndroidTestRunner.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.animation.Animation.html
-http://developer.android.com/sdk/api_diff/5/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/5/changes/android.hardware.Camera.Parameters.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.ContentProvider.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Intents.html
-http://developer.android.com/sdk/api_diff/5/changes/android.media.AudioFormat.html
-http://developer.android.com/sdk/api_diff/5/changes/android.media.AudioManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.html
-http://developer.android.com/sdk/api_diff/5/changes/android.widget.AutoCompleteTextView.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.ContactMethodsColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/5/changes/android.os.BatteryManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.database.sqlite.SQLiteDatabase.html
-http://developer.android.com/sdk/api_diff/5/changes/android.graphics.drawable.BitmapDrawable.html
-http://developer.android.com/sdk/api_diff/5/changes/java.util.concurrent.BlockingQueue.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.BroadcastReceiver.html
-http://developer.android.com/sdk/api_diff/5/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.CallbackProxy.html
-http://developer.android.com/sdk/api_diff/5/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.NotificationManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.MediaStore.Images.Thumbnails.html
-http://developer.android.com/sdk/api_diff/5/changes/android.widget.MediaController.MediaPlayerControl.html
-http://developer.android.com/sdk/api_diff/5/changes/android.widget.VideoView.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.OrganizationColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.telephony.PhoneNumberUtils.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Extensions.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.ExtensionsColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.GroupMembership.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Groups.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.GroupsColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Intents.UI.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Organizations.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.ContactMethods.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.Extensions.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.People.Phones.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PeopleColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Phones.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PhonesColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Photos.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PhotosColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.PresenceColumns.html
-http://developer.android.com/sdk/api_diff/5/changes/android.provider.Contacts.Settings.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.ContextWrapper.html
-http://developer.android.com/sdk/api_diff/5/changes/android.graphics.drawable.Drawable.html
-http://developer.android.com/sdk/api_diff/5/changes/android.os.Debug.MemoryInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.database.CursorWindow.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_dalvik.system.html
-http://developer.android.com/sdk/api_diff/5/changes/android.database.DatabaseUtils.html
-http://developer.android.com/sdk/api_diff/5/changes/android.text.format.DateUtils.html
-http://developer.android.com/sdk/api_diff/5/changes/android.text.TextPaint.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.Dialog.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.Plugin.html
-http://developer.android.com/sdk/api_diff/5/changes/android.graphics.drawable.Drawable.ConstantState.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ServiceInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebViewClient.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.WindowManager.LayoutParams.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.Notification.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.ViewGroup.html
-http://developer.android.com/sdk/api_diff/5/changes/android.text.format.Formatter.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.PluginData.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/5/changes/android.telephony.NeighboringCellInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.UrlInterceptHandler.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.UrlInterceptRegistry.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebView.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.ViewConfiguration.html
-http://developer.android.com/sdk/api_diff/5/changes/android.widget.SimpleCursorTreeAdapter.html
-http://developer.android.com/sdk/api_diff/5/changes/android.opengl.GLSurfaceView.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.Surface.html
-http://developer.android.com/sdk/api_diff/5/changes/android.os.HandlerThread.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.HapticFeedbackConstants.html
-http://developer.android.com/sdk/api_diff/5/changes/android.telephony.TelephonyManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.test.InstrumentationTestCase.html
-http://developer.android.com/sdk/api_diff/5/changes/android.inputmethodservice.InputMethodService.html
-http://developer.android.com/sdk/api_diff/5/changes/android.text.InputType.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.IntentService.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ProviderInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/pkg_java.util.concurrent.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.KeyEvent.Callback.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.LauncherActivity.html
-http://developer.android.com/sdk/api_diff/5/changes/android.media.MediaPlayer.html
-http://developer.android.com/sdk/api_diff/5/changes/android.test.mock.MockContext.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.Window.Callback.html
-http://developer.android.com/sdk/api_diff/5/changes/android.webkit.WebChromeClient.html
-http://developer.android.com/sdk/api_diff/5/changes/android.telephony.PhoneStateListener.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.Service.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.PackageInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.graphics.PixelFormat.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.PotentialDeadlockError.html
-http://developer.android.com/sdk/api_diff/5/changes/android.R.drawable.html
-http://developer.android.com/sdk/api_diff/5/changes/android.content.pm.ResolveInfo.html
-http://developer.android.com/sdk/api_diff/5/changes/android.app.SearchManager.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.SurfaceView.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.StaleDexCacheError.html
-http://developer.android.com/sdk/api_diff/5/changes/android.media.ToneGenerator.html
-http://developer.android.com/sdk/api_diff/5/changes/android.view.SurfaceHolder.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.TemporaryDirectory.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.TouchDex.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.VMDebug.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.VMRuntime.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.VMStack.html
-http://developer.android.com/sdk/api_diff/5/changes/dalvik.system.Zygote.html
-http://developer.android.com/sdk/api_diff/11/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/11/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/11/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/5/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/7/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/fields_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/7/changes/alldiffs_index_changes.html
-http://developer.android.com/reference/renderscript/rs__program_8rsh.html
 http://developer.android.com/sdk/api_diff/8/changes/classes_index_additions.html
 http://developer.android.com/sdk/api_diff/8/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/15/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/15/changes/constructors_index_changes.html
-http://developer.android.com/guide/google/gcm/client-javadoc/overview-tree.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?help-doc.html
-http://developer.android.com/guide/google/gcm/client-javadoc/constant-values.html
-http://developer.android.com/shareables/sample_images.zip
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_menu.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_status_bar.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_tab.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_dialog.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_list.html
-http://developer.android.com/shareables/icon_templates-v4.0.zip
-http://developer.android.com/shareables/icon_templates-v2.3.zip
-http://developer.android.com/shareables/icon_templates-v2.0.zip
-http://developer.android.com/sdk/api_diff/12/changes/classes_index_removals.html
-http://developer.android.com/sdk/api_diff/12/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/12/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/jdiff_statistics.html
-http://developer.android.com/guide/appendix/api-levels.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.accessibilityservice.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.animation.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.appwidget.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.bluetooth.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.database.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.database.sqlite.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.drm.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.graphics.drawable.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.media.audiofx.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.net.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.net.wifi.p2p.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.nfc.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.nfc.tech.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.renderscript.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.security.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.service.textservice.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.speech.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.test.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.text.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.accessibility.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.inputmethod.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.view.textservice.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_junit.framework.html
-http://developer.android.com/sdk/api_diff/16/changes/pkg_junit.runner.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMBaseIntentService.html
-http://developer.android.com/sdk/api_diff/13/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/13/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.AbsSeekBar.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.AdapterViewAnimator.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.AdapterViewFlipper.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.AutoCompleteTextView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.CalendarView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.CheckedTextView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.FrameLayout.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.Gallery.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.GridLayout.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.GridView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.ImageView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.LinearLayout.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.RelativeLayout.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.SearchView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.Spinner.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.Switch.html
-http://developer.android.com/sdk/api_diff/16/changes/android.widget.TextView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.nfc.tech.IsoDep.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.res.Resources.html
-http://developer.android.com/sdk/api_diff/6/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/6/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/6/changes/changes-summary.html
-http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher_archive.html
-http://developer.android.com/sdk/api_diff/3/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/3/changes/changes-summary.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.inputmethod.EditorInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.inputmethod.InputMethodManager.html
-http://developer.android.com/tools/other-ide.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/DeviceAdminSample.html
-http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/3/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.AbsListView.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.AbsoluteLayout.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.AbsoluteSizeSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.AbsSeekBar.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.Settings.System.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.Settings.html
-http://developer.android.com/sdk/api_diff/3/changes/android.media.AudioManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.net.ConnectivityManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.MotionEvent.html
-http://developer.android.com/sdk/api_diff/3/changes/android.telephony.TelephonyManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/3/changes/android.test.ActivityInstrumentationTestCase.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.test.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.ActivityManager.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/3/changes/android.location.LocationManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewTreeObserver.html
-http://developer.android.com/sdk/api_diff/3/changes/java.util.jar.Pack200.Packer.html
-http://developer.android.com/sdk/api_diff/3/changes/java.util.jar.Pack200.Unpacker.html
-http://developer.android.com/sdk/api_diff/3/changes/java.util.logging.LogManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.R.id.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.MetaKeyKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.AlarmManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.AlertDialog.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.DynamicDrawableSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.AlignmentSpan.Standard.html
-http://developer.android.com/sdk/api_diff/3/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.database.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.database.sqlite.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.graphics.drawable.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.graphics.drawable.shapes.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.location.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.net.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.net.wifi.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.opengl.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.preference.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.telephony.gsm.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.test.suitebuilder.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.text.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.text.method.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.text.style.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.view.animation.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.animation.Animation.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.Annotation.html
-http://developer.android.com/sdk/api_diff/3/changes/android.database.DatabaseUtils.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.Gravity.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.ArrayAdapter.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.ArrowKeyMovementMethod.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.res.AssetFileDescriptor.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.AutoCompleteTextView.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.AutoText.html
-http://developer.android.com/sdk/api_diff/3/changes/android.hardware.SensorManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.BackgroundColorSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.BaseKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.TextView.html
-http://developer.android.com/sdk/api_diff/3/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Binder.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.Bitmap.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Video.VideoColumns.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.BroadcastReceiver.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.Browser.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Build.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.BulletSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.DialogInterface.html
-http://developer.android.com/sdk/api_diff/3/changes/android.telephony.gsm.SmsMessage.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.Instrumentation.html
-http://developer.android.com/sdk/api_diff/3/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.Canvas.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.TextUtils.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.SimpleCursorAdapter.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Debug.html
-http://developer.android.com/sdk/api_diff/3/changes/java.lang.Character.UnicodeBlock.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.Chronometer.html
-http://developer.android.com/sdk/api_diff/3/changes/java.lang.Class.html
-http://developer.android.com/sdk/api_diff/3/changes/android.webkit.WebView.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.KeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ClickableSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.shapes.Shape.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.Menu.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.pm.PackageInfo.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.Contacts.Intents.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.Contacts.Intents.Insert.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.Contacts.PeopleColumns.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.ContentProvider.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.ContentResolver.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/3/changes/android.net.wifi.WifiManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.RectF.html
-http://developer.android.com/sdk/api_diff/3/changes/android.database.Cursor.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.CursorAdapter.html
-http://developer.android.com/sdk/api_diff/3/changes/android.database.CursorWrapper.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_dalvik.system.html
-http://developer.android.com/sdk/api_diff/3/changes/android.R.drawable.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DateKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DateTimeKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/dalvik.system.Zygote.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Images.Media.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Video.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ForegroundColorSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.LeadingMarginSpan.Standard.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.QuoteSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.RelativeSizeSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ScaleXSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.StrikethroughSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.StyleSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.SubscriptSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.SuperscriptSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.TextAppearanceSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.TypefaceSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.URLSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.UnderlineSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.KeyCharacterMap.html
-http://developer.android.com/sdk/api_diff/3/changes/dalvik.system.DexFile.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DialerKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.R.string.html
-http://developer.android.com/sdk/api_diff/3/changes/android.preference.DialogPreference.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.DigitsKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.test.TouchUtils.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.Drawable.html
-http://developer.android.com/sdk/api_diff/3/changes/android.location.Location.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.IBinder.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewDebug.html
-http://developer.android.com/sdk/api_diff/3/changes/dalvik.system.VMDebug.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Environment.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Audio.Media.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.WindowManager.LayoutParams.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.PendingIntent.html
-http://developer.android.com/sdk/api_diff/3/changes/android.telephony.PhoneNumberUtils.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.GestureDetector.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.GestureDetector.SimpleOnGestureListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewConfiguration.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.res.Resources.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.RotateDrawable.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.ScaleDrawable.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.Touch.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.PopupWindow.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.MultiTapKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.QwertyKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.TextKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.TimeKeyListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.content.res.TypedArray.html
-http://developer.android.com/sdk/api_diff/3/changes/android.webkit.WebHistoryItem.html
-http://developer.android.com/sdk/api_diff/3/changes/android.webkit.UrlInterceptHandler.html
-http://developer.android.com/sdk/api_diff/3/changes/android.webkit.UrlInterceptRegistry.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.Scroller.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.ParcelFileDescriptor.html
-http://developer.android.com/sdk/api_diff/3/changes/android.net.NetworkInfo.html
-http://developer.android.com/sdk/api_diff/3/changes/android.app.LauncherActivity.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Looper.html
-http://developer.android.com/sdk/api_diff/3/changes/android.util.TimeUtils.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.GridView.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Handler.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.Window.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.ImageSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.media.RingtoneManager.html
-http://developer.android.com/sdk/api_diff/3/changes/android.test.InstrumentationTestCase.html
-http://developer.android.com/sdk/api_diff/3/changes/android.webkit.URLUtil.html
-http://developer.android.com/sdk/api_diff/3/changes/android.media.MediaPlayer.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_java.lang.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_java.util.jar.html
-http://developer.android.com/sdk/api_diff/3/changes/pkg_java.util.logging.html
-http://developer.android.com/sdk/api_diff/3/changes/java.util.logging.Level.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.ListView.html
-http://developer.android.com/sdk/api_diff/3/changes/android.media.SoundPool.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.MaskFilterSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.media.MediaRecorder.html
-http://developer.android.com/sdk/api_diff/3/changes/android.media.MediaRecorder.OutputFormat.html
-http://developer.android.com/sdk/api_diff/3/changes/android.provider.MediaStore.Audio.AlbumColumns.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.MovementMethod.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.method.ScrollingMovementMethod.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.ProgressBar.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.OrientationListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.os.Parcel.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.PopupWindow.OnDismissListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.test.ProviderTestCase.html
-http://developer.android.com/sdk/api_diff/3/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.RasterizerSpan.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.Rect.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.RemoteViews.ActionException.html
-http://developer.android.com/sdk/api_diff/3/changes/android.util.SparseIntArray.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewParent.html
-http://developer.android.com/sdk/api_diff/3/changes/android.widget.ResourceCursorAdapter.html
-http://developer.android.com/sdk/api_diff/3/changes/android.hardware.SensorListener.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.ViewGroup.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.Spanned.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.SpanWatcher.html
-http://developer.android.com/sdk/api_diff/3/changes/android.database.sqlite.SQLiteDatabase.html
-http://developer.android.com/sdk/api_diff/3/changes/android.test.suitebuilder.TestMethod.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.TextWatcher.html
-http://developer.android.com/sdk/api_diff/3/changes/android.view.animation.Transformation.html
-http://developer.android.com/sdk/api_diff/3/changes/android.graphics.drawable.TransitionDrawable.html
-http://developer.android.com/sdk/api_diff/3/changes/android.text.style.UpdateLayout.html
-http://developer.android.com/sdk/api_diff/3/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.AsyncTaskLoader.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ClipData.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ClipData.Item.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ClipDescription.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ComponentCallbacks2.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ContentProvider.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ContentProviderClient.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ContentResolver.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.ContextWrapper.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.Loader.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityEvent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityNodeInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.accessibility.AccessibilityRecord.html
-http://developer.android.com/sdk/api_diff/6/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/6/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/6/changes/pkg_android.accounts.html
-http://developer.android.com/sdk/api_diff/6/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/6/changes/pkg_android.view.html
-http://developer.android.com/resources/tutorials/views/hello-linearlayout.html
-http://developer.android.com/sdk/api_diff/7/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/7/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/8/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/8/changes/packages_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/allclasses-frame.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-summary.html
-http://developer.android.com/sdk/api_diff/6/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/6/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/6/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/6/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/6/changes/fields_index_all.html
-http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/FragmentTabsPager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.security.KeyChain.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.AttendeesColumns.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.EventsColumns.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.CalendarContract.RemindersColumns.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.CommonDataKinds.Phone.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.Contacts.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.DataUsageFeedback.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.ContactsContract.PhoneLookupColumns.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.MediaStore.MediaColumns.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.Settings.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.Settings.Secure.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.Settings.System.html
-http://developer.android.com/sdk/api_diff/16/changes/android.provider.UserDictionary.Words.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.PackageInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.PermissionInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.content.pm.ServiceInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/14/changes/changes-summary.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/package-tree.html
-http://developer.android.com/guide/google/gcm/server-javadoc/deprecated-list.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index-all.html
-http://developer.android.com/guide/google/gcm/server-javadoc/help-doc.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/package-summary.html
-http://developer.android.com/guide/google/gcm/server-javadoc/allclasses-noframe.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Constants.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Message.Builder.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/MulticastResult.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Result.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/Sender.html
-http://developer.android.com/guide/google/gcm/server-javadoc/com/google/android/gcm/server/InvalidRequestException.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteClosable.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteDatabase.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteException.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteOpenHelper.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteProgram.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQuery.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteQueryBuilder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.sqlite.SQLiteStatement.html
-http://developer.android.com/sdk/api_diff/16/changes/android.service.textservice.SpellCheckerService.Session.html
 http://developer.android.com/sdk/api_diff/8/changes/constructors_index_removals.html
 http://developer.android.com/sdk/api_diff/8/changes/constructors_index_additions.html
 http://developer.android.com/sdk/api_diff/8/changes/constructors_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/16/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaRecorder.OutputFormat.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaRecorder.AudioEncoder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.AbstractCursor.html
-http://developer.android.com/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityService.html
-http://developer.android.com/sdk/api_diff/16/changes/android.accessibilityservice.AccessibilityServiceInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.appwidget.AppWidgetManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.net.ConnectivityManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.WallpaperManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.speech.RecognizerIntent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ActionMode.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ActionProvider.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.ActivityManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.ActivityManager.MemoryInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.ActivityManager.RunningAppProcessInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.Notification.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.AllocationBuilder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.net.wifi.p2p.WifiP2pManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewTreeObserver.html
-http://developer.android.com/sdk/api_diff/16/changes/android.test.InstrumentationTestSuite.html
-http://developer.android.com/sdk/api_diff/16/changes/junit.framework.TestSuite.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Program.BaseProgramBuilder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaPlayer.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.TriangleMeshBuilder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Allocation.html
-http://developer.android.com/sdk/api_diff/16/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/16/changes/android.appwidget.AppWidgetHostView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.appwidget.AppWidgetProvider.html
-http://developer.android.com/sdk/api_diff/16/changes/junit.framework.Assert.html
-http://developer.android.com/sdk/api_diff/16/changes/android.test.AssertionFailedError.html
-http://developer.android.com/sdk/api_diff/16/changes/junit.framework.AssertionFailedError.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.SurfaceTexture.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.AudioManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.AudioRecord.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.AvoidXfermode.html
-http://developer.android.com/sdk/api_diff/16/changes/junit.runner.BaseTestRunner.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.Notification.html
-http://developer.android.com/sdk/api_diff/16/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.html
-http://developer.android.com/sdk/api_diff/16/changes/android.bluetooth.BluetoothAdapter.html
-http://developer.android.com/sdk/api_diff/16/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.Camera.html
-http://developer.android.com/sdk/api_diff/16/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/16/changes/android.os.Vibrator.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.Canvas.html
-http://developer.android.com/sdk/api_diff/16/changes/android.animation.LayoutTransition.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.CursorWindow.html
-http://developer.android.com/sdk/api_diff/16/changes/android.test.ComparisonFailure.html
-http://developer.android.com/sdk/api_diff/16/changes/junit.framework.ComparisonFailure.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSubtype.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.ContentObservable.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.ContentObserver.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.CookieManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Font.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.nfc.NdefRecord.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.FileA3D.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RSSurfaceView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RSTextureView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.KeyCharacterMap.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.Cursor.html
-http://developer.android.com/sdk/api_diff/16/changes/android.util.DisplayMetrics.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertexFixedFunction.Constants.html
-http://developer.android.com/sdk/api_diff/16/changes/android.os.StrictMode.VmPolicy.Builder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.Display.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.DownloadManager.Request.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmManagerClient.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.Action.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.DrmObjectType.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.Playback.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmStore.RightsStatus.html
-http://developer.android.com/sdk/api_diff/16/changes/android.drm.DrmSupportInfo.html
-http://developer.android.com/sdk/api_diff/16/changes/android.os.TokenWatcher.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Element.html
-http://developer.android.com/sdk/api_diff/16/changes/junit.framework.TestResult.html
-http://developer.android.com/sdk/api_diff/16/changes/android.text.Html.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.FileA3D.EntryType.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.FileA3D.IndexEntry.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Font.Style.html
-http://developer.android.com/sdk/api_diff/16/changes/android.nfc.FormatException.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.Fragment.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.GeolocationPermissions.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.Gravity.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.View.AccessibilityDelegate.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.PendingIntent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Sampler.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.ToneGenerator.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramStore.html
-http://developer.android.com/sdk/api_diff/16/changes/android.nfc.NdefMessage.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Program.html
-http://developer.android.com/sdk/api_diff/16/changes/android.nfc.NfcAdapter.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.InputDevice.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.InputEvent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.SearchManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramVertex.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewStub.html
-http://developer.android.com/sdk/api_diff/16/changes/android.net.SSLCertificateSocketFactory.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.drawable.GradientDrawable.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewParent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.audiofx.Visualizer.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.html
-http://developer.android.com/sdk/api_diff/16/changes/android.app.KeyguardManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.Paint.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.JsResult.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.PixelFormat.html
-http://developer.android.com/sdk/api_diff/16/changes/android.os.Process.html
-http://developer.android.com/sdk/api_diff/16/changes/android.media.MediaRecorder.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Mesh.Primitive.html
-http://developer.android.com/sdk/api_diff/16/changes/android.test.mock.MockContext.html
-http://developer.android.com/sdk/api_diff/16/changes/android.net.Uri.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener.html
-http://developer.android.com/sdk/api_diff/16/changes/android.os.ParcelFileDescriptor.html
-http://developer.android.com/sdk/api_diff/16/changes/android.graphics.PixelXorXfermode.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragment.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.EnvMode.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramFragmentFixedFunction.Builder.Format.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.ProgramRaster.CullMode.html
-http://developer.android.com/sdk/api_diff/16/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.RenderScriptGL.SurfaceConfig.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewGroup.html
-http://developer.android.com/sdk/api_diff/16/changes/android.renderscript.Script.html
-http://developer.android.com/sdk/api_diff/16/changes/android.hardware.SensorManager.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.TextureView.html
-http://developer.android.com/sdk/api_diff/16/changes/android.database.SQLException.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewDebug.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewDebug.HierarchyTraceType.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewDebug.RecyclerTraceType.html
-http://developer.android.com/sdk/api_diff/16/changes/android.view.ViewPropertyAnimator.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebIconDatabase.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebStorage.html
-http://developer.android.com/sdk/api_diff/16/changes/android.webkit.WebView.HitTestResult.html
+http://developer.android.com/sdk/api_diff/8/changes/fields_index_removals.html
+http://developer.android.com/sdk/api_diff/8/changes/fields_index_additions.html
+http://developer.android.com/sdk/api_diff/8/changes/fields_index_changes.html
 http://developer.android.com/sdk/api_diff/8/changes/methods_index_removals.html
 http://developer.android.com/sdk/api_diff/8/changes/methods_index_additions.html
 http://developer.android.com/sdk/api_diff/8/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/11/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/11/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/6/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/11/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/11/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/14/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/14/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/14/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/14/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/14/changes/fields_index_all.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMConstants.html
-http://developer.android.com/guide/developing/debugging/index.html
-http://developer.android.com/guide/developing/tools/adb.html
-http://developer.android.com/guide/publishing/app-signing.html
-http://developer.android.com/guide/developing/devices/managing-avds.html
-http://developer.android.com/sdk/api_diff/5/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/5/changes/constructors_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/overview-tree.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?index-all.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/MulticastResult.html
-http://developer.android.com/guide/google/gcm/server-javadoc/serialized-form.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Constants.html
-http://developer.android.com/guide/google/gcm/server-javadoc/constant-values.html
-http://developer.android.com/sdk/api_diff/13/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/13/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/5/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/5/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/11/changes/constructors_index_removals.html
-http://developer.android.com/sdk/api_diff/11/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/11/changes/constructors_index_changes.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?index-all.html
-http://developer.android.com/sdk/api_diff/15/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/15/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/6/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/6/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/6/changes/android.accounts.AbstractAccountAuthenticator.html
-http://developer.android.com/sdk/api_diff/6/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/6/changes/android.view.WindowManager.LayoutParams.html
-http://developer.android.com/sdk/api_diff/6/changes/classes_index_changes.html
-http://developer.android.com/resources/articles/creating-input-method.html
-http://developer.android.com/sdk/api_diff/10/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/10/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/10/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/10/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/10/changes/fields_index_all.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Result.html
-http://developer.android.com/sdk/api_diff/14/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/14/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.AbsListView.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.accessibility.AccessibilityEvent.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.accessibility.AccessibilityManager.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.view.accessibility.html
-http://developer.android.com/sdk/api_diff/14/changes/android.accessibilityservice.AccessibilityService.html
-http://developer.android.com/sdk/api_diff/14/changes/android.accessibilityservice.AccessibilityServiceInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.AccessibleObject.html
-http://developer.android.com/sdk/api_diff/14/changes/android.accounts.AccountManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.ActionBar.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.ActionBar.Tab.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.ActionMode.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.AdapterViewAnimator.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.AlertDialog.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Allocation.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.AllocationAdapter.html
-http://developer.android.com/sdk/api_diff/14/changes/java.security.AllPermission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.Animator.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.Application.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.ApplicationInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.appwidget.AppWidgetProviderInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.media.AudioManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.backup.BackupAgent.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_dalvik.system.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.BaseObj.html
-http://developer.android.com/sdk/api_diff/14/changes/java.security.BasicPermission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.bluetooth.BluetoothAdapter.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.bluetooth.html
-http://developer.android.com/sdk/api_diff/14/changes/android.bluetooth.BluetoothProfile.html
-http://developer.android.com/sdk/api_diff/14/changes/android.bluetooth.BluetoothSocket.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Build.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Byte2.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Byte3.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Byte4.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.CallLog.Calls.html
-http://developer.android.com/sdk/api_diff/14/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/14/changes/android.hardware.Camera.Parameters.html
-http://developer.android.com/sdk/api_diff/14/changes/android.graphics.Canvas.html
-http://developer.android.com/sdk/api_diff/14/changes/android.preference.CheckBoxPreference.html
-http://developer.android.com/sdk/api_diff/14/changes/java.lang.Class.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/14/changes/android.util.Config.html
-http://developer.android.com/sdk/api_diff/14/changes/android.net.ConnectivityManager.html
-http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.Constructor.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.CommonDataKinds.Photo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.Contacts.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.Contacts.Photo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.ContactsColumns.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.GroupsColumns.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.Intents.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.RawContactsColumns.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.RawContactsEntity.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.SettingsColumns.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.ContactsContract.StatusUpdates.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.ContentProvider.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Debug.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Debug.MemoryInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.admin.DeviceAdminInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.admin.DevicePolicyManager.html
-http://developer.android.com/sdk/api_diff/14/changes/dalvik.system.DexClassLoader.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.renderscript.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.text.style.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Element.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.ExpandableListView.html
-http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.Field.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.FieldPacker.html
-http://developer.android.com/sdk/api_diff/14/changes/java.io.FilePermission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.FloatEvaluator.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.Fragment.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.FragmentManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.FragmentManager.BackStackEntry.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.FrameLayout.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.app.backup.html
-http://developer.android.com/sdk/api_diff/14/changes/android.opengl.GLUtils.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.Gravity.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Handler.html
-http://developer.android.com/sdk/api_diff/14/changes/java.util.logging.Handler.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.InputDevice.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.inputmethod.InputMethodManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.inputmethodservice.InputMethodService.html
-http://developer.android.com/sdk/api_diff/14/changes/android.inputmethodservice.InputMethodService.InputMethodSessionImpl.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.inputmethod.InputMethodSession.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.inputmethod.InputMethodSubtype.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Int2.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Int3.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Int4.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.IntentSender.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.IntEvaluator.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.IsoDep.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/14/changes/android.text.Layout.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.LayoutTransition.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.LinearLayout.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.LiveFolders.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Long2.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Long3.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Long4.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Looper.html
-http://developer.android.com/sdk/api_diff/14/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.opengl.Matrix.html
-http://developer.android.com/sdk/api_diff/14/changes/android.media.MediaMetadataRetriever.html
-http://developer.android.com/sdk/api_diff/14/changes/android.media.MediaPlayer.html
-http://developer.android.com/sdk/api_diff/14/changes/android.media.MediaRecorder.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.MediaStore.Audio.AudioColumns.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.MenuItem.html
-http://developer.android.com/sdk/api_diff/14/changes/java.lang.reflect.Method.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.MifareClassic.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.MifareUltralight.html
-http://developer.android.com/sdk/api_diff/14/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.MotionEvent.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.NdefRecord.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcA.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.NfcAdapter.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.nfc.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcB.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcF.html
-http://developer.android.com/sdk/api_diff/14/changes/android.nfc.tech.NfcV.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.Notification.Builder.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.ObjectAnimator.html
-http://developer.android.com/sdk/api_diff/14/changes/java.io.ObjectInputStream.html
-http://developer.android.com/sdk/api_diff/14/changes/java.io.ObjectOutputStream.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.OverScroller.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.PackageStats.html
-http://developer.android.com/sdk/api_diff/14/changes/android.graphics.Paint.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.ParcelFileDescriptor.html
-http://developer.android.com/sdk/api_diff/14/changes/dalvik.system.PathClassLoader.html
-http://developer.android.com/sdk/api_diff/14/changes/android.util.Patterns.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.PendingIntent.html
-http://developer.android.com/sdk/api_diff/14/changes/java.security.Permission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.PopupMenu.html
-http://developer.android.com/sdk/api_diff/14/changes/android.preference.Preference.html
-http://developer.android.com/sdk/api_diff/14/changes/android.preference.PreferenceActivity.html
-http://developer.android.com/sdk/api_diff/14/changes/javax.security.auth.PrivateCredentialPermission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.Process.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.PropertyValuesHolder.html
-http://developer.android.com/sdk/api_diff/14/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/14/changes/android.R.color.html
-http://developer.android.com/sdk/api_diff/14/changes/android.R.integer.html
-http://developer.android.com/sdk/api_diff/14/changes/android.R.string.html
-http://developer.android.com/sdk/api_diff/14/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/14/changes/android.speech.RecognizerIntent.html
-http://developer.android.com/sdk/api_diff/14/changes/android.os.RecoverySystem.html
-http://developer.android.com/sdk/api_diff/14/changes/android.graphics.RectF.html
-http://developer.android.com/sdk/api_diff/14/changes/java.lang.ref.ReferenceQueue.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.RenderScriptGL.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Script.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.Scroller.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.SearchManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.SearchView.html
-http://developer.android.com/sdk/api_diff/14/changes/android.hardware.Sensor.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.Service.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.pm.ServiceInfo.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.Settings.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.Settings.Secure.html
-http://developer.android.com/sdk/api_diff/14/changes/android.provider.Settings.System.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Short2.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Short3.html
-http://developer.android.com/sdk/api_diff/14/changes/android.renderscript.Short4.html
-http://developer.android.com/sdk/api_diff/14/changes/java.net.SocketPermission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.util.SparseArray.html
-http://developer.android.com/sdk/api_diff/14/changes/android.util.SparseBooleanArray.html
-http://developer.android.com/sdk/api_diff/14/changes/android.util.SparseIntArray.html
-http://developer.android.com/sdk/api_diff/14/changes/android.speech.SpeechRecognizer.html
-http://developer.android.com/sdk/api_diff/14/changes/android.database.sqlite.SQLiteOpenHelper.html
-http://developer.android.com/sdk/api_diff/14/changes/android.database.sqlite.SQLiteQueryBuilder.html
-http://developer.android.com/sdk/api_diff/14/changes/android.net.SSLCertificateSocketFactory.html
-http://developer.android.com/sdk/api_diff/14/changes/android.net.http.SslError.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.StackView.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.Surface.html
-http://developer.android.com/sdk/api_diff/14/changes/android.graphics.SurfaceTexture.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.preference.html
-http://developer.android.com/sdk/api_diff/14/changes/android.content.SyncAdapterType.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.speech.tts.html
-http://developer.android.com/sdk/api_diff/14/changes/dalvik.annotation.TestTarget.html
-http://developer.android.com/sdk/api_diff/14/changes/dalvik.annotation.TestTargetClass.html
-http://developer.android.com/sdk/api_diff/14/changes/android.speech.tts.TextToSpeech.html
-http://developer.android.com/sdk/api_diff/14/changes/android.speech.tts.TextToSpeech.Engine.html
-http://developer.android.com/sdk/api_diff/14/changes/android.widget.TextView.html
-http://developer.android.com/sdk/api_diff/14/changes/android.net.TrafficStats.html
-http://developer.android.com/sdk/api_diff/14/changes/android.animation.TypeEvaluator.html
-http://developer.android.com/sdk/api_diff/14/changes/java.security.UnresolvedPermission.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewConfiguration.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewGroup.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewParent.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.ViewPropertyAnimator.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.net.html
-http://developer.android.com/sdk/api_diff/14/changes/android.app.WallpaperManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.service.wallpaper.WallpaperService.Engine.html
-http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebChromeClient.html
-http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebSettings.TextSize.html
-http://developer.android.com/sdk/api_diff/14/changes/android.webkit.WebView.HitTestResult.html
-http://developer.android.com/sdk/api_diff/14/changes/android.net.wifi.WifiManager.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.Window.html
-http://developer.android.com/sdk/api_diff/14/changes/android.view.WindowManager.LayoutParams.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.net.wifi.html
-http://developer.android.com/sdk/api_diff/14/changes/jdiff_statistics.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Message.html
-http://developer.android.com/sdk/api_diff/10/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/10/changes/methods_index_additions.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?deprecated-list.html
-http://developer.android.com/guide/practices/ui_guidelines/widget_design.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetProvider.html
-http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.html
-http://developer.android.com/resources/samples/images/StackWidget.png
-http://developer.android.com/sdk/api_diff/6/changes/methods_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Sender.html
-http://developer.android.com/sdk/api_diff/6/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/6/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/12/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/12/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/12/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/13/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/13/changes/classes_index_changes.html
-http://developer.android.com/guide/topics/location/obtaining-user-location.html
-http://developer.android.com/resources/tutorials/views/hello-autocomplete.html
-http://developer.android.com/sdk/api_diff/9/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/9/changes/changes-summary.html
-http://developer.android.com/shareables/app_widget_templates-v4.0.zip
-http://developer.android.com/sdk/api_diff/7/changes/constructors_index_additions.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?overview-tree.html
-http://developer.android.com/sdk/api_diff/12/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/12/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/9/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.AbstractExecutorService.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.AbstractOwnableSynchronizer.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.concurrent.locks.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.AbstractThreadedSyncAdapter.html
-http://developer.android.com/sdk/api_diff/9/changes/java.security.AccessController.html
-http://developer.android.com/sdk/api_diff/9/changes/android.location.Criteria.html
-http://developer.android.com/sdk/api_diff/9/changes/android.provider.Settings.html
-http://developer.android.com/sdk/api_diff/9/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/9/changes/android.app.ActivityManager.RunningAppProcessInfo.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.MotionEvent.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.sql.PooledConnection.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.Calendar.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_dalvik.system.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ThreadPoolExecutor.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.app.admin.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.location.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.net.wifi.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.opengl.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.service.wallpaper.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.telephony.gsm.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.text.format.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.view.inputmethod.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.ApplicationInfo.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.SharedPreferences.Editor.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.reflect.Array.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.Array.html
-http://developer.android.com/sdk/api_diff/9/changes/java.nio.Buffer.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.Arrays.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.Collections.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicBoolean.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicInteger.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicIntegerArray.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicIntegerFieldUpdater.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicLong.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicLongArray.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicLongFieldUpdater.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicReference.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicReferenceArray.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.atomic.AtomicReferenceFieldUpdater.html
-http://developer.android.com/sdk/api_diff/9/changes/android.media.AudioTrack.html
-http://developer.android.com/sdk/api_diff/9/changes/android.media.MediaPlayer.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.DatabaseMetaData.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.inputmethod.BaseInputConnection.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.BatchUpdateException.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.Blob.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.concurrent.html
-http://developer.android.com/sdk/api_diff/9/changes/java.text.BreakIterator.html
-http://developer.android.com/sdk/api_diff/9/changes/android.os.Build.html
-http://developer.android.com/sdk/api_diff/9/changes/android.os.Build.VERSION_CODES.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.Executors.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.CallableStatement.html
-http://developer.android.com/sdk/api_diff/9/changes/android.media.CamcorderProfile.html
-http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Camera.html
-http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Camera.Parameters.html
-http://developer.android.com/sdk/api_diff/9/changes/android.media.CameraProfile.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.File.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.TreeSet.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.TreeMap.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.Class.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.ResourceBundle.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.PrintStream.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.PrintWriter.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.sql.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.Clob.html
-http://developer.android.com/sdk/api_diff/9/changes/android.app.Notification.html
-http://developer.android.com/sdk/api_diff/9/changes/android.widget.RemoteViews.html
-http://developer.android.com/sdk/api_diff/9/changes/java.text.CollationKey.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.sql.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ConcurrentHashMap.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.Connection.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.sql.ConnectionPoolDataSource.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.io.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.System.html
-http://developer.android.com/sdk/api_diff/9/changes/android.provider.ContactsContract.CommonDataKinds.Nickname.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.net.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.Math.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.StrictMath.html
-http://developer.android.com/sdk/api_diff/9/changes/android.os.ParcelFileDescriptor.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_dalvik.bytecode.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.sql.DataSource.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.DataTruncation.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.xml.datatype.DatatypeFactory.html
-http://developer.android.com/sdk/api_diff/9/changes/java.text.DateFormatSymbols.html
-http://developer.android.com/sdk/api_diff/9/changes/android.text.format.DateUtils.html
-http://developer.android.com/sdk/api_diff/9/changes/java.text.DecimalFormatSymbols.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ScheduledThreadPoolExecutor.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.zip.html
-http://developer.android.com/sdk/api_diff/9/changes/android.util.DisplayMetrics.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.LinkedList.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.KeyEvent.html
-http://developer.android.com/sdk/api_diff/9/changes/android.app.admin.DevicePolicyManager.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.security.auth.Subject.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.xml.parsers.DocumentBuilderFactory.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.Double.html
-http://developer.android.com/sdk/api_diff/9/changes/android.os.DropBoxManager.Entry.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLContextSpi.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.Enum.html
-http://developer.android.com/sdk/api_diff/9/changes/android.os.Environment.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.ExecutorService.html
-http://developer.android.com/sdk/api_diff/9/changes/android.media.ExifInterface.html
-http://developer.android.com/sdk/api_diff/9/changes/org.apache.http.protocol.HTTP.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/9/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/9/changes/dalvik.system.PathClassLoader.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.PackageInfo.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.Float.html
-http://developer.android.com/sdk/api_diff/9/changes/java.text.Format.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.FutureTask.html
-http://developer.android.com/sdk/api_diff/9/changes/android.location.Geocoder.html
-http://developer.android.com/sdk/api_diff/9/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/sdk/api_diff/9/changes/android.hardware.SensorManager.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.Package.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.LockSupport.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.String.html
-http://developer.android.com/sdk/api_diff/9/changes/java.lang.reflect.Member.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLContext.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/9/changes/java.net.NetworkInterface.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.ResultSet.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLSessionContext.html
-http://developer.android.com/sdk/api_diff/9/changes/java.security.Policy.html
-http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Sensor.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.security.auth.x500.X500Principal.html
-http://developer.android.com/sdk/api_diff/9/changes/java.net.SocketImpl.html
-http://developer.android.com/sdk/api_diff/9/changes/android.widget.ListView.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.KeyStoreBuilderParameters.html
-http://developer.android.com/sdk/api_diff/9/changes/android.webkit.WebSettings.html
-http://developer.android.com/sdk/api_diff/9/changes/android.telephony.gsm.GsmCellLocation.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.locks.ReentrantReadWriteLock.html
-http://developer.android.com/sdk/api_diff/9/changes/java.text.NumberFormat.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.ViewConfiguration.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.inputmethod.InputConnection.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.inputmethod.InputConnectionWrapper.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLEngine.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLSocket.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.IntentSender.html
-http://developer.android.com/sdk/api_diff/9/changes/android.opengl.GLES20.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.logging.Logger.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.HandshakeCompletedEvent.html
-http://developer.android.com/sdk/api_diff/9/changes/android.graphics.ImageFormat.html
-http://developer.android.com/sdk/api_diff/9/changes/android.provider.MediaStore.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.IOException.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.Statement.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLException.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.awt.font.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.lang.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.lang.reflect.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.nio.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.security.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.text.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.concurrent.atomic.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_java.util.logging.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.net.ssl.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.security.auth.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.security.auth.x500.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.datatype.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.parsers.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.transform.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_javax.xml.validation.html
-http://developer.android.com/sdk/api_diff/9/changes/java.awt.font.TextAttribute.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.Properties.html
-http://developer.android.com/sdk/api_diff/9/changes/android.content.pm.PackageItemInfo.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.Locale.html
-http://developer.android.com/sdk/api_diff/9/changes/android.location.LocationManager.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.Types.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.ObjectStreamClass.html
-http://developer.android.com/sdk/api_diff/9/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/9/changes/android.media.MediaRecorder.html
-http://developer.android.com/sdk/api_diff/9/changes/android.telephony.TelephonyManager.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.xml.parsers.SAXParserFactory.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.xml.transform.TransformerFactory.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.xml.validation.SchemaFactory.html
-http://developer.android.com/sdk/api_diff/9/changes/android.service.wallpaper.WallpaperService.Engine.html
-http://developer.android.com/sdk/api_diff/9/changes/dalvik.bytecode.Opcodes.html
-http://developer.android.com/sdk/api_diff/9/changes/pkg_org.apache.http.protocol.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.ParameterMetaData.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.PipedInputStream.html
-http://developer.android.com/sdk/api_diff/9/changes/java.io.PipedReader.html
-http://developer.android.com/sdk/api_diff/9/changes/android.os.PowerManager.WakeLock.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.PreparedStatement.html
-http://developer.android.com/sdk/api_diff/9/changes/android.R.drawable.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.PropertyResourceBundle.html
-http://developer.android.com/sdk/api_diff/9/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLInput.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.Scanner.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.ResultSetMetaData.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.sql.RowSet.html
-http://developer.android.com/sdk/api_diff/9/changes/android.net.wifi.WifiManager.WifiLock.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLOutput.html
-http://developer.android.com/sdk/api_diff/9/changes/java.sql.SQLWarning.html
-http://developer.android.com/sdk/api_diff/9/changes/javax.net.ssl.SSLSessionBindingEvent.html
-http://developer.android.com/sdk/api_diff/9/changes/android.view.Window.html
-http://developer.android.com/sdk/api_diff/9/changes/java.util.concurrent.TimeUnit.html
-http://developer.android.com/sdk/api_diff/9/changes/java.security.UnrecoverableKeyException.html
-http://developer.android.com/sdk/api_diff/9/changes/jdiff_statistics.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?help-doc.html
-http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/10/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/5/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/5/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/14/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/14/changes/constructors_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?constant-values.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/InvalidRequestException.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.accessibilityservice.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.accounts.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.animation.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.app.admin.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.appwidget.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.database.sqlite.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.inputmethodservice.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.net.http.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.nfc.tech.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.opengl.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.service.wallpaper.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.speech.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.text.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.view.inputmethod.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_android.webkit.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_dalvik.annotation.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.io.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.lang.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.lang.ref.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.lang.reflect.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.net.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.security.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_java.util.logging.html
-http://developer.android.com/sdk/api_diff/14/changes/pkg_javax.security.auth.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMRegistrar.html
-http://developer.android.com/sdk/api_diff/10/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/10/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/14/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/5/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/5/changes/methods_index_changes.html
-http://developer.android.com/guide/developing/debug-tasks.html
-http://developer.android.com/sdk/api_diff/11/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/11/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/14/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/14/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/14/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/14/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/14/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/15/changes/packages_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?overview-tree.html
-http://developer.android.com/sdk/api_diff/5/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/5/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/5/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/6/changes/packages_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?deprecated-list.html
-http://developer.android.com/tools/debug-tasks.html
-http://developer.android.com/sdk/api_diff/15/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/15/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/15/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/15/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/3/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/3/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/3/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/3/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/3/changes/fields_index_all.html
-http://developer.android.com/sdk/api_diff/7/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/7/changes/methods_index_changes.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?com/google/android/gcm/GCMBroadcastReceiver.html
-http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/12/changes/alldiffs_index_changes.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?serialized-form.html
-http://developer.android.com/sdk/api_diff/3/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/3/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/3/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/jdiff_topleftframe.html
-http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/changes-summary.html
-http://developer.android.com/sdk/api_diff/14/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/14/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/14/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/3/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/3/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/3/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/fields_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.app.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.content.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.content.pm.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.content.res.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.graphics.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.graphics.drawable.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.hardware.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.inputmethodservice.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.location.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.media.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.net.wifi.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.opengl.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.os.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.provider.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.telephony.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.telephony.gsm.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.test.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.test.mock.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.text.style.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.util.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.view.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.view.animation.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_android.widget.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_java.util.concurrent.html
-http://developer.android.com/sdk/api_diff/4/changes/pkg_java.util.concurrent.locks.html
-http://developer.android.com/sdk/api_diff/4/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/4/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/android.view.View.html
-http://developer.android.com/sdk/api_diff/4/changes/android.test.AndroidTestCase.html
-http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsMessage.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.ComponentName.html
-http://developer.android.com/sdk/api_diff/4/changes/android.view.VelocityTracker.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.Typeface.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.Drawable.html
-http://developer.android.com/sdk/api_diff/4/changes/android.net.wifi.WifiManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.BitmapFactory.html
-http://developer.android.com/sdk/api_diff/4/changes/android.app.Activity.html
-http://developer.android.com/sdk/api_diff/4/changes/android.app.Dialog.html
-http://developer.android.com/sdk/api_diff/4/changes/android.view.Window.Callback.html
-http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.Context.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.ContextWrapper.html
-http://developer.android.com/sdk/api_diff/4/changes/android.test.mock.MockContext.html
-http://developer.android.com/sdk/api_diff/4/changes/android.media.MediaRecorder.html
-http://developer.android.com/sdk/api_diff/4/changes/android.os.RemoteCallbackList.html
-http://developer.android.com/sdk/api_diff/4/changes/android.widget.ListView.html
-http://developer.android.com/sdk/api_diff/4/changes/android.widget.TabWidget.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.Bitmap.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.Canvas.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.NinePatch.html
-http://developer.android.com/sdk/api_diff/4/changes/android.widget.AutoCompleteTextView.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ConfigurationInfo.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.Intent.html
-http://developer.android.com/sdk/api_diff/4/changes/android.app.PendingIntent.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.PackageManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.test.mock.MockPackageManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.view.ViewConfiguration.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.ContentProvider.html
-http://developer.android.com/sdk/api_diff/4/changes/android.location.Address.html
-http://developer.android.com/sdk/api_diff/4/changes/android.media.AudioManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.widget.PopupWindow.html
-http://developer.android.com/sdk/api_diff/4/changes/android.widget.TabHost.TabSpec.html
-http://developer.android.com/sdk/api_diff/4/changes/android.inputmethodservice.KeyboardView.html
-http://developer.android.com/sdk/api_diff/4/changes/android.app.LauncherActivity.html
-http://developer.android.com/sdk/api_diff/4/changes/android.app.SearchManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.BitmapDrawable.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.NinePatchDrawable.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/Message.Builder.html
-http://developer.android.com/sdk/api_diff/3/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/3/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/jdiff_statistics.html
-http://developer.android.com/sdk/api_diff/4/changes/android.Manifest.permission.html
-http://developer.android.com/sdk/api_diff/4/changes/android.Manifest.permission_group.html
-http://developer.android.com/sdk/api_diff/4/changes/android.R.anim.html
-http://developer.android.com/sdk/api_diff/4/changes/android.R.attr.html
-http://developer.android.com/sdk/api_diff/4/changes/android.R.drawable.html
-http://developer.android.com/sdk/api_diff/4/changes/android.R.style.html
-http://developer.android.com/sdk/api_diff/16/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/16/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/16/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/16/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/16/changes/fields_index_all.html
-http://developer.android.com/sdk/api_diff/4/changes/android.app.LauncherActivity.ListItem.html
-http://developer.android.com/sdk/api_diff/4/changes/android.widget.CheckedTextView.html
-http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsMessage.MessageClass.html
-http://developer.android.com/sdk/api_diff/4/changes/android.telephony.gsm.SmsMessage.SubmitPdu.html
-http://developer.android.com/guide/google/gcm/client-javadoc/index.html?constant-values.html
-http://developer.android.com/sdk/api_diff/16/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/16/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/16/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/android.util.Config.html
-http://developer.android.com/sdk/api_diff/4/changes/android.util.DisplayMetrics.html
-http://developer.android.com/sdk/api_diff/4/changes/android.util.TypedValue.html
-http://developer.android.com/sdk/api_diff/16/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/16/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/constructors_index_removals.html
-http://developer.android.com/sdk/api_diff/16/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/16/changes/constructors_index_changes.html
-http://developer.android.com/sdk/api_diff/10/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/10/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.BitmapFactory.Options.html
-http://developer.android.com/sdk/api_diff/7/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/7/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_removals.html
-http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/alldiffs_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/java.util.concurrent.locks.AbstractQueuedSynchronizer.html
-http://developer.android.com/sdk/api_diff/4/changes/android.provider.Settings.Secure.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ActivityInfo.html
-http://developer.android.com/sdk/api_diff/4/changes/android.graphics.drawable.AnimationDrawable.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ApplicationInfo.html
-http://developer.android.com/sdk/api_diff/4/changes/android.os.Build.html
-http://developer.android.com/sdk/api_diff/4/changes/android.os.Build.VERSION.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.res.Configuration.html
-http://developer.android.com/sdk/api_diff/4/changes/android.telephony.TelephonyManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.provider.MediaStore.Audio.Genres.Members.html
-http://developer.android.com/sdk/api_diff/4/changes/android.provider.MediaStore.Audio.Media.html
-http://developer.android.com/sdk/api_diff/4/changes/android.text.style.ImageSpan.html
-http://developer.android.com/sdk/api_diff/4/changes/android.hardware.SensorManager.html
-http://developer.android.com/sdk/api_diff/4/changes/android.media.MediaRecorder.AudioSource.html
-http://developer.android.com/sdk/api_diff/4/changes/android.content.pm.ProviderInfo.html
-http://developer.android.com/sdk/api_diff/4/changes/android.provider.Settings.System.html
-http://developer.android.com/sdk/api_diff/4/changes/android.view.Surface.html
-http://developer.android.com/sdk/api_diff/4/changes/java.util.concurrent.TimeUnit.html
-http://developer.android.com/sdk/api_diff/4/changes/android.media.ToneGenerator.html
-http://developer.android.com/guide/google/gcm/server-javadoc/index.html?com/google/android/gcm/server/package-tree.html
-http://developer.android.com/sdk/api_diff/4/changes/classes_index_removals.html
-http://developer.android.com/sdk/api_diff/4/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/classes_index_changes.html
 http://developer.android.com/sdk/api_diff/3/changes/packages_index_additions.html
 http://developer.android.com/sdk/api_diff/3/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/7/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/7/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/16/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/13/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/4/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/4/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/fields_index_changes.html
-http://developer.android.com/sdk/api_diff/16/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/16/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/16/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/3/changes/constructors_index_removals.html
-http://developer.android.com/sdk/api_diff/3/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/3/changes/constructors_index_changes.html
-http://developer.android.com/sdk/api_diff/10/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/4/changes/constructors_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/packages_index_all.html
-http://developer.android.com/sdk/api_diff/9/changes/classes_index_all.html
-http://developer.android.com/sdk/api_diff/9/changes/constructors_index_all.html
-http://developer.android.com/sdk/api_diff/9/changes/methods_index_all.html
-http://developer.android.com/sdk/api_diff/9/changes/fields_index_all.html
-http://developer.android.com/sdk/api_diff/9/changes/constructors_index_removals.html
-http://developer.android.com/sdk/api_diff/9/changes/constructors_index_additions.html
-http://developer.android.com/sdk/api_diff/9/changes/constructors_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/classes_index_removals.html
-http://developer.android.com/sdk/api_diff/9/changes/classes_index_additions.html
-http://developer.android.com/sdk/api_diff/9/changes/classes_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/methods_index_removals.html
-http://developer.android.com/sdk/api_diff/9/changes/methods_index_additions.html
-http://developer.android.com/sdk/api_diff/9/changes/methods_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/packages_index_additions.html
-http://developer.android.com/sdk/api_diff/9/changes/packages_index_changes.html
-http://developer.android.com/sdk/api_diff/9/changes/fields_index_removals.html
-http://developer.android.com/sdk/api_diff/9/changes/fields_index_additions.html
-http://developer.android.com/sdk/api_diff/9/changes/fields_index_changes.html
\ No newline at end of file
+http://developer.android.com/sdk/api_diff/8/changes/packages_index_additions.html
+http://developer.android.com/sdk/api_diff/8/changes/packages_index_changes.html
\ No newline at end of file
diff --git a/docs/html/tools/adk/adk.jd b/docs/html/tools/adk/adk.jd
index 2a0c717..049b6e9 100644
--- a/docs/html/tools/adk/adk.jd
+++ b/docs/html/tools/adk/adk.jd
@@ -41,7 +41,7 @@
 
       <h2>Download</h2>
       <ol>
-        <li><a href="https://dl-ssl.google.com/android/adk/adk_release_0512.zip">ADK package</a></li>
+        <li><a href="https://dl-ssl.google.com/android/adk/adk_release_20120606.zip">ADK package</a></li>
       </ol>
 
       <h2>See also</h2>
diff --git a/docs/html/tools/adk/adk2.jd b/docs/html/tools/adk/adk2.jd
index ee9c0d8..d5be8ab 100644
--- a/docs/html/tools/adk/adk2.jd
+++ b/docs/html/tools/adk/adk2.jd
@@ -26,10 +26,12 @@
 
     <h2>See also</h2>
     <ol>
+      <li><a href="https://developers.google.com/events/io/sessions/gooio2012/128/">
+        Google I/O Session Video</a></li>
       <li><a href="aoa.html">Android Open Accessory Protocol</a></li>
       <li><a href="aoa2.html">Android Open Accessory Protocol 2.0</a></li>
-      <li><a href="{@docRoot}guide/topics/connectivity/usb/accessory.html">USB Accessory Dev
-      Guide</a></li>
+      <li><a href="{@docRoot}guide/topics/connectivity/usb/accessory.html">
+        USB Accessory Dev Guide</a></li>
     </ol>
   </div>
 </div>
@@ -231,7 +233,12 @@
 system.</li>
   <li>Download and setup the {@code repo} tool, as described on the <a
 href="http://source.android.com/source/downloading.html#installing-repo">Android open source
-project</a> site.</li>
+project</a> site.
+    <p class="note"><strong>Note:</strong> Developers using Windows must use a Linux compatibility
+package, such as <a href="http://www.cygwin.com/">cygwin</a>, to install and run {@code repo}.
+Within your compatibility environment, you must install {@code curl}, {@code git} and {@code
+python} to be able to download and use the {@code repo} tool.</p>
+  </li>
   <li>In a terminal window, create a new directory for the downloaded source files, initialize and
 synchronize a local repository:
 <pre>
@@ -268,7 +275,7 @@
     href="http://java.oracle.com">java.oracle.com</a>.</li>
   <li>Download the ADK 2012 IDE for your development platform:
     <ul>
-      <li><a href="https://dl-ssl.google.com/android/adk/adk2012_ide-win32-20120626.zip">
+      <li><a href="https://dl-ssl.google.com/android/adk/adk2012_ide-win32-20120629.zip">
           Windows</a></li>
       <li><a href="https://dl-ssl.google.com/android/adk/adk2012_ide-macosx-20120626.zip">
           Mac</a></li>
diff --git a/docs/html/tools/adk/aoa2.jd b/docs/html/tools/adk/aoa2.jd
index 2a3b2f0..bbccfc3 100644
--- a/docs/html/tools/adk/aoa2.jd
+++ b/docs/html/tools/adk/aoa2.jd
@@ -20,7 +20,7 @@
 </div>
 
 <p>This document describes the changes to the Android Open Accessory (AOA) protocol since its
-initial release, and is a supplement to the documentation of the <a href="oap.html">first
+initial release, and is a supplement to the documentation of the <a href="aoa.html">first
 release of AOA</a>.</p>
 
 <p>The Android Open Accessory Protocol 2.0 adds two new features: audio output (from the Android
diff --git a/docs/html/tools/debugging/debugging-ui.jd b/docs/html/tools/debugging/debugging-ui.jd
index c1976b8..a5991ec 100644
--- a/docs/html/tools/debugging/debugging-ui.jd
+++ b/docs/html/tools/debugging/debugging-ui.jd
@@ -29,7 +29,7 @@
                 <li><a href="#overlays">Working with Pixel Perfect overlays</a></li>
             </ol>
         </li>
-        <li><a href="#layoutopt">Using layoutopt</a></li>
+        <li><a href="#lint">Using lint to optimize your UI</a></li>
       </ol>
       <h2>Related videos</h2>
           <ol>
@@ -55,15 +55,15 @@
   <p>
 Sometimes your application's layout can slow down your application.
   To help debug issues in your layout, the Android SDK provides the Hierarchy Viewer and
-  <code>layoutopt</code> tools.
+  <code>lint</code> tools.
   </p>
 
   <p>The Hierarchy Viewer application allows you to debug and optimize your user interface. It
   provides a visual representation of the layout's View hierarchy (the View Hierarchy window)
   and a magnified view of the display (the Pixel Perfect window).</p>
 
-  <p><code>layoutopt</code> is a command-line tool that helps you optimize the layouts and layout
-  hierarchies of your applications. You can run it against your layout files or resource
+  <p>Android <code>lint</code> is a static code scanning tool that helps you optimize the layouts and layout
+  hierarchies of your applications, as well as detect other common coding problems. You can run it against your layout files or resource
   directories to quickly check for inefficiencies or other types of problems that could be
   affecting the performance of your application.</p>
 
@@ -491,57 +491,7 @@
         alt=""
         height="600"/>
 <p class="img-caption"><strong>Figure 4.</strong> The Pixel Perfect window</p>
-<h2 id="layoutopt">Using layoutopt</h2>
-<p>
-    The <code>layoutopt</code> tool lets you analyze the XML files that define your
-    application's UI to find inefficiencies in the view hierarchy.</p>
-
-<p>
-    To run the tool, open a terminal and launch <code>layoutopt &lt;xmlfiles&gt;</code>
-    from your SDK <code>tools/</code> directory. The &lt;xmlfiles&gt; argument is a space-
-    delimited list of resources you want to analyze, either uncompiled resource xml files or
-    directories of such files.
-</p>
-<p>
-    The tool loads the specified XML files and analyzes their definitions and
-    hierarchies according to a set of predefined rules. For every issue it detects, it
-    displays the following information:
-</p>
-<ul>
-    <li>
-        The filename in which the issue was detected.
-    </li>
-    <li>
-        The line number for the issue.
-    </li>
-    <li>
-        A description of the issue, and for some types of issues it also suggests a resolution.
-    </li>
-</ul>
-<p>The following is a sample of the output from the tool:</p>
-<pre>
-$ layoutopt samples/
-samples/compound.xml
-   7:23 The root-level &lt;FrameLayout/&gt; can be replaced with &lt;merge/&gt;
-   11:21 This LinearLayout layout or its FrameLayout parent is useless
-samples/simple.xml
-   7:7 The root-level &lt;FrameLayout/&gt; can be replaced with &lt;merge/&gt;
-samples/too_deep.xml
-   -1:-1 This layout has too many nested layouts: 13 levels, it should have &lt;= 10!
-   20:81 This LinearLayout layout or its LinearLayout parent is useless
-   24:79 This LinearLayout layout or its LinearLayout parent is useless
-   28:77 This LinearLayout layout or its LinearLayout parent is useless
-   32:75 This LinearLayout layout or its LinearLayout parent is useless
-   36:73 This LinearLayout layout or its LinearLayout parent is useless
-   40:71 This LinearLayout layout or its LinearLayout parent is useless
-   44:69 This LinearLayout layout or its LinearLayout parent is useless
-   48:67 This LinearLayout layout or its LinearLayout parent is useless
-   52:65 This LinearLayout layout or its LinearLayout parent is useless
-   56:63 This LinearLayout layout or its LinearLayout parent is useless
-samples/too_many.xml
-   7:413 The root-level &lt;FrameLayout/&gt; can be replaced with &lt;merge/&gt;
-   -1:-1 This layout has too many views: 81 views, it should have &lt;= 80!
-samples/useless.xml
-   7:19 The root-level &lt;FrameLayout/&gt; can be replaced with &lt;merge/&gt;
-   11:17 This LinearLayout layout or its FrameLayout parent is useless
-</pre>
+<h2 id="lint">Using lint to Optimize Your UI</h2>
+<p>The Android {@code lint} tool lets you analyze the XML files that define your application's UI to find inefficiencies in the view hierarchy.</p>
+<p class="note"><strong>Note: </strong>The Android <code>layoutopt</code> tool has been replaced by the {@code lint} tool beginning in ADT and SDK Tools revision 16. The {@code lint} tool reports UI layout performance issues in a similar way as <code>layoutopt</code>, and detects additional problems.</p>
+<p>For more information about using {@code lint}, see <a href="{@docRoot}tools/debugging/improving-w-lint.html">Improving Your Code with lint</a> and the <a  href="{@docRoot}tools/help/lint.html">lint reference documentation</a>.</p>
diff --git a/docs/html/tools/debugging/improving-w-lint.jd b/docs/html/tools/debugging/improving-w-lint.jd
new file mode 100644
index 0000000..7e238fa
--- /dev/null
+++ b/docs/html/tools/debugging/improving-w-lint.jd
@@ -0,0 +1,219 @@
+page.title=Improving Your Code with lint
+parent.title=Debugging
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+    <div id="qv">
+      <h2>In This Document</h2>
+
+      <ol>
+        <li><a href="#overview">Overview</a></li>
+        <li><a href=#eclipse">Running lint from Eclipse</a></li>
+        <li><a href=#commandline">Running lint from the command-line</a></li>
+         <li><a href=#config">Configuring lint</a>
+            <ol>
+		<LI><a href="#eclipse_config">Configuring lint in Eclipse</a></LI>
+                <LI><a href="#pref">Configuring the lint file</a></LI>
+                <LI><a href="#src">Configuring lint checking in Java and XML source files</a></LI>
+            </ol>
+         </li>
+      </ol>
+      <h2>See Also</h2>
+          <ol>
+              <li><a href="{@docRoot}tools/help/lint.html">lint (reference)</a></li>
+          </ol>
+    </div>
+</div>
+
+
+<p>
+In addition to testing that your Android application meets its functional requirements, it's important to ensure that your code has no structural problems. Poorly structured code can impact the reliability and efficiency of your Android apps and make your code harder to maintain. For example, if your XML resource files contain unused namespaces, this takes up space and incurs unnecessary processing. Other structural issues, such as use of deprecated elements or API calls that are not supported by the target API versions, might lead to code failing to run correctly.</p>
+
+<h2 id="overview">Overview</h2>
+<p>The Android SDK provides a code scanning tool called {@code lint} that can help you to easily identify and correct problems with the structural quality of your code, without having to execute the app or write any test cases. Each problem detected by the tool is reported with a description message and a severity level, so that you can quickly prioritize the critical improvements that need to be made.  You can also configure a problem's severity level to ignore issues that are not relevant for your project, or raise the severity level. The tool has a command-line interface, so you can easily integrate it into your automated testing process.</p>
+<p>The {@code lint} tool checks your Android project source files for potential bugs and optimization improvements for correctness, security, performance, usability, accessibility, and internationalization. You can run {@code lint} from the command-line or from the Eclipse environment.</p>
+<p>Figure 1 shows how the {@code lint} tool processes the application source files.</p>
+<img id="Fig1" src="{@docRoot}images/tools/lint.png" alt="">
+<p class="img-caption"><strong>Figure 1.</strong> Code scanning workflow with the {@code lint} tool</p>
+<dl>
+<dt><b>Application source files</b></dt>
+<dd>The source files consist of files that make up your Android project, including Java and XML files, icons, and ProGuard configuration files. </dd>
+<dt><b>The <code>lint.xml</code> file</b></dt>
+<dd>A configuration file that you can use to specify any {@code lint} checks that you want to exclude and to customize problem severity levels.</dd>
+<dt><b>The {@code lint} tool</b></dt>
+<dd>A static code scanning tool that you can run on your Android project from the command-line or from Eclipse.   The {@code lint} tool checks for structural code problems that could affect the quality and performance of your Android application. It is strongly recommended that you correct any errors that {@code lint} detects before publishing your application.</dd>
+<dt><b>Results of {@code lint} checking</b></dt>
+<dd>You can view the results from {@code lint} in the console or in the <strong>Lint Warnings</strong> view in Eclipse.  Each issue is identified by the location in the source files where it occurred and a description of the issue.</dd>
+</dl>
+<p>The {@code lint} tool is automatically installed as part of the Android SDK Tools revision 16 or higher. If you want to use {@code lint} in the Eclipse environment, you must also install the Android Development Tools (ADT) Plugin for Eclipse revision 16 or higher. For more information about installing the SDK or the ADT Plugin for Eclipse, see <a href="http://developer.android.com/sdk/installing.html">Installing the SDK.</a></p>
+
+<h2 id="eclipse">Running lint from Eclipse</h2>
+<p>If the ADT Plugin is installed in your Eclipse environment, the {@code lint} tool runs automatically when you perform one of these actions:</p>
+<ul>
+<LI>Export an APK</LI>
+<LI>Edit and save an XML source file in your Android project (such as a manifest or layout file)</LI>
+<LI>Use the layout editor in Eclipse to make changes</LI>
+</ul>
+<p>Note that when you export an APK, {@code lint} only runs an automatic check for fatal errors and aborts the export if fatal errors are found. You can turn off this automatic checking from the <strong>Lint Error Checking</strong> page in Eclipse Preferences. </p>
+<p>The output is displayed in the <strong>Lint Warnings</strong> view. If the <strong>Lint Warnings</strong> view is not showing in the workbench, you can bring it up from the Eclipse menu by clicking <strong>Window &gt; Show View &gt; Other &gt;  Android &gt; Lint Warnings</strong>.</p>
+<p>Figure 2 shows an example of the output in the Lint Warnings view.</p>
+<img id="Fig2" src="{@docRoot}images/tools/lint_output.png" alt="">
+<p class="img-caption"><strong>Figure 2.</strong> Sample output in the <strong>Lint Warnings</strong> view</p>
+<p>You can also run a {@code lint} scan manually on your Android project in Eclipse by right-clicking on the project folder in the Package Explorer > <strong>Android Tools  &gt; Run Lint: Check for Common Errors</strong>.</p>
+
+
+<h2 id="commandline">Running lint from the Command-Line</h2>
+<p>
+To run {@code lint} against a list of files in a project directory:
+<pre>lint [flags] &lt;project directory&gt;</pre>
+<p>For example, you can issue the following command to scan the files under the {@code myproject} directory and its subdirectories. The issue ID  <code>MissingPrefix</code> tells {@code lint} to only scan for XML attributes that are missing the Android namespace prefix.</p>
+<pre>lint --check MissingPrefix myproject </pre>
+<p>To see the full list of flags and command-line arguments supported by the tool:</p>
+<pre>lint --help</pre>
+</p>
+
+<h3>Example lint output</h3>
+<p>The following example shows the console output when the {@code lint} command is run against a project called Earthquake.  </p>
+<pre>
+$ lint Earthquake
+
+Scanning Earthquake: ...............................................................................................................................
+Scanning Earthquake (Phase 2): .......
+AndroidManifest.xml:23: Warning: &lt;uses-sdk&gt; tag appears after &lt;application&gt; tag [ManifestOrder]
+  &lt;uses-sdk android:minSdkVersion="7" /&gt;
+  ^
+AndroidManifest.xml:23: Warning: &lt;uses-sdk&gt; tag should specify a target API level (the highest verified version; when running on later versions, compatibility behaviors may be enabled) with android:targetSdkVersion="?" [UsesMinSdkAttributes]
+  &lt;uses-sdk android:minSdkVersion="7" /&gt;
+  ^
+res/layout/preferences.xml: Warning: The resource R.layout.preferences appears to be unused [UnusedResources]
+res: Warning: Missing density variation folders in res: drawable-xhdpi [IconMissingDensityFolder]
+0 errors, 4 warnings
+</pre>
+<p>The output above lists four warnings and no errors in this project.  Three warnings ({@code ManifestOrder}, {@code UsesMinSdkAttributes}, and {@code UsesMinSdkAttributes}) were found in the project's <code>AndroidManifest.xml</code> file. The remaining warning ({@code IconMissingDensityFolder}) was found in the <code>Preferences.xml</code> layout file.</p>
+
+<h2 id="config">Configuring lint</h2>
+<p>By default, when you run a {@code lint} scan, the tool checks for all issues that are supported by {@code lint}.  You can also restrict the issues for {@code lint} to check and assign the severity level for those issues. For example, you can disable {@code lint} checking for specific issues that are not relevant to your project and configure {@code lint} to report non-critical issues at a lower severity level.</p>
+<p>You can configure {@code lint} checking at different levels:</p>
+<ul>
+<LI>Globally, for all projects</LI>
+<li>Per project</li>
+<li>Per file</li>
+<li>Per Java class or method (by using the <code>&#64;SuppressLint</code> annotation), or per XML element (by using the <code>tools:ignore</code> attribute.</li>
+</ul>
+
+<h3 id="eclipse_config">Configuring lint in Eclipse</h3>
+<p>You can configure global, project-specific, and file-specific settings for {@code lint} from the Eclipse user interface.</p>
+
+<h4>Global preferences</h4>
+<ol>
+<LI>Open <strong>Window  &gt; Preferences  &gt; Android  &gt; Lint Error Checking</strong>.</LI>
+<li>Specify your preferences and click <b>OK</b>.</li>
+</ol>
+<p>These settings are applied by default when you run {@code lint} on your Android projects in Eclipse.</p>
+
+<h4>Project and file-specific preferences</h4>
+<ol>
+<LI>Run the {@code lint} tool on your project by right-clicking on your project folder in the Package Explorer and selecting  <strong>Android Tools &gt; Run Lint: Check for Common Errors</strong>. This action brings up the <strong>Lint Warnings</strong> view which displays a list of issues that {@code lint} detected in your project.</LI>
+<li>From the <strong>Lint Warnings</strong> view, use the toolbar options to configure {@code lint} preferences for individual projects and files in Eclipse. The options you can select include:
+<ul>
+<LI><b>Suppress this error with an annotation/attribute</b> - If the issue appears in a Java class, the {@code lint} tool adds a <code>&#64;SuppressLint</code> annotation to the method where the issue was detected.  If the issue appears in an {@code .xml} file, {@code lint} inserts a <code>tools:ignore</code> attribute to disable checking for the {@code lint} issue in this file.</LI>
+<LI><b>Ignore in this file</b> - Disables checking for this {@code lint} issue in this file.</LI>
+<li><b>Ignore in this project</b>  - Disables checking for this {@code lint} issue in this project.</li>
+<li><b>Always ignore</b> - Disables checking for this {@code lint} issue globally for all projects.</li>
+</ul>
+</li>
+</ol>
+<p>If you select the second or third option, the {@code lint} tool automatically generates a <code>lint.xml</code> file with these configuration settings in your Android application project folder.  </p>
+
+<h3 id="pref">Configuring the lint file</h3>
+<p>You can specify your {@code lint} checking preferences in the <code>lint.xml</code> file.  If you are creating this file manually, place it in the root directory of your Android project.  If you are configuring {@code lint} preferences in Eclipse, the <code>lint.xml</code> file is automatically created and added to your Android project for you.</p>
+<p>The <code>lint.xml</code> file consists of an enclosing <code>&lt;lint&gt;</code> parent tag that contains one or more children <code>&lt;issue&gt;</code> elements.  Each <code>&lt;issue&gt;</code> is identified by a unique <code>id</code> attribute value, which is defined by {@code lint}.</p>
+<pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+    &lt;lint&gt;
+        &lt;!-- list of issues to configure --&gt;
+&lt;/lint&gt;
+</pre>
+<p>By setting the severity attribute value in the <code>&lt;issue&gt;</code> tag, you can disable {@code lint} checking for an issue or change the severity level for an issue.  </p>
+<p class="note"><strong>Tip: </strong>To see the full list of issues supported by the {@code lint} tool and their corresponding issue IDs, run the <code>lint --list</code> command.</p>
+
+<h4>Sample lint.xml file</h4>
+<p>The following example shows the contents of a <code>lint.xml</code> file.</p>
+<pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;lint&gt;
+    &lt;!-- Disable the given check in this project --&gt;
+    &lt;issue id="IconMissingDensityFolder" severity="ignore" /&gt;
+
+    &lt;!-- Ignore the ObsoleteLayoutParam issue in the specified files --&gt;
+    &lt;issue id="ObsoleteLayoutParam"&gt;
+        &lt;ignore path="res/layout/activation.xml" /&gt;
+        &lt;ignore path="res/layout-xlarge/activation.xml" /&gt;
+    &lt;/issue>
+
+    &lt;!-- Ignore the UselessLeaf issue in the specified file --&gt;
+    &lt;issue id="UselessLeaf"&gt;
+        &lt;ignore path="res/layout/main.xml" /&gt;
+    &lt;/issue&gt;
+
+    &lt;!-- Change the severity of hardcoded strings to "error" --&gt;
+    &lt;issue id="HardcodedText" severity="error" /&gt;
+&lt;/lint&gt;
+</pre>
+
+<h3 id="src">Configuring lint checking in Java and XML source files</h3>
+<p>You can disable {@code lint} checking from your Java and XML source files.</p>
+
+<p class="note"><strong>Tip: </strong>If you are using Eclipse, you can use the <strong>Quick Fix</strong> feature to automatically add the annotation or attribute to disable {@code lint} checking to your Java or XML source files:
+<ol>
+<LI>Open the Java or XML file that has a {@code lint} warning or error in an Eclipse editor.</LI>
+<LI>Move your cursor to the location in the file where is {@code lint} issue is found, then press <code>Ctrl+1</code> to bring up the <strong>Quick Fix</strong> pop-up.</LI>
+<li>From the <strong>Quick Fix</strong> pop-up, select the action to add an annotation or attribute to ignore the {@code lint} issue.</li>
+</ol>
+</p>
+
+<h4>Configuring lint checking in Java</h4>
+<p>To disable {@code lint} checking specifically for a Java class or method in your Android project, add the <code>&#64;SuppressLint</code> annotation to that Java code. </p>
+<p>The following example shows how you can turn off {@code lint} checking for the {@code NewApi} issue in the <code>onCreate</code> method.  The {@code lint} tool continues to check for the {@code NewApi} issue in other methods of this class.</p>
+<pre>
+&#64;SuppressLint("NewApi")
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main);
+</pre>
+<p>The following example shows how to turn off {@code lint} checking for the {@code ParserError} issue in the <code>FeedProvider</code> class:</p>
+<pre>
+&#64;SuppressLint("ParserError")
+public class FeedProvider extends ContentProvider {
+</pre>
+<p>To suppress checking for all {@code lint} issues in the Java file, use the {@code all} keyword, like this:</p>
+<pre>
+&#64;SuppressLint("all")
+</pre>
+
+<h4>Configuring lint checking in XML</h4>
+<p>You can use the <code>tools:ignore</code> attribute to disable {@code lint} checking for specific sections of your XML files.  In order for this attribute to be recognized by the {@code lint} tool, the following namespace value must be included in your XML file:</p>
+<pre>
+namespace xmlns:tools="http://schemas.android.com/tools"
+</pre>
+<p>The following example shows how you can turn off {@code lint} checking for the  {@code UnusedResources} issue for the <code>&lt;LinearLayout&gt;</code> element of an XML layout file.  The <code>ignore</code> attribute is inherited by the children elements of the parent element in which the attribute is declared. In this example, the {@code lint} check is also disabled for the child <code>&lt;TextView&gt;</code> element. </p>
+<pre>
+&lt;LinearLayout 
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="UnusedResources" &gt;
+
+    &lt;TextView
+        android:text="&#64;string/auto_update_prompt" /&gt;
+&lt;/LinearLayout&gt;
+</pre>
+<p>To disable more than one issue, list the issues to disable in a comma-separated string.  For example:</p>
+<pre>
+tools:ignore="NewApi,StringFormatInvalid"
+</pre>
+<p>To suppress checking for all {@code lint} issues in the XML element, use the {@code all} keyword, like this:</p>
+<pre>
+tools:ignore="all"
+</pre>
diff --git a/docs/html/tools/extras/support-library.jd b/docs/html/tools/extras/support-library.jd
index 869a15b..b1e2ea0 100644
--- a/docs/html/tools/extras/support-library.jd
+++ b/docs/html/tools/extras/support-library.jd
@@ -90,6 +90,24 @@
 <div class="toggleable opened">
   <a href="#" onclick="return toggleDiv(this)">
   <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px"
+/>Support Package, revision 10</a> <em>(August 2012)</em>
+  <div class="toggleme">
+    <dl>
+      <dt>Changes for v4 support library:</dt>
+      <dd>
+        <ul>
+          <li>Added support for notification features introduced in Android 4.1 (API Level 16) with
+          additions to {@link android.support.v4.app.NotificationCompat}.</li>
+        </ul>
+      </dd>
+    </dl>
+  </div>
+</div>
+
+
+<div class="toggleable closed">
+  <a href="#" onclick="return toggleDiv(this)">
+  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px"
 />Support Package, revision 9</a> <em>(June 2012)</em>
   <div class="toggleme">
     <dl>
@@ -589,3 +607,4 @@
 <p>Additionally, the <a href="http://code.google.com/p/iosched/">Google I/O App</a> is a complete
 application that uses the v4 support library to provide a single APK for both handsets and tablets
 and also demonstrates some of Android's best practices in Android UI design.</p>
+
diff --git a/docs/html/tools/help/adb.jd b/docs/html/tools/help/adb.jd
index 4e75f2e..d44d54b 100644
--- a/docs/html/tools/help/adb.jd
+++ b/docs/html/tools/help/adb.jd
@@ -88,13 +88,14 @@
 	<li>Serial number &mdash; A string created by adb to uniquely identify an emulator/device instance by its 
         console port number. The format of the serial number is <code>&lt;type&gt;-&lt;consolePort&gt;</code>. 
         Here's an example serial number: <code>emulator-5554</code></li>
-	<li>State &mdash; The connection state of the instance. Three states are supported: 
+	<li>State &mdash; The connection state of the instance may be one of the following:
 		<ul>
 		<li><code>offline</code> &mdash; the instance is not connected to adb or is not responding.</li>
 		<li><code>device</code> &mdash; the instance is now connected to the adb server. Note that this state does not 
                     imply that the Android system is fully booted and operational, since the instance connects to adb 
                     while the system is still booting. However, after boot-up, this is the normal operational state of 
                     an emulator/device instance.</li>
+                <li><code>no device</code> &mdash; there is no emulator/device connected.
 		</ul>
 	</li>
 </ul>
@@ -111,7 +112,6 @@
 emulator-5556&nbsp;&nbsp;device
 emulator-5558&nbsp;&nbsp;device</pre>
 
-<p>If there is no emulator/device running, adb returns <code>no device</code>.</p>
 
 
 <a name="directingcommands"></a>
diff --git a/docs/html/tools/help/bmgr.jd b/docs/html/tools/help/bmgr.jd
index 2248fa6..8823f33 100644
--- a/docs/html/tools/help/bmgr.jd
+++ b/docs/html/tools/help/bmgr.jd
@@ -7,9 +7,6 @@
 
 <div id="qv-wrapper">
 <div id="qv">
-  <h2>bmgr quickview</h2>
-<p><code>bmgr</code> lets you control the backup/restore system on an Android device.
-
   <h2>In this document</h2>
   <ol>
 <li><a href="#backup">Forcing a Backup Operation</a></li>
diff --git a/docs/html/tools/help/gltracer.jd b/docs/html/tools/help/gltracer.jd
index 35c405e..700ee39 100644
--- a/docs/html/tools/help/gltracer.jd
+++ b/docs/html/tools/help/gltracer.jd
@@ -5,9 +5,9 @@
 <div id="qv">
   <h2>In this document</h2>
   <ol>
-    <li><a href="running">Running Tracer</a></li>
-    <li><a href="generating">Generating a Trace</a></li>
-    <li><a href="analyzing">Analyzing a Trace</a></li>
+    <li><a href="#running">Running Tracer</a></li>
+    <li><a href="#generating">Generating a Trace</a></li>
+    <li><a href="#analyzing">Analyzing a Trace</a></li>
   </ol>
   <h2>See also</h2>
   <ol>
diff --git a/docs/html/tools/help/lint.jd b/docs/html/tools/help/lint.jd
new file mode 100644
index 0000000..ba31f6d
--- /dev/null
+++ b/docs/html/tools/help/lint.jd
@@ -0,0 +1,178 @@
+page.title=lint
+parent.title=Tools
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+  <div id="qv">
+     <h2>In this document</h2>
+  <ol>
+     <li><a href="#syntax">Syntax</a></li>
+     <li><a href="#options">Options</a></li>
+     <li><a href="#config_keywords">Configuring Java and XML Source Files</a></li>
+  </ol>
+  </div>
+</div>
+
+<p>The Android {@code lint} tool is a static code analysis tool that checks your Android project source files for potential bugs and optimization improvements for correctness, security, performance, usability, accessibility, and internationalization. </p>
+<p>For more information on running {@code lint}, see <a href="{@docRoot}tools/debugging/improving-w-lint.html">Improving Your Code with lint</a>.</p>
+
+<h2 id="syntax">Syntax</h2>
+<p>
+<pre>lint [flags] &lt;project directory&gt;</pre>
+
+For example, you can issue the following command to scan the Java and XML files under the {@code myproject}  directory and its subdirectories. The result is displayed on the console.
+<pre>lint myproject</pre>
+
+You can also use {@code lint} to check for a specific issue. For example, you can run the following command to scan the files under the {@code myproject} directory and its subdirectories to check for XML attributes missing the Android namespace prefix. The issue ID {@code MissingPrefix} tells lint to only scan for this issue.
+<pre>lint --check MissingPrefix myproject</pre>
+
+You can create an HTML report for the issues that {@code lint} detects. For example, you can run the following command to scan the {@code myproject} directory and its subdirectories for accessibility issues, then generate an HTML report in the {@code accessibility_report.html} file.
+<pre>lint --check Accessibility --HTML accessibility_report.html myproject</pre>
+</p>
+
+<h2 id="options">Options</h2>
+<p>Table 1 describes the command-line options for {@code lint}.</p>
+<p class="table-caption" id="table1">
+  <strong>Table 1.</strong> Command-line options for lint</p>
+<table>
+<tr>
+  <th>Category</th>
+  <th>Option</th>
+  <th>Description</th>
+  <th>Comments</th>
+</tr>
+
+<tr>
+<td rowspan="7">Checking</td>
+<td><nobr><code>--disable &lt;list&gt;</code></nobr></td>
+<td>Disable checking for a specific list of issues.</td>
+<td>The <code>&lt;list&gt;</code> must be a comma-separated list of {@code lint} issue IDs or categories.</td>
+</tr>
+
+<tr>
+<td><nobr><code>--enable &lt;list&gt;</code></nobr></td>
+<td>Check for all the default issues supported by {@code lint} as well as the specifically enabled list of issues.</td>
+<td>The <code>&lt;list&gt;</code> must be a comma-separated list of {@code lint} issue IDs or categories.</td>
+</tr>
+
+<tr>
+<td><nobr><code>--check &lt;list&gt;</code></nobr></td>
+<td>Check for a specific list of issues.</td>
+<td>The <code>&lt;list&gt;</code> must be a comma-separated list of {@code lint} issue IDs or categories.</td>
+</tr>
+
+<tr>
+<td><nobr><code>-w</code> or <code>--nowarn</code></nobr></td>
+<td>Only check for errors and ignore warnings</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>-Wall</code></nobr></td>
+<td>Check for all warnings, including those that are disabled by default</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>-Werror</code></nobr></td>
+<td>Report all warnings as errors</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>--config &lt;filename&gt;</code></nobr></td>
+<td>Use the specified configuration file to determine if issues are enabled or disabled for {@code lint} checking</td>
+<td>If the project contains a {@code lint.xml} file, the {@code lint.xml} file will be used as the configuration file by default.</td>
+</tr>
+
+<tr>
+<td rowspan="9">Reporting</td>
+<td><nobr><code>--html &lt;filename&gt;</code></nobr></td>
+<td>Generate an HTML report.</td>
+<td>The report is saved in the output file specified in the argument. The HTML output includes code snippets of the source code where {@code lint} detected an issue, a verbose description of the issue found, and links to the source file.</td>
+</tr>
+
+<tr>
+<td><nobr><code>--url &lt;filepath&gt;=&lt;url&gt;</code></nobr></td>
+<td>In the HTML output, replace a local path prefix <code>&lt;filepath&gt;</code> with a url prefix <code>&lt;url&gt;</code>.</td>
+<td>The {@code --url} option only applies when you are generating an HTML report with the {@code --html} option. You can specify multiple &lt;filepath&gt;=&lt;url&gt; mappings in the argument by separating each mapping with a comma.<p>To turn off linking to files, use {@code --url none}</p></td>
+</tr>
+
+<tr>
+<td><nobr><code>--simplehtml &lt;filename&gt;</code></nobr></td>
+<td>Generate a simple HTML report</td>
+<td>The report is saved in the output file specified in the argument.</td>
+</tr>
+
+<tr>
+<td><nobr><code>--xml &lt;filename&gt;</code></nobr></td>
+<td>Generate an XML report</td>
+<td>The report is saved in the output file specified in the argument.</td>
+</tr>
+
+<tr>
+<td><nobr><code>--fullpath</code></nobr></td>
+<td>Show the full file paths in the {@code lint} checking results.</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>--showall</code></nobr></td>
+<td>Don't truncate long messages or lists of alternate locations.</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>--nolines</code></nobr></td>
+<td>Don't include code snippets from the source files in the output.</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>--exitcode</code></nobr></td>
+<td>Set the exit code to 1 if errors are found.</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>--quiet</code></nobr></td>
+<td>Don't show the progress indicator.</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td rowspan="4">Help</td>
+<td><nobr><code>--help</code></nobr></td>
+<td>List the command-line arguments supported by the {@code lint} tool.</td>
+<td>Use {@code --help &lt;topic&gt;} to see help information for a specific topic, such as "suppress".</td>
+</tr>
+
+<tr>
+<td><nobr><code>--list</code></nobr></td>
+<td>List the ID and short description for issues that can be checked by {@code lint}</td>
+<td>&nbsp;</td>
+</tr>
+
+<tr>
+<td><nobr><code>--show</code></nobr></td>
+<td>List the ID and verbose description for issues that can be checked by {@code lint}</td>
+<td>Use {@code --show &lt;ids&gt;} to see descriptions for a specific list of {@code lint} issue IDs.</td>
+</tr>
+
+<tr>
+<td><nobr><code>--version</code></nobr></td>
+<td>Show the {@code lint} version</td>
+<td>&nbsp;</td>
+</tr>
+
+</table>
+
+
+<h2 id="config_keywords">Configuring Java and XML Source Files</h2>
+<p>To configure lint checking, you can apply the following annotation or attribute to the source files in your Android project. </p>
+<ul>
+<LI>To disable lint checking for a specific Java class or method, use the <code>@SuppressLint</code> annotation. </LI>
+<li>To disable lint checking for specific sections of your XML file, use the <code>tools:ignore</code> attribute. </li>
+</ul>
+<p>You can also specify your lint checking preferences for a specific Android project in the lint.xml file.  For more information on configuring lint, see <a href="{@docRoot}tools/debugging/improving-w-lint.html">Improving Your Code with lint</a>.</p>
diff --git a/docs/html/tools/help/monitor.jd b/docs/html/tools/help/monitor.jd
index 8e2ea36..18fb49a 100644
--- a/docs/html/tools/help/monitor.jd
+++ b/docs/html/tools/help/monitor.jd
@@ -1,7 +1,7 @@
-page.title=Debug Monitor
+page.title=Device Monitor
 @jd:body
 
-<p>Android Debug Monitor is a stand-alone tool that provides a graphical user interface for
+<p>Android Device Monitor is a stand-alone tool that provides a graphical user interface for
 several Android application debugging and analysis tools. The Monitor tool does not
 require installation of a integrated development environment, such as Eclipse, and encapsulates the
 following tools:</p>
@@ -16,9 +16,9 @@
 
 <h2 id="usage">Usage</h2>
 
-<p>To start Debug Monitor, enter the following command from the SDK <code>tools/</code>
+<p>To start Device Monitor, enter the following command from the SDK <code>tools/</code>
 directory:</p>
   <pre>monitor</pre>
 
-<p>Start an Android emulator or connect an Android device via USB cable, and connect the Debug
+<p>Start an Android emulator or connect an Android device via USB cable, and connect Device
 Monitor to the device by selecting it in the <strong>Devices</strong> window.</p>
diff --git a/docs/html/tools/index.jd b/docs/html/tools/index.jd
index 3fc9bfe..04e0d3b 100644
--- a/docs/html/tools/index.jd
+++ b/docs/html/tools/index.jd
@@ -34,7 +34,7 @@
     
   <ul>
     <li>Build rich Android UI with drag and drop. 
-    <li>Vsualize your UI on tablets, phones, and other devices. Switch themes, locales, even plaform versions instantly, without building.</li>
+    <li>Visualize your UI on tablets, phones, and other devices. Switch themes, locales, even platform versions instantly, without building.</li>
     <li>Visual refactoring lets you extracts layout for inclusion, convert layouts, extract styles</li>
     <li>Editor support for working with custom UI components</li>
   </ul>
diff --git a/docs/html/tools/revisions/platforms.jd b/docs/html/tools/revisions/platforms.jd
index e57c221..62ec422 100644
--- a/docs/html/tools/revisions/platforms.jd
+++ b/docs/html/tools/revisions/platforms.jd
@@ -36,6 +36,107 @@
 
 
 
+
+<h2 id="4.1">Android 4.1</h2>
+
+
+<p class="caution"><strong>Important:</strong> To download the new Android
+4.0.x system components from the Android SDK Manager, you must first update the
+SDK tools to revision 20 or later and restart the Android SDK Manager. If you do not,
+the Android 4.1 system components will not be available for download.</p>
+
+<div class="toggle-content opened">
+
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-opened.png"
+class="toggle-content-img" alt="" />Revision 2</a> <em>(July 2012)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <p>Maintenance update. The system version is 4.1.1.</p>
+    <dl>
+      <dt>Dependencies:</dt>
+      <dd>SDK Tools r20 or higher is required.</dd>
+    </dl>
+
+  </div>
+</div>
+
+<div class="toggle-content closed" >
+
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png"
+class="toggle-content-img" alt="" />Revision 1</a> <em>(June 2012)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <p>Initial release. The system version is 4.1.0.</p>
+    <dl>
+      <dt>Dependencies:</dt>
+      <dd>SDK Tools r20 or higher is required.</dd>
+    </dl>
+
+  </div>
+</div>
+
+<h3>Emulator Skins</h3>
+
+<p>The downloadable platform includes the following emulator skins:</p>
+
+<ul>
+  <li>
+    QVGA (240x320, low density, small screen)
+  </li>
+  <li>
+    WQVGA400 (240x400, low density, normal screen)
+  </li>
+  <li>
+    WQVGA432 (240x432, low density, normal screen)
+  </li>
+  <li>
+    HVGA (320x480, medium density, normal screen)
+  </li>
+  <li>
+    WVGA800 (480x800, high density, normal screen)
+  </li>
+  <li>
+    WVGA854 (480x854 high density, normal screen)
+  </li>
+  <li>
+    WXGA720 (1280x720, extra-high density, normal screen)
+  </li>
+  <li>
+    WSVGA (1024x600, medium density, large screen)
+  </li>
+  <li>
+    WXGA800-7in (1280x800, high density, large screen) <span class="new">new</span>
+  </li>
+  <li>
+    WXGA800 (1280x800, medium density, xlarge screen)
+  </li>
+</ul>
+
+<p>To test your application on an emulator that represents the <a
+href="http://play.google.com/nexus7">Nexus 7</a> tablet device, you can create an AVD with
+the new WXGA800-7in skin. For best performance, make sure to enable <a
+href="{@docRoot}tools/devices/emulator.html#accel-graphics">graphics acceleration</a> in the
+emulator configuration.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 <h2 id="4.0.3">Android 4.0.3</h2>
 
 
@@ -44,15 +145,14 @@
 SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
 the Android 4.0.x system components will not be available for download.</p>
 
-<div class="toggle-content opened">
+<div class="toggle-content closed">
 
   <p><a href="#" onclick="return toggleContent(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png"
-class="toggle-content-img" alt="" />
-    Revision 3</a> <em>(March 2012)</em>
-  </a></p>
+    <img src="{@docRoot}assets/images/triangle-closed.png"
+class="toggle-content-img" alt="" />Revision 3</a> <em>(March 2012)</em>
+  </p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
 
     <p>Maintenance update. The system version is 4.0.4.</p>
     <p class="note"><strong>Note:</strong> This system image includes support for emulator
@@ -70,11 +170,10 @@
 
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-    Revision 2</a> <em>(January 2012)</em>
-  </a></p>
+class="toggle-content-img" alt="" />Revision 2</a> <em>(January 2012)</em>
+  </p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
 
     <p>Maintenance update. The system version is 4.0.3.</p>
     <dl>
@@ -89,11 +188,10 @@
 
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-    Revision 1</a> <em>(December 2011)</em>
-  </a></p>
+class="toggle-content-img" alt="" />Revision 1</a> <em>(December 2011)</em>
+  </p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
 
     <p>Initial release. The system version is 4.0.3.</p>
     <dl>
@@ -138,15 +236,6 @@
   </li>
 </ul>
 
-<p>To test your application on an emulator that represents the latest Android device, you can create
-an AVD with the new WXGA720 skin (it's an xhdpi, normal screen device). Note that the emulator
-currently doesn't support the new on-screen navigation bar for devices without hardware navigation
-buttons, so when using this skin, you must use keyboard keys <em>Home</em> for the Home button,
-<em>ESC</em> for the Back button, and <em>F2</em> or <em>Page-up</em> for the Menu button.</p>
-
-<p>However, due to performance issues in the emulator when running high-resolution screens such as
-the one for the WXGA720 skin, we recommend that you primarily use the traditional WVGA800 skin
-(hdpi, normal screen) to test your application.</p>
 
 
 
@@ -169,11 +258,10 @@
 
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-    Android 4.0, Revision 2</a> <em>(December 2011)</em>
-  </a></p>
+class="toggle-content-img" alt="" />Android 4.0, Revision 2</a> <em>(December 2011)</em>
+  </p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
     <p>Maintenance update. The system version is 4.0.2.</p>
     <dl>
       <dt>Dependencies:</dt>
@@ -186,11 +274,10 @@
 
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-    Android 4.0, Revision 1</a> <em>(October 2011)</em>
-  </a></p>
+class="toggle-content-img" alt="" />Android 4.0, Revision 1</a> <em>(October 2011)</em>
+  </p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
     <p>Initial release. The system version is 4.0.1.</p>
     <dl>
       <dt>Dependencies:</dt>
@@ -264,11 +351,10 @@
 
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-    Android 3.2, Revision 1</a> <em>(July 2011)</em>
-  </a></p>
+class="toggle-content-img" alt="" />Android 3.2, Revision 1</a> <em>(July 2011)</em>
+  </p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
 
 <dl>
 <dt>Initial release. SDK Tools r12 or higher is recommended.</dt>
@@ -319,11 +405,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android 3.1, Revision 3</a> <em>(July 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android 3.1, Revision 3</a> <em>(July 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 
 <dl>
 <dt>Dependencies:</dt>
@@ -348,11 +433,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android 3.1, Revision 2</a> <em>(May 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android 3.1, Revision 2</a> <em>(May 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 
 <dl>
 <dt>Dependencies:</dt>
@@ -375,11 +459,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android 3.1, Revision 1</a> <em>(May 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android 3.1, Revision 1</a> <em>(May 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 
 <dl>
 <dt>Dependencies:</dt>
@@ -425,11 +508,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android 3.0, Revision 2</a> <em>(July 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android 3.0, Revision 2</a> <em>(July 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 
 <dl>
 <dt>Dependencies:</dt>
@@ -452,11 +534,11 @@
 <div class="toggle-content closed">
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" />
-  Android 3.0, Revision 1</a> <em>(February 2011)</em>
-</a></p>
+  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" 
+       alt="" />Android 3.0, Revision 1</a> <em>(February 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
     
 <dl>
 <dt>Dependencies:</dt>
@@ -510,11 +592,11 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" />
-        Android 2.3.4, Revision 1</a> <em>(May 2011)</em>
-</a></p>
+  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" 
+       alt="" />Android 2.3.4, Revision 1</a> <em>(May 2011)</em>
+</p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
     <dl>
       <dt>Dependencies:</dt>
       <dd>
@@ -571,11 +653,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android 2.3.3, Revision 2</a> <em>(July 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android 2.3.3, Revision 2</a> <em>(July 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 
 <dl>
 <dt>Dependencies:</dt>
@@ -599,11 +680,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android 2.3.3, Revision 1</a> <em>(February 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android 2.3.3, Revision 1</a> <em>(February 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -667,11 +747,11 @@
 <div class="toggle-content closed" >
 
 <p><a href="#" onclick="return toggleContent(this)">
-  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" />
-        Android 2.3, Revision 1</a> <em>(December 2010)</em>
-</a></p>
+  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" 
+       alt="" />Android 2.3, Revision 1</a> <em>(December 2010)</em>
+</p>
 
-  <div class="toggle-content-toggleme" style="padding-left:2em;">
+  <div class="toggle-content-toggleme">
     <dl>
       <dt>Dependencies:</dt>
       <dd>
@@ -724,11 +804,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android {@sdkPlatformVersion}, Revision 3</a> <em>(July 2011)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 3</a> <em>(July 2011)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 
 <dl>
 <dt>Dependencies:</dt>
@@ -752,11 +831,10 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android {@sdkPlatformVersion}, Revision 2</a> <em>(July 2010)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 2</a> <em>(July 2010)</em>
+</p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 <dt>Dependencies:</dt>
 <dd>
 <p>Requires SDK Tools r6 or higher.</p>
@@ -781,11 +859,9 @@
 
 <p><a href="#" onclick="return toggleContent(this)">
   <img src="{@docRoot}assets/images/triangle-closed.png"
-class="toggle-content-img" alt="" />
-  Android {@sdkPlatformVersion}, Revision 1</a> <em>(May 2010)</em>
-</a></p>
+class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 1</a> <em>(May 2010)</em></p>
 
-<div class="toggle-content-toggleme" style="padding-left:2em;">
+<div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -794,7 +870,7 @@
 
 <dt>Tools:</dt>
 <dd>
-<p>Adds support for building with Android library projects. See <a href="tools-notes.html">SDK
+<p>Adds support for building with Android library projects. See <a href="{@docRoot}tools/sdk/tools-notes.html">SDK
 Tools, r6</a> for information.</p>
 </dd>
 
diff --git a/docs/html/tools/samples/index.jd b/docs/html/tools/samples/index.jd
index 5c0e8db..ed416e6 100644
--- a/docs/html/tools/samples/index.jd
+++ b/docs/html/tools/samples/index.jd
@@ -3,7 +3,8 @@
 @jd:body
 
 <p>To help you understand some fundamental Android APIs and coding practices, a variety of sample
-code is available from the Android SDK Manager.</p>
+code is available from the Android SDK Manager. Each version of the Android platform available
+from the SDK Manager offers its own set of sample apps.</p>
 
 <p>To download the samples:</p>
 <ol>
@@ -18,14 +19,14 @@
   <li>Select and download <em>Samples for SDK</em>.</li>
 </ol>
 
-<p>When the download is complete, you can find the samples sources at this location:</p>
+<p>When the download is complete, you can find the source code for all samples at this location:</p>
 
 <p style="margin-left:2em">
-<code><em>&lt;sdk&gt;</em>/platforms/&lt;android-version>/samples/</code>
+<code>&lt;sdk&gt;/samples/android-&lt;version>/</code>
 </p>
 
+<p>The {@code &lt;version>} number corresponds to the platform's
+  <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API level</a>.</p>
+
 <p>You can easily create new Android projects with the downloaded samples, modify them
-if you'd like, and then run them on an emulator or device. </p>
-<!--
-<p>Below are summaries for several of the available samples.</p>
--->
\ No newline at end of file
+if you'd like, and then run them on an emulator or device.</p>
\ No newline at end of file
diff --git a/docs/html/tools/sdk/eclipse-adt.jd b/docs/html/tools/sdk/eclipse-adt.jd
index aa21423..10c622b 100644
--- a/docs/html/tools/sdk/eclipse-adt.jd
+++ b/docs/html/tools/sdk/eclipse-adt.jd
@@ -95,7 +95,113 @@
 
 <div class="toggleable opened">
   <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px"
+  <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px"
+    width="9px"/>
+ADT 20.0.3</a> <em>(August 2012)</em>
+  <div class="toggleme">
+<dl>
+  <dt>Dependencies:</dt>
+
+  <dd>
+    <ul>
+      <li>Java 1.6 or higher is required for ADT 20.0.3.</li>
+      <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.3.</li>
+      <li>ADT 20.0.3 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK
+      Tools r20.0.3</a>. If you haven't already installed SDK Tools r20.0.3 into your SDK, use the
+      Android SDK Manager to do so.</li>
+    </ul>
+  </dd>
+
+  <dt>Bug fixes:</dt>
+  <dd>
+    <ul>
+      <li>Fixed issue with keyboard shortcuts for editors in Eclipse Juno (Version 4.x).</li>
+      <li>Fixed problem with cached download lists in SDK Manager.</li>
+    </ul>
+  </dd>
+
+</dl>
+
+</div>
+</div>
+
+
+<div class="toggleable closed">
+  <a href="#" onclick="return toggleDiv(this)">
+  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
+    width="9px"/>
+ADT 20.0.2</a> <em>(July 2012)</em>
+  <div class="toggleme">
+<dl>
+  <dt>Dependencies:</dt>
+
+  <dd>
+    <ul>
+      <li>Java 1.6 or higher is required for ADT 20.0.2.</li>
+      <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.2.</li>
+      <li>ADT 20.0.2 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK
+      Tools r20.0.1</a>. If you haven't already installed SDK Tools r20.0.1 into your SDK, use the
+      Android SDK Manager to do so.</li>
+    </ul>
+  </dd>
+
+  <dt>Bug fixes:</dt>
+  <dd>
+    <ul>
+      <li>Fixed keybindings in various XML editors for Eclipse 4.x.</li>
+      <li>Fixed bug when creating layout configurations that already exist.</li>
+    </ul>
+  </dd>
+
+</dl>
+
+</div>
+</div>
+
+
+<div class="toggleable closed">
+  <a href="#" onclick="return toggleDiv(this)">
+  <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
+    width="9px"/>
+ADT 20.0.1</a> <em>(July 2012)</em>
+  <div class="toggleme">
+<dl>
+  <dt>Dependencies:</dt>
+
+  <dd>
+    <ul>
+      <li>Java 1.6 or higher is required for ADT 20.0.1.</li>
+      <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.1.</li>
+      <li>ADT 20.0.1 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK
+      Tools r20.0.1</a>. If you haven't already installed SDK Tools r20.0.1 into your SDK, use the
+      Android SDK Manager to do so.</li>
+    </ul>
+  </dd>
+
+  <dt>Bug fixes:</dt>
+  <dd>
+    <ul>
+      <li>Fixed issue in the New Project Wizard related to installation of the Support Library.</li>
+      <li>Fixed several issues with New Project Wizard related to templates.</li>
+      <li>Fixed issue with the text-based launcher icon in New Project Wizard.</li>
+      <li>Fixed issue with sticky error markers in Java files.</li>
+      <li>Fixed problem with manifest merger when exporting release {@code .apk} files.</li>
+      <li>Fixed NDK support to automatically find include path on Windows.</li>
+      <li>Fixed editor startup exception for new configurations where editor would come up blank.</li>
+      <li>Added support for {@code xxhdpi} density, which was included in API Level 16.</li>
+      <li>Fixed a bug in the {@code lint} check for unprotected broadcast receivers to ignore
+unprotected receivers for default Android actions.</li>
+    </ul>
+  </dd>
+
+</dl>
+
+</div>
+</div>
+
+<div class="toggleable closed">
+  <a href="#" onclick="return toggleDiv(this)">
+        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
 width="9px" />
 ADT 20.0.0</a> <em>(June 2012)</em>
   <div class="toggleme">
@@ -325,7 +431,7 @@
     <ul>
       <li>Fixed problem using Layout Editor with {@link android.widget.SlidingDrawer} which could
         not be dragged into the layout on some platforms.</li>
-      <li>Fixed preview rendering for {@link android.widget.SlidingDrawer} and 
+      <li>Fixed preview rendering for {@link android.widget.SlidingDrawer} and
         {@link android.widget.TabHost}.
         (<a href="http://code.google.com/p/android/issues/detail?id=23022">Issue 23022</a>).</li>
       <li>Fixed issues that could prevent layout rendering due to unresolvable resources.
diff --git a/docs/html/tools/sdk/installing.jd b/docs/html/tools/sdk/installing.jd
index 126d992..d7f1957 100644
--- a/docs/html/tools/sdk/installing.jd
+++ b/docs/html/tools/sdk/installing.jd
@@ -375,7 +375,7 @@
 <td colspan="3"><code>docs/</code></td>
 <td>A full set of documentation in HTML format, including the Developer's Guide,
 API Reference, and other information. To read the documentation, load the
-file <code>offline.html</code> in a web browser.</td>
+file <code>index.html</code> in a web browser.</td>
 </tr>
 <tr>
 <td colspan="3"><code>platform-tools/</code></td>
diff --git a/docs/html/tools/sdk/ndk/index.jd b/docs/html/tools/sdk/ndk/index.jd
index 6be3168..064b2c3 100644
--- a/docs/html/tools/sdk/ndk/index.jd
+++ b/docs/html/tools/sdk/ndk/index.jd
@@ -1,16 +1,16 @@
 ndk=true
 
-ndk.win_download=android-ndk-r8-windows.zip
-ndk.win_bytes=109928336
-ndk.win_checksum=37b1a2576f28752fcc09e1b9c07e3f14
+ndk.win_download=android-ndk-r8b-windows.zip
+ndk.win_bytes=188724991
+ndk.win_checksum=6d290d4f2729ef2063c5ae5b1e335622
 
-ndk.mac_download=android-ndk-r8-darwin-x86.tar.bz2
-ndk.mac_bytes=96650992
-ndk.mac_checksum=81ce5de731f945692123b377afe0bad9
+ndk.mac_download=android-ndk-r8b-darwin-x86.tar.bz2
+ndk.mac_bytes=181255568
+ndk.mac_checksum=94fe392194ea41f8a70cfce0dee3870f
 
-ndk.linux_download=android-ndk-r8-linux-x86.tar.bz2
-ndk.linux_bytes=88310791
-ndk.linux_checksum=5c9afc9695ad67c61f82fbf896803c05
+ndk.linux_download=android-ndk-r8b-linux-x86.tar.bz2
+ndk.linux_bytes=160466240
+ndk.linux_checksum=6694ccc04d543500f0661a75f6c46526
 
 page.title=Android NDK
 
@@ -41,7 +41,7 @@
       </ol>
     </div>
   </div>
-  
+
   <p>The NDK is a toolset that allows you to implement parts
   of your app using native-code languages such as C and C++. For certain types of apps,
   this can be helpful so that you may reuse existing code libraries written in these
@@ -62,12 +62,12 @@
 
 <h2 id="Downloads">Downloads</h2>
 
-  
+
 <script>
 $('#Downloads').after($('#download-table'));
 </script>
-  
-  
+
+
 <h2 id="Revisions">Revisions</h2>
 
 <p>The sections below provide information and notes about successive releases of
@@ -115,12 +115,204 @@
 <div class="toggleable open">
   <a href="#" onclick="return toggleDiv(this)"><img src=
   "{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px">
+  Android NDK, Revision 8b</a> <em>(July 2012)</em>
+
+  <div class="toggleme">
+    <p>The main features of this release are a new GNU Compiler Collection (GCC) 4.6 toolchain and
+GNU Debugger (GDB) 7.3.x which adds debugging support for the Android 4.1 (API Level 16) system
+image.</p>
+
+    <dl>
+      <dt>Important bug fixes:</dt>
+
+      <dd>
+        <ul>
+          <li>Fixed {@code LOCAL_SHORT_COMMANDS} issues on Mac OS, Windows Cygwin environments for
+static libraries. List file generation is faster, and it is not regenerated to avoid repeated
+project rebuilds.</li>
+          <li>Fixed several issues in {@code ndk-gdb}:
+            <ul>
+              <li>Updated tool to pass flags {@code -e}, {@code -d} and {@code -s} to adb more
+consistently.</li>
+              <li>Updated tool to accept device serial names containing spaces.</li>
+              <li>Updated tool to retrieve {@code /system/bin/link} information, so {@code gdb} on
+the host can set a breakpoint in {@code __dl_rtld_db_dlactivity} and be aware of linker activity
+(e.g., rescan {@code solib} symbols when {@code dlopen()} is called).</li>
+            </ul>
+          </li>
+          <li>Fixed {@code ndk-build clean} on Windows, which was failing to remove
+{@code ./libs/*/lib*.so}.</li>
+          <li>Fixed {@code ndk-build.cmd} to return a non-zero {@code ERRORLEVEL} when {@code make}
+fails.</li>
+          <li>Fixed {@code libc.so} to stop incorrectly exporting the {@code __exidx_start} and
+{@code __exidx_end} symbols.</li>
+          <li>Fixed {@code SEGV} when unwinding the stack past {@code __libc_init} for ARM and
+MIPS.</li>
+        </ul>
+      </dd>
+    </dl>
+
+    <dl>
+      <dt>Important changes:</dt>
+
+      <dd>
+        <ul>
+          <li>Added GCC 4.6 toolchain ({@code binutils} 2.21 with {@code gold} and GDB 7.3.x) to
+co-exist with the original GCC 4.4.3 toolchain ({@code binutils} 2.19 and GDB 6.6).</p>
+            <ul>
+              <li>GCC 4.6 is now the default toolchain. You may set {@code
+NDK_TOOLCHAIN_VERSION=4.4.3} in {@code Application.mk} to select the original one.</li>
+              <li>Support for the {@code gold} linker is only available for ARM and x86
+architectures on Linux and Mac OS hosts. This support is disabled by default. Add {@code
+LOCAL_LDLIBS += -fuse-ld=gold} in {@code Android.mk} to enable it.</li>
+              <li>Programs compiled with {@code -fPIE} require the new {@code GDB} for debugging,
+including binaries in Android 4.1 (API Level 16) system images.</li>
+              <li>The {@code binutils} 2.21 {@code ld} tool contains back-ported fixes from
+version 2.22:
+                <ul>
+                  <li>Fixed {@code ld --gc-sections}, which incorrectly retains zombie references to
+external libraries. (<a href="http://sourceware.org/bugzilla/show_bug.cgi?id=13177">more
+info</a>).</li>
+                  <li>Fixed ARM {@code strip} command to preserve the original {@code p_align} and
+{@code p_flags} in {@code GNU_RELRO} section if they are valid. Without this fix, programs
+built with {@code -fPIE} could not be debugged. (<a
+href="http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf.c.diff?cvsroot=src&r1=1.552&r2=1.553">more info</a>)</li>
+                </ul>
+              </li>
+              <li>Disabled {@code sincos()} optimization for compatibility with older
+                platforms.</li>
+            </ul>
+          </li>
+
+          <li>Updated build options to enable the Never eXecute (NX) bit and {@code relro}/{@code
+bind_now} protections by default:
+            <ul>
+              <li>Added {@code --noexecstack} to assembler and {@code -z noexecstack} to linker
+that provides NX protection against buffer overflow attacks by enabling NX bit on stack and
+heap.</li>
+              <li>Added {@code -z relro} and  {@code -z now} to linker for hardening of internal
+data sections after linking to guard against security vulnerabilities caused by memory corruption.
+(more info: <a href="http://www.akkadia.org/drepper/nonselsec.pdf">1</a>,
+<a href="http://tk-blog.blogspot.com/2009/02/relro-not-so-well-known-memory.html">2</a>)</li>
+
+              <li>These features can be disabled using the following options:
+                <ol>
+                  <li>Disable NX protection by setting the {@code --execstack} option for the
+assembler and {@code -z execstack} for the linker.</li>
+                  <li>Disable hardening of internal data by setting the {@code -z norelro} and
+{@code -z lazy} options for the linker.</li>
+                  <li>Disable these protections in the NDK {@code jni/Android.mk} by setting the
+following options:
+<pre>
+LOCAL_DISABLE_NO_EXECUTE=true  # disable "--noexecstack" and "-z noexecstack"
+DISABLE_RELRO=true             # disable "-z relro" and "-z now"</li>
+</pre>
+                </ol>
+                <p>See {@code docs/ANDROID-MK.html} for more details.</p>
+              </li>
+            </ul>
+          </li>
+
+          <li>Added branding for Android executables with the {@code .note.ABI-tag} section (in
+{@code crtbegin_static/dynamic.o}) so that debugging tools can act accordingly. The structure
+member and values are defined as follows:</p>
+<pre>
+static const struct {
+  int32_t namesz;  /* = 4,  sizeof ("GNU") */
+  int32_t descsz;  /* = 6 * sizeof(int32_t) */
+  int32_t type;    /* = 1 */
+  char  name[sizeof "GNU"];  /* = "GNU" */
+  int32_t os;      /* = 0 */
+  int32_t major;   /* = 2 */
+  int32_t minor;   /* = 6 */
+  int32_t teeny;   /* = 15 */
+  int32_t os_variant;  /* = 1 */
+  int32_t android_api; /* = 3, 4, 5, 8, 9, 14 */
+}</pre>
+          </li>
+        </ul>
+      </dd>
+    </dl>
+
+    <dl>
+      <dt>Other bug fixes:</dt>
+
+      <dd>
+        <ul>
+          <li>Fixed {@code mips-linux-gnu} relocation truncated to fit {@code R_MIPS_TLS_LDM} issue.
+            (<a href="http://sourceware.org/bugzilla/show_bug.cgi?id=12637">more info</a>)</li>
+          <li>Fixed {@code ld} tool segfaults when using {@code --gc-sections}.
+            (<a href="http://sourceware.org/bugzilla/show_bug.cgi?id=12845">more info</a>)
+          </li>
+          <li>Fixed MIPS {@code GOT_PAGE} counting issue.
+            (<a href="http://sourceware.org/ml/binutils/2011-05/msg00198.html">more info</a>)</li>
+          <li>Fixed follow warning symbol link for {@code mips_elf_count_got_symbols}.</li>
+          <li>Fixed follow warning symbol link for {@code mips_elf_allocate_lazy_stub}.</li>
+          <li>Moved MIPS {@code .dynamic} to the data segment, so that it is writable.</li>
+          <li>Replaced hard-coded values for symbols with correct segment sizes for MIPS.</li>
+          <li>Removed the {@code -mno-shared} option from the defaults in the MIPS toolchain.
+The default for Android toolchain is {@code -fPIC} (or {@code -fpic} if supported). If you do not
+explicitly specify {@code -mshared}, {@code -fpic}, {@code -fPIC}, {@code -fpie}, or {@code -fPIE},
+the MIPS compiler adds {@code -mno-shared} that turns off PIC. Fixed compiler not to add
+{@code -mno-shared} in this case.</li>
+          <li>Fixed wrong package names in samples {@code hello-jni} and {@code two-libs} so that
+the {@code tests} project underneath it can compile.</li>
+        </ul>
+      </dd>
+    </dl>
+
+    <dl>
+      <dt>Other Changes:</dt>
+
+      <dd>
+        <ul>
+          <li>Changed locations of binaries:
+            <ul>
+              <li>Moved {@code gdbserver} from
+{@code toolchain/&lt;arch-os-ver&gt;/prebuilt/gdbserver} to
+{@code prebuilt/android-&lt;arch&gt;/gdbserver/gdbserver}.</li>
+              <li>Renamed x86 toolchain prefix from {@code i686-android-linux-} to
+{@code i686-linux-android-}.</li>
+              <li>Moved {@code sources/cxx-stl/gnu-libstdc++/include} and {@code lib} to
+{@code sources/cxx-stl/gnu-libstdc++/4.6} when compiled with GCC 4.6, or
+{@code sources/cxx-stl/gnu-libstdc++/4.4.3} when compiled with GCC 4.4.3.</li>
+              <li>Moved {@code libbfd.a} and {@code libintl.a} from {@code lib/} to {@code
+lib32/}.</li>
+            </ul>
+          </li>
+
+          <li>Added and improved various scripts in the rebuild and test NDK toolchain:
+            <ul>
+              <li>Added {@code build-mingw64-toolchain.sh} to generate a new Linux-hosted toolchain
+that generates Win32 and Win64 executables.</li>
+              <li>Improved speed of {@code download-toolchain-sources.sh} by using the {@code
+clone} command and only using {@code checkout} for the directories that are needed to build the NDK
+toolchain binaries.</li>
+              <li>Added {@code build-host-gcc.sh} and {@code build-host-gdb.sh} scripts.</li>
+              <li>Added {@code tests/check-release.sh} to check the content of a given NDK
+installation directory, or an existing NDK package.</li>
+              <li>Rewrote the {@code tests/standalone/run.sh} standalone tests .</li>
+            </ul>
+          </li>
+          <li>Removed {@code if_dl.h} header from all platforms and architectures. The {@code
+AF_LINK} and {@code sockaddr_dl} elements it describes are specific to BSD (i.e., they don't exist
+in Linux).</li>
+        </ul>
+      </dd>
+    </dl>
+
+  </div>
+</div>
+
+<div class="toggleable closed">
+  <a href="#" onclick="return toggleDiv(this)"><img src=
+  "{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px">
   Android NDK, Revision 8</a> <em>(May 2012)</em>
 
   <div class="toggleme">
     <p>This release of the NDK includes support for MIPS ABI and a few additional fixes.</p>
 
-    </dl>
+    <dl>
       <dt>New features:</dt>
 
       <dd>
@@ -910,7 +1102,7 @@
                 as well as control over platform audio effects</li>
 
                 <li>Access to assets packaged in an <code>.apk</code> file.</li>
-                
+
               </ul>
             </li>
 
@@ -927,7 +1119,7 @@
             <li>Provides a default C++ STL implementation (based on STLport) as a helper module. It can be used either
             as a static or shared library (details and usage examples are in sources/android/stlport/README). Prebuilt
             binaries for STLport (static or shared) and GNU libstdc++ (static only) are also provided if you choose to
-            compile against those libraries instead of the default C++ STL implementation. 
+            compile against those libraries instead of the default C++ STL implementation.
             C++ Exceptions and RTTI are not supported in the default STL implementation. For more information, see
             docs/CPLUSPLUS-SUPPORT.HTML.</li>
 
@@ -938,8 +1130,8 @@
 
             <li>Adds an EGL library that lets you create and manage OpenGL ES textures and
               services.</li>
-                
-            <li>Adds new sample applications, <code>native-plasma</code> and <code>native-activity</code>, 
+
+            <li>Adds new sample applications, <code>native-plasma</code> and <code>native-activity</code>,
             to demonstrate how to write a native activity.</li>
 
             <li>Includes many bugfixes and other small improvements; see docs/CHANGES.html for a more
@@ -1103,25 +1295,25 @@
       </dl>
     </div>
   </div>
-  
-  
-  
-  
-  
+
+
+
+
+
 <!-- ####################### END OF RELEASE NOTES ####################### -->
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 
@@ -1287,32 +1479,32 @@
     android:minSdkVersion="8" /&gt;</code> attribute value in its manifest.</li>
   </ul>
 
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
-  
 
 
 
-  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
   <h2 id="Installing">Installing the NDK</h2>
   <p>Installing the NDK on your development computer is straightforward and involves extracting the
   NDK from its download package.</p>
@@ -1339,7 +1531,7 @@
 
   <p>You are now ready to start working with the NDK.</p>
 
-  
+
 <h2 id="GetStarted">Getting Started with the NDK</h2>
 
 <p>Once you've installed the NDK successfully, take a few minutes to read the documentation
@@ -1402,13 +1594,13 @@
     to use them or any other framework API, you can still write JNI code to do so.</p>
   </li>
 </ul>
-  
-  
-  
-  
-  
+
+
+
+
+
   <h2 id="Contents">Contents of the NDK</h2>
-  
+
   <p>The NDK contains the APIs, documentation, and sample
   applications that help you write your native code. Specifically:</p>
 
@@ -1478,9 +1670,9 @@
     <li>libjnigraphics (Pixel buffer access) header (for Android 2.2 and above).</li>
 
     <li>A Minimal set of headers for C++ support</li>
-    
+
     <li>OpenSL ES native audio libraries</li>
-    
+
     <li>Android native application APIS</li>
   </ul>
 
@@ -1510,13 +1702,13 @@
     system</li>
 
     <li>OVERVIEW.HTML &mdash; provides an overview of the NDK capabilities and usage</li>
-    
+
     <li>ANDROID-MK.HTML &mdash; describes the use of the Android.mk file, which defines the native
     sources you want to compile</li>
-    
+
     <li>APPLICATION-MK.HTML &mdash; describes the use of the Application.mk file, which describes
-    the native sources required by your Android application</li>    
-    <li>CPLUSPLUS-SUPPORT.HTML &mdash; describes the C++ support provided in the Android NDK</li>    
+    the native sources required by your Android application</li>
+    <li>CPLUSPLUS-SUPPORT.HTML &mdash; describes the C++ support provided in the Android NDK</li>
     <li>CPU-ARCH-ABIS.HTML &mdash; a description of supported CPU architectures and how to target
     them.</li>
 
@@ -1527,15 +1719,15 @@
     <li>CHANGES.HTML &mdash; a complete list of changes to the NDK across all releases.</li>
 
     <li>DEVELOPMENT.HTML &mdash; describes how to modify the NDK and generate release packages for it</li>
-    
+
     <li>HOWTO.HTML &mdash; information about common tasks associated with NDK development</li>
-    
+
     <li>IMPORT-MODULE.HTML &mdash; describes how to share and reuse modules</li>
-    
+
     <li>LICENSES.HTML  &mdash; information about the various open source licenses that govern the Android NDK</li>
- 
+
     <li>NATIVE-ACTIVITY.HTML &mdash; describes how to implement native activities</li>
-    
+
     <li>NDK-BUILD.HTML &mdash; describes the usage of the ndk-build script</li>
 
     <li>NDK-GDB.HTML &mdash; describes how to use the native code debugger</li>
@@ -1544,13 +1736,13 @@
 
     <li>STANDALONE-TOOLCHAIN.HTML &mdash; describes how to use Android NDK toolchain as a standalone
     compiler (still in beta).</li>
-    
+
     <li>SYSTEM-ISSUES.HTML &mdash; known issues in the Android system images that you should be
     aware of, if you are developing using the NDK.</li>
 
     <li>STABLE-APIS.HTML &mdash; a complete list of the stable APIs exposed by headers in the
     NDK.</li>
-    
+
   </ul>
 
   <p>Additionally, the package includes detailed information about the "bionic" C library provided
@@ -1562,10 +1754,10 @@
     offers.</li>
   </ul>
 
-  
-  
-  
-  
+
+
+
+
 <h3 id="Samples">Sample apps</h3>
 
 <p>The NDK includes sample applications that illustrate how to use native code in your Android
@@ -1624,10 +1816,10 @@
     <li>If you are developing with Ant, use the <code>android</code> tool to create the build file
     for each of the sample projects at <code>&lt;ndk&gt;/samples/&lt;name&gt;/</code>.
     Then set up an AVD, if necessary, build your project in the usual way, and run it in the
-    emulator.</li>    
-    
+    emulator.</li>
+
   </ul>
-  
+
   <p>For more information about developing with the Android SDK tools and what
   you need to do to create, build, and run your applications, see
   the <a href="{@docRoot}tools/workflow/index.html">Overview</a>
diff --git a/docs/html/tools/sdk/tools-notes.jd b/docs/html/tools/sdk/tools-notes.jd
index 14d1aa4..f8b5d25 100644
--- a/docs/html/tools/sdk/tools-notes.jd
+++ b/docs/html/tools/sdk/tools-notes.jd
@@ -24,51 +24,82 @@
 <p>For a summary of all known issues in SDK Tools, see <a
 href="http://tools.android.com/knownissues">http://tools.android.com/knownissues</a>.</p>
 
-<script type="text/javascript">
-function toggleDiv(link) {
-  var toggleable = $(link).parent();
-  if (toggleable.hasClass("closed")) {
-    //$(".toggleme", toggleable).slideDown("fast");
-    toggleable.removeClass("closed");
-    toggleable.addClass("open");
-    $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
-  } else {
-    //$(".toggleme", toggleable).slideUp("fast");
-    toggleable.removeClass("open");
-    toggleable.addClass("closed");
-    $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
-  }
-  return false;
-}
-</script>
-<style>
-.toggleable {
-padding: 5px 0 0;
-}
-.toggleme {
-  padding: 10px 0 0 20px;
-}
-.toggleable a {
-  text-decoration:none;
-}
-.toggleme a {
-  text-decoration:underline;
-}
-.toggleable.closed .toggleme {
-  display:none;
-}
-#jd-content .toggle-img {
-  margin:0 5px 3px 0;
-}
-</style>
 
-<div class="toggleable opened">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 20</a> <em>(June 2012)</em>
+<div class="toggle-content opened">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 20.0.3</a> <em>(August 2012)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+    <dd>
+      <ul>
+        <li>Android SDK Platform-tools revision 12 or later.</li>
+        <li>If you are developing in Eclipse with ADT, note that the SDK Tools r20.0.3 is designed
+        for use with ADT 20.0.3 and later. If you haven't already, update your
+        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 20.0.3.</li>
+        <li>If you are developing outside Eclipse, you must have
+          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
+    </ul>
+    </dd>
+    <dt>Bug fixes:</dt>
+    <dd>
+      <ul>
+        <li>Fixed problem with cached download lists in SDK Manager.</li>
+      </ul>
+    </dd>
+    </dl>
+  </div>
+</div>
+
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 20.0.1</a> <em>(July 2012)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+    <dd>
+      <ul>
+        <li>Android SDK Platform-tools revision 12 or later.</li>
+        <li>If you are developing in Eclipse with ADT, note that the SDK Tools r20.0.1 is designed
+        for use with ADT 20.0.1 and later. If you haven't already, update your
+        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 20.0.1.</li>
+        <li>If you are developing outside Eclipse, you must have
+          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
+    </ul>
+    </dd>
+    <dt>Bug fixes:</dt>
+    <dd>
+      <ul>
+        <li>Fixed wrong check on build state that forced repetitive Java code recompilation.</li>
+        <li>Fixed problems with running more than one emulator and running multiple emulators
+with GPU acceleration.</li>
+        <li>Improved resize algorithm for better rendering on scaled emulator windows.</li>
+        <li>Fixed a bug in the {@code lint} check for unprotected broadcast receivers to ignore
+unprotected receivers for default Android actions.</li>
+        <li>Fixed build issue for projects using Renderscript.</li>
+        <li>Fixed memory leak in the emulator.</li>
+      </ul>
+    </dd>
+    </dl>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 20</a> <em>(June 2012)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
   <dl>
     <dt>Dependencies:</dt>
     <dd>
@@ -137,13 +168,13 @@
   </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 19</a> <em>(April 2012)</em>
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 19</a> <em>(April 2012)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
     <p class="note"><strong>Note:</strong> This update of SDK Tools is only available through
 the <a href="{@docRoot}sdk/exploring.html">Android SDK Manager</a>. Use this tool to
 download and install this update.</p>
@@ -171,13 +202,13 @@
   </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 18</a> <em>(April 2012)</em>
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 18</a> <em>(April 2012)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
     <p class="caution"><strong>Important:</strong> To download the new Android
     4.0 system components from the Android SDK Manager, you must first update the
     SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
@@ -213,13 +244,13 @@
   </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 17</a> <em>(March 2012)</em>
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 17</a> <em>(March 2012)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
     <p class="caution"><strong>Important:</strong> To download the new Android
     4.0 system components from the Android SDK Manager, you must first update the
     SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
@@ -317,13 +348,13 @@
   </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 16</a> <em>(December 2011)</em>
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 16</a> <em>(December 2011)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
     <p class="caution"><strong>Important:</strong> To download the new Android
     4.0 system components from the Android SDK Manager, you must first update the
     SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
@@ -367,13 +398,13 @@
 </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 15</a> <em>(October 2011)</em>
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 15</a> <em>(October 2011)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
     <p class="caution"><strong>Important:</strong> To download the new Android
     4.0 system components from the Android SDK Manager, you must first update the
     SDK tools to revision 14 or later and restart the Android SDK Manager. If you do not,
@@ -415,13 +446,13 @@
 </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-    width="9px" />
-    SDK Tools, Revision 14</a> <em>(October 2011)</em>
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 14</a> <em>(October 2011)</em>
+  </p>
 
-  <div class="toggleme">
+  <div class="toggle-content-toggleme">
     <p class="note"><strong>Important:</strong> To download the new Android
     4.0 system components from the Android SDK Manager, you must first update the
     SDK tools to revision 14 and restart the Android SDK Manager. If you do not,
@@ -470,12 +501,13 @@
 </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-        width="9px" />
-SDK Tools, Revision 13</a> <em>(September 2011)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 13</a> <em>(September 2011)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
   <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -500,11 +532,13 @@
 </div>
 
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 12</a> <em>(July 2011)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 12</a> <em>(July 2011)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
   <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -526,11 +560,13 @@
 </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 11</a> <em>(May 2011)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 11</a> <em>(May 2011)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
   <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -552,12 +588,13 @@
 </div>
 
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px"
-width="9px" />
-SDK Tools, Revision 10</a> <em>(February 2011)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 10</a> <em>(February 2011)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
   <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -582,11 +619,13 @@
 
 
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 9</a> <em>(January 2011)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 9</a> <em>(January 2011)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
   <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -639,12 +678,13 @@
 </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 8</a> <em>(December 2010)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 8</a> <em>(December 2010)</em>
+  </p>
 
+  <div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -706,12 +746,13 @@
  </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 7</a> <em>(September 2010)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 7</a> <em>(September 2010)</em>
+  </p>
 
+  <div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -739,12 +780,13 @@
  </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 6</a> <em>(May 2010)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 6</a> <em>(May 2010)</em>
+  </p>
 
+  <div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd>
@@ -769,12 +811,13 @@
  </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 5</a> <em>(March 2010)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 5</a> <em>(March 2010)</em>
+  </p>
 
+  <div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd><ul>
@@ -817,12 +860,13 @@
  </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 4</a> <em>(December 2009)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 4</a> <em>(December 2009)</em>
+  </p>
 
+  <div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd><p>SDK Tools r4 is compatible with ADT 0.9.5 and later, but not
@@ -866,12 +910,13 @@
  </div>
 </div>
 
-<div class="toggleable closed">
-  <a href="#" onclick="return toggleDiv(this)">
-        <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
-SDK Tools, Revision 3</a> <em>(October 2009)</em>
-  <div class="toggleme">
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 3</a> <em>(October 2009)</em>
+  </p>
 
+  <div class="toggle-content-toggleme">
 <dl>
 <dt>Dependencies:</dt>
 <dd><p>SDK Tools r3 is compatible with ADT 0.9.4 and later, but not
@@ -928,3 +973,4 @@
 </dl>
  </div>
 </div>
+
diff --git a/docs/html/tools/tools_toc.cs b/docs/html/tools/tools_toc.cs
index c7cdded..850e0ec 100644
--- a/docs/html/tools/tools_toc.cs
+++ b/docs/html/tools/tools_toc.cs
@@ -107,6 +107,7 @@
       <li><a href="<?cs var:toroot ?>tools/debugging/debugging-projects-cmdline.html"><span class="en">From Other IDEs</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/debugging/ddms.html"><span class="en">Using DDMS</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/debugging/debugging-log.html"><span class="en">Reading and Writing Logs</span></a></li>
+      <li><a href="<?cs var:toroot ?>tools/debugging/improving-w-lint.html"><span class="en">Improving Your Code with lint</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/debugging/debugging-ui.html"><span class="en">Optimizing your UI</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/debugging/debugging-tracing.html"><span class="en">Profiling with Traceview and dmtracedump</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/debugging/debugging-devtools.html"><span class="en">Using the Dev Tools App</span></a></li>
@@ -137,7 +138,7 @@
       <li><a href="<?cs var:toroot ?>tools/help/etc1tool.html">etc1tool</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/hierarchy-viewer.html">Hierarchy Viewer</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/hprof-conv.html">hprof-conv</a></li>
-      <li><a href="<?cs var:toroot ?>tools/help/layoutopt.html">layoutopt</a></li>
+      <li><a href="<?cs var:toroot ?>tools/help/lint.html">lint</span></a></li>
       <li><a href="<?cs var:toroot ?>tools/help/logcat.html">logcat</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/mksdcard.html">mksdcard</a></li>
       <li><a href="<?cs var:toroot ?>tools/help/monkey.html">monkey</a></li>
diff --git a/docs/html/training/accessibility/service.jd b/docs/html/training/accessibility/service.jd
index f62506b..373ddbb 100644
--- a/docs/html/training/accessibility/service.jd
+++ b/docs/html/training/accessibility/service.jd
@@ -175,7 +175,7 @@
 android.view.accessibility.AccessibilityEvent#getEventType} to determine the
 type of event, and {@link
 android.view.accessibility.AccessibilityEvent#getContentDescription} to extract
-any label text associated with the fiew that fired the event.</pre>
+any label text associated with the view that fired the event.</pre>
 
 <pre>
 &#64;Override
@@ -281,6 +281,6 @@
 
 <p>Now you have a complete, functioning accessibility service.  Try configuring
 how it interacts with the user, by adding Android's <a
-  href="http://developer.android.com/resources/articles/tts.html">text-to-speech
+  href="http://android-developers.blogspot.com/2009/09/introduction-to-text-to-speech-in.html">text-to-speech
   engine</a>, or using a {@link android.os.Vibrator} to provide haptic
 feedback!</p>
diff --git a/docs/html/training/basics/activity-lifecycle/starting.jd b/docs/html/training/basics/activity-lifecycle/starting.jd
index 1a4bc2d..dd17304 100644
--- a/docs/html/training/basics/activity-lifecycle/starting.jd
+++ b/docs/html/training/basics/activity-lifecycle/starting.jd
@@ -112,7 +112,7 @@
 </table>
 -->
 
-<p>As you'll learn in the following lessons, there are several situtations in which an activity
+<p>As you'll learn in the following lessons, there are several situations in which an activity
 transitions between different states that are illustrated in figure 1. However, only three of
 these states can be static. That is, the activity can exist in one of only three states for an
 extended period of time:</p>
diff --git a/docs/html/training/basics/firstapp/building-ui.jd b/docs/html/training/basics/firstapp/building-ui.jd
index f0ec79e..bc6c47c 100644
--- a/docs/html/training/basics/firstapp/building-ui.jd
+++ b/docs/html/training/basics/firstapp/building-ui.jd
@@ -18,7 +18,7 @@
 <h2>This lesson teaches you to</h2>
 
 <ol>
-  <li><a href="#LinearLayout">Use a Linear Layout</a></li>
+  <li><a href="#LinearLayout">Create a Linear Layout</a></li>
   <li><a href="#TextInput">Add a Text Field</a></li>
   <li><a href="#Strings">Add String Resources</a></li>
   <li><a href="#Button">Add a Button</a></li>
@@ -28,10 +28,9 @@
 
 <h2>You should also read</h2>
 <ul>
-  <li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">XML Layouts</a></li>
+  <li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">Layouts</a></li>
 </ul>
- 
- 
+
 </div> 
 </div> 
 
@@ -39,63 +38,68 @@
 
 <p>The graphical user interface for an Android app is built using a hierarchy of {@link
 android.view.View} and {@link android.view.ViewGroup} objects. {@link android.view.View} objects are
-usually UI widgets such as a button or text field and {@link android.view.ViewGroup} objects are
+usually UI widgets such as <a href="{@docRoot}guide/topics/ui/controls/button.html">buttons</a> or
+<a href="{@docRoot}guide/topics/ui/controls/text.html">text fields</a> and {@link
+android.view.ViewGroup} objects are
 invisible view containers that define how the child views are laid out, such as in a
 grid or a vertical list.</p>
 
 <p>Android provides an XML vocabulary that corresponds to the subclasses of {@link
-android.view.View} and {@link android.view.ViewGroup} so you can define your UI in XML with a
-hierarchy of view elements.</p>
+android.view.View} and {@link android.view.ViewGroup} so you can define your UI in XML using
+a hierarchy of UI elements.</p>
 
 
 <div class="sidebox-wrapper">
 <div class="sidebox">
   <h2>Alternative Layouts</h2>
-  <p>Separating the UI layout into XML files is important for several reasons,
-but it's especially important on Android because it allows you to define alternative layouts for
+  <p>Declaring your UI layout in XML rather than runtime code is useful for several reasons,
+but it's especially important so you can create different layouts for
 different screen sizes. For example, you can create two versions of a layout and tell
 the system to use one on "small" screens and the other on "large" screens. For more information,
 see the class about <a
 href="{@docRoot}training/basics/supporting-devices/index.html">Supporting Different
-Hardware</a>.</p>
+Devices</a>.</p>
 </div>
 </div>
 
-<img src="{@docRoot}images/viewgroup.png" alt="" width="440" />
+<img src="{@docRoot}images/viewgroup.png" alt="" width="400" />
 <p class="img-caption"><strong>Figure 1.</strong> Illustration of how {@link
-android.view.ViewGroup} objects form branches in the layout and contain {@link
+android.view.ViewGroup} objects form branches in the layout and contain other {@link
 android.view.View} objects.</p>
 
-<p>In this lesson, you'll create a layout in XML that includes a text input field and a
+<p>In this lesson, you'll create a layout in XML that includes a text field and a
 button. In the following lesson, you'll respond when the button is pressed by sending the
 content of the text field to another activity.</p>
 
 
 
-<h2 id="LinearLayout">Use a Linear Layout</h2>
+<h2 id="LinearLayout">Create a Linear Layout</h2>
 
-<p>Open the <code>main.xml</code> file from the <code>res/layout/</code>
-directory (every new Android project includes this file by default).</p>
+<p>Open the <code>activity_main.xml</code> file from the <code>res/layout/</code>
+directory.</p>
 
 <p class="note"><strong>Note:</strong> In Eclipse, when you open a layout file, you’re first shown
-the ADT Layout Editor. This is an editor that helps you build layouts using WYSIWYG tools. For this
-lesson, you’re going to work directly with the XML, so click the <em>main.xml</em> tab at
+the Graphical Layout editor. This is an editor that helps you build layouts using WYSIWYG tools. For this
+lesson, you’re going to work directly with the XML, so click the <em>activity_main.xml</em> tab at
 the bottom of the screen to open the XML editor.</p>
 
-<p>By default, the <code>main.xml</code> file includes a layout with a {@link
-android.widget.LinearLayout} root view group and a {@link android.widget.TextView} child view.
-You’re going to re-use the {@link android.widget.LinearLayout} in this lesson, but change its
-contents and layout orientation.</p>
+<p>The BlankActivity template you used to start this project creates the
+<code>activity_main.xml</code> file with a {@link
+android.widget.RelativeLayout} root view and a {@link android.widget.TextView} child view.</p>
 
-<p>First, delete the {@link android.widget.TextView} element and change the value
+<p>First, delete the {@link android.widget.TextView &lt;TextView>} element and change the {@link
+  android.widget.RelativeLayout &lt;RelativeLayout>} element to {@link
+  android.widget.LinearLayout &lt;LinearLayout>}. Then add the
 <a href="{@docRoot}reference/android/widget/LinearLayout.html#attr_android:orientation">{@code
-android:orientation}</a> to be <code>"horizontal"</code>. The result looks like this:</p>
+android:orientation}</a> attribute and set it to <code>"horizontal"</code>.
+The result looks like this:</p>
 
 <pre>
 &lt;?xml version="1.0" encoding="utf-8"?>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="fill_parent"
-    android:layout_height="fill_parent"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
     android:orientation="horizontal" >
 &lt;/LinearLayout>
 </pre>
@@ -116,26 +120,18 @@
 <p>Because the {@link android.widget.LinearLayout} is the root view in the layout, it should fill
 the entire screen area that's
 available to the app by setting the width and height to
-<code>"fill_parent"</code>.</p>
-
-<p class="note"><strong>Note:</strong> Beginning with Android 2.2 (API level 8),
-<code>"fill_parent"</code> has been renamed <code>"match_parent"</code> to better reflect the
-behavior. The reason is that if you set a view to <code>"fill_parent"</code> it does not expand to
-fill the remaining space after sibling views are considered, but instead expands to
-<em>match</em> the size of the parent view no matter what&mdash;it will overlap any sibling
-views.</p>
+<code>"match_parent"</code>. This value declares that the view should expand its width
+or height to <em>match</em> the width or height of the parent view.</p>
 
 <p>For more information about layout properties, see the <a
-href="{@docRoot}guide/topics/ui/declaring-layout.html">XML Layout</a> guide.</p>
+href="{@docRoot}guide/topics/ui/declaring-layout.html">Layout</a> guide.</p>
 
 
 
 <h2 id="TextInput">Add a Text Field</h2>
 
 <p>To create a user-editable text field, add an {@link android.widget.EditText
-&lt;EditText>} element inside the {@link android.widget.LinearLayout &lt;LinearLayout>}. The {@link
-android.widget.EditText} class is a subclass of {@link android.view.View} that displays an editable
-text field.</p>
+&lt;EditText>} element inside the {@link android.widget.LinearLayout &lt;LinearLayout>}.</p>
 
 <p>Like every {@link android.view.View} object, you must define certain XML attributes to specify
 the {@link android.widget.EditText} object's properties. Here’s how you should declare it
@@ -164,6 +160,8 @@
 which allows you to reference that view from other code.</p>
   <p>The SDK tools generate the {@code R.java} each time you compile your app. You should never
 modify this file by hand.</p>
+  <p>For more information, read the guide to <a
+href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a>.</p>
 </div>
 </div>
 
@@ -175,17 +173,18 @@
 from your app code, such as to read and manipulate the object (you'll see this in the next
 lesson).
 
-<p>The at-symbol (<code>&#64;</code>) is required when you want to refer to a resource object from
-XML, followed by the resource type ({@code id} in this case), then the resource name ({@code
-edit_message}). (Other resources can use the same name as long as they are not the same
-resource type&mdash;for example, the string resource uses the same name.)</p>
+<p>The at sign (<code>&#64;</code>) is required when you're referring to any resource object from
+XML. It is followed by the resource type ({@code id} in this case), a slash, then the resource name
+({@code edit_message}).</p>
 
-<p>The plus-symbol (<code>+</code>) is needed only when you're defining a resource ID for the
-first time. It tells the SDK tools that the resource ID needs to be created. Thus, when the app is
-compiled, the SDK tools use the ID value, <code>edit_message</code>, to create a new identifier in
-your project's {@code gen/R.java} file that is now associated with the {@link
-android.widget.EditText} element. Once the resource ID is created, other references to the ID do not
-need the plus symbol. This is the only attribute that may need the plus-symbol. See the sidebox for
+<p>The plus sign (<code>+</code>) before the resource type is needed only when you're defining a
+resource ID for the first time. When you compile the app,
+the SDK tools use the ID name to create a new resource ID in
+your project's {@code gen/R.java} file that refers to the {@link
+android.widget.EditText} element. Once the resource ID is declared once this way,
+other references to the ID do not
+need the plus sign. Using the plus sign is necessary only when specifying a new resource ID and not
+needed for concrete resources such as strings or layouts. See the sidebox for
 more information about resource objects.</p></dd>
 
 <dt><a
@@ -195,39 +194,42 @@
 android:layout_height}</a></dt>
 <dd>Instead of using specific sizes for the width and height, the <code>"wrap_content"</code> value
 specifies that the view should be only as big as needed to fit the contents of the view. If you
-were to instead use <code>"fill_parent"</code>, then the {@link android.widget.EditText}
-element would fill the screen, because it'd match the size of the parent {@link
+were to instead use <code>"match_parent"</code>, then the {@link android.widget.EditText}
+element would fill the screen, because it would match the size of the parent {@link
 android.widget.LinearLayout}. For more information, see the <a
-href="{@docRoot}guide/topics/ui/declaring-layout.html">XML Layouts</a> guide.</dd>
+href="{@docRoot}guide/topics/ui/declaring-layout.html">Layouts</a> guide.</dd>
 
 <dt><a
 href="{@docRoot}reference/android/widget/TextView.html#attr_android:hint">{@code
 android:hint}</a></dt>
 <dd>This is a default string to display when the text field is empty. Instead of using a hard-coded
-string as the value, the {@code "@string/edit_message"} value refers to a string resource defined
-in a separate file. Because this value refers to an existing resource, it does not need the
-plus-symbol. However, because you haven't defined the string resource yet, you’ll see a compiler
-error when you add the {@code "@string/edit_message"} value. You'll fix this in the next section by
-defining the string resource.</dd>
+string as the value, the {@code "@string/edit_message"} value refers to a string resource defined in
+a separate file. Because this refers to a concrete resource (not just an identifier), it does not
+need the plus sign. However, because you haven't defined the string resource yet, you’ll see a
+compiler error at first. You'll fix this in the next section by defining the string.
+<p class="note"><strong>Note:</strong> This string resource has the same name as the element ID:
+{@code edit_message}. However, references
+to resources are always scoped by the resource type (such as {@code id} or {@code string}), so using
+the same name does not cause collisions.</p>
+</dd>
 </dl>
 
 
 
 <h2 id="Strings">Add String Resources</h2>
 
-<p>When you need to add text in the user interface, you should always specify each string of text in
-a resource file. String resources allow you to maintain a single location for all string
-values, which makes it easier to find and update text. Externalizing the strings also allows you to
+<p>When you need to add text in the user interface, you should always specify each string as
+a resource. String resources allow you to manage all UI text in a single location,
+which makes it easier to find and update text. Externalizing the strings also allows you to
 localize your app to different languages by providing alternative definitions for each
-string.</p>
+string resource.</p>
 
 <p>By default, your Android project includes a string resource file at
-<code>res/values/strings.xml</code>. Open this file, delete the existing <code>"hello"</code>
-string, and add one for the
-<code>"edit_message"</code> string used by the {@link android.widget.EditText &lt;EditText>}
-element.</p>
+<code>res/values/strings.xml</code>. Open this file and delete the {@code &lt;string>} element
+named <code>"hello_world"</code>. Then add a new one named
+<code>"edit_message"</code> and set the value to "Enter a message."</p>
 
-<p>While you’re in this file, also add a string for the button you’ll soon add, called
+<p>While you’re in this file, also add a "Send" string for the button you’ll soon add, called
 <code>"button_send"</code>.</p>
 
 <p>The result for <code>strings.xml</code> looks like this:</p>
@@ -238,12 +240,14 @@
     &lt;string name="app_name">My First App&lt;/string>
     &lt;string name="edit_message">Enter a message&lt;/string>
     &lt;string name="button_send">Send&lt;/string>
+    &lt;string name="menu_settings">Settings&lt;/string>
+    &lt;string name="title_activity_main">MainActivity&lt;/string>
 &lt;/resources>
 </pre>
 
-<p>For more information about using string resources to localize your app for several languages,
+<p>For more information about using string resources to localize your app for other languages,
 see the <a
-href="{@docRoot}training/basics/supporting-devices/index.html">Supporting Various Devices</a>
+href="{@docRoot}training/basics/supporting-devices/index.html">Supporting Different Devices</a>
 class.</p>
 
 
@@ -280,23 +284,26 @@
 <code>"wrap_content"</code>.</p>
 
 <p>This works fine for the button, but not as well for the text field, because the user might type
-something longer and there's extra space left on the screen. So, it'd be nice to fill that width
-using the text field.
-{@link android.widget.LinearLayout} enables such a design with the <em>weight</em> property, which
+something longer. So, it would be nice to fill the unused screen width
+with the text field. You can do this inside a
+{@link android.widget.LinearLayout} with the <em>weight</em> property, which
 you can specify using the <a
 href="{@docRoot}reference/android/widget/LinearLayout.LayoutParams.html#weight">{@code
 android:layout_weight}</a> attribute.</p>
 
-<p>The weight value allows you to specify the amount of remaining space each view should consume,
-relative to the amount consumed by sibling views, just like the ingredients in a drink recipe: "2
+<p>The weight value is a number that specifies the amount of remaining space each view should
+consume,
+relative to the amount consumed by sibling views. This works kind of like the 
+amount of ingredients in a drink recipe: "2
 parts vodka, 1 part coffee liqueur" means two-thirds of the drink is vodka. For example, if you give
-one view a weight of 2 and another one a weight of 1, the sum is 3, so the first view gets 2/3 of
-the remaining space and the second view gets the rest. If you give a third view a weight of 1,
-then the first view now gets 1/2 the remaining space, while the remaining two each get 1/4.</p>
+one view a weight of 2 and another one a weight of 1, the sum is 3, so the first view fills 2/3 of
+the remaining space and the second view fills the rest. If you add a third view and give it a weight
+of 1, then the first view (with weight of 2) now gets 1/2 the remaining space, while the remaining
+two each get 1/4.</p>
 
 <p>The default weight for all views is 0, so if you specify any weight value
-greater than 0 to only one view, then that view fills whatever space remains after each view is
-given the space it requires. So, to fill the remaining space with the {@link
+greater than 0 to only one view, then that view fills whatever space remains after all views are
+given the space they require. So, to fill the remaining space in your layout with the {@link
 android.widget.EditText} element, give it a weight of 1 and leave the button with no weight.</p>
 
 <pre>
@@ -331,8 +338,9 @@
 <pre>
 &lt;?xml version="1.0" encoding="utf-8"?>
 &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="fill_parent"
-    android:layout_height="fill_parent"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
     android:orientation="horizontal">
     &lt;EditText android:id="@+id/edit_message"
         android:layout_weight="1"
@@ -351,7 +359,8 @@
 results:</p>
 
 <ul>
-  <li>In Eclipse, click <strong>Run</strong> from the toolbar.</li>
+  <li>In Eclipse, click Run <img src="{@docRoot}images/tools/eclipse-run.png" 
+                                 style="vertical-align:baseline;margin:0" /> from the toolbar.</li>
   <li>Or from a command line, change directories to the root of your Android project and
 execute:
 <pre>
diff --git a/docs/html/training/basics/firstapp/creating-project.jd b/docs/html/training/basics/firstapp/creating-project.jd
index 4fbfe34..2ea8b2f 100644
--- a/docs/html/training/basics/firstapp/creating-project.jd
+++ b/docs/html/training/basics/firstapp/creating-project.jd
@@ -34,66 +34,77 @@
 
 <p>An Android project contains all the files that comprise the source code for your Android
 app. The Android SDK tools make it easy to start a new Android project with a set of
-default project directories and files.</p> 
+default project directories and files.</p>
 
 <p>This lesson
 shows how to create a new project either using Eclipse (with the ADT plugin) or using the
 SDK tools from a command line.</p>
 
 <p class="note"><strong>Note:</strong> You should already have the Android SDK installed, and if
-you're using Eclipse, you should have installed the <a
-href="{@docRoot}tools/sdk/eclipse-adt.html">ADT plugin</a> as well. If you have not installed
-these, see <a href="{@docRoot}sdk/installing/index.html">Installing the Android SDK</a> and return here
-when you've completed the installation.</p>
+you're using Eclipse, you should also have the <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT
+plugin</a> installed (version 20.0.0 or higher). If you don't have these, follow the guide to <a
+href="{@docRoot}sdk/installing/index.html">Installing the Android SDK</a> before you start this
+lesson.</p>
 
 
 <h2 id="Eclipse">Create a Project with Eclipse</h2>
 
-<div class="figure" style="width:416px">
+<ol>
+  <li>In Eclipse, click New Android
+    App Project <img src="{@docRoot}images/tools/new_adt_project.png" 
+             style="vertical-align:baseline;margin:0" />
+    in the toolbar.  (If you don’t see this button,
+then you have not installed the ADT plugin&mdash;see <a
+href="{@docRoot}sdk/installing/installing-adt.html">Installing the Eclipse Plugin</a>.)
+  </li>
+
+<div class="figure" style="width:420px">
 <img src="{@docRoot}images/training/firstapp/adt-firstapp-setup.png" alt="" />
-<p class="img-caption"><strong>Figure 1.</strong> The new project wizard in Eclipse.</p>
+<p class="img-caption"><strong>Figure 1.</strong> The New Android App Project wizard in Eclipse.</p>
 </div>
 
-<ol>
-  <li>In Eclipse, select <strong>File &gt; New &gt; Project</strong>.
-The resulting dialog should have a folder labeled <em>Android</em>.  (If you don’t see the
-<em>Android</em> folder,
-then you have not installed the ADT plugin&mdash;see <a
-href="{@docRoot}tools/sdk/eclipse-adt.html#installing">Installing the ADT Plugin</a>).</li>
-  <li>Open the <em>Android</em> folder, select <em>Android Project</em> and click
-<strong>Next</strong>.</li>
-  <li>Enter a project name (such as "MyFirstApp") and click <strong>Next</strong>.</li>
-  <li>Select a build target. This is the platform version against which you will compile your app.
-<p>We recommend that you select the latest version possible. You can still build your app to
-support older versions, but setting the build target to the latest version allows you to
-easily optimize your app for a great user experience on the latest Android-powered devices.</p>
-<p>If you don't see any built targets listed, you need to install some using the Android SDK
-Manager tool. See <a href="{@docRoot}sdk/installing/index.html#AddingComponents">step 4 in the
-installing guide</a>.</p>
-<p>Click <strong>Next</strong>.</p></li>
-  <li>Specify other app details, such as the:
+  <li>Fill in the form that appears:
     <ul>
-      <li><em>Application Name</em>: The app name that appears to the user. Enter "My First
-App".</li>
-      <li><em>Package Name</em>: The package namespace for your app (following the same
+      <li><em>Application Name</em> is the app name that appears to users.
+          For this project, use "My First App."</p></li>
+      <li><em>Project Name</em> is the name of your project directory and the name visible in Eclipse.</li>
+      <li><em>Package Name</em> is the package namespace for your app (following the same
 rules as packages in the Java programming language). Your package name
-must be unique across all packages installed on the Android system. For this reason, it's important
-that you use a standard domain-style package name that’s appropriate to your company or
-publisher entity. For
-your first app, you can use something like "com.example.myapp." However, you cannot publish your
-app using the "com.example" namespace.</li>
-      <li><em>Create Activity</em>: This is the class name for the primary user activity in your
-app (an activity represents a single screen in your app). Enter "MyFirstActivity".</li>
-      <li><em>Minimum SDK</em>: Select <em>4 (Android 1.6)</em>.
-        <p>Because this version is lower than the build target selected for the app, a warning
-appears, but that's alright. You simply need to be sure that you don't use any APIs that require an
-<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API level</a> greater than the minimum SDK
-version without first using some code to verify the device's system version (you'll see this in some
-other classes).</p>
-      </li>
+must be unique across all packages installed on the Android system. For this reason, it's generally
+best if you use a name that begins with the reverse domain name of your organization or
+publisher entity. For this project, you can use something like "com.example.myfirstapp."
+However, you cannot publish your app on Google Play using the "com.example" namespace.</li>
+      <li><em>Build SDK</em> is the platform version against which you will compile your app.
+        By default, this is set to the latest version of Android available in your SDK. (It should
+        be Android 4.1 or greater; if you don't have such a version available, you must install one
+        using the <a href="{@docRoot}sdk/installing/adding-packages.html">SDK Manager</a>).
+        You can still build your app to
+support older versions, but setting the build target to the latest version allows you to
+enable new features and optimize your app for a great user experience on the latest
+devices.</li>
+      <li><em>Minimum Required SDK</em> is the lowest version of Android that your app supports.
+        To support as many devices as possible, you should set this to the lowest version available
+        that allows your app to provide its core feature set. If any feature of your app is possible
+        only on newer versions of Android and it's not critical to the app's core feature set, you
+        can enable the feature only when running on the versions that support it.
+        <p>Leave this set to the default value for this project.</p>
     </ul>
-    <p>Click <strong>Finish</strong>.</p>
+    <p>Click <strong>Next</strong>.</p>
   </li>
+  
+  <li>The following screen provides tools to help you create a launcher icon for your app.
+    <p>You can customize an icon in several ways and the tool generates an icon for all
+    screen densities. Before you publish your app, you should be sure your icon meets
+    the specifications defined in the <a
+    href="{@docRoot}design/style/iconography.html">Iconography</a>
+    design guide.</p>
+    <p>Click <strong>Next</strong>.</p>
+  </li>
+  <li>Now you can select an activity template from which to begin building your app.
+    <p>For this project, select <strong>BlankActivity</strong> and click <strong>Next</strong>.</p>
+  </li>
+  <li>Leave all the details for the activity in their default state and click 
+    <strong>Finish</strong>.</li>
 </ol>
 
 <p>Your Android project is now set up with some default files and you’re ready to begin
@@ -104,7 +115,7 @@
 <h2 id="CommandLine">Create a Project with Command Line Tools</h2>
 
 <p>If you're not using the Eclipse IDE with the ADT plugin, you can instead create your project
-using the SDK tools in a command line:</p>
+using the SDK tools from a command line:</p>
 
 <ol>
   <li>Change directories into the Android SDK’s <code>tools/</code> path.</li>
@@ -117,13 +128,13 @@
 your app for the latest devices.</p>
 <p>If you don't see any targets listed, you need to
 install some using the Android SDK
-Manager tool. See <a href="{@docRoot}sdk/installing/index.html#AddingComponents">step 4 in the
-installing guide</a>.</p></li>
+Manager tool. See <a href="{@docRoot}sdk/installing/adding-packages.html">Adding Platforms
+  and Packages</a>.</p></li>
   <li>Execute:
 <pre class="no-pretty-print">
 android create project --target &lt;target-id> --name MyFirstApp \
---path &lt;path-to-workspace>/MyFirstApp --activity MyFirstActivity \
---package com.example.myapp
+--path &lt;path-to-workspace>/MyFirstApp --activity MainActivity \
+--package com.example.myfirstapp
 </pre>
 <p>Replace <code>&lt;target-id></code> with an id from the list of targets (from the previous step)
 and replace
diff --git a/docs/html/training/basics/firstapp/index.jd b/docs/html/training/basics/firstapp/index.jd
index 43b289b..4c1a0dc 100644
--- a/docs/html/training/basics/firstapp/index.jd
+++ b/docs/html/training/basics/firstapp/index.jd
@@ -14,8 +14,9 @@
 <h2>Dependencies and prerequisites</h2> 
 
 <ul>
-  <li>Android 1.6 or higher</li>
   <li><a href="http://developer.android.com/sdk/index.html">Android SDK</a></li>
+  <li><a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> 20.0.0 or higher
+    (if you're using Eclipse)</li>
 </ul>
  
 </div> 
@@ -27,39 +28,21 @@
 project and run a debuggable version of the app. You'll also learn some fundamentals of Android app
 design, including how to build a simple user interface and handle user input.</p>
 
-<p>Before you start this class, be sure that you have your development environment set up. You need
+<p>Before you start this class, be sure you have your development environment set up. You need
 to:</p>
 <ol>
-  <li>Download the Android SDK Starter Package.</li>
+  <li>Download the Android SDK.</li>
   <li>Install the ADT plugin for Eclipse (if you’ll use the Eclipse IDE).</li>
   <li>Download the latest SDK tools and platforms using the SDK Manager.</li>
 </ol>
 
-<p>If you haven't already done this setup, read <a href="{@docRoot}sdk/installing/index.html">Installing
-the SDK</a>. Once you've finished the setup, you're ready to begin this class.</p>
+<p>If you haven't already done these tasks, start by downloading the
+  <a href="{@docRoot}sdk/index.html">Android SDK</a> and following the install steps.
+  Once you've finished the setup, you're ready to begin this class.</p>
 
-<p>This class uses a tutorial format that incrementally builds a small Android app in order to teach
+<p>This class uses a tutorial format that incrementally builds a small Android app that teaches
 you some fundamental concepts about Android development, so it's important that you follow each
 step.</p>
 
 <p><strong><a href="creating-project.html">Start the first lesson &rsaquo;</a></strong></p>
 
-
-<h2>Lessons</h2> 
-
-<dl> 
-  <dt><b><a href="creating-project.html">Creating an Android Project</a></b></dt> 
-    <dd>Shows how to create a project for an Android app, which includes a set of default
-app files.</dd> 
- 
-  <dt><b><a href="running-app.html">Running Your Application</a></b></dt> 
-    <dd>Shows how to run your app on an Android-powered device or the Android
-emulator.</dd>
- 
-  <dt><b><a href="building-ui.html">Building a Simple User Interface</a></b></dt> 
-    <dd>Shows how to create a new user interface using an XML file.</dd>
- 
-  <dt><b><a href="starting-activity.html">Starting Another Activity</a></b></dt>
-    <dd>Shows how to respond to a button press, start another activity, send it some
-data, then receive the data in the subsequent activity.</dd>
-</dl> 
diff --git a/docs/html/training/basics/firstapp/running-app.jd b/docs/html/training/basics/firstapp/running-app.jd
index 5105a3b..0c428e7 100644
--- a/docs/html/training/basics/firstapp/running-app.jd
+++ b/docs/html/training/basics/firstapp/running-app.jd
@@ -37,7 +37,7 @@
 
 <p>If you followed the <a href="creating-project.html">previous lesson</a> to create an
 Android project, it includes a default set of "Hello World" source files that allow you to
-run the app right away.</p>
+immediately run the app.</p>
 
 <p>How you run your app depends on two things: whether you have a real Android-powered device and
 whether you’re using Eclipse. This lesson shows you how to install and run your app on a
@@ -49,14 +49,16 @@
 
 <dl>
   <dt><code>AndroidManifest.xml</code></dt>
-  <dd>This manifest file describes the fundamental characteristics of the app and defines each of
+  <dd>The <a href="{@docRoot}guide/topics/manifest/manifest-intro.html">manifest file</a> describes
+the fundamental characteristics of the app and defines each of
 its components. You'll learn about various declarations in this file as you read more training
 classes.</dd>
   <dt><code>src/</code></dt>
   <dd>Directory for your app's main source files. By default, it includes an {@link
 android.app.Activity} class that runs when your app is launched using the app icon.</dd>
   <dt><code>res/</code></dt>
-  <dd>Contains several sub-directories for app resources. Here are just a few:
+  <dd>Contains several sub-directories for <a
+href="{@docRoot}guide/topics/resources/overview.html">app resources</a>. Here are just a few:
     <dl style="margin-top:1em">
       <dt><code>drawable-hdpi/</code></dt>
         <dd>Directory for drawable objects (such as bitmaps) that are designed for high-density
@@ -70,30 +72,30 @@
   </dd>
 </dl>
 
-<p>When you build and run the default Android project, the default {@link android.app.Activity}
-class in the <code>src/</code> directory starts and loads a layout file from the
-<code>layout/</code> directory, which includes a "Hello World" message. Not real exciting, but it's
-important that you understand how to build and run your app before adding real functionality to
-the app.</p>
+<p>When you build and run the default Android app, the default {@link android.app.Activity}
+class starts and loads a layout file
+that says "Hello World." The result is nothing exciting, but it's
+important that you understand how to run your app before you start developing.</p>
 
 
 
 <h2 id="RealDevice">Run on a Real Device</h2>
 
-<p>Whether you’re using Eclipse or the command line, you need to:</p>
+<p>If you have a real Android-powered device, here's how you can install and run your app:</p>
 
 <ol>
-  <li>Plug in your Android-powered device to your machine with a USB cable.
+  <li>Plug in your device to your development machine with a USB cable.
 If you’re developing on Windows, you might need to install the appropriate USB driver for your
 device. For help installing drivers, see the <a href="{@docRoot}tools/extras/oem-usb.html">OEM USB
 Drivers</a> document.</li>
   <li>Ensure that <strong>USB debugging</strong> is enabled in the device Settings (open Settings
-and navitage to <strong>Applications > Development</strong> on most devices, or select
+and navitage to <strong>Applications > Development</strong> on most devices, or click
 <strong>Developer options</strong> on Android 4.0 and higher).</li>
 </ol>
 
 <p>To run the app from Eclipse, open one of your project's files and click
-<strong>Run</strong> from the toolbar. Eclipse installs the app on your connected device and starts
+Run <img src="{@docRoot}images/tools/eclipse-run.png" style="vertical-align:baseline;margin:0" />
+from the toolbar. Eclipse installs the app on your connected device and starts
 it.</p>
 
 
@@ -108,18 +110,18 @@
   <li>On your device, locate <em>MyFirstActivity</em> and open it.</li>
 </ol>
 
-<p>To start adding stuff to the app, continue to the <a href="building-ui.html">next
+<p>That's how you build and run your Android app on a device!
+  To start developing, continue to the <a href="building-ui.html">next
 lesson</a>.</p>
 
 
 
 <h2 id="Emulator">Run on the Emulator</h2>
 
-<p>Whether you’re using Eclipse or the command line, you need to first create an <a
-href="{@docRoot}tools/devices/index.html">Android Virtual
-Device</a> (AVD). An AVD is a
-device configuration for the Android emulator that allows you to model
-different device configurations.</p>
+<p>Whether you’re using Eclipse or the command line, to run your app on the emulator you need to
+first create an <a href="{@docRoot}tools/devices/index.html">Android Virtual Device</a> (AVD). An
+AVD is a device configuration for the Android emulator that allows you to model different
+devices.</p>
 
 <div class="figure" style="width:457px">
   <img src="{@docRoot}images/screens_support/avds-config.png" alt="" />
@@ -131,13 +133,15 @@
 <ol>
   <li>Launch the Android Virtual Device Manager:
     <ol type="a">
-      <li>In Eclipse, select <strong>Window > AVD Manager</strong>, or click the <em>AVD
-Manager</em> icon in the Eclipse toolbar.</li>
-      <li>From the command line, change directories to <code>&lt;sdk>/tools/</code> and execute:
-<pre class="no-pretty-print">./android avd</pre></li>
+      <li>In Eclipse, click Android Virtual Device Manager 
+        <img src="{@docRoot}images/tools/avd_manager.png"
+style="vertical-align:baseline;margin:0" /> from the toolbar.</li> 
+      <li>From the command line, change
+directories to <code>&lt;sdk>/tools/</code> and execute:
+<pre class="no-pretty-print">android avd</pre></li>
     </ol>
   </li>
-  <li>In the <em>Android Virtual Device Device Manager</em> panel, click <strong>New</strong>.</li>
+  <li>In the <em>Android Virtual Device Manager</em> panel, click <strong>New</strong>.</li>
   <li>Fill in the details for the AVD.
 Give it a name, a platform target, an SD card size, and a skin (HVGA is default).</li>
   <li>Click <strong>Create AVD</strong>.</li>
@@ -147,7 +151,8 @@
 </ol>
 
 <p>To run the app from Eclipse, open one of your project's files and click
-<strong>Run</strong> from the toolbar. Eclipse installs the app on your AVD and starts it.</p>
+Run <img src="{@docRoot}images/tools/eclipse-run.png" style="vertical-align:baseline;margin:0" />
+from the toolbar. Eclipse installs the app on your AVD and starts it.</p>
 
 
 <p>Or to run your app from the command line:</p>
@@ -163,7 +168,8 @@
 </ol>
 
 
-<p>To start adding stuff to the app, continue to the <a href="building-ui.html">next
+<p>That's how you build and run your Android app on the emulator! 
+  To start developing, continue to the <a href="building-ui.html">next
 lesson</a>.</p>
 
 
diff --git a/docs/html/training/basics/firstapp/starting-activity.jd b/docs/html/training/basics/firstapp/starting-activity.jd
index 37bc871..3dafcfa 100644
--- a/docs/html/training/basics/firstapp/starting-activity.jd
+++ b/docs/html/training/basics/firstapp/starting-activity.jd
@@ -43,8 +43,8 @@
 
 <p>After completing the <a href="building-ui.html">previous lesson</a>, you have an app that
 shows an activity (a single screen) with a text field and a button. In this lesson, you’ll add some
-code to <code>MyFirstActivity</code> that
-starts a new activity when the user selects the Send button.</p>
+code to <code>MainActivity</code> that
+starts a new activity when the user clicks the Send button.</p>
 
 
 <h2 id="RespondToButton">Respond to the Send Button</h2>
@@ -64,13 +64,13 @@
 
 <p>The <a
 href="{@docRoot}reference/android/view/View.html#attr_android:onClick">{@code
-android:onClick}</a> attribute’s value, <code>sendMessage</code>, is the name of a method in your
-activity that you want to call when the user selects the button.</p>
+android:onClick}</a> attribute’s value, <code>"sendMessage"</code>, is the name of a method in your
+activity that the system calls when the user clicks the button.</p>
 
-<p>Add the corresponding method inside the <code>MyFirstActivity</code> class:</p>
+<p>Open the <code>MainActivity</code> class and add the corresponding method:</p>
 
 <pre>
-/** Called when the user selects the Send button */
+/** Called when the user clicks the Send button */
 public void sendMessage(View view) {
     // Do something in response to button
 }
@@ -79,7 +79,7 @@
 <p class="note"><strong>Tip:</strong> In Eclipse, press Ctrl + Shift + O to import missing classes
 (Cmd + Shift + O on Mac).</p>
 
-<p>Note that, in order for the system to match this method to the method name given to <a
+<p>In order for the system to match this method to the method name given to <a
 href="{@docRoot}reference/android/view/View.html#attr_android:onClick">{@code android:onClick}</a>,
 the signature must be exactly as shown. Specifically, the method must:</p>
 
@@ -99,11 +99,11 @@
 
 <p>An {@link android.content.Intent} is an object that provides runtime binding between separate
 components (such as two activities). The {@link android.content.Intent} represents an
-app’s "intent to do something." You can use an {@link android.content.Intent} for a wide
+app’s "intent to do something." You can use intents for a wide
 variety of tasks, but most often they’re used to start another activity.</p>
 
 <p>Inside the {@code sendMessage()} method, create an {@link android.content.Intent} to start
-an activity called {@code DisplayMessageActvity}:</p>
+an activity called {@code DisplayMessageActivity}:</p>
 
 <pre>
 Intent intent = new Intent(this, DisplayMessageActivity.class);
@@ -127,7 +127,7 @@
 can also be <em>implicit</em>, in which case the {@link android.content.Intent} does not specify
 the desired component, but allows any app installed on the device to respond to the intent
 as long as it satisfies the meta-data specifications for the action that's specified in various
-{@link android.content.Intent} parameters. For more informations, see the class about <a
+{@link android.content.Intent} parameters. For more information, see the class about <a
 href="{@docRoot}training/basics/intents/index.html">Interacting with Other Apps</a>.</p>
 </div>
 </div>
@@ -136,9 +136,9 @@
 will raise an error if you’re using an IDE such as Eclipse because the class doesn’t exist yet.
 Ignore the error for now; you’ll create the class soon.</p>
 
-<p>An intent not only allows you to start another activity, but can carry a bundle of data to the
+<p>An intent not only allows you to start another activity, but it can carry a bundle of data to the
 activity as well. So, use {@link android.app.Activity#findViewById findViewById()} to get the
-{@link android.widget.EditText} element and add its message to the intent:</p>
+{@link android.widget.EditText} element and add its text value to the intent:</p>
 
 <pre>
 Intent intent = new Intent(this, DisplayMessageActivity.class);
@@ -148,37 +148,36 @@
 </pre>
 
 <p>An {@link android.content.Intent} can carry a collection of various data types as key-value
-pairs called <em>extras</em>. The {@link android.content.Intent#putExtra putExtra()} method takes a
-string as the key and the value in the second parameter.</p>
+pairs called <em>extras</em>. The {@link android.content.Intent#putExtra putExtra()} method takes the
+key name in the first parameter and the value in the second parameter.</p>
 
-<p>In order for the next activity to query the extra data, you should define your keys using a
+<p>In order for the next activity to query the extra data, you should define your key using a
 public constant. So add the {@code EXTRA_MESSAGE} definition to the top of the {@code
-MyFirstActivity} class:</p>
+MainActivity} class:</p>
 
 <pre>
-public class MyFirstActivity extends Activity {
-    public final static String EXTRA_MESSAGE = "com.example.myapp.MESSAGE";
+public class MainActivity extends Activity {
+    public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
     ...
 }
 </pre>
 
-<p>It's generally a good practice to define keys for extras with your app's package name as a prefix
-to ensure it's unique, in case your app interacts with other apps.</p>
+<p>It's generally a good practice to define keys for intent extras using your app's package name
+as a prefix. This ensures they are unique, in case your app interacts with other apps.</p>
 
 
 <h2 id="StartActivity">Start the Second Activity</h2>
 
 <p>To start an activity, you simply need to call {@link android.app.Activity#startActivity
-startActivity()} and pass it your {@link android.content.Intent}.</p>
-
-<p>The system receives this call and starts an instance of the {@link android.app.Activity}
+startActivity()} and pass it your {@link android.content.Intent}. The system receives this call
+and starts an instance of the {@link android.app.Activity}
 specified by the {@link android.content.Intent}.</p>
 
-<p>With this method included, the complete {@code sendMessage()} method that's invoked by the Send
+<p>With this new code, the complete {@code sendMessage()} method that's invoked by the Send
 button now looks like this:</p>
 
 <pre>
-/** Called when the user selects the Send button */
+/** Called when the user clicks the Send button */
 public void sendMessage(View view) {
     Intent intent = new Intent(this, DisplayMessageActivity.class);
     EditText editText = (EditText) findViewById(R.id.edit_message);
@@ -195,20 +194,48 @@
 
 <h2 id="CreateActivity">Create the Second Activity</h2>
 
-<p>In your project, create a new class file under the <code>src/&lt;package-name&gt;/</code>
-directory called <code>DisplayMessageActivity.java</code>.</p>
+<div class="figure" style="width:400px">
+<img src="{@docRoot}images/training/firstapp/adt-new-activity.png" alt="" />
+<p class="img-caption"><strong>Figure 1.</strong> The new activity wizard in Eclipse.</p>
+</div>
 
-<p class="note"><strong>Tip:</strong> In Eclipse, right-click the package name under the
-<code>src/</code> directory and select <strong>New > Class</strong>.
-Enter "DisplayMessageActivity" for the name and {@code android.app.Activity} for the superclass.</p>
+<p>To create a new activity using Eclipse:</p>
 
-<p>Inside the class, add the {@link android.app.Activity#onCreate onCreate()} callback method:</p>
+<ol>
+  <li>Click New <img src="{@docRoot}images/tools/eclipse-new.png" 
+  style="vertical-align:baseline;margin:0" /> in the toolbar.</li>
+  <li>In the window that appears, open the <strong>Android</strong> folder
+  and select <strong>Android Activity</strong>. Click <strong>Next</strong>.</li>
+  <li>Select <strong>BlankActivity</strong> and click <strong>Next</strong>.</li>
+  <li>Fill in the activity details:
+    <ul>
+      <li><em>Project</em>: MyFirstApp</li>
+      <li><em>Activity Name</em>: DisplayMessageActivity</li>
+      <li><em>Layout Name</em>: activity_display_message</li>
+      <li><em>Navigation Type</em>: None</li>
+      <li><em>Hierarchial Parent</em>: com.example.myfirstapp.MainActivity</li>
+      <li><em>Title</em>: My Message</li>
+    </ul>
+    <p>Click <strong>Finish</strong>.</p>
+  </li>
+</ol>
+
+<p>If you're using a different IDE or the command line tools, create a new file named
+{@code DisplayMessageActivity.java} in the project's <code>src/</code> directory, next to
+the original {@code MainActivity.java} file.</p>
+
+<p>Open the {@code DisplayMessageActivity.java} file. If you used Eclipse to create it, the class
+already includes an implementation of the required {@link android.app.Activity#onCreate onCreate()}
+method. There's also an implementation of the {@link android.app.Activity#onCreateOptionsMenu
+onCreateOptionsMenu()} method, but
+you won't need it for this app so you can remove it. The class should look like this:</p>
 
 <pre>
 public class DisplayMessageActivity extends Activity {
     &#64;Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_display_message);
     }
 }
 </pre>
@@ -216,7 +243,7 @@
 <p>All subclasses of {@link android.app.Activity} must implement the {@link
 android.app.Activity#onCreate onCreate()} method. The system calls this when creating a new
 instance of the activity. It is where you must define the activity layout and where you should
-initialize essential activity components.</p>
+perform initial setup for the activity components.</p>
 
 
 
@@ -226,38 +253,55 @@
 <a
 href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &lt;activity>}</a> element.</p>
 
-<p>Because {@code DisplayMessageActivity} is invoked using an explicit intent, it does not require
-any intent filters (such as those you can see in the manifest for <code>MyFirstActivity</code>). So
-the declaration for <code>DisplayMessageActivity</code> can be simply one line of code inside the <a
-href="{@docRoot}guide/topics/manifest/application-element.html">{@code &lt;application>}</a>
-element:</p>
+<p>When you use the Eclipse tools to create the activity, it creates a default entry. It should
+look like this:</p>
 
 <pre>
 &lt;application ... >
-    &lt;activity android:name="com.example.myapp.DisplayMessageActivity" />
     ...
+    &lt;activity
+        android:name=".DisplayMessageActivity"
+        android:label="@string/title_activity_display_message" >
+        &lt;meta-data
+            android:name="android.support.PARENT_ACTIVITY"
+            android:value="com.example.myfirstapp.MainActivity" />
+    &lt;/activity>
 &lt;/application>
 </pre>
 
+<p>The <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code
+  &lt;meta-data>}</a> element declares the name of this activity's parent activity
+  within the app's logical hierarchy. The Android <a
+href="{@docRoot}tools/extras/support-library.html">Support Library</a> uses this information
+  to implement default navigation behaviors, such as <a
+        href="{@docRoot}design/patterns/navigation.html">Up navigation</a>.</p>
+
+<p class="note"><strong>Note:</strong> During <a
+href="{@docRoot}sdk/installing/adding-packages.html">installation</a>, you should have downloaded
+the latest Support Library. Eclipse automatically includes this library in your app project (you
+can see the library's JAR file listed under <em>Android Dependencies</em>). If you're not using
+Eclipse, you may need to manually add the library to your project&mdash;follow this guide for <a
+href="{@docRoot}tools/extras/support-library.html#SettingUp">setting up the Support Library</a>.</p>
+
 <p>The app is now runnable because the {@link android.content.Intent} in the
 first activity now resolves to the {@code DisplayMessageActivity} class. If you run the app now,
-pressing the Send button starts the
-second activity, but it doesn't show anything yet.</p>
+clicking the Send button starts the second activity, but it's still using the default
+"Hello world" layout.</p>
 
 
 <h2 id="ReceiveIntent">Receive the Intent</h2>
 
 <p>Every {@link android.app.Activity} is invoked by an {@link android.content.Intent}, regardless of
 how the user navigated there. You can get the {@link android.content.Intent} that started your
-activity by calling {@link android.app.Activity#getIntent()} and the retrieve data contained
+activity by calling {@link android.app.Activity#getIntent()} and retrieve the data contained
 within it.</p>
 
 <p>In the {@code DisplayMessageActivity} class’s {@link android.app.Activity#onCreate onCreate()}
-method, get the intent and extract the message delivered by {@code MyFirstActivity}:</p>
+method, get the intent and extract the message delivered by {@code MainActivity}:</p>
 
 <pre>
 Intent intent = getIntent();
-String message = intent.getStringExtra(MyFirstActivity.EXTRA_MESSAGE);
+String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
 </pre>
 
 
@@ -279,22 +323,23 @@
 
     // Get the message from the intent
     Intent intent = getIntent();
-    String message = intent.getStringExtra(MyFirstActivity.EXTRA_MESSAGE);
+    String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
 
     // Create the text view
     TextView textView = new TextView(this);
     textView.setTextSize(40);
     textView.setText(message);
 
+    // Set the text view as the activity layout
     setContentView(textView);
 }
 </pre>
 
-<p>You can now run the app, type a message in the text field, press Send, and view the message on
-the second activity.</p>
+<p>You can now run the app. When it opens, type a message in the text field, click Send,
+  and the message appears on the second activity.</p>
 
 <img src="{@docRoot}images/training/firstapp/firstapp.png" />
-<p class="img-caption"><strong>Figure 1.</strong> Both activities in the final app, running
+<p class="img-caption"><strong>Figure 2.</strong> Both activities in the final app, running
 on Android 4.0.
 
 <p>That's it, you've built your first Android app!</p>
diff --git a/docs/html/training/basics/fragments/communicating.jd b/docs/html/training/basics/fragments/communicating.jd
index 3ac9873..eb9b368 100644
--- a/docs/html/training/basics/fragments/communicating.jd
+++ b/docs/html/training/basics/fragments/communicating.jd
@@ -108,7 +108,7 @@
         implements HeadlinesFragment.OnHeadlineSelectedListener{
     ...
     
-    public void onArticleSelected(Uri articleUri) {
+    public void onArticleSelected(int position) {
         // The user selected the headline of an article from the HeadlinesFragment
         // Do something here to display that article
     }
diff --git a/docs/html/training/basics/intents/sending.jd b/docs/html/training/basics/intents/sending.jd
index 77f0e1a..37a06f1 100644
--- a/docs/html/training/basics/intents/sending.jd
+++ b/docs/html/training/basics/intents/sending.jd
@@ -31,11 +31,11 @@
 <p>One of Android's most important features is an app's ability to send the user to another app
 based on an "action" it would like to perform. For example, if
 your app has the address of a business that you'd like to show on a map, you don't have to build
-an activity in your app that shows a map. Instead, you can send a out a request to view the address
-using an {@link android.content.Intent}. The Android system then starts an app that's able to view
+an activity in your app that shows a map. Instead, you can create a request to view the address
+using an {@link android.content.Intent}. The Android system then starts an app that's able to show
 the address on a map.</p>
 
-<p>As shown in the first class, <a href="{@docRoot}training/basics/firstapp/index.html">Building
+<p>As explained in the first class, <a href="{@docRoot}training/basics/firstapp/index.html">Building
 Your First App</a>, you must use intents to navigate between activities in your own app. You
 generally do so with an <em>explicit intent</em>, which defines the exact class name of the
 component you want to start. However, when you want to have a separate app perform an action, such
diff --git a/docs/html/training/basics/network-ops/connecting.jd b/docs/html/training/basics/network-ops/connecting.jd
index f70cf58..ac8d993 100644
--- a/docs/html/training/basics/network-ops/connecting.jd
+++ b/docs/html/training/basics/network-ops/connecting.jd
@@ -66,7 +66,7 @@
 Remember, the device may be out of range of a
 network, or the user may have disabled both Wi-Fi and mobile data access. 
 For more discussion of this topic, see the lesson <a
-href="{@docRoot}training/network-ops/managing.html">Managing Network
+href="{@docRoot}training/basics/network-ops/managing.html">Managing Network
 Usage</a>.</p>
 
 <pre>
diff --git a/docs/html/training/basics/network-ops/managing.jd b/docs/html/training/basics/network-ops/managing.jd
index 33cb195..0f3d495 100644
--- a/docs/html/training/basics/network-ops/managing.jd
+++ b/docs/html/training/basics/network-ops/managing.jd
@@ -116,7 +116,7 @@
 follows. The method {@link
 android.net.ConnectivityManager#getActiveNetworkInfo() getActiveNetworkInfo()}
 returns a {@link android.net.NetworkInfo} instance representing the first
-connected network interface it can find, or <code>null</code> if none if the
+connected network interface it can find, or <code>null</code> if none of the
 interfaces is connected (meaning that an
 internet connection is not available):</p>
 
diff --git a/docs/html/training/cloudsync/aesync.jd b/docs/html/training/cloudsync/aesync.jd
deleted file mode 100644
index a21b429..0000000
--- a/docs/html/training/cloudsync/aesync.jd
+++ /dev/null
@@ -1,432 +0,0 @@
-page.title=Syncing with App Engine
-parent.title=Syncing to the Cloud
-parent.link=index.html
-
-trainingnavtop=true
-next.title=Using the Backup API
-next.link=backupapi.html
-
-@jd:body
-
-<div id="tb-wrapper">
-<div id="tb">
-
-<!-- table of contents -->
-<h2>This lesson teaches you how to</h2>
-<ol>
-  <li><a href="#prepare">Prepare Your Environment</a></li>
-  <li><a href="#project">Create Your Project</a></li>
-  <li><a href="#data">Create the Data Layer</a></li>
-  <li><a href="#persistence">Create the Persistence Layer</a></li>
-  <li><a href="#androidapp">Query and Update from the Android App</a></li>
-  <li><a href="#serverc2dm">Configure the C2DM Server-Side</a></li>
-  <li><a href="#clientc2dm">Configure the C2DM Client-Side</a></li>
-</ol>
-<h2>You should also read</h2>
-    <ul>
-      <li><a
-        href="http://developers.google.com/appengine/">App Engine</a></li>
-      <li><a href="http://code.google.com/android/c2dm/">Android Cloud to Device
-        Messaging Framework</a></li>
-    </ul>
-<h2>Try it out</h2>
-
-<p>This lesson uses the Cloud Tasks sample code, originally shown at the
-<a href="http://www.youtube.com/watch?v=M7SxNNC429U">Android + AppEngine: A Developer's Dream Combination</a>
-talk at Google I/O.  You can use the sample application as a source of reusable code for your own
-application, or simply as a reference for how the Android and cloud pieces of the overall
-application fit together.  You can also build the sample application and see how it runs
-on your own device or emulator.</p>
-<p>
-  <a href="http://code.google.com/p/cloud-tasks-io/" class="button">Cloud Tasks
-  App</a>
-</p>
-
-</div>
-</div>
-
-<p>Writing an app that syncs to the cloud can be a challenge.  There are many little
-details to get right, like server-side auth, client-side auth, a shared data
-model, and an API.  One way to make this much easier is to use the Google Plugin
-for Eclipse, which handles a lot of the plumbing for you when building Android
-and App Engine applications that talk to each other.  This lesson walks you through building such a project.</p>
-
-<p>Following this lesson shows you how to:</p>
-<ul>
-  <li>Build Android and Appengine apps that can communicate with each other</li>
-  <li>Take advantage of Cloud to Device Messaging (C2DM) so your Android app doesn't have to poll for updates</li>
-</ul>
-
-<p>This lesson focuses on local development, and does not cover distribution
-(i.e, pushing your App Engine app live, or publishing your Android App to
-market), as those topics are covered extensively elsewhere.</p>
-
-<h2 id="prepare">Prepare Your Environment</h2>
-<p>If you want to follow along with the code example in this lesson, you must do
-the following to prepare your development environment:</p>
-<ul>
-<li>Install the <a href="http://code.google.com/eclipse/">Google Plugin for
-  Eclipse.</a></li>
-<li>Install the <a
-  href="http://code.google.com/webtoolkit/download.html">GWT SDK</a> and the <a
-  href="http://code.google.com/appengine/">Java App Engine SDK</a>. The <a
-  href="http://code.google.com/eclipse/docs/getting_started.html">Quick Start
-  Guide</a> shows you how to install these components.</li>
-<li>Sign up for <a href="http://code.google.com/android/c2dm/signup.html">C2DM
-  access</a>.  We strongly recommend <a
-  href="https://accounts.google.com/SignUp">creating a new Google account</a> specifically for
-connecting to C2DM.  The server component in this lesson uses this <em>role
-  account</em> repeatedly to authenticate with Google servers.
-</li>
-</ul>
-
-<h2 id="project">Create Your Projects</h2>
-<p>After installing the Google Plugin for Eclipse, notice that a new kind of Android project
-exists when you create a new Eclipse project:  The <strong>App Engine Connected
-  Android Project</strong> (under the <strong>Google</strong> project category).
-A wizard guides you through creating this project,
-during the course of which you are prompted to enter the account credentials for the role
-account you created.</p>
-
-<p class="note"><strong>Note:</strong> Remember to enter the credentials for
-your <i>role account</i> (the one you created to access C2DM services), not an
-account you'd log into as a user, or as an admin.</p>
-
-<p>Once you're done, you'll see two projects waiting for you in your
-workspace&mdash;An Android application and an App Engine application.  Hooray!
-These two applications are already fully functional&mdash; the wizard has
-created a sample application which lets you authenticate to the App Engine
-application from your Android device using AccountManager (no need to type in
-your credentials), and an App Engine app that can send messages to any logged-in
-device using C2DM.  In order to spin up your application and take it for a test
-drive, do the following:</p>
-
-<p>To spin up the Android application, make sure you have an AVD with a platform
-version of <em>at least</em> Android 2.2 (API Level 8).  Right click on the Android project in
-Eclipse, and go to <strong>Debug As &gt; Local App Engine Connected Android
-  Application</strong>.  This launches the emulator in such a way that it can
-test C2DM functionality (which typically works through Google Play).  It'll
-also launch a local instance of App Engine containing your awesome
-application.</p>
-
-<h2 id="data">Create the Data Layer</h2>
-
-<p>At this point you have a fully functional sample application running.  Now
-it's time to start changing the code to create your own application.</p>
-
-<p>First, create the data model that defines the data shared between
-the App Engine and Android applications.  To start, open up the source folder of
-your App Engine project, and navigate down to the <strong>(yourApp)-AppEngine
-  &gt; src &gt; (yourapp) &gt; server</strong> package.  Create a new class in there containing some data you want to
-store server-side. The code ends up looking something like this:</p>
-<pre>
-package com.cloudtasks.server;
-
-import javax.persistence.*;
-
-&#64;Entity
-public class Task {
-
-    private String emailAddress;
-    private String name;
-    private String userId;
-    private String note;
-
-    &#64;Id
-    &#64;GeneratedValue(strategy = GenerationType.IDENTITY)
-    private Long id;
-
-    public Task() {
-    }
-
-    public String getEmailAddress() {
-        return this.emailAddress;
-    }
-
-    public Long getId() {
-        return this.id;
-    }
-    ...
-}
-</pre>
-<p>Note the use of annotations:  <code>Entity</code>, <code>Id</code> and
-<code>GeneratedValue</code> are all part of the <a
-  href="http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html">Java
-  Persistence API</a>.  Essentially, the <code>Entity</code> annotation goes
-above the class declaration, and indicates that this class represents an entity
-in your data layer.  The <code>Id</code> and <code>GeneratedValue</code>
-annotations, respectively, indicate the field used as a lookup key for this
-class, and how that id is generated (in this case,
-<code>GenerationType.IDENTITY</code> indicates that the is generated by
-the database).  You can find more on this topic in the App Engine documentation,
-on the page <a
-  href="http://code.google.com/appengine/docs/java/datastore/jpa/overview.html">Using
-  JPA with App Engine</a>.</p>
-
-<p>Once you've written all the classes that represent entities in your data
-layer, you need a way for the Android and App Engine applications to communicate
-about this data.  This communication is enabled by creating a Remote Procedure
-Call (RPC) service.
-Typically, this involves a lot of monotonous code.  Fortunately, there's an easy way!  Right
-click on the server project in your App Engine source folder, and in the context
-menu, navigate to <strong>New &gt; Other</strong> and then, in the resulting
-screen, select <strong>Google &gt; RPC Service.</strong>  A wizard appears, pre-populated
-with all the Entities you created in the previous step,
-which it found by seeking out the <code>&#64;Entity</code> annotation in the
-source files you added.  Pretty neat, right?  Click <strong>Finish</strong>, and the wizard
-creates a Service class with stub methods for the Create, Retrieve, Update and
-Delete (CRUD) operations of all your entities.</p>
-
-<h2 id="persistence">Create the Persistence Layer</h2>
-
-<p>The persistence layer is where your application data is stored
-long-term, so any information you want to keep for your users needs to go here.
-You have several options for writing your persistence layer, depending on
-what kind of data you want to store.  A few of the options hosted by Google
-(though you don't have to use these services) include <a
-  href="http://code.google.com/apis/storage/">Google Storage for Developers</a>
-and App Engine's built-in <a
-  href="http://code.google.com/appengine/docs/java/gettingstarted/usingdatastore.html">Datastore</a>.
-The sample code for this lesson uses DataStore code.</p>
-
-<p>Create a class in your <code>com.cloudtasks.server</code> package to handle
-persistence layer input and output.  In order to access the data store, use the <a
-  href="http://db.apache.org/jdo/api20/apidocs/javax/jdo/PersistenceManager.html">PersistenceManager</a>
-class.  You can generate an instance of this class using the PMF class in the
-<code>com.google.android.c2dm.server.PMF</code> package, and then use that to
-perform basic CRUD operations on your data store, like this:</p>
-<pre>
-/**
-* Remove this object from the data store.
-*/
-public void delete(Long id) {
-    PersistenceManager pm = PMF.get().getPersistenceManager();
-    try {
-        Task item = pm.getObjectById(Task.class, id);
-        pm.deletePersistent(item);
-    } finally {
-        pm.close();
-    }
-}
-</pre>
-
-<p>You can also use <a
-  href="http://code.google.com/appengine/docs/python/datastore/queryclass.html">Query</a>
-objects to retrieve data from your Datastore.  Here's an example of a method
-that searches out an object by its ID.</p>
-
-<pre>
-public Task find(Long id) {
-    if (id == null) {
-        return null;
-    }
-
-    PersistenceManager pm = PMF.get().getPersistenceManager();
-    try {
-        Query query = pm.newQuery("select from " + Task.class.getName()
-        + " where id==" + id.toString() + " &amp;&amp; emailAddress=='" + getUserEmail() + "'");
-        List&lt;Task> list = (List&lt;Task>) query.execute();
-        return list.size() == 0 ? null : list.get(0);
-    } catch (RuntimeException e) {
-        System.out.println(e);
-        throw e;
-    } finally {
-        pm.close();
-    }
-}
-</pre>
-
-<p>For a good example of a class that encapsulates the persistence layer for
-you, check out the <a
-  href="http://code.google.com/p/cloud-tasks-io/source/browse/trunk/CloudTasks-AppEngine/src/com/cloudtasks/server/DataStore.java">DataStore</a>
-class in the Cloud Tasks app.</p>
-
-
-
-<h2 id="androidapp">Query and Update from the Android App</h2>
-
-<p>In order to keep in sync with the App Engine application, your Android application
-needs to know how to do two things:  Pull data from the cloud, and send data up
-to the cloud.  Much of the plumbing for this is generated by the
-plugin, but you need to wire it up to your Android user interface yourself.</p>
-
-<p>Pop open the source code for the main Activity in your project and look for
-<code>&lt;YourProjectName&gt; Activity.java</code>, then for the method
-<code>setHelloWorldScreenContent()</code>.  Obviously you're not building a
-HelloWorld app, so delete this method entirely and replace it
-with something relevant.  However, the boilerplate code has some very important
-characteristics.  For one, the code that communicates with the cloud is wrapped
-in an {@link android.os.AsyncTask} and therefore <em>not</em> hitting the
-network on the UI thread.  Also, it gives an easy template for how to access
-the cloud in your own code, using the <a
-  href="http://code.google.com/webtoolkit/doc/latest/DevGuideRequestFactory.html">RequestFactory</a>
-class generated that was auto-generated for you by the Eclipse plugin (called
-MyRequestFactory in the example below), and various {@code Request} types.</p>
-
-<p>For instance, if your server-side data model included an object called {@code
-Task} when you generated an RPC layer it automatically created a
-{@code TaskRequest} class for you, as well as a {@code TaskProxy} representing the individual
-task.  In code, requesting a list of all these tasks from the server looks
-like this:</p>
-
-<pre>
-public void fetchTasks (Long id) {
-  // Request is wrapped in an AsyncTask to avoid making a network request
-  // on the UI thread.
-    new AsyncTask&lt;Long, Void, List&lt;TaskProxy>>() {
-        &#64;Override
-        protected List&lt;TaskProxy> doInBackground(Long... arguments) {
-            final List&lt;TaskProxy> list = new ArrayList&lt;TaskProxy>();
-            MyRequestFactory factory = Util.getRequestFactory(mContext,
-            MyRequestFactory.class);
-            TaskRequest taskRequest = factory.taskNinjaRequest();
-
-            if (arguments.length == 0 || arguments[0] == -1) {
-                factory.taskRequest().queryTasks().fire(new Receiver&lt;List&lt;TaskProxy>>() {
-                    &#64;Override
-                    public void onSuccess(List&lt;TaskProxy> arg0) {
-                      list.addAll(arg0);
-                    }
-                });
-            } else {
-                newTask = true;
-                factory.taskRequest().readTask(arguments[0]).fire(new Receiver&lt;TaskProxy>() {
-                    &#64;Override
-                    public void onSuccess(TaskProxy arg0) {
-                      list.add(arg0);
-                    }
-                });
-            }
-        return list;
-    }
-
-    &#64;Override
-    protected void onPostExecute(List&lt;TaskProxy> result) {
-        TaskNinjaActivity.this.dump(result);
-    }
-
-    }.execute(id);
-}
-...
-
-public void dump (List&lt;TaskProxy> tasks) {
-    for (TaskProxy task : tasks) {
-        Log.i("Task output", task.getName() + "\n" + task.getNote());
-    }
-}
-</pre>
-
-<p>This {@link android.os.AsyncTask} returns a list of
-<code>TaskProxy</code> objects, and sends it to the debug {@code dump()} method
-upon completion.  Note that if the argument list is empty, or the first argument
-is a -1, all tasks are retrieved from the server.  Otherwise, only the ones with
-IDs in the supplied list are returned.  All the fields you added to the task
-entity when building out the App Engine application are available via get/set
-methods in the <code>TaskProxy</code> class.</p>
-
-<p>In order to create new tasks and send them to the cloud, create a request
-object and use it to create a proxy object. Then populate the proxy object and
-call its update method.  Once again, this should be done in an
-<code>AsyncTask</code> to avoid doing networking on the UI thread.  The end
-result looks something like this.</p>
-
-<pre>
-new AsyncTask&lt;Void, Void, Void>() {
-    &#64;Override
-    protected Void doInBackground(Void... arg0) {
-        MyRequestFactory factory = (MyRequestFactory)
-                Util.getRequestFactory(TasksActivity.this,
-                MyRequestFactory.class);
-        TaskRequest request = factory.taskRequest();
-
-        // Create your local proxy object, populate it
-        TaskProxy task = request.create(TaskProxy.class);
-        task.setName(taskName);
-        task.setNote(taskDetails);
-        task.setDueDate(dueDate);
-
-        // To the cloud!
-        request.updateTask(task).fire();
-        return null;
-    }
-}.execute();
-</pre>
-
-<h2 id="serverc2dm">Configure the C2DM Server-Side</h2>
-
-<p>In order to set up C2DM messages to be sent to your Android device, go back
-into your App Engine codebase, and open up the service class that was created
-when you generated your RPC layer.  If the name of your project is Foo,
-this class is called FooService.  Add a line to each of the methods for
-adding, deleting, or updating data so that a C2DM message is sent to the
-user's device.  Here's an example of an update task:
-</p>
-
-<pre>
-public static Task updateTask(Task task) {
-    task.setEmailAddress(DataStore.getUserEmail());
-    task = db.update(task);
-    DataStore.sendC2DMUpdate(TaskChange.UPDATE + TaskChange.SEPARATOR + task.getId());
-    return task;
-}
-
-// Helper method.  Given a String, send it to the current user's device via C2DM.
-public static void sendC2DMUpdate(String message) {
-    UserService userService = UserServiceFactory.getUserService();
-    User user = userService.getCurrentUser();
-    ServletContext context = RequestFactoryServlet.getThreadLocalRequest().getSession().getServletContext();
-    SendMessage.sendMessage(context, user.getEmail(), message);
-}
-</pre>
-
-<p>In the following example, a helper class, {@code TaskChange}, has been created with a few
-constants.  Creating such a helper class makes managing the communication
-between App Engine and Android apps much easier.  Just create it in the shared
-folder, define a few constants (flags for what kind of message you're sending
-and a seperator is typically enough), and you're done.  By way of example,
-the above code works off of a {@code TaskChange} class defined as this:</p>
-
-<pre>
-public class TaskChange {
-    public static String UPDATE = "Update";
-    public static String DELETE = "Delete";
-    public static String SEPARATOR = ":";
-}
-</pre>
-
-<h2 id="clientc2dm">Configure the C2DM Client-Side</h2>
-
-<p>In order to define the Android applications behavior when a C2DM is recieved,
-open up the <code>C2DMReceiver</code> class, and browse to the
-<code>onMessage()</code> method.  Tweak this method to update based on the content
-of the message.</p>
-<pre>
-//In your C2DMReceiver class
-
-public void notifyListener(Intent intent) {
-    if (listener != null) {
-        Bundle extras = intent.getExtras();
-        if (extras != null) {
-            String message = (String) extras.get("message");
-            String[] messages = message.split(Pattern.quote(TaskChange.SEPARATOR));
-            listener.onTaskUpdated(messages[0], Long.parseLong(messages[1]));
-        }
-    }
-}
-</pre>
-
-<pre>
-// Elsewhere in your code, wherever it makes sense to perform local updates
-public void onTasksUpdated(String messageType, Long id) {
-    if (messageType.equals(TaskChange.DELETE)) {
-        // Delete this task from your local data store
-        ...
-    } else {
-        // Call that monstrous Asynctask defined earlier.
-        fetchTasks(id);
-    }
-}
-</pre>
-<p>
-Once you have C2DM set up to trigger local updates, you're all done.
-Congratulations, you have a cloud-connected Android application!</p>
diff --git a/docs/html/training/cloudsync/backupapi.jd b/docs/html/training/cloudsync/backupapi.jd
index 3055596..a5436c6 100644
--- a/docs/html/training/cloudsync/backupapi.jd
+++ b/docs/html/training/cloudsync/backupapi.jd
@@ -3,8 +3,9 @@
 parent.link=index.html
 
 trainingnavtop=true
-previous.title=Syncing with App Engine
-previous.link=aesync.html
+
+next.title=Making the Most of Google Cloud Messaging
+next.link=gcm.html
 
 @jd:body
 
diff --git a/docs/html/training/cloudsync/gcm.jd b/docs/html/training/cloudsync/gcm.jd
new file mode 100644
index 0000000..df26d34
--- /dev/null
+++ b/docs/html/training/cloudsync/gcm.jd
@@ -0,0 +1,217 @@
+page.title=Making the Most of Google Cloud Messaging
+parent.title=Syncing to the Cloud
+parent.link=index.html
+
+trainingnavtop=true
+
+previous.title=Using the Backup API
+previous.link=backupapi.html
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>This lesson teaches you to</h2>
+    <ol>
+      <li><a href="#multicast">Send Multicast Messages Efficiently</a></li>
+      <li><a href="#collapse">Collapse Messages that can Be Replaced</a></li>
+      <li><a href="#embed">Embed Data Directly in the GCM Message</a></li>
+      <li><a href="#react">React Intelligently to GCM Messages</a></li>
+    </ol>
+    <h2>You should also read</h2>
+    <ul>
+      <li><a href="http://developer.android.com/guide/google/gcm/index.html">Google
+      Cloud Messaging for Android</a></li>
+    </ul>
+  </div>
+</div>
+
+<p>Google Cloud Messaging (GCM) is a free service for sending
+messages to Android devices.  GCM messaging can greatly enhance the user
+experience.  Your application can stay up to date without wasting battery power
+on waking up the radio and polling the server when there are no updates.  Also,
+GCM allows you to attach up to 1,000 recipients to a single message, letting you easily contact
+large user bases quickly when appropriate, while minimizing the work load on
+your server.</p>
+
+<p>This lesson covers some of the best practices
+for integrating GCM into your application, and assumes you are already familiar
+with basic implementation of this service.  If this is not the case, you can read the <a
+  href="{@docRoot}guide/google/gcm/demo.html">GCM demo app tutorial</a>.</p>
+
+<h2 id="multicast">Send Multicast Messages Efficiently</h2>
+<p>One of the most useful features in GCM is support for up to 1,000 recipients for
+a single message.  This capability makes it much easier to send out important messages to
+your entire user base.  For instance, let's say you had a message that needed to
+be sent to 1,000,000 of your users, and your server could handle sending out
+about 500 messages per second.  If you send each message with only a single
+recipient, it would take 1,000,000/500 = 2,000 seconds, or around half an hour.
+However, attaching 1,000 recipients to each message, the total time required to
+send a message out to 1,000,000 recipients becomes (1,000,000/1,000) / 500 = 2
+seconds. This is not only useful, but important for timely data, such as natural
+disaster alerts or sports scores, where a 30 minute interval might render the
+information useless.</p>
+
+<p>Taking advantage of this functionality is easy.  If you're using the <a
+  href="http://developer.android.com/guide/google/gcm/gs.html#libs">GCM helper
+  library</a> for Java, simply provide a <code>List<String></code> collection of
+registration IDs to the <code>send</code> or <code>sendNoRetry</code> method,
+instead of a single registration ID.</p>
+
+<pre>
+// This method name is completely fabricated, but you get the idea.
+List<String> regIds = whoShouldISendThisTo(message);
+
+// If you want the SDK to automatically retry a certain number of times, use the
+// standard send method.
+MulticastResult result = sender.send(message, regIds, 5);
+
+// Otherwise, use sendNoRetry.
+MulticastResult result = sender.sendNoRetry(message, regIds);
+</pre>
+
+<p>For those implementing GCM support in a language other than Java, construct
+an HTTP POST request with the following headers:</p>
+<ul>
+  <li><code>Authorization: key=YOUR_API_KEY</code></li>
+  <li><code>Content-type: application/json</code></li>
+</ul>
+
+<p>Then encode the parameters you want into a JSON object, listing all the
+registration IDs under the key <code>registration_ids</code>.  The snippet below
+serves as an example.  All parameters except <code>registration_ids</code> are
+optional, and the items nested in <code>data</code> represent the user-defined payload, not
+GCM-defined parameters.  The endpoint for this HTTP POST message will be
+<code>https://android.googleapis.com/gcm/send</code>.</p>
+
+<pre>
+{ "collapse_key": "score_update",
+   "time_to_live": 108,
+   "delay_while_idle": true,
+   "data": {
+       "score": "4 x 8",
+       "time": "15:16.2342"
+   },
+   "registration_ids":["4", "8", "15", "16", "23", "42"]
+}
+</pre>
+
+<p>For a more thorough overview of the format of multicast GCM messages, see the <a
+  href="http://developer.android.com/guide/google/gcm/gcm.html#send-msg">Sending
+  Messages</a> section of the GCM guide.</pre>
+
+<h2 id="collapse">Collapse Messages that Can Be Replaced</h2>
+<p>GCM messages are often a tickle, telling the mobile application to
+contact the server for fresh data.  In GCM, it's possible (and recommended) to
+create collapsible messages for this situation, wherein new messages replace
+older ones.  Let's take the example
+of sports scores.  If you send out a message to all users following a certain
+game with the updated score, and then 15 minutes later an updated score message
+goes out, the earlier one no longer matters.  For any users who haven't received
+the first message yet, there's no reason to send both, and force the device to
+react (and possibly alert the user) twice when only one of the messages is still
+important.</p>
+
+<p>When you define a collapse key, when multiple messages are queued up in the GCM
+servers for the same user, only the last one with any given collapse key is
+delivered.  For a situation like with sports scores, this saves the device from
+doing needless work and potentially over-notifying the user.  For situations
+that involve a server sync (like checking email), this can cut down on the
+number of syncs the device has to do.  For instance, if there are 10 emails
+waiting on the server, and ten "new email" GCM tickles have been sent to the
+device, it only needs one, since it should only sync once.</p>
+
+<p>In order to use this feature, just add a collapse key to your outgoing
+message.  If you're using the GCM helper library, use the Message class's <code>collapseKey(String key)</code> method.</p>
+
+<pre>
+Message message = new Message.Builder(regId)
+    .collapseKey("game4_scores") // The key for game 4.
+    .ttl(600) // Time in seconds to keep message queued if device offline.
+    .delayWhileIdle(true) // Wait for device to become active before sending.
+    .addPayload("key1", "value1")
+    .addPayload("key2", "value2")
+    .build();
+</pre>
+
+<p>If not using the helper library, simply add a variable to the
+POST header you're constructing, with <code>collapse_key</code> as the field
+name, and the string you're using for that set of updates as the value.</p>
+
+
+
+<h2 id="embed">Embed Data Directly in the GCM Message</h2>
+<p>Often, GCM messages are meant to be a tickle, or indication to the device
+that there's fresh data waiting on a server somewhere.  However, a GCM message
+can be up to 4kb in size, so sometimes it makes sense to simply send the
+data within the GCM message itself, so that the device doesn't need to contact the
+server at all.  Consider this approach for situations where all of the
+following statements are true:
+<ul>
+  <li>The total data fits inside the 4kb limit.</li>
+  <li>Each message is important, and should be preserved.</li>
+  <li>It doesn't make sense to collapse multiple GCM messages into a single
+  "new data on the server" tickle.</li>
+</ul>
+
+<p>For instance, short messages or encoded player moves
+in a turn-based network game are examples of good use-cases for data to embed directly
+into a GCM message. Email is an example of a bad use-case, since messages are
+often larger than 4kb,
+and users don't need a GCM message for each email waiting for them on
+the server.</p>
+
+<p>Also consider this approach when sending
+multicast messages, so you don't tell every device across your user base to hit
+your server for updates simultaneously.</p>
+<p>This strategy isn't appropriate for sending large amounts of data, for a few
+reasons:</p>
+<ul>
+  <li>Rate limits are in place to prevent malicious or poorly coded apps from spamming an
+  individual device with messages.</li>
+  <li>Messages aren't guaranteed to arrive in-order.</li>
+  <li>Messages aren't guaranteed to arrive as fast as you send them out.  Even
+  if the device receives one GCM message a second, at a max of 1K, that's 8kbps, or
+  about the speed of home dial-up internet in the early 1990's.  Your app rating
+  on Google Play will reflect having done that to your users.</p>
+</ul>
+
+<p>When used appropriately, directly embedding data in the GCM message can speed
+up the perceived speediness of your application, by letting it skip a round trip
+to the server.</p>
+
+<h2 id="react">React Intelligently to GCM Messages</h2>
+<p>Your application should not only react to incoming GCM messages, but react
+<em>intelligently</em>.  How to react depends on the context.</p>
+
+<h3>Don't be irritating</h3>
+<p>When it comes to alerting your user of fresh data, it's easy to cross the line
+from "useful" to "annoying".  If your application uses status bar notifications,
+<a
+  href="http://developer.android.com/guide/topics/ui/notifiers/notifications.html#Updating">update
+  your existing notification</a> instead of creating a second one. If you
+beep or vibrate to alert the user, consider setting up a timer.  Don't let the
+application alert more than once a minute, lest users be tempted to uninstall
+your application, turn the device off, or toss it in a nearby river.</p>
+
+<h3>Sync smarter, not harder</h3>
+<p>When using GCM as an indicator to the device that data needs to be downloaded
+from the server, remember you have 4kb of metadata you can send along to
+help your application be smart about it.  For instance, if you have a feed
+reading app, and your user has 100 feeds that they follow, help the device be
+smart about what it downloads from the server!  Look at the following examples
+of what metadata is sent to your application in the GCM payload, and how the application
+can react:</p>
+<ul>
+  <li><code>refresh</code> &mdash; Your app basically got told to request a dump of
+  every feed it follows.  Your app would either need to send feed requests to 100 different servers, or
+  if you have an aggregator on your server, send a request to retrieve, bundle
+  and
+  transmit recent data from 100 different feeds, every time one updates.</li>
+  <li><code>refresh</code>, <code>feedID</code> &mdash; Better:  Your app knows to check
+  a specific feed for updates.</li>
+  <li><code>refresh</code>, <code>feedID</code>, <code>timestamp</code> &mdash;
+  Best:  If the user happened to manually refresh before the GCM message
+  arrived, the application can compare timestamps of the most recent post, and
+  determine that it <em>doesn't need to do anything</em>.
+</ul>
diff --git a/docs/html/training/cloudsync/index.jd b/docs/html/training/cloudsync/index.jd
index e53844b..91885e8 100644
--- a/docs/html/training/cloudsync/index.jd
+++ b/docs/html/training/cloudsync/index.jd
@@ -2,8 +2,8 @@
 
 trainingnavtop=true
 startpage=true
-next.title=Syncing with App Engine
-next.link=aesync.html
+next.title=Making the Most of Google Cloud Messaging
+next.link=gcm.html
 
 @jd:body
 
@@ -21,14 +21,13 @@
 <h2>Lessons</h2>
 
 <dl>
-  <dt><strong><a href="aesync.html">Syncing with App Engine.</a></strong></dt>
-  <dd>Learn how to create a paired App Engine app and Android app which share a
-  data model, authenticates using the AccountManager, and communicate with each
-  other via REST and C2DM.</dd>
-  <dt><strong><a href="backupapi.html">Using the Backup
-      API</a></strong></dt>
+  <dt><strong><a href="backupapi.html">Using the Backup API</a></strong></dt>
   <dd>Learn how to integrate the Backup API into your Android Application, so
   that user data such as preferences, notes, and high scores update seamlessly
   across all of a user's devices</dd>
+  <dt><strong><a href="gcm.html">Making the Most of Google Cloud Messaging</a></strong></dt>
+  <dd>Learn how to efficiently send multicast messages, react intelligently to
+  incoming Google Cloud Messaging (GCM) messages, and use GCM messages to
+  efficiently sync with the server.</dd>
 </dl>
 
diff --git a/docs/html/training/connect-devices-wirelessly/index.jd b/docs/html/training/connect-devices-wirelessly/index.jd
new file mode 100644
index 0000000..37cf633
--- /dev/null
+++ b/docs/html/training/connect-devices-wirelessly/index.jd
@@ -0,0 +1,62 @@
+page.title=Connecting Devices Wirelessly
+
+trainingnavtop=true
+startpage=true
+next.title=Using Network Service Discovery
+next.link=nsd.html
+
+@jd:body
+
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<h2>Dependencies and prerequisites</h2>
+<ul>
+  <li>Android 4.1 or higher</li>
+</ul>
+
+<h2>You should also read</h2>
+<ul>
+  <li><a href="{@docRoot}guide/topics/connectivity/wifip2p.html">Wi-Fi Direct</a></li>
+</ul>
+
+
+</div>
+</div>
+
+
+<p>Besides enabling communication with the cloud, Android's wireless APIs also
+enable communication with other devices on the same local network, and even
+devices which are not on a network, but are physically nearby.  The addition of
+Network Service Discovery (NSD) takes this further by allowing an application to
+seek out a nearby device running services with which it can communicate.
+Integrating this functionality into your application helps you provide a wide range
+of features, such as playing games with users in the same room, pulling
+images from a networked NSD-enabled webcam, or remotely logging into
+other machines on the same network.</p>
+<p>This class describes the key APIs for finding and
+connecting to other devices from your application.  Specifically, it
+describes the NSD API for discovering available services and the Wi-Fi
+Direct&trade; API for doing peer-to-peer wireless connections.  This class also
+shows you how to use NSD and Wi-Fi Direct in
+combination to detect the services offered by a device and connect to the
+device when neither device is connected to a network.
+</p>
+<h2>Lessons</h2>
+
+<dl>
+  <dt><strong><a href="nsd.html">Using Network Service Discovery</a></strong></dt>
+  <dd>Learn how to broadcast services offered by your own application, discover
+  services offered on the local network, and use NSD to determine the connection
+  details for the service you wish to connect to.</dd>
+  <dt><strong><a href="wifi-direct.html">Connecting with Wi-Fi Direct</a></strong></dt>
+  <dd>Learn how to fetch a list of nearby peer devices, create an access point
+  for legacy devices, and connect to other devices capable of Wi-Fi Direct
+  connections.</dd>
+  <dt><strong><a href="nsd-wifi-direct.html">Using Wi-Fi Direct for Service
+      Discovery</a></strong></dt>
+  <dd>Learn how to discover services published by nearby devices without being
+  on the same network, using Wi-Fi Direct.</dd>
+</dl>
+
diff --git a/docs/html/training/connect-devices-wirelessly/nsd-wifi-direct.jd b/docs/html/training/connect-devices-wirelessly/nsd-wifi-direct.jd
new file mode 100644
index 0000000..5e276de
--- /dev/null
+++ b/docs/html/training/connect-devices-wirelessly/nsd-wifi-direct.jd
@@ -0,0 +1,252 @@
+page.title=Using Wi-Fi Direct for Service Discovery
+parent.title=Connecting Devices Wirelessly
+parent.link=index.html
+
+trainingnavtop=true
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>This lesson teaches you to</h2>
+    <ol>
+      <li><a href="#manifest">Set Up the Manifest</a></li>
+      <li><a href="#register">Add a Local Service</a></li>
+      <li><a href="#discover">Discover Nearby Services</a></li>
+    </ol>
+    <!--
+    <h2>You should also read</h2>
+    <ul>
+      <li><a href="#"></a></li>
+    </ul>
+    -->
+  </div>
+</div>
+
+<p>The first lesson in this class, <a href="nsd.html">Using Network Service
+  Discovery</a>, showed you
+how to discover services that are connected to a local network. However, using
+Wi-Fi Direct&trad; Service Discovery allows you to discover the services of nearby devices directly,
+without being connected to a network.  You can also advertise the services
+running on your device.  These capabilities help you communicate between apps,
+even when no local network or hotspot is available.</p>
+<p>While this set of APIs is similar in purpose to the Network Service Discovery
+APIs outlined in a previous lesson, implementing them in code is very different.
+This lesson shows you how to discover services available from other devices,
+using Wi-Fi Direct&trade;. The lesson assumes that you're already familiar with the
+<a href="{@docRoot}guide/topics/connectivity/wifip2p.html">Wi-Fi Direct</a> API.</p>
+
+
+<h2 id="manifest">Set Up the Manifest</h2>
+<p>In order to use Wi-Fi Direct, add the {@link
+android.Manifest.permission#CHANGE_WIFI_STATE}, {@link
+android.Manifest.permission#ACCESS_WIFI_STATE},
+and {@link android.Manifest.permission#INTERNET}
+permissions to your manifest.  Even though Wi-Fi Direct doesn't require an
+Internet connection, it uses standard Java sockets, and using these in Android
+requires the requested permissions.</p>
+
+<pre>
+&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.example.android.nsdchat"
+    ...
+
+    &lt;uses-permission
+        android:required="true"
+        android:name="android.permission.ACCESS_WIFI_STATE"/&gt;
+    &lt;uses-permission
+        android:required="true"
+        android:name="android.permission.CHANGE_WIFI_STATE"/&gt;
+    &lt;uses-permission
+        android:required="true"
+        android:name="android.permission.INTERNET"/&gt;
+    ...
+</pre>
+
+<h2 id="register">Add a Local Service</h2>
+<p>If you're providing a local service, you need to register it for
+service discovery.  Once your local service is registered, the framework
+automatically responds to service discovery requests from peers.</p>
+
+<p>To create a local service:</p>
+
+<ol>
+  <li>Create a
+{@link android.net.wifi.p2p.nsd.WifiP2pServiceInfo} object.</li>
+  <li>Populate it with information about your service.</li>
+  <li>Call {@link
+android.net.wifi.p2p.WifiP2pManager#addLocalService(WifiP2pManager.Channel,
+WifiP2pServiceInfo, WifiP2pManager.ActionListener) addLocalService()} to register the local
+service for service discovery.</li>
+</ol>
+
+<pre>
+     private void startRegistration() {
+        //  Create a string map containing information about your service.
+        Map<String,String> record = new HashMap<String,String>();
+        record.put("listenport", String.valueOf(SERVER_PORT));
+        record.put("buddyname", "John Doe" + (int) (Math.random() * 1000));
+        record.put("available", "visible");
+
+        // Service information.  Pass it an instance name, service type
+        // _protocol._transportlayer , and the map containing
+        // information other devices will want once they connect to this one.
+        WifiP2pDnsSdServiceInfo serviceInfo =
+                WifiP2pDnsSdServiceInfo.newInstance("_test", "_presence._tcp", record);
+
+        // Add the local service, sending the service info, network channel,
+        // and listener that will be used to indicate success or failure of
+        // the request.
+        mManager.addLocalService(channel, serviceInfo, new ActionListener() {
+            &#64;Override
+            public void onSuccess() {
+                // Command successful! Code isn't necessarily needed here,
+                // Unless you want to update the UI or add logging statements.
+            }
+
+            &#64;Override
+            public void onFailure(int arg0) {
+                // Command failed.  Check for P2P_UNSUPPORTED, ERROR, or BUSY
+            }
+        });
+    }
+</pre>
+
+<h2 id="discover">Discover Nearby Services</h2>
+<p>Android uses callback methods to notify your application of available services, so
+the first thing to do is set those up.  Create a {@link
+android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener} to listen for
+incoming records.  This record can optionally be broadcast by other
+devices.  When one comes in, copy the device address and any other
+relevant information you want into a data structure external to the current
+method, so you can access it later.  The following example assumes that the
+record contains a "buddyname" field, populated with the user's identity.</p>
+
+<pre>
+final HashMap&lt;String, String&gt; buddies = new HashMap&lt;String, String&gt;();
+...
+private void discoverService() {
+    DnsSdTxtRecordListener txtListener = new DnsSdTxtRecordListener() {
+        &#64;Override
+        /* Callback includes:
+         * fullDomain: full domain name: e.g "printer._ipp._tcp.local."
+         * record: TXT record dta as a map of key/value pairs.
+         * device: The device running the advertised service.
+         */
+
+        public void onDnsSdTxtRecordAvailable(
+                String fullDomain, Map<String,String> record, WifiP2pDevice device) {
+                Log.d(TAG, "DnsSdTxtRecord available -" + record.toString());
+                buddies.put(device.deviceAddress, record.get("buddyname"));
+            }
+        };
+    ...
+}
+</pre>
+
+<p>To get the service information, create a {@link
+android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener}.  This
+receives the actual description and connection information.  The previous code
+snippet implemented a {@link java.util.Map} object to pair a device address with the buddy
+name.  The service response listener uses this to link the DNS record with the
+corresponding service information.  Once both
+listeners are implemented, add them to the {@link
+android.net.wifi.p2p.WifiP2pManager} using the {@link
+android.net.wifi.p2p.WifiP2pManager#setDnsSdResponseListeners(WifiP2pManager.Channel,
+WifiP2pManager.DnsSdServiceResponseListener,
+WifiP2pManager.DnsSdTxtRecordListener) setDnsSdResponseListeners()} method.</p>
+
+<pre>
+private void discoverService() {
+...
+
+    DnsSdServiceResponseListener servListener = new DnsSdServiceResponseListener() {
+        &#64;Override
+        public void onDnsSdServiceAvailable(String instanceName, String registrationType,
+                WifiP2pDevice resourceType) {
+
+                // Update the device name with the human-friendly version from
+                // the DnsTxtRecord, assuming one arrived.
+                resourceType.deviceName = buddies
+                        .containsKey(resourceType.deviceAddress) ? buddies
+                        .get(resourceType.deviceAddress) : resourceType.deviceName;
+
+                // Add to the custom adapter defined specifically for showing
+                // wifi devices.
+                WiFiDirectServicesList fragment = (WiFiDirectServicesList) getFragmentManager()
+                        .findFragmentById(R.id.frag_peerlist);
+                WiFiDevicesAdapter adapter = ((WiFiDevicesAdapter) fragment
+                        .getListAdapter());
+
+                adapter.add(resourceType);
+                adapter.notifyDataSetChanged();
+                Log.d(TAG, "onBonjourServiceAvailable " + instanceName);
+        }
+    };
+
+    mManager.setDnsSdResponseListeners(channel, servListener, txtListener);
+    ...
+}
+</pre>
+
+<p>Now create a service request and call {@link
+android.net.wifi.p2p.WifiP2pManager#addServiceRequest(WifiP2pManager.Channel,
+WifiP2pServiceRequest, WifiP2pManager.ActionListener) addServiceRequest()}.
+This method also takes a listener to report success or failure.</p>
+
+<pre>
+        serviceRequest = WifiP2pDnsSdServiceRequest.newInstance();
+        mManager.addServiceRequest(channel,
+                serviceRequest,
+                new ActionListener() {
+                    &#64;Override
+                    public void onSuccess() {
+                        // Success!
+                    }
+
+                    &#64;Override
+                    public void onFailure(int code) {
+                        // Command failed.  Check for P2P_UNSUPPORTED, ERROR, or BUSY
+                    }
+                });
+</pre>
+
+<p>Finally, make the call to {@link
+android.net.wifi.p2p.WifiP2pManager#discoverServices(WifiP2pManager.Channel,
+WifiP2pManager.ActionListener) discoverServices()}.</p>
+
+<pre>
+        mManager.discoverServices(channel, new ActionListener() {
+
+            &#64;Override
+            public void onSuccess() {
+                // Success!
+            }
+
+            &#64;Override
+            public void onFailure(int code) {
+                // Command failed.  Check for P2P_UNSUPPORTED, ERROR, or BUSY
+                if (code == WifiP2pManager.P2P_UNSUPPORTED) {
+                    Log.d(TAG, "P2P isn't supported on this device.");
+                else if(...)
+                    ...
+            }
+        });
+</pre>
+
+<p>If all goes well, hooray, you're done!  If you encounter problems, remember
+that the asynchronous calls you've made take an
+{@link android.net.wifi.p2p.WifiP2pManager.ActionListener} as an argument, and
+this provides you with callbacks indicating success or failure.  To diagnose
+problems, put debugging code in {@link
+android.net.wifi.p2p.WifiP2pManager.ActionListener#onFailure(int) onFailure()}.  The error code
+provided by the method hints at the problem.  Here are the possible error values
+and what they mean</p>
+<dl>
+  <dt> {@link android.net.wifi.p2p.WifiP2pManager#P2P_UNSUPPORTED}</dt>
+  <dd> Wi-Fi Direct isn't supported on the device running the app.</dd>
+  <dt> {@link android.net.wifi.p2p.WifiP2pManager#BUSY}</dt>
+  <dd> The system is to busy to process the request.</dd>
+  <dt> {@link android.net.wifi.p2p.WifiP2pManager#ERROR}</dt>
+  <dd> The operation failed due to an internal error.</dd>
+</dl>
diff --git a/docs/html/training/connect-devices-wirelessly/nsd.jd b/docs/html/training/connect-devices-wirelessly/nsd.jd
new file mode 100644
index 0000000..d2b01a1
--- /dev/null
+++ b/docs/html/training/connect-devices-wirelessly/nsd.jd
@@ -0,0 +1,373 @@
+page.title=Using Network Service Discovery
+parent.title=Connecting Devices Wirelessly
+parent.link=index.html
+
+trainingnavtop=true
+next.title=Connecting with Wi-Fi Direct
+next.link=wifi-direct.html
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+
+<!-- table of contents -->
+<h2>This lesson teaches you how to</h2>
+<ol>
+  <li><a href="#register">Register Your Service on the Network</a></li>
+  <li><a href="#discover">Discover Services on the Network</a></li>
+  <li><a href="#connect">Connect to Services on the Network</a></li>
+  <li><a href="#teardown">Unregister Your Service on Application Close</a></li>
+</ol>
+
+<!--
+<h2>You should also read</h2>
+    <ul>
+    </ul>
+-->
+<h2>Try it out</h2>
+
+<div class="download-box">
+  <a href="{@docRoot}shareables/training/nsdchat.zip" class="button">Download
+    the sample app</a>
+  <p class="filename">nsdchat.zip</p>
+</div>
+</p>
+
+</div>
+</div>
+
+<p>Adding Network Service Discovery (NSD) to your app allows your users to
+identify other devices on the local network that support the services your app
+requests. This is useful for a variety of peer-to-peer applications such as file
+sharing or multi-player gaming. Android's NSD APIs simplify the effort required
+for you to implement such features.</p>
+
+<p>This lesson shows you how to build an application that can broadcast its
+name and connection information to the local network and scan for information
+from other applications doing the same.  Finally, this lesson shows you how
+to connect to the same application running on another device.</p>
+
+<h2 id="register">Register Your Service on the Network</h2>
+
+<p class="note"><strong>Note: </strong>This step is optional.  If
+you don't care about broadcasting your app's services over the local network,
+you can skip forward to the
+next section, <a href="#discover">Discover Services on the Network</a>.</p>
+
+<p>To register your service on the local network, first create a {@link
+android.net.nsd.NsdServiceInfo} object.  This object provides the information
+that other devices on the network use when they're deciding whether to connect to your
+service. </p>
+
+<pre>
+public void registerService(int port) {
+    // Create the NsdServiceInfo object, and populate it.
+    NsdServiceInfo serviceInfo  = new NsdServiceInfo();
+
+    // The name is subject to change based on conflicts
+    // with other services advertised on the same network.
+    serviceInfo.setServiceName("NsdChat");
+    serviceInfo.setServiceType("_http._tcp.");
+    serviceInfo.setPort(port);
+    ....
+}
+</pre>
+
+<p>This code snippet sets the service name to "NsdChat".
+The name is visible to any device on the network that is using NSD to look for
+local services.  Keep in mind that the name must be unique for any service on the
+network, and Android automatically handles conflict resolution.  If
+two devices on the network both have the NsdChat application installed, one of
+them changes the service name automatically, to something like "NsdChat
+(1)".</p>
+
+<p>The second parameter sets the service type, specifies which protocol and transport
+layer the application uses.  The syntax is
+"_&lt;protocol&gt;._&lt;transportlayer&gt;".  In the
+code snippet, the service uses HTTP protocol running over TCP.  An application
+offering a printer service (for instance, a network printer) would set the
+service type to "_ipp._tcp".</p>
+
+<p class="note"><strong>Note: </strong> The International Assigned Numbers
+Authority (IANA) manages a centralized,
+authoritative list of service types used by service discovery protocols such as NSD and Bonjour.
+You can download the list from <a
+  href="http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml">the
+IANA list of service names and port numbers</a>.
+If you intend to use a new service type, you should reserve it by filling out
+the  <a
+  href="http://www.iana.org/form/ports-services">IANA Ports and Service
+  registration form</a>.</p>
+
+<p>When setting the port for your service, avoid hardcoding it as this
+conflicts with other applications.  For instance, assuming
+that your application always uses port 1337 puts it in potential conflict with
+other installed applications that use the same port.  Instead, use the device's
+next available port.  Because this information is provided to other apps by a
+service broadcast, there's no need for the port your application uses to be
+known by other applications at compile-time.  Instead, the applications can get
+this information from your service broadcast, right before connecting to your
+service.</p>
+
+<p>If you're working with sockets, here's how you can initialize a socket to any
+available port simply by setting it to 0.</p>
+
+<pre>
+public void initializeServerSocket() {
+    // Initialize a server socket on the next available port.
+    mServerSocket = new ServerSocket(0);
+
+    // Store the chosen port.
+    mLocalPort =  mServerSocket.getLocalPort();
+    ...
+}
+</pre>
+
+<p>Now that you've defined the {@link android.net.nsd.NsdServiceInfo
+NsdServiceInfo} object, you need to implement the {@link
+android.net.nsd.NsdManager.RegistrationListener RegistrationListener} interface.  This
+interface contains callbacks used by Android to alert your application of the
+success or failure of service registration and unregistration.
+</p>
+<pre>
+public void initializeRegistrationListener() {
+    mRegistrationListener = new NsdManager.RegistrationListener() {
+
+        &#64;Override
+        public void onServiceRegistered(NsdServiceInfo NsdServiceInfo) {
+            // Save the service name.  Android may have changed it in order to
+            // resolve a conflict, so update the name you initially requested
+            // with the name Android actually used.
+            mServiceName = NsdServiceInfo.getServiceName();
+        }
+
+        &#64;Override
+        public void onRegistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
+            // Registration failed!  Put debugging code here to determine why.
+        }
+
+        &#64;Override
+        public void onServiceUnregistered(NsdServiceInfo arg0) {
+            // Service has been unregistered.  This only happens when you call
+            // NsdManager.unregisterService() and pass in this listener.
+        }
+
+        &#64;Override
+        public void onUnregistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
+            // Unregistration failed.  Put debugging code here to determine why.
+        }
+    };
+}
+</pre>
+
+<p>Now you have all the pieces to register your service.  Call the method
+{@link android.net.nsd.NsdManager#registerService registerService()}.
+</p>
+
+<p>Note that this method is asynchronous, so any code that needs to run
+after the service has been registered must go in the {@link
+android.net.nsd.NsdManager.RegistrationListener#onServiceRegistered(NsdServiceInfo)
+onServiceRegistered()} method.</p>
+
+<pre>
+public void registerService(int port) {
+    NsdServiceInfo serviceInfo  = new NsdServiceInfo();
+    serviceInfo.setServiceName("NsdChat");
+    serviceInfo.setServiceType("_http._tcp.");
+    serviceInfo.setPort(port);
+
+    mNsdManager = Context.getSystemService(Context.NSD_SERVICE);
+
+    mNsdManager.registerService(
+            serviceInfo, NsdManager.PROTOCOL_DNS_SD, mRegistrationListener);
+}
+</pre>
+
+<h2 id="discover">Discover Services on the Network</h2>
+<p>The network is teeming with life, from the beastly network printers to the
+docile network webcams, to the brutal, fiery battles of nearby tic-tac-toe
+players.  The key to letting your application see this vibrant ecosystem of
+functionality is service discovery.  Your application needs to listen to service
+broadcasts on the network to see what services are available, and filter out
+anything the application can't work with.</p>
+
+<p>Service discovery, like service registration, has two steps:
+ setting up a discovery listener with the relevant callbacks, and making a single asynchronous
+API call to {@link android.net.nsd.NsdManager#discoverServices(String
+, int , NsdManager.DiscoveryListener) discoverServices()}.</p>
+
+<p>First, instantiate an anonymous class that implements {@link
+android.net.nsd.NsdManager.DiscoveryListener}.  The following snippet shows a
+simple example:</p>
+
+<pre>
+public void initializeDiscoveryListener() {
+
+    // Instantiate a new DiscoveryListener
+    mDiscoveryListener = new NsdManager.DiscoveryListener() {
+
+        //  Called as soon as service discovery begins.
+        &#64;Override
+        public void onDiscoveryStarted(String regType) {
+            Log.d(TAG, "Service discovery started");
+        }
+
+        &#64;Override
+        public void onServiceFound(NsdServiceInfo service) {
+            // A service was found!  Do something with it.
+            Log.d(TAG, "Service discovery success" + service);
+            if (!service.getServiceType().equals(SERVICE_TYPE)) {
+                // Service type is the string containing the protocol and
+                // transport layer for this service.
+                Log.d(TAG, "Unknown Service Type: " + service.getServiceType());
+            } else if (service.getServiceName().equals(mServiceName)) {
+                // The name of the service tells the user what they'd be
+                // connecting to. It could be "Bob's Chat App".
+                Log.d(TAG, "Same machine: " + mServiceName);
+            } else if (service.getServiceName().contains("NsdChat")){
+                mNsdManager.resolveService(service, mResolveListener);
+            }
+        }
+
+        &#64;Override
+        public void onServiceLost(NsdServiceInfo service) {
+            // When the network service is no longer available.
+            // Internal bookkeeping code goes here.
+            Log.e(TAG, "service lost" + service);
+        }
+
+        &#64;Override
+        public void onDiscoveryStopped(String serviceType) {
+            Log.i(TAG, "Discovery stopped: " + serviceType);
+        }
+
+        &#64;Override
+        public void onStartDiscoveryFailed(String serviceType, int errorCode) {
+            Log.e(TAG, "Discovery failed: Error code:" + errorCode);
+            mNsdManager.stopServiceDiscovery(this);
+        }
+
+        &#64;Override
+        public void onStopDiscoveryFailed(String serviceType, int errorCode) {
+            Log.e(TAG, "Discovery failed: Error code:" + errorCode);
+            mNsdManager.stopServiceDiscovery(this);
+        }
+    };
+}
+</pre>
+
+<p>The NSD API uses the methods in this interface to inform your application when discovery
+is started, when it fails, and when services are found and lost (lost means "is
+no longer available").  Notice that this snippet does several checks
+when a service is found.</p>
+<ol>
+  <li>The service name of the found service is compared to the service
+name of the local service to determine if the device just picked up its own
+broadcast (which is valid).</li>
+<li>The service type is checked, to verify it's a type of service your
+application can connect to.</li>
+<li>The service name is checked to verify connection to the correct
+application.</li>
+</ol>
+
+<p>Checking the service name isn't always necessary, and is only relevant if you
+want to connect to a specific application.  For instance, the application might
+only want to connect to instances of itself running on other devices.  However, if the
+application wants to connect to a network printer, it's enough to see that the service type
+is "_ipp._tcp".</p>
+
+<p>After setting up the listener, call {@link android.net.nsd.NsdManager#discoverServices(String, int,
+NsdManager.DiscoveryListener) discoverServices()}, passing in the service type
+your application should look for, the discovery protocol to use, and the
+listener you just created.</p>
+
+<pre>
+    mNsdManager.discoverServices(
+        SERVICE_TYPE, NsdManager.PROTOCOL_DNS_SD, mDiscoveryListener);
+</pre>
+
+
+<h2 id="connect">Connect to Services on the Network</h2>
+<p>When your application finds a service on the network to connect to, it
+must first determine the connection information for that service, using the
+{@link android.net.nsd.NsdManager#resolveService resolveService()} method.
+Implement a {@link android.net.nsd.NsdManager.ResolveListener} to pass into this
+method, and use it to get a {@link android.net.nsd.NsdServiceInfo} containing
+the connection information.</p>
+
+<pre>
+public void initializeResolveListener() {
+    mResolveListener = new NsdManager.ResolveListener() {
+
+        &#64;Override
+        public void onResolveFailed(NsdServiceInfo serviceInfo, int errorCode) {
+            // Called when the resolve fails.  Use the error code to debug.
+            Log.e(TAG, "Resolve failed" + errorCode);
+        }
+
+        &#64;Override
+        public void onServiceResolved(NsdServiceInfo serviceInfo) {
+            Log.e(TAG, "Resolve Succeeded. " + serviceInfo);
+
+            if (serviceInfo.getServiceName().equals(mServiceName)) {
+                Log.d(TAG, "Same IP.");
+                return;
+            }
+            mService = serviceInfo;
+            int port = mService.getPort();
+            InetAddress host = mService.getHost();
+        }
+    };
+}
+</pre>
+
+<p>Once the service is resolved, your application receives detailed
+service information including an IP address and port number.  This is  everything
+you need to create your own network connection to the service.</p>
+
+
+<h2 id="teardown">Unregister Your Service on Application Close</h2>
+<p>It's important to enable and disable NSD
+functionality as appropriate during the application's
+lifecycle.  Unregistering your application when it closes down helps prevent
+other applications from thinking it's still active and attempting to connect to
+it.  Also, service discovery is an expensive operation, and should be stopped
+when the parent Activity is paused, and re-enabled when the Activity is
+resumed.  Override the lifecycle methods of your main Activity and insert code
+to start and stop service broadcast and discovery as appropriate.</p>
+
+<pre>
+//In your application's Activity
+
+    &#64;Override
+    protected void onPause() {
+        if (mNsdHelper != null) {
+            mNsdHelper.tearDown();
+        }
+        super.onPause();
+    }
+
+    &#64;Override
+    protected void onResume() {
+        super.onResume();
+        if (mNsdHelper != null) {
+            mNsdHelper.registerService(mConnection.getLocalPort());
+            mNsdHelper.discoverServices();
+        }
+    }
+
+    &#64;Override
+    protected void onDestroy() {
+        mNsdHelper.tearDown();
+        mConnection.tearDown();
+        super.onDestroy();
+    }
+
+    // NsdHelper's tearDown method
+        public void tearDown() {
+        mNsdManager.unregisterService(mRegistrationListener);
+        mNsdManager.stopServiceDiscovery(mDiscoveryListener);
+    }
+</pre>
+
diff --git a/docs/html/training/connect-devices-wirelessly/wifi-direct.jd b/docs/html/training/connect-devices-wirelessly/wifi-direct.jd
new file mode 100644
index 0000000..99bb243
--- /dev/null
+++ b/docs/html/training/connect-devices-wirelessly/wifi-direct.jd
@@ -0,0 +1,372 @@
+page.title=Connecting with Wi-Fi Direct
+parent.title=Connecting Devices Wirelessly
+parent.link=index.html
+
+trainingnavtop=true
+previous.title=Using Network Service Discovery
+previous.link=nsd.html
+next.title=Service Discovery with Wi-Fi Direct
+next.link=nsd-wifi-direct.html
+
+@jd:body
+
+<div id="tb-wrapper">
+  <div id="tb">
+    <h2>This lesson teaches you how to</h2>
+    <ol>
+      <li><a href="#permissions">Set Up Application Permissions</a></li>
+      <li><a href="#receiver">Set Up the Broadcast Receiver and Peer-to-Peer
+        Manager</a></li>
+      <li><a href="#discover">Initiate Peer Discovery</a></li>
+      <li><a href="#fetch">Fetch the List of Peers</a></li>
+      <li><a href="#connect">Connect to a Peer</a></li>
+    </ol>
+  </div>
+</div>
+
+<p>The Wi-Fi Direct&trade; APIs allow applications to connect to nearby devices without
+needing to connect to a network or hotspot.  This allows your application to quickly
+find and interact with nearby devices, at a range beyond the capabilities of Bluetooth.
+</p>
+<p>
+This lesson shows you how to find and connect to nearby devices using Wi-Fi Direct.
+</p>
+<h2 id="permissions">Set Up Application Permissions</h2>
+<p>In order to use Wi-Fi Direct, add the {@link
+android.Manifest.permission#CHANGE_WIFI_STATE}, {@link
+android.Manifest.permission#ACCESS_WIFI_STATE},
+and {@link android.Manifest.permission#INTERNET}
+permissions to your manifest.   Wi-Fi Direct doesn't require an internet connection,
+but it does use standard Java sockets, which require the {@link
+android.Manifest.permission#INTERNET} permission.
+So you need the following permissions to use Wi-Fi Direct.</p>
+
+<pre>
+&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.example.android.nsdchat"
+    ...
+
+    &lt;uses-permission
+        android:required="true"
+        android:name="android.permission.ACCESS_WIFI_STATE"/&gt;
+    &lt;uses-permission
+        android:required="true"
+        android:name="android.permission.CHANGE_WIFI_STATE"/&gt;
+    &lt;uses-permission
+        android:required="true"
+        android:name="android.permission.INTERNET"/&gt;
+    ...
+</pre>
+
+<h2 id="receiver">Set Up a Broadcast Receiver and Peer-to-Peer Manager</h2>
+<p>To use Wi-Fi Direct, you need to listen for broadcast intents that tell your
+application when certain events have occurred.  In your application, instantiate
+an {@link
+android.content.IntentFilter} and set it to listen for the following:</p>
+<dl>
+  <dt>{@link android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_STATE_CHANGED_ACTION}</dt>
+  <dd>Indicates whether Wi-Fi Peer-To-Peer (P2P) is enabled</dd>
+  <dt>{@link android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_PEERS_CHANGED_ACTION}</dt>
+  <dd>Indicates that the available peer list has changed.</dd>
+  <dt>{@link android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_CONNECTION_CHANGED_ACTION}</dt>
+  <dd>Indicates the state of Wi-Fi P2P connectivity has changed.</dd>
+  <dt>{@link android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_THIS_DEVICE_CHANGED_ACTION}</dt>
+  <dd>Indicates this device's configuration details have changed.</dd>
+<pre>
+private final IntentFilter intentFilter = new IntentFilter();
+...
+&#64;Override
+public void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    setContentView(R.layout.main);
+
+    //  Indicates a change in the Wi-Fi Peer-to-Peer status.
+    intentFilter.addAction(WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION);
+
+    // Indicates a change in the list of available peers.
+    intentFilter.addAction(WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION);
+
+    // Indicates the state of Wi-Fi P2P connectivity has changed.
+    intentFilter.addAction(WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION);
+
+    // Indicates this device's details have changed.
+    intentFilter.addAction(WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION);
+
+    ...
+}
+</pre>
+
+  <p>At the end of the {@link android.app.Activity#onCreate onCreate()} method, get an instance of the {@link
+android.net.wifi.p2p.WifiP2pManager}, and call its {@link
+android.net.wifi.p2p.WifiP2pManager#initialize(Context, Looper, WifiP2pManager.ChannelListener) initialize()}
+method.  This method returns a {@link
+android.net.wifi.p2p.WifiP2pManager.Channel} object, which you'll use later to
+connect your app to the Wi-Fi Direct Framework.</p>
+
+<pre>
+&#64;Override
+
+Channel mChannel;
+
+public void onCreate(Bundle savedInstanceState) {
+    ....
+    mManager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE);
+    mChannel = mManager.initialize(this, getMainLooper(), null);
+}
+</pre>
+<p>Now create a new {@link
+android.content.BroadcastReceiver} class that you'll use to listen for changes
+to the System's Wi-Fi P2P state.  In the {@link
+android.content.BroadcastReceiver#onReceive(Context, Intent) onReceive()}
+method, add a condition to handle each P2P state change listed above.</p>
+
+<pre>
+
+    &#64;Override
+    public void onReceive(Context context, Intent intent) {
+        String action = intent.getAction();
+        if (WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION.equals(action)) {
+            // Determine if Wifi Direct mode is enabled or not, alert
+            // the Activity.
+            int state = intent.getIntExtra(WifiP2pManager.EXTRA_WIFI_STATE, -1);
+            if (state == WifiP2pManager.WIFI_P2P_STATE_ENABLED) {
+                activity.setIsWifiP2pEnabled(true);
+            } else {
+                activity.setIsWifiP2pEnabled(false);
+            }
+        } else if (WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION.equals(action)) {
+
+            // The peer list has changed!  We should probably do something about
+            // that.
+
+        } else if (WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION.equals(action)) {
+
+            // Connection state changed!  We should probably do something about
+            // that.
+
+        } else if (WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION.equals(action)) {
+            DeviceListFragment fragment = (DeviceListFragment) activity.getFragmentManager()
+                    .findFragmentById(R.id.frag_list);
+            fragment.updateThisDevice((WifiP2pDevice) intent.getParcelableExtra(
+                    WifiP2pManager.EXTRA_WIFI_P2P_DEVICE));
+
+        }
+    }
+</pre>
+
+<p>Finally, add code to register the intent filter and broadcast receiver when
+your main activity is active, and unregister them when the activity is paused.
+The best place to do this is the {@link android.app.Activity#onResume()} and
+{@link android.app.Activity#onPause()} methods.
+
+<pre>
+    /** register the BroadcastReceiver with the intent values to be matched */
+    &#64;Override
+    public void onResume() {
+        super.onResume();
+        receiver = new WiFiDirectBroadcastReceiver(mManager, mChannel, this);
+        registerReceiver(receiver, intentFilter);
+    }
+
+    &#64;Override
+    public void onPause() {
+        super.onPause();
+        unregisterReceiver(receiver);
+    }
+</pre>
+
+
+<h2 id="discover">Initiate Peer Discovery</h2>
+<p>To start searching for nearby devices with Wi-Fi Direct, call {@link
+android.net.wifi.p2p.WifiP2pManager#discoverPeers(WifiP2pManager.Channel,
+WifiP2pManager.ActionListener) discoverPeers()}.  This method takes the
+following arguments:</p>
+<ul>
+  <li>The {@link android.net.wifi.p2p.WifiP2pManager.Channel} you
+  received back when you initialized the peer-to-peer mManager</li>
+  <li>An implementation of {@link android.net.wifi.p2p.WifiP2pManager.ActionListener} with methods
+  the system invokes for successful and unsuccessful discovery.</li>
+</ul>
+
+<pre>
+mManager.discoverPeers(mChannel, new WifiP2pManager.ActionListener() {
+
+        &#64;Override
+        public void onSuccess() {
+            // Code for when the discovery initiation is successful goes here.
+            // No services have actually been discovered yet, so this method
+            // can often be left blank.  Code for peer discovery goes in the
+            // onReceive method, detailed below.
+        }
+
+        &#64;Override
+        public void onFailure(int reasonCode) {
+            // Code for when the discovery initiation fails goes here.
+            // Alert the user that something went wrong.
+        }
+});
+</pre>
+
+<p>Keep in mind that this only <em>initiates</em> peer discovery.  The
+{@link android.net.wifi.p2p.WifiP2pManager#discoverPeers(WifiP2pManager.Channel,
+WifiP2pManager.ActionListener) discoverPeers()} method starts the discovery process and then
+immediately returns.  The system notifies you if the peer discovery process is
+successfully initiated by calling methods in the provided action listener.
+Also, discovery will remain active until a connection is initiated or a P2P group is
+formed.</p>
+
+<h2 id="fetch">Fetch the List of Peers</h2>
+<p>Now write the code that fetches and processes the list of peers.  First
+implement the {@link android.net.wifi.p2p.WifiP2pManager.PeerListListener}
+interface, which provides information about the peers that Wi-Fi Direct has
+detected.  The following code snippet illustrates this.</p>
+
+<pre>
+    private List<WifiP2pDevice> peers = new ArrayList<WifiP2pDevice>();
+    ...
+
+    private PeerListListener peerListListener = new PeerListListener() {
+        &#64;Override
+        public void onPeersAvailable(WifiP2pDeviceList peerList) {
+
+            // Out with the old, in with the new.
+            peers.clear();
+            peers.addAll(peerList.getDeviceList());
+
+            // If an AdapterView is backed by this data, notify it
+            // of the change.  For instance, if you have a ListView of available
+            // peers, trigger an update.
+            ((WiFiPeerListAdapter) getListAdapter()).notifyDataSetChanged();
+            if (peers.size() == 0) {
+                Log.d(WiFiDirectActivity.TAG, "No devices found");
+                return;
+            }
+        }
+    }
+</pre>
+
+<p>Now modify your broadcast receiver's {@link
+android.content.BroadcastReceiver#onReceive(Context, Intent) onReceive()}
+method to call {@link android.net.wifi.p2p.WifiP2pManager#requestPeers
+requestPeers()} when an intent with the action {@link
+android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_PEERS_CHANGED_ACTION} is received.  You
+need to pass this listener into the receiver somehow.  One way is to send it
+as an argument to the broadcast receiver's constructor.
+</p>
+
+<pre>
+public void onReceive(Context context, Intent intent) {
+    ...
+    else if (WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION.equals(action)) {
+
+        // Request available peers from the wifi p2p manager. This is an
+        // asynchronous call and the calling activity is notified with a
+        // callback on PeerListListener.onPeersAvailable()
+        if (mManager != null) {
+            mManager.requestPeers(mChannel, peerListener);
+        }
+        Log.d(WiFiDirectActivity.TAG, "P2P peers changed");
+    }...
+}
+</pre>
+
+<p>Now, an intent with the action {@link
+android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_PEERS_CHANGED_ACTION} intent will
+trigger a request for an updated peer list. </p>
+
+<h2 id="connect">Connect to a Peer</h2>
+<p>In order to connect to a peer, create a new {@link
+android.net.wifi.p2p.WifiP2pConfig} object, and copy data into it from the
+{@link android.net.wifi.p2p.WifiP2pDevice} representing the device you want to
+connect to.  Then call the {@link
+android.net.wifi.p2p.WifiP2pManager#connect(WifiP2pManager.Channel,
+WifiP2pConfig, WifiP2pManager.ActionListener) connect()}
+method.</p>
+
+<pre>
+    &#64;Override
+    public void connect() {
+        // Picking the first device found on the network.
+        WifiP2pDevice device = peers.get(0);
+
+        WifiP2pConfig config = new WifiP2pConfig();
+        config.deviceAddress = device.deviceAddress;
+        config.wps.setup = WpsInfo.PBC;
+
+        mManager.connect(mChannel, config, new ActionListener() {
+
+            &#64;Override
+            public void onSuccess() {
+                // WiFiDirectBroadcastReceiver will notify us. Ignore for now.
+            }
+
+            &#64;Override
+            public void onFailure(int reason) {
+                Toast.makeText(WiFiDirectActivity.this, "Connect failed. Retry.",
+                        Toast.LENGTH_SHORT).show();
+            }
+        });
+    }
+</pre>
+
+<p>The {@link android.net.wifi.p2p.WifiP2pManager.ActionListener} implemented in
+this snippet only notifies you when the <em>initiation</em> succeeds or fails.
+To listen for <em>changes</em> in connection state, implement the {@link
+android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener} interface. Its {@link
+android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener#onConnectionInfoAvailable(WifiP2pInfo)
+onConnectionInfoAvailable()}
+callback will notify you when the state of the connection changes.  In cases
+where multiple devices are going to be connected to a single device (like a game with
+3 or more players, or a chat app), one device will be designated the "group
+owner".</p>
+
+<pre>
+    &#64;Override
+    public void onConnectionInfoAvailable(final WifiP2pInfo info) {
+
+        // InetAddress from WifiP2pInfo struct.
+        InetAddress groupOwnerAddress = info.groupOwnerAddress.getHostAddress());
+
+        // After the group negotiation, we can determine the group owner.
+        if (info.groupFormed && info.isGroupOwner) {
+            // Do whatever tasks are specific to the group owner.
+            // One common case is creating a server thread and accepting
+            // incoming connections.
+        } else if (info.groupFormed) {
+            // The other device acts as the client. In this case,
+            // you'll want to create a client thread that connects to the group
+            // owner.
+        }
+    }
+</pre>
+
+<p>Now go back to the {@link
+android.content.BroadcastReceiver#onReceive(Context, Intent) onReceive()} method of the broadcast receiver, and modify the section
+that listens for a {@link
+android.net.wifi.p2p.WifiP2pManager#WIFI_P2P_CONNECTION_CHANGED_ACTION} intent.
+When this intent is received, call {@link
+android.net.wifi.p2p.WifiP2pManager#requestConnectionInfo(WifiP2pManager.Channel,
+WifiP2pManager.ConnectionInfoListener) requestConnectionInfo()}.  This is an
+asynchronous call, so results will be received by the connection info listener
+you provide as a parameter.
+
+<pre>
+        ...
+        } else if (WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION.equals(action)) {
+
+            if (mManager == null) {
+                return;
+            }
+
+            NetworkInfo networkInfo = (NetworkInfo) intent
+                    .getParcelableExtra(WifiP2pManager.EXTRA_NETWORK_INFO);
+
+            if (networkInfo.isConnected()) {
+
+                // We are connected with the other device, request connection
+                // info to find group owner IP
+
+                mManager.requestConnectionInfo(mChannel, connectionListener);
+            }
+            ...
+</pre>
diff --git a/docs/html/training/custom-views/create-view.jd b/docs/html/training/custom-views/create-view.jd
index b0bc8b4..674bcc9 100644
--- a/docs/html/training/custom-views/create-view.jd
+++ b/docs/html/training/custom-views/create-view.jd
@@ -61,7 +61,7 @@
     existing view
     subclasses, such as {@link android.widget.Button}.</p>
 
-<p>To allow the <a href=”{@docRoot}guide/developing/tools/adt.html”>Android Developer Tools
+<p>To allow the <a href="{@docRoot}guide/developing/tools/adt.html">Android Developer Tools
 </a> to interact with your view, at a minimum you must provide a constructor that takes a
 {@link android.content.Context} and an {@link android.util.AttributeSet} object as parameters.
 This constructor allows the layout editor to create and edit an instance of your view.</p>
@@ -105,7 +105,7 @@
 
 <pre>
 &lt;resources>;
-   &ltdeclare-styleable name="PieChart">
+   &lt;declare-styleable name="PieChart">
        &lt;attr name="showText" format="boolean" />
        &lt;attr name="labelPosition" format="enum">
            &lt;enum name="left" value="0"/>
@@ -276,6 +276,6 @@
             </ul>
 
             <p>For more information on creating accessible views, see
-                <a href=”{@docRoot}guide/topics/ui/accessibility/apps.html#custom-views”>
+                <a href="{@docRoot}guide/topics/ui/accessibility/apps.html#custom-views">
               Making Applications Accessible</a> in the Android Developers Guide.
         </p>
diff --git a/docs/html/training/custom-views/optimizing-view.jd b/docs/html/training/custom-views/optimizing-view.jd
index 1f489dd..7f2e762 100644
--- a/docs/html/training/custom-views/optimizing-view.jd
+++ b/docs/html/training/custom-views/optimizing-view.jd
@@ -19,7 +19,7 @@
 
         <h2>You should also read</h2>
         <ul>
-            <li><a href=”{@docRoot}guide/topics/graphics/hardware-accel.html”>
+            <li><a href="{@docRoot}guide/topics/graphics/hardware-accel.html">
                 Hardware Acceleration
             </a>
         </li>
diff --git a/docs/html/training/efficient-downloads/regular_updates.jd b/docs/html/training/efficient-downloads/regular_updates.jd
index feb7a8e..262d676 100644
--- a/docs/html/training/efficient-downloads/regular_updates.jd
+++ b/docs/html/training/efficient-downloads/regular_updates.jd
@@ -15,14 +15,14 @@
 
 <h2>This lesson teaches you to</h2>
 <ol>
-  <li><a href="#C2DM">Use Cloud to Device Messaging as an alternative to polling</a></li>
+  <li><a href="#GCM">Use Google Cloud Messaging as an alternative to polling</a></li>
   <li><a href="#OptimizedPolling">Optimize polling with inexact repeating alarms and exponential back-offs</a></li>
 </ol>
 
 <h2>You should also read</h2>
 <ul>
   <li><a href="{@docRoot}training/monitoring-device-state/index.html">Optimizing Battery Life</a></li>
-  <li><a href="http://code.google.com/android/c2dm/">Android Cloud to Device Messaging</a></li>
+  <li><a href="{@docRoot}guide/google/gcm/index.html">Google Cloud Messaging for Android</a></li>
 </ul>
 
 </div>
@@ -34,17 +34,17 @@
 
 <p>This lesson will examine how your refresh frequency can be varied to best mitigate the effect of background updates on the underlying wireless radio state machine.</p>
  
-<h2 id="C2DM">Use Cloud to Device Messaging as an Alternative to Polling</h2> 
+<h2 id="GCM">Use Google Cloud Messaging as an Alternative to Polling</h2> 
  
 <p>Every time your app polls your server to check if an update is required, you activate the wireless radio, drawing power unnecessarily, for up to 20 seconds on a typical 3G connection.</p>
 
-<p><a href="http://code.google.com/android/c2dm/">Android Cloud to Device Messaging (C2DM)</a> is a lightweight mechanism used to transmit data from a server to a particular app instance. Using C2DM, your server can notify your app running on a particular device that there is new data available for it.</p>
+<p><a href="{@docRoot}guide/google/gcm/index.html">Google Cloud Messaging for Android (GCM)</a> is a lightweight mechanism used to transmit data from a server to a particular app instance. Using GCM, your server can notify your app running on a particular device that there is new data available for it.</p>
 
 <p>Compared to polling, where your app must regularly ping the server to query for new data, this event-driven model allows your app to create a new connection only when it knows there is data to download.</p>
 
 <p>The result is a reduction in unnecessary connections, and a reduced latency for updated data within your application.</p>
 
-<p>C2DM is implemented using a persistent TCP/IP connection. While it's possible to implement your own push service, it's best practice to use C2DM. This minimizes the number of persistent connections and allows the platform to optimize bandwidth and minimize the associated impact on battery life.</p>
+<p>GCM is implemented using a persistent TCP/IP connection. While it's possible to implement your own push service, it's best practice to use GCM. This minimizes the number of persistent connections and allows the platform to optimize bandwidth and minimize the associated impact on battery life.</p>
 
 <h2 id="OptimizedPolling">Optimize Polling with Inexact Repeating Alarms and Exponential Backoffs</h2> 
 
@@ -99,4 +99,4 @@
   }
 }</pre>
 
-<p>Alternatively, for transfers that are failure tolerant (such as regular updates), you can simply ignore failed connection and transfer attempts.</p>
\ No newline at end of file
+<p>Alternatively, for transfers that are failure tolerant (such as regular updates), you can simply ignore failed connection and transfer attempts.</p>
diff --git a/docs/html/training/implementing-navigation/lateral.jd b/docs/html/training/implementing-navigation/lateral.jd
index 76acf03..b59bab2 100644
--- a/docs/html/training/implementing-navigation/lateral.jd
+++ b/docs/html/training/implementing-navigation/lateral.jd
@@ -119,7 +119,7 @@
 
 <h2 id="horizontal-paging">Implement Horizontal Paging (Swipe Views)</h2>
 
-<p>Horizontal paging, or swipe views, allow users to <a href="{@docRoot}design/patterns/swipe-views">swipe</a> horizontally on the current screen to navigate to adjacent screens. This pattern can be implemented using the {@link android.support.v4.view.ViewPager} widget, currently available as part of the <a href="{@docRoot}tools/extras/support-library.html">Android Support Package</a>. For navigating between sibling screens representing a fixed number of sections, it's best to provide the {@link android.support.v4.view.ViewPager} with a {@link android.support.v4.app.FragmentPagerAdapter}. For horizontal paging across collections of objects, it's best to use a {@link android.support.v4.app.FragmentStatePagerAdapter}, which destroys fragments as the user navigates to other pages, minimizing memory usage.</p>
+<p>Horizontal paging, or swipe views, allow users to <a href="{@docRoot}design/patterns/swipe-views.html">swipe</a> horizontally on the current screen to navigate to adjacent screens. This pattern can be implemented using the {@link android.support.v4.view.ViewPager} widget, currently available as part of the <a href="{@docRoot}tools/extras/support-library.html">Android Support Package</a>. For navigating between sibling screens representing a fixed number of sections, it's best to provide the {@link android.support.v4.view.ViewPager} with a {@link android.support.v4.app.FragmentPagerAdapter}. For horizontal paging across collections of objects, it's best to use a {@link android.support.v4.app.FragmentStatePagerAdapter}, which destroys fragments as the user navigates to other pages, minimizing memory usage.</p>
 
 <p>Below is an example of using a {@link android.support.v4.view.ViewPager} to swipe across a collection of objects.</p>
 
diff --git a/docs/html/training/improving-layouts/reusing-layouts.jd b/docs/html/training/improving-layouts/reusing-layouts.jd
index 095b0dd..fdd3333 100644
--- a/docs/html/training/improving-layouts/reusing-layouts.jd
+++ b/docs/html/training/improving-layouts/reusing-layouts.jd
@@ -25,12 +25,9 @@
 <!-- other docs (NOT javadocs) -->
 <h2>You should also read</h2>
 <ul>
-  <li><a href="{@docRoot}resources/articles/layout-tricks-reuse.html">Creating Reusable UI
-Components</a></li>
-  <li><a href="{@docRoot}resources/articles/layout-tricks-merge.html">Merging Layouts</a></li>
   <li><a
 href="{@docRoot}guide/topics/resources/layout-resource.html#include-element">Layout
-Resource</a></li>
+Resources</a></li>
 </ul>
 
 </div>
diff --git a/docs/html/training/improving-layouts/smooth-scrolling.jd b/docs/html/training/improving-layouts/smooth-scrolling.jd
index 0afa929..2a1ffba 100644
--- a/docs/html/training/improving-layouts/smooth-scrolling.jd
+++ b/docs/html/training/improving-layouts/smooth-scrolling.jd
@@ -22,8 +22,8 @@
 <!-- other docs (NOT javadocs) -->
 <h2>You should also read</h2>
 <ul>
-  <li><a href="{@docRoot}resources/articles/listview-backgrounds.html">ListView
-Backgrounds: An Optimization</a></li>
+  <li><a href="http://android-developers.blogspot.com/2009/01/why-is-my-list-black-android.html">Why
+      is my list black? An Android optimization</a></li>
 </ul>
 
 </div>
diff --git a/docs/html/training/managing-audio/audio-focus.jd b/docs/html/training/managing-audio/audio-focus.jd
index 66649e8..33f04e9 100644
--- a/docs/html/training/managing-audio/audio-focus.jd
+++ b/docs/html/training/managing-audio/audio-focus.jd
@@ -135,7 +135,7 @@
 (pressing play in your app) to be required before you resume playing audio.</p>
 
 <p>In the following code snippet, we pause the playback or our media player object if the audio
-loss is transien and resume it when we have regained the focus. If the loss is permanent, it
+loss is transient and resume it when we have regained the focus. If the loss is permanent, it
 unregisters our media button event receiver and stops monitoring audio focus changes.<p>
 
 <pre>
@@ -169,7 +169,7 @@
 <pre>
 OnAudioFocusChangeListener afChangeListener = new OnAudioFocusChangeListener() {
     public void onAudioFocusChange(int focusChange) {
-        if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK
+        if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK) {
             // Lower the volume
         } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
             // Raise it back to normal
diff --git a/docs/html/training/notepad/index.jd b/docs/html/training/notepad/index.jd
index 87a57d1..64ba144 100644
--- a/docs/html/training/notepad/index.jd
+++ b/docs/html/training/notepad/index.jd
@@ -1,6 +1,5 @@
 page.title=Notepad Tutorial
 parent.title=Tutorials
-parent.link=../../browser.html?tag=tutorial
 @jd:body
 
 
diff --git a/docs/html/training/training_toc.cs b/docs/html/training/training_toc.cs
index 77a6837..b70ba3f 100644
--- a/docs/html/training/training_toc.cs
+++ b/docs/html/training/training_toc.cs
@@ -203,14 +203,14 @@
             <span class="en">Syncing to the Cloud</span>
           </a></div>
         <ul>
-          <li><a href="<?cs var:toroot ?>training/cloudsync/aesync.html">
-            <span class="en">Syncing with App Engine</span>
-          </a>
-          </li>
           <li><a href="<?cs var:toroot ?>training/cloudsync/backupapi.html">
             <span class="en">Using the Backup API</span>
           </a>
           </li>
+          <li><a href="<?cs var:toroot ?>training/cloudsync/gcm.html">
+            <span class="en">Making the Most of Google Cloud Messaging</span>
+          </a>
+          </li>
         </ul>
       </li>
       
@@ -673,6 +673,27 @@
       </li>
 
 
+      <li class="nav-section">
+        <div class="nav-section-header"><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/index.html">
+            <span class="en">Connecting Devices Wirelessly</span>
+          </a></div>
+        <ul>
+          <li><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/nsd.html">
+            <span class="en">Using Network Service Discovery</span>
+          </a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/wifi-direct.html">
+            <span class="en">Connecting with Wi-Fi Direct</span>
+          </a>
+          </li>
+          <li><a href="<?cs var:toroot ?>training/connect-devices-wirelessly/nsd-wifi-direct.html">
+            <span class="en">Using Wi-Fi Direct for Service Discovery</span>
+          </a>
+          </li>
+        </ul>
+      </li>
+
+
     </ul>
   </li>
 </ul><!-- nav -->
diff --git a/graphics/jni/android_renderscript_RenderScript.cpp b/graphics/jni/android_renderscript_RenderScript.cpp
index b205a77..3d5d1a9 100644
--- a/graphics/jni/android_renderscript_RenderScript.cpp
+++ b/graphics/jni/android_renderscript_RenderScript.cpp
@@ -718,7 +718,7 @@
     LOG_API("nAllocationRead_i, con(%p), alloc(%p), len(%i)", con, (RsAllocation)alloc, len);
     jint *ptr = _env->GetIntArrayElements(data, NULL);
     jsize length = _env->GetArrayLength(data);
-    rsAllocationRead(con, (RsAllocation)alloc, ptr, length * sizeof(int));
+    rsAllocationRead(con, (RsAllocation)alloc, ptr, length);
     _env->ReleaseIntArrayElements(data, ptr, 0);
 }
 
@@ -729,7 +729,7 @@
     LOG_API("nAllocationRead_i, con(%p), alloc(%p), len(%i)", con, (RsAllocation)alloc, len);
     jshort *ptr = _env->GetShortArrayElements(data, NULL);
     jsize length = _env->GetArrayLength(data);
-    rsAllocationRead(con, (RsAllocation)alloc, ptr, length * sizeof(short));
+    rsAllocationRead(con, (RsAllocation)alloc, ptr, length);
     _env->ReleaseShortArrayElements(data, ptr, 0);
 }
 
@@ -740,7 +740,7 @@
     LOG_API("nAllocationRead_i, con(%p), alloc(%p), len(%i)", con, (RsAllocation)alloc, len);
     jbyte *ptr = _env->GetByteArrayElements(data, NULL);
     jsize length = _env->GetArrayLength(data);
-    rsAllocationRead(con, (RsAllocation)alloc, ptr, length * sizeof(char));
+    rsAllocationRead(con, (RsAllocation)alloc, ptr, length);
     _env->ReleaseByteArrayElements(data, ptr, 0);
 }
 
@@ -751,7 +751,7 @@
     LOG_API("nAllocationRead_f, con(%p), alloc(%p), len(%i)", con, (RsAllocation)alloc, len);
     jfloat *ptr = _env->GetFloatArrayElements(data, NULL);
     jsize length = _env->GetArrayLength(data);
-    rsAllocationRead(con, (RsAllocation)alloc, ptr, length * sizeof(float));
+    rsAllocationRead(con, (RsAllocation)alloc, ptr, length);
     _env->ReleaseFloatArrayElements(data, ptr, 0);
 }
 
diff --git a/libs/hwui/DisplayListRenderer.cpp b/libs/hwui/DisplayListRenderer.cpp
index d376e3a..0c89014 100644
--- a/libs/hwui/DisplayListRenderer.cpp
+++ b/libs/hwui/DisplayListRenderer.cpp
@@ -1541,7 +1541,7 @@
 
 status_t DisplayListRenderer::drawBitmapData(SkBitmap* bitmap, float left, float top,
         SkPaint* paint) {
-    const bool reject = quickReject(left, top, left + bitmap->width(), bitmap->height());
+    const bool reject = quickReject(left, top, left + bitmap->width(), top + bitmap->height());
     uint32_t* location = addOp(DisplayList::DrawBitmapData, reject);
     addBitmapData(bitmap);
     addPoint(left, top);
@@ -1643,7 +1643,10 @@
     uint32_t width, height;
     computePathBounds(path, paint, left, top, offset, width, height);
 
-    const bool reject = quickReject(left - offset, top - offset, width, height);
+    left -= offset;
+    top -= offset;
+
+    const bool reject = quickReject(left, top, left + width, top + height);
     uint32_t* location = addOp(DisplayList::DrawPath, reject);
     addPath(path);
     addPaint(paint);
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index c92bead..9a90bfd 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -1149,7 +1149,6 @@
 
 void OpenGLRenderer::setupDrawColor(int color, int alpha) {
     mColorA = alpha / 255.0f;
-    mColorA *= mSnapshot->alpha;
     // Second divide of a by 255 is an optimization, allowing us to simply multiply
     // the rgb values by a instead of also dividing by 255
     const float a = mColorA / 255.0f;
@@ -1181,15 +1180,6 @@
     mSetShaderColor = mDescription.setColor(r, g, b, a);
 }
 
-void OpenGLRenderer::setupDrawAlpha8Color(float r, float g, float b, float a) {
-    mColorA = a;
-    mColorR = r;
-    mColorG = g;
-    mColorB = b;
-    mColorSet = true;
-    mSetShaderColor = mDescription.setAlpha8Color(r, g, b, a);
-}
-
 void OpenGLRenderer::setupDrawShader() {
     if (mShader) {
         mShader->describe(mDescription, mCaches.extensions);
@@ -1771,7 +1761,7 @@
     setupDraw();
     setupDrawNoTexture();
     setupDrawAALine();
-    setupDrawColor(color);
+    setupDrawColor(color, ((color >> 24) & 0xFF) * mSnapshot->alpha);
     setupDrawColorFilter();
     setupDrawShader();
     setupDrawBlending(true, mode);
@@ -2267,7 +2257,7 @@
 status_t OpenGLRenderer::drawPosText(const char* text, int bytesCount, int count,
         const float* positions, SkPaint* paint) {
     if (text == NULL || count == 0 || mSnapshot->isIgnored() ||
-            (paint->getAlpha() == 0 && paint->getXfermode() == NULL)) {
+            (paint->getAlpha() * mSnapshot->alpha == 0 && paint->getXfermode() == NULL)) {
         return DrawGlInfo::kStatusDone;
     }
 
@@ -2340,7 +2330,7 @@
 status_t OpenGLRenderer::drawText(const char* text, int bytesCount, int count,
         float x, float y, SkPaint* paint, float length) {
     if (text == NULL || count == 0 || mSnapshot->isIgnored() ||
-            (paint->getAlpha() == 0 && paint->getXfermode() == NULL)) {
+            (paint->getAlpha() * mSnapshot->alpha == 0 && paint->getXfermode() == NULL)) {
         return DrawGlInfo::kStatusDone;
     }
 
@@ -2393,7 +2383,7 @@
         const float sx = oldX - shadow->left + mShadowDx;
         const float sy = oldY - shadow->top + mShadowDy;
 
-        const int shadowAlpha = ((mShadowColor >> 24) & 0xFF);
+        const int shadowAlpha = ((mShadowColor >> 24) & 0xFF) * mSnapshot->alpha;
         int shadowColor = mShadowColor;
         if (mShader) {
             shadowColor = 0xffffffff;
@@ -2792,7 +2782,7 @@
 
     setupDraw();
     setupDrawNoTexture();
-    setupDrawColor(color);
+    setupDrawColor(color, ((color >> 24) & 0xFF) * mSnapshot->alpha);
     setupDrawShader();
     setupDrawColorFilter();
     setupDrawBlending(mode);
diff --git a/libs/hwui/OpenGLRenderer.h b/libs/hwui/OpenGLRenderer.h
index b342f50..7aac87c 100644
--- a/libs/hwui/OpenGLRenderer.h
+++ b/libs/hwui/OpenGLRenderer.h
@@ -537,7 +537,6 @@
     void setupDrawColor(int color, int alpha);
     void setupDrawColor(float r, float g, float b, float a);
     void setupDrawAlpha8Color(int color, int alpha);
-    void setupDrawAlpha8Color(float r, float g, float b, float a);
     void setupDrawShader();
     void setupDrawColorFilter();
     void setupDrawBlending(SkXfermode::Mode mode = SkXfermode::kSrcOver_Mode,
diff --git a/location/java/android/location/ILocationManager.aidl b/location/java/android/location/ILocationManager.aidl
index 2255bf2..38a29d3 100644
--- a/location/java/android/location/ILocationManager.aidl
+++ b/location/java/android/location/ILocationManager.aidl
@@ -39,11 +39,11 @@
     boolean providerMeetsCriteria(String provider, in Criteria criteria);
 
     void requestLocationUpdates(String provider, in Criteria criteria, long minTime, float minDistance,
-        boolean singleShot, in ILocationListener listener);
+        boolean singleShot, in ILocationListener listener, String packageName);
     void requestLocationUpdatesPI(String provider, in Criteria criteria, long minTime, float minDistance,
-        boolean singleShot, in PendingIntent intent);
-    void removeUpdates(in ILocationListener listener);
-    void removeUpdatesPI(in PendingIntent intent);
+        boolean singleShot, in PendingIntent intent, String packageName);
+    void removeUpdates(in ILocationListener listener, String packageName);
+    void removeUpdatesPI(in PendingIntent intent, String packageName);
 
     boolean addGpsStatusListener(IGpsStatusListener listener);
     void removeGpsStatusListener(IGpsStatusListener listener);
@@ -54,13 +54,13 @@
     boolean sendExtraCommand(String provider, String command, inout Bundle extras);
 
     void addProximityAlert(double latitude, double longitude, float distance,
-        long expiration, in PendingIntent intent);
+        long expiration, in PendingIntent intent, String packageName);
     void removeProximityAlert(in PendingIntent intent);
 
     Bundle getProviderInfo(String provider);
     boolean isProviderEnabled(String provider);
 
-    Location getLastKnownLocation(String provider);
+    Location getLastKnownLocation(String provider, String packageName);
 
     // Used by location providers to tell the location manager when it has a new location.
     // Passive is true if the location is coming from the passive provider, in which case
diff --git a/location/java/android/location/LocationManager.java b/location/java/android/location/LocationManager.java
index 1299574..5c256a3 100644
--- a/location/java/android/location/LocationManager.java
+++ b/location/java/android/location/LocationManager.java
@@ -17,6 +17,7 @@
 package android.location;
 
 import android.app.PendingIntent;
+import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.os.Looper;
@@ -160,6 +161,8 @@
      */
     public static final String EXTRA_GPS_ENABLED = "enabled";
 
+    private final Context mContext;
+
     // Map from LocationListeners to their associated ListenerTransport objects
     private HashMap<LocationListener,ListenerTransport> mListeners =
         new HashMap<LocationListener,ListenerTransport>();
@@ -260,8 +263,9 @@
      * right way to create an instance of this class is using the
      * factory Context.getSystemService.
      */
-    public LocationManager(ILocationManager service) {
+    public LocationManager(Context context, ILocationManager service) {
         mService = service;
+        mContext = context;
     }
 
     private LocationProvider createProvider(String name, Bundle info) {
@@ -657,7 +661,8 @@
                     transport = new ListenerTransport(listener, looper);
                 }
                 mListeners.put(listener, transport);
-                mService.requestLocationUpdates(provider, criteria, minTime, minDistance, singleShot, transport);
+                mService.requestLocationUpdates(provider, criteria, minTime, minDistance,
+                        singleShot, transport, mContext.getPackageName());
             }
         } catch (RemoteException ex) {
             Log.e(TAG, "requestLocationUpdates: DeadObjectException", ex);
@@ -837,7 +842,8 @@
         }
 
         try {
-            mService.requestLocationUpdatesPI(provider, criteria, minTime, minDistance, singleShot, intent);
+            mService.requestLocationUpdatesPI(provider, criteria, minTime, minDistance, singleShot,
+                    intent, mContext.getPackageName());
         } catch (RemoteException ex) {
             Log.e(TAG, "requestLocationUpdates: RemoteException", ex);
         }
@@ -1005,7 +1011,7 @@
         try {
             ListenerTransport transport = mListeners.remove(listener);
             if (transport != null) {
-                mService.removeUpdates(transport);
+                mService.removeUpdates(transport, mContext.getPackageName());
             }
         } catch (RemoteException ex) {
             Log.e(TAG, "removeUpdates: DeadObjectException", ex);
@@ -1028,7 +1034,7 @@
             Log.d(TAG, "removeUpdates: intent = " + intent);
         }
         try {
-            mService.removeUpdatesPI(intent);
+            mService.removeUpdatesPI(intent, mContext.getPackageName());
         } catch (RemoteException ex) {
             Log.e(TAG, "removeUpdates: RemoteException", ex);
         }
@@ -1087,7 +1093,7 @@
         }
         try {
             mService.addProximityAlert(latitude, longitude, radius,
-                                       expiration, intent);
+                                       expiration, intent, mContext.getPackageName());
         } catch (RemoteException ex) {
             Log.e(TAG, "addProximityAlert: RemoteException", ex);
         }
@@ -1153,7 +1159,7 @@
             throw new IllegalArgumentException("provider==null");
         }
         try {
-            return mService.getLastKnownLocation(provider);
+            return mService.getLastKnownLocation(provider, mContext.getPackageName());
         } catch (RemoteException ex) {
             Log.e(TAG, "getLastKnowLocation: RemoteException", ex);
             return null;
diff --git a/media/java/android/media/MediaExtractor.java b/media/java/android/media/MediaExtractor.java
index 9f10cb0..687d3a5 100644
--- a/media/java/android/media/MediaExtractor.java
+++ b/media/java/android/media/MediaExtractor.java
@@ -295,7 +295,7 @@
      * Returns true iff we are caching data and the cache has reached the
      * end of the data stream (for now, a future seek may of course restart
      * the fetching of data).
-     * This API only returns a meaningful result if {link #getCachedDuration}
+     * This API only returns a meaningful result if {@link #getCachedDuration}
      * indicates the presence of a cache, i.e. does NOT return -1.
      */
     public native boolean hasCacheReachedEndOfStream();
diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java
index e76d25a..cd25865 100644
--- a/media/java/android/media/MediaPlayer.java
+++ b/media/java/android/media/MediaPlayer.java
@@ -706,7 +706,7 @@
      * surface rendering area. When the surface has the same aspect ratio
      * as the content, the aspect ratio of the content is maintained;
      * otherwise, the aspect ratio of the content is not maintained when video
-     * is being rendered. Unlike {@ #VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING},
+     * is being rendered. Unlike {@link #VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING},
      * there is no content cropping with this video scaling mode.
      */
     public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT = 1;
@@ -2026,6 +2026,7 @@
                     if (msg.obj instanceof Parcel) {
                         Parcel parcel = (Parcel)msg.obj;
                         TimedText text = new TimedText(parcel);
+                        parcel.recycle();
                         mOnTimedTextListener.onTimedText(mMediaPlayer, text);
                     }
                 }
diff --git a/media/java/android/media/MediaRouter.java b/media/java/android/media/MediaRouter.java
index 357bf4e..a256079 100644
--- a/media/java/android/media/MediaRouter.java
+++ b/media/java/android/media/MediaRouter.java
@@ -126,6 +126,15 @@
                 sStatic.mDefaultAudio.mNameResId = name;
                 dispatchRouteChanged(sStatic.mDefaultAudio);
             }
+
+            boolean a2dpEnabled;
+            try {
+                a2dpEnabled = mAudioService.isBluetoothA2dpOn();
+            } catch (RemoteException e) {
+                Log.e(TAG, "Error querying Bluetooth A2DP state", e);
+                a2dpEnabled = false;
+            }
+
             if (!TextUtils.equals(newRoutes.mBluetoothName, mCurRoutesInfo.mBluetoothName)) {
                 mCurRoutesInfo.mBluetoothName = newRoutes.mBluetoothName;
                 if (mCurRoutesInfo.mBluetoothName != null) {
@@ -135,13 +144,6 @@
                         info.mSupportedTypes = ROUTE_TYPE_LIVE_AUDIO;
                         sStatic.mBluetoothA2dpRoute = info;
                         addRoute(sStatic.mBluetoothA2dpRoute);
-                        try {
-                            if (mAudioService.isBluetoothA2dpOn()) {
-                                selectRouteStatic(ROUTE_TYPE_LIVE_AUDIO, mBluetoothA2dpRoute);
-                            }
-                        } catch (RemoteException e) {
-                            Log.e(TAG, "Error selecting Bluetooth A2DP route", e);
-                        }
                     } else {
                         sStatic.mBluetoothA2dpRoute.mName = mCurRoutesInfo.mBluetoothName;
                         dispatchRouteChanged(sStatic.mBluetoothA2dpRoute);
@@ -151,6 +153,16 @@
                     sStatic.mBluetoothA2dpRoute = null;
                 }
             }
+
+            if (mBluetoothA2dpRoute != null) {
+                if (mCurRoutesInfo.mMainType != AudioRoutesInfo.MAIN_SPEAKER &&
+                        mSelectedRoute == mBluetoothA2dpRoute) {
+                    selectRouteStatic(ROUTE_TYPE_LIVE_AUDIO, mDefaultAudio);
+                } else if (mCurRoutesInfo.mMainType == AudioRoutesInfo.MAIN_SPEAKER &&
+                        mSelectedRoute == mDefaultAudio && a2dpEnabled) {
+                    selectRouteStatic(ROUTE_TYPE_LIVE_AUDIO, mBluetoothA2dpRoute);
+                }
+            }
         }
     }
 
diff --git a/media/jni/android_media_MediaPlayer.cpp b/media/jni/android_media_MediaPlayer.cpp
index de22e09..c2a6889 100644
--- a/media/jni/android_media_MediaPlayer.cpp
+++ b/media/jni/android_media_MediaPlayer.cpp
@@ -72,7 +72,6 @@
     JNIMediaPlayerListener();
     jclass      mClass;     // Reference to MediaPlayer class
     jobject     mObject;    // Weak ref to MediaPlayer Java object to call on
-    jobject     mParcel;
 };
 
 JNIMediaPlayerListener::JNIMediaPlayerListener(JNIEnv* env, jobject thiz, jobject weak_thiz)
@@ -91,7 +90,6 @@
     // We use a weak reference so the MediaPlayer object can be garbage collected.
     // The reference is only used as a proxy for callbacks.
     mObject  = env->NewGlobalRef(weak_thiz);
-    mParcel = env->NewGlobalRef(createJavaParcelObject(env));
 }
 
 JNIMediaPlayerListener::~JNIMediaPlayerListener()
@@ -100,20 +98,18 @@
     JNIEnv *env = AndroidRuntime::getJNIEnv();
     env->DeleteGlobalRef(mObject);
     env->DeleteGlobalRef(mClass);
-
-    recycleJavaParcelObject(env, mParcel);
-    env->DeleteGlobalRef(mParcel);
 }
 
 void JNIMediaPlayerListener::notify(int msg, int ext1, int ext2, const Parcel *obj)
 {
     JNIEnv *env = AndroidRuntime::getJNIEnv();
     if (obj && obj->dataSize() > 0) {
-        if (mParcel != NULL) {
-            Parcel* nativeParcel = parcelForJavaObject(env, mParcel);
+        jobject jParcel = createJavaParcelObject(env);
+        if (jParcel != NULL) {
+            Parcel* nativeParcel = parcelForJavaObject(env, jParcel);
             nativeParcel->setData(obj->data(), obj->dataSize());
             env->CallStaticVoidMethod(mClass, fields.post_event, mObject,
-                    msg, ext1, ext2, mParcel);
+                    msg, ext1, ext2, jParcel);
         }
     } else {
         env->CallStaticVoidMethod(mClass, fields.post_event, mObject,
diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/MediaPlayerStressTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/MediaPlayerStressTest.java
index 25b6e7f..67da6ac 100644
--- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/MediaPlayerStressTest.java
+++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/stress/MediaPlayerStressTest.java
@@ -24,6 +24,7 @@
 import android.hardware.Camera;
 import android.media.MediaPlayer;
 import android.media.MediaRecorder;
+import android.os.Environment;
 import android.test.ActivityInstrumentationTestCase2;
 import android.test.suitebuilder.annotation.LargeTest;
 import android.util.Log;
@@ -66,6 +67,9 @@
     private int mTotalNotSeekable = 0;
     private int mTotalMetaDataUpdate = 0;
 
+    //Test result output file
+    private static final String PLAYBACK_RESULT = "PlaybackTestResult.txt";
+
     private void writeTestOutput(String filename, Writer output) throws Exception{
         output.write("File Name: " + filename);
         output.write(" Complete: " + CodecTest.onCompleteSuccess);
@@ -109,27 +113,19 @@
     @LargeTest
     public void testVideoPlayback() throws Exception {
         String fileWithError = "Filename:\n";
-        File playbackOutput = new File("/sdcard/PlaybackTestResult.txt");
+        File playbackOutput = new File(Environment.getExternalStorageDirectory(), PLAYBACK_RESULT);
         Writer output = new BufferedWriter(new FileWriter(playbackOutput, true));
 
         boolean testResult = true;
         // load directory files
         boolean onCompleteSuccess = false;
         File dir = new File(MediaNames.MEDIA_SAMPLE_POOL);
-
-        Instrumentation inst = getInstrumentation();
-        Intent intent = new Intent();
-
-        intent.setClass(getInstrumentation().getTargetContext(), MediaFrameworkTest.class);
-        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-
         String[] children = dir.list();
         if (children == null) {
             Log.v("MediaPlayerApiTest:testMediaSamples", "dir is empty");
             return;
         } else {
             for (int i = 0; i < children.length; i++) {
-                Activity act = inst.startActivitySync(intent);
                 //Get filename of directory
                 String filename = children[i];
                 onCompleteSuccess =
@@ -141,8 +137,6 @@
                     testResult = false;
                 }
                 Thread.sleep(3000);
-                //Call onCreat to recreate the surface
-                act.finish();
                 //Write test result to an output file
                 writeTestOutput(filename,output);
                 //Get the summary
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
index aa2164e..7430f57 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
@@ -65,7 +65,7 @@
     // database gets upgraded properly. At a minimum, please confirm that 'upgradeVersion'
     // is properly propagated through your change.  Not doing so will result in a loss of user
     // settings.
-    private static final int DATABASE_VERSION = 79;
+    private static final int DATABASE_VERSION = 80;
 
     private Context mContext;
 
@@ -1073,6 +1073,52 @@
             upgradeVersion = 79;
         }
 
+        if (upgradeVersion == 79) {
+            // Before touch exploration was a global setting controlled by the user
+            // via the UI. However, if the enabled accessibility services do not
+            // handle touch exploration mode, enabling it makes no sense. Therefore,
+            // now the services request touch exploration mode and the user is
+            // presented with a dialog to allow that and if she does we store that
+            // in the database. As a result of this change a user that has enabled
+            // accessibility, touch exploration, and some accessibility services
+            // may lose touch exploration state, thus rendering the device useless
+            // unless sighted help is provided, since the enabled service(s) are
+            // not in the list of services to which the user granted a permission
+            // to put the device in touch explore mode. Here we are allowing all
+            // enabled accessibility services to toggle touch exploration provided
+            // accessibility and touch exploration are enabled and no services can
+            // toggle touch exploration. Note that the user has already manually
+            // enabled the services and touch exploration which means the she has
+            // given consent to have these services work in touch exploration mode.
+            final boolean accessibilityEnabled = getIntValueFromTable(db, "secure",
+                    Settings.Secure.ACCESSIBILITY_ENABLED, 0) == 1;
+            final boolean touchExplorationEnabled = getIntValueFromTable(db, "secure",
+                    Settings.Secure.TOUCH_EXPLORATION_ENABLED, 0) == 1;
+            if (accessibilityEnabled && touchExplorationEnabled) {
+                String enabledServices = getStringValueFromTable(db, "secure",
+                        Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES, "");
+                String touchExplorationGrantedServices = getStringValueFromTable(db, "secure",
+                        Settings.Secure.TOUCH_EXPLORATION_GRANTED_ACCESSIBILITY_SERVICES, "");
+                if (TextUtils.isEmpty(touchExplorationGrantedServices)
+                        && !TextUtils.isEmpty(enabledServices)) {
+                    SQLiteStatement stmt = null;
+                    try {
+                        db.beginTransaction();
+                        stmt = db.compileStatement("INSERT OR REPLACE INTO secure(name,value)"
+                                + " VALUES(?,?);");
+                        loadSetting(stmt,
+                                Settings.Secure.TOUCH_EXPLORATION_GRANTED_ACCESSIBILITY_SERVICES,
+                                enabledServices);
+                        db.setTransactionSuccessful();
+                    } finally {
+                        db.endTransaction();
+                        if (stmt != null) stmt.close();
+                    }
+                }
+            }
+            upgradeVersion = 80;
+        }
+
         // *** Remember to update DATABASE_VERSION above!
 
         if (upgradeVersion != currentVersion) {
@@ -1710,18 +1756,28 @@
     }
 
     private int getIntValueFromSystem(SQLiteDatabase db, String name, int defaultValue) {
-        int value = defaultValue;
+        return getIntValueFromTable(db, "system", name, defaultValue);
+    }
+
+    private int getIntValueFromTable(SQLiteDatabase db, String table, String name,
+            int defaultValue) {
+        String value = getStringValueFromTable(db, table, name, null);
+        return (value != null) ? Integer.parseInt(value) : defaultValue;
+    }
+
+    private String getStringValueFromTable(SQLiteDatabase db, String table, String name,
+            String defaultValue) {
         Cursor c = null;
         try {
-            c = db.query("system", new String[] { Settings.System.VALUE }, "name='" + name + "'",
+            c = db.query(table, new String[] { Settings.System.VALUE }, "name='" + name + "'",
                     null, null, null, null);
             if (c != null && c.moveToFirst()) {
                 String val = c.getString(0);
-                value = val == null ? defaultValue : Integer.parseInt(val);
+                return val == null ? defaultValue : val;
             }
         } finally {
             if (c != null) c.close();
         }
-        return value;
+        return defaultValue;
     }
 }
diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml
index 637c403..10849f6 100644
--- a/packages/SystemUI/AndroidManifest.xml
+++ b/packages/SystemUI/AndroidManifest.xml
@@ -84,26 +84,6 @@
             </intent-filter>
         </receiver>
 
-        <!-- should you need to launch the screensaver, this is a good way to do it -->
-        <activity android:name=".DreamsDockLauncher"
-                android:theme="@android:style/Theme.Dialog"
-                android:label="@string/dreams_dock_launcher">
-            <intent-filter>
-                <action android:name="android.intent.action.MAIN" />
-                <category android:name="android.intent.category.DEFAULT" />
-            </intent-filter>
-        </activity>
-
-        <!-- launch screensaver on (desk) dock event -->
-        <receiver android:name=".DreamsDockLauncher$DockEventReceiver" 
-            android:exported="true"
-            >
-            <intent-filter>
-                <action android:name="android.intent.action.DOCK_EVENT" />
-            </intent-filter>
-        </receiver>
-
-
         <activity android:name=".usb.UsbStorageActivity"
                   android:label="@*android:string/usb_storage_activity_title"
                   android:excludeFromRecents="true">
diff --git a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back.png b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back.png
index 84e6bc8..6ae32f1 100644
--- a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back.png
+++ b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back_land.png b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back_land.png
index 782d214..fdc56bb 100644
--- a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back_land.png
+++ b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_back_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight.png b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight.png
index f949e59..8ddb375 100644
--- a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight.png
+++ b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight_land.png b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight_land.png
index bbda474..57a3b99 100644
--- a/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight_land.png
+++ b/packages/SystemUI/res/drawable-hdpi/ic_sysbar_highlight_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back.png b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back.png
index a00bc5b..ea7c4e3 100644
--- a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back.png
+++ b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back_land.png b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back_land.png
index 8605701..49d5101 100644
--- a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back_land.png
+++ b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_back_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight.png b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight.png
index b97c664..71e1303 100644
--- a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight.png
+++ b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight_land.png b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight_land.png
index 222a826..1de0a3a 100644
--- a/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight_land.png
+++ b/packages/SystemUI/res/drawable-mdpi/ic_sysbar_highlight_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_back.png b/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_back.png
index 38bd0cd..33e56e8 100644
--- a/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_back.png
+++ b/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_back.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight.png b/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight.png
index c9d96ec..202c8bc 100644
--- a/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight.png
+++ b/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight_land.png b/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight_land.png
index 4c64b28..31bc09c 100644
--- a/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight_land.png
+++ b/packages/SystemUI/res/drawable-sw600dp-hdpi/ic_sysbar_highlight_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_back.png b/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_back.png
index 0c12c16..2fb191d 100644
--- a/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_back.png
+++ b/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_back.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight.png b/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight.png
index 5f18ae3..bef6de3 100644
--- a/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight.png
+++ b/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight_land.png b/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight_land.png
index d9df25c..406eeab 100644
--- a/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight_land.png
+++ b/packages/SystemUI/res/drawable-sw600dp-mdpi/ic_sysbar_highlight_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_back.png b/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_back.png
index 477df5f..ce008f3 100644
--- a/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_back.png
+++ b/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_back.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight.png b/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight.png
index 2412a4e..75b5fbb 100644
--- a/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight.png
+++ b/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight_land.png b/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight_land.png
index 114c778..a7a4ce3 100644
--- a/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight_land.png
+++ b/packages/SystemUI/res/drawable-sw600dp-xhdpi/ic_sysbar_highlight_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back.png b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back.png
index bd60cd6..b971088 100644
--- a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back.png
+++ b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back_land.png b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back_land.png
index 5272c91..d2d7842 100644
--- a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back_land.png
+++ b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_back_land.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight.png b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight.png
index bf2553e..c44aafc 100644
--- a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight.png
+++ b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight.png
Binary files differ
diff --git a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight_land.png b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight_land.png
index 8df299e..05da6da 100644
--- a/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight_land.png
+++ b/packages/SystemUI/res/drawable-xhdpi/ic_sysbar_highlight_land.png
Binary files differ
diff --git a/packages/SystemUI/res/layout/status_bar_expanded.xml b/packages/SystemUI/res/layout/status_bar_expanded.xml
index 47e5b71..5841978 100644
--- a/packages/SystemUI/res/layout/status_bar_expanded.xml
+++ b/packages/SystemUI/res/layout/status_bar_expanded.xml
@@ -40,24 +40,34 @@
         android:visibility="invisible"
         />
 
-    <FrameLayout
+    <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:layout_marginBottom="@dimen/close_handle_underlap"
+        android:orientation="vertical"
         >
 
         <include layout="@layout/status_bar_expanded_header"
             android:layout_width="match_parent"
             android:layout_height="@dimen/notification_panel_header_height"
             />
-     
+
+        <TextView
+            android:id="@+id/emergency_calls_only"
+            android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network.EmergencyOnly"
+            android:layout_height="wrap_content"
+            android:layout_width="match_parent"
+            android:paddingBottom="4dp"
+            android:gravity="center"
+            android:visibility="gone"
+            />
+
         <ScrollView
             android:id="@+id/scroll"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:fadingEdge="none"
-            android:overScrollMode="ifContentScrolls"
-            android:layout_marginTop="@dimen/notification_panel_header_height"
+            android:overScrollMode="always"
             >
             <com.android.systemui.statusbar.policy.NotificationRowLayout
                 android:id="@+id/latestItems"
@@ -66,7 +76,7 @@
                 systemui:rowHeight="@dimen/notification_row_min_height"
                 />
         </ScrollView>
-    </FrameLayout>
+    </LinearLayout>
 
     <com.android.systemui.statusbar.phone.CloseDragHandle android:id="@+id/close"
         android:layout_width="match_parent"
diff --git a/packages/SystemUI/res/values-fa/strings.xml b/packages/SystemUI/res/values-fa/strings.xml
index 0c1ba2d..104ab03 100644
--- a/packages/SystemUI/res/values-fa/strings.xml
+++ b/packages/SystemUI/res/values-fa/strings.xml
@@ -74,7 +74,7 @@
     <string name="use_ptp_button_title" msgid="7517127540301625751">"تصب به عنوان دوربین (PTP)"</string>
     <string name="installer_cd_button_title" msgid="2312667578562201583">"برنامه Android File Transfer را برای Mac نصب کنید"</string>
     <string name="accessibility_back" msgid="567011538994429120">"برگشت"</string>
-    <string name="accessibility_home" msgid="8217216074895377641">"صفحه اصلی"</string>
+    <string name="accessibility_home" msgid="8217216074895377641">"صفحهٔ اصلی"</string>
     <string name="accessibility_menu" msgid="316839303324695949">"منو"</string>
     <string name="accessibility_recent" msgid="8571350598987952883">"برنامه‌های اخیر"</string>
     <string name="accessibility_ime_switch_button" msgid="5032926134740456424">"کلید تغییر روش ورود متن."</string>
@@ -138,7 +138,7 @@
     <string name="gps_notification_searching_text" msgid="8574247005642736060">"جستجو برای GPS"</string>
     <string name="gps_notification_found_text" msgid="4619274244146446464">"مکان تنظیم شده توسط GPS"</string>
     <string name="accessibility_clear_all" msgid="5235938559247164925">"پاک کردن تمام اعلان‌ها"</string>
-    <string name="dreams_dock_launcher" msgid="3541196417659166245">"فعال کردن محافظ صفحه نمایش"</string>
+    <string name="dreams_dock_launcher" msgid="3541196417659166245">"فعال کردن محافظ صفحهٔ نمایش"</string>
     <string name="status_bar_notification_inspect_item_title" msgid="1163547729015390250">"اطلاعات برنامه"</string>
     <string name="notifications_off_title" msgid="8936620513608443224">"اعلان‌ها خاموش"</string>
     <string name="notifications_off_text" msgid="2529001315769385273">"برای روشن کردن مجدد اعلان‌ها، اینجا را ضربه بزنید."</string>
diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml
index 1d5bf3c..2564003 100644
--- a/packages/SystemUI/res/values/styles.xml
+++ b/packages/SystemUI/res/values/styles.xml
@@ -67,6 +67,9 @@
         <item name="android:textColor">#999999</item>
 	</style>
 
+    <style name="TextAppearance.StatusBar.Expanded.Network.EmergencyOnly">
+    </style>
+
     <style name="Animation" />
 
     <style name="Animation.ShirtPocketPanel">
diff --git a/packages/SystemUI/src/com/android/systemui/DreamsDockLauncher.java b/packages/SystemUI/src/com/android/systemui/DreamsDockLauncher.java
deleted file mode 100644
index 73249b4..0000000
--- a/packages/SystemUI/src/com/android/systemui/DreamsDockLauncher.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package com.android.systemui;
-
-import android.app.Activity;
-import android.content.BroadcastReceiver;
-import android.content.ComponentName;
-import android.content.ContentResolver;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.provider.Settings;
-import android.util.Slog;
-
-public class DreamsDockLauncher extends Activity {
-    private static final String TAG = "DreamsDockLauncher";
-
-    // Launch the screen saver if started as an activity.
-    @Override
-    protected void onCreate (Bundle icicle) {
-        super.onCreate(icicle);
-        launchDream(this);
-        finish();
-    }
-
-    private static void launchDream(Context context) {
-        try {
-            String component = Settings.Secure.getString(
-                    context.getContentResolver(), Settings.Secure.SCREENSAVER_COMPONENT);
-            if (component == null) {
-                component = context.getResources().getString(
-                    com.android.internal.R.string.config_defaultDreamComponent);
-            }
-            if (component != null) {
-                // dismiss the notification shade, recents, etc.
-                context.sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
-
-                ComponentName cn = ComponentName.unflattenFromString(component);
-                Intent zzz = new Intent(Intent.ACTION_MAIN)
-                    .setComponent(cn)
-                    .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
-                            | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
-                            | Intent.FLAG_ACTIVITY_NO_USER_ACTION
-                            | Intent.FLAG_FROM_BACKGROUND
-                            | Intent.FLAG_ACTIVITY_NO_HISTORY
-                        );
-                Slog.v(TAG, "Starting screen saver on dock event: " + component);
-                context.startActivity(zzz);
-            } else {
-                Slog.e(TAG, "Couldn't start screen saver: none selected");
-            }
-        } catch (android.content.ActivityNotFoundException exc) {
-            // no screensaver? give up
-            Slog.e(TAG, "Couldn't start screen saver: none installed");
-        }
-    }
-
-    // Trap low-level dock events and launch the screensaver.
-    public static class DockEventReceiver extends BroadcastReceiver {
-        @Override
-        public void onReceive(Context context, Intent intent) {
-            final boolean activateOnDock = 0 != Settings.Secure.getInt(
-                context.getContentResolver(),
-                Settings.Secure.SCREENSAVER_ACTIVATE_ON_DOCK, 0);
-
-            if (!activateOnDock) return;
-
-            if (Intent.ACTION_DOCK_EVENT.equals(intent.getAction())) {
-                Bundle extras = intent.getExtras();
-                int state = extras
-                        .getInt(Intent.EXTRA_DOCK_STATE, Intent.EXTRA_DOCK_STATE_UNDOCKED);
-                if (state == Intent.EXTRA_DOCK_STATE_DESK
-                        || state == Intent.EXTRA_DOCK_STATE_LE_DESK
-                        || state == Intent.EXTRA_DOCK_STATE_HE_DESK) {
-                    launchDream(context);
-                }
-            }
-        }
-    }
-}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
index b9e88a4..2f22cae 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
@@ -182,6 +182,7 @@
     private TextView mCarrierLabel;
     private boolean mCarrierLabelVisible = false;
     private int mCarrierLabelHeight;
+    private TextView mEmergencyCallLabel;
 
     // drag bar
     CloseDragHandle mCloseView;
@@ -203,7 +204,6 @@
 
     // the tracker view
     int mTrackingPosition; // the position of the top of the tracking view.
-    private boolean mPanelSlightlyVisible;
 
     // ticker
     private Ticker mTicker;
@@ -410,14 +410,6 @@
         mPile = (NotificationRowLayout)mStatusBarWindow.findViewById(R.id.latestItems);
         mPile.setLayoutTransitionsEnabled(false);
         mPile.setLongPressListener(getNotificationLongClicker());
-        if (SHOW_CARRIER_LABEL) {
-            mPile.setOnSizeChangedListener(new OnSizeChangedListener() {
-                @Override
-                public void onSizeChanged(View view, int w, int h, int oldw, int oldh) {
-                    updateCarrierLabelVisibility(false);
-                }
-            });
-        }
         mExpandedContents = mPile; // was: expanded.findViewById(R.id.notificationLinearLayout);
 
         mClearButton = mStatusBarWindow.findViewById(R.id.clear_all_button);
@@ -430,9 +422,6 @@
         mSettingsButton.setOnClickListener(mSettingsButtonListener);
         mRotationButton = (RotationToggle) mStatusBarWindow.findViewById(R.id.rotation_lock_button);
         
-        mCarrierLabel = (TextView)mStatusBarWindow.findViewById(R.id.carrier_label);
-        mCarrierLabel.setVisibility(mCarrierLabelVisible ? View.VISIBLE : View.INVISIBLE);
-
         mScrollView = (ScrollView)mStatusBarWindow.findViewById(R.id.scroll);
         mScrollView.setVerticalScrollBarEnabled(false); // less drawing during pulldowns
 
@@ -461,7 +450,21 @@
         mNetworkController.addSignalCluster(signalCluster);
         signalCluster.setNetworkController(mNetworkController);
 
+        mEmergencyCallLabel = (TextView)mStatusBarWindow.findViewById(R.id.emergency_calls_only);
+        if (mEmergencyCallLabel != null) {
+            mNetworkController.addEmergencyLabelView(mEmergencyCallLabel);
+            mEmergencyCallLabel.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
+                @Override
+                public void onLayoutChange(View v, int left, int top, int right, int bottom,
+                        int oldLeft, int oldTop, int oldRight, int oldBottom) {
+                    updateCarrierLabelVisibility(false);
+                }});
+        }
+
         if (SHOW_CARRIER_LABEL) {
+            mCarrierLabel = (TextView)mStatusBarWindow.findViewById(R.id.carrier_label);
+            mCarrierLabel.setVisibility(mCarrierLabelVisible ? View.VISIBLE : View.INVISIBLE);
+
             // for mobile devices, we always show mobile connection info here (SPN/PLMN)
             // for other devices, we show whatever network is connected
             if (mNetworkController.hasMobileDataFeature()) {
@@ -469,6 +472,14 @@
             } else {
                 mNetworkController.addCombinedLabelView(mCarrierLabel);
             }
+
+            // set up the dynamic hide/show of the label
+            mPile.setOnSizeChangedListener(new OnSizeChangedListener() {
+                @Override
+                public void onSizeChanged(View view, int w, int h, int oldw, int oldh) {
+                    updateCarrierLabelVisibility(false);
+                }
+            });
         }
 
 //        final ImageView wimaxRSSI =
@@ -920,9 +931,11 @@
             Slog.d(TAG, String.format("pileh=%d scrollh=%d carrierh=%d",
                     mPile.getHeight(), mScrollView.getHeight(), mCarrierLabelHeight));
         }
-        
-        final boolean makeVisible = 
-            mPile.getHeight() < (mScrollView.getHeight() - mCarrierLabelHeight);
+
+        final boolean emergencyCallsShownElsewhere = mEmergencyCallLabel != null;
+        final boolean makeVisible =
+            !(emergencyCallsShownElsewhere && mNetworkController.isEmergencyOnly())
+            && mPile.getHeight() < (mScrollView.getHeight() - mCarrierLabelHeight);
         
         if (force || mCarrierLabelVisible != makeVisible) {
             mCarrierLabelVisible = makeVisible;
@@ -1235,6 +1248,7 @@
                     + " mExpandedVisible=" + mExpandedVisible
                     + " mExpanded=" + mExpanded
                     + " mAnimating=" + mAnimating
+                    + " mAnimatingReveal=" + mAnimatingReveal
                     + " mAnimY=" + mAnimY
                     + " mAnimVel=" + mAnimVel
                     + " flags=" + flags);
@@ -1255,7 +1269,7 @@
         }
 
         int y;
-        if (mAnimating) {
+        if (mAnimating || mAnimatingReveal) {
             y = (int)mAnimY;
         } else {
             y = getExpandedViewMaxHeight()-1;
@@ -1290,6 +1304,10 @@
         if (!mExpandedVisible) {
             return;
         }
+
+        // Ensure the panel is fully collapsed (just in case; bug 6765842)
+        updateExpandedViewPos(0);
+
         mExpandedVisible = false;
         mPile.setLayoutTransitionsEnabled(false);
         if (mNavigationBarView != null)
@@ -2050,9 +2068,14 @@
     @Override
     protected void updateExpandedViewPos(int expandedPosition) {
         if (SPEW) {
-            Slog.d(TAG, "updateExpandedViewPos before expandedPosition=" + expandedPosition
+            Slog.d(TAG, "updateExpandedViewPos: expandedPosition=" + expandedPosition
                     //+ " mTrackingParams.y=" + ((mTrackingParams == null) ? "?" : mTrackingParams.y)
+                    + " mTracking=" + mTracking
                     + " mTrackingPosition=" + mTrackingPosition
+                    + " mExpandedVisible=" + mExpandedVisible
+                    + " mAnimating=" + mAnimating
+                    + " mAnimatingReveal=" + mAnimatingReveal
+                    + " mClosing=" + mClosing
                     + " gravity=" + mNotificationPanelGravity);
         }
         int panelh = 0;
@@ -2061,6 +2084,7 @@
         // If the expanded view is not visible, make sure they're still off screen.
         // Maybe the view was resized.
         if (!mExpandedVisible) {
+            if (SPEW) Slog.d(TAG, "updateExpandedViewPos: view not visible, bailing");
             updateExpandedInvisiblePosition();
             return;
         }
@@ -2082,13 +2106,21 @@
         }
 
         // catch orientation changes and other peculiar cases
-        if (panelh > disph || (panelh < disph && !mTracking && !mAnimating)) {
+        if (panelh > 0 &&
+                ((panelh > disph) ||
+                 (panelh < disph && !mTracking && !mAnimating))) {
+            if (SPEW) Slog.d(TAG, "updateExpandedViewPos: orientation change?");
             panelh = disph;
         } else if (panelh < 0) {
             panelh = 0;
         }
 
-        if (panelh == mTrackingPosition) return;
+        if (SPEW) Slog.d(TAG, "updateExpandedViewPos: adjusting size to panelh=" + panelh);
+
+        if (panelh == mTrackingPosition) {
+            if (SPEW) Slog.d(TAG, "updateExpandedViewPos: panelh == mTrackingPosition, bailing");
+            return;
+        }
 
         mTrackingPosition = panelh;
 
@@ -2248,8 +2280,7 @@
     private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
         public void onReceive(Context context, Intent intent) {
             String action = intent.getAction();
-            if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)
-                    || Intent.ACTION_SCREEN_OFF.equals(action)) {
+            if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)) {
                 int flags = CommandQueue.FLAG_EXCLUDE_NONE;
                 if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)) {
                     String reason = intent.getStringExtra("reason");
@@ -2259,6 +2290,10 @@
                 }
                 animateCollapse(flags);
             }
+            else if (Intent.ACTION_SCREEN_OFF.equals(action)) {
+                // no waiting!
+                performCollapse();
+            }
             else if (Intent.ACTION_CONFIGURATION_CHANGED.equals(action)) {
                 updateResources();
                 repositionNavigationBar();
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
index 22a8443..d94c6b2 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
@@ -146,6 +146,7 @@
     ArrayList<TextView> mCombinedLabelViews = new ArrayList<TextView>();
     ArrayList<TextView> mMobileLabelViews = new ArrayList<TextView>();
     ArrayList<TextView> mWifiLabelViews = new ArrayList<TextView>();
+    ArrayList<TextView> mEmergencyLabelViews = new ArrayList<TextView>();
     ArrayList<SignalCluster> mSignalClusters = new ArrayList<SignalCluster>();
     int mLastPhoneSignalIconId = -1;
     int mLastDataDirectionIconId = -1;
@@ -246,6 +247,10 @@
         return mHasMobileDataFeature;
     }
 
+    public boolean isEmergencyOnly() {
+        return (mServiceState != null && mServiceState.isEmergencyOnly());
+    }
+
     public void addPhoneSignalIconView(ImageView v) {
         mPhoneSignalIconViews.add(v);
     }
@@ -285,6 +290,10 @@
         mWifiLabelViews.add(v);
     }
 
+    public void addEmergencyLabelView(TextView v) {
+        mEmergencyLabelViews.add(v);
+    }
+
     public void addSignalCluster(SignalCluster cluster) {
         mSignalClusters.add(cluster);
         refreshSignalCluster(cluster);
@@ -928,6 +937,7 @@
         String wifiLabel = "";
         String mobileLabel = "";
         int N;
+        final boolean emergencyOnly = isEmergencyOnly();
 
         if (!mHasMobileDataFeature) {
             mDataSignalIconId = mPhoneSignalIconId = 0;
@@ -943,10 +953,12 @@
 
             if (mDataConnected) {
                 mobileLabel = mNetworkName;
-            } else if (mConnected) {
-                if (hasService()) {
+            } else if (mConnected || emergencyOnly) {
+                if (hasService() || emergencyOnly) {
+                    // The isEmergencyOnly test covers the case of a phone with no SIM
                     mobileLabel = mNetworkName;
                 } else {
+                    // Tablets, basically
                     mobileLabel = "";
                 }
             } else {
@@ -1089,6 +1101,7 @@
                     + " combinedActivityIconId=0x" + Integer.toHexString(combinedActivityIconId)
                     + " mobileLabel=" + mobileLabel
                     + " wifiLabel=" + wifiLabel
+                    + " emergencyOnly=" + emergencyOnly
                     + " combinedLabel=" + combinedLabel
                     + " mAirplaneMode=" + mAirplaneMode
                     + " mDataActivity=" + mDataActivity
@@ -1254,6 +1267,18 @@
                 v.setVisibility(View.VISIBLE);
             }
         }
+
+        // e-call label
+        N = mEmergencyLabelViews.size();
+        for (int i=0; i<N; i++) {
+            TextView v = mEmergencyLabelViews.get(i);
+            if (!emergencyOnly) {
+                v.setVisibility(View.GONE);
+            } else {
+                v.setText(mobileLabel); // comes from the telephony stack
+                v.setVisibility(View.VISIBLE);
+            }
+        }
     }
 
     public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/NotificationPanel.java b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/NotificationPanel.java
index fdbfb65..c1ea50d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/NotificationPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/NotificationPanel.java
@@ -25,6 +25,7 @@
 import android.util.AttributeSet;
 import android.util.Slog;
 import android.view.Gravity;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
 import android.view.View;
@@ -34,7 +35,6 @@
 import android.view.animation.DecelerateInterpolator;
 import android.view.animation.Interpolator;
 import android.widget.RelativeLayout;
-import android.widget.ScrollView;
 
 import com.android.systemui.ExpandHelper;
 import com.android.systemui.R;
@@ -197,6 +197,27 @@
         return true;
     }
 
+    @Override
+    public boolean dispatchKeyEvent(KeyEvent event) {
+    final int keyCode = event.getKeyCode();
+        switch (keyCode) {
+            // We exclusively handle the back key by hiding this panel.
+            case KeyEvent.KEYCODE_BACK: {
+                if (event.getAction() == KeyEvent.ACTION_UP) {
+                    mBar.animateCollapse();
+                }
+                return true;
+            }
+            // We react to the home key but let the system handle it.
+            case KeyEvent.KEYCODE_HOME: {
+                if (event.getAction() == KeyEvent.ACTION_UP) {
+                    mBar.animateCollapse();
+                }
+            } break;
+        }
+        return super.dispatchKeyEvent(event);
+    }
+
     /*
     @Override
     protected void onLayout(boolean changed, int l, int t, int r, int b) {
diff --git a/policy/src/com/android/internal/policy/impl/KeyguardViewManager.java b/policy/src/com/android/internal/policy/impl/KeyguardViewManager.java
index 504bb63..fb6ff24 100644
--- a/policy/src/com/android/internal/policy/impl/KeyguardViewManager.java
+++ b/policy/src/com/android/internal/policy/impl/KeyguardViewManager.java
@@ -147,7 +147,7 @@
 
         if (enableScreenRotation) {
             if (DEBUG) Log.d(TAG, "Rotation sensor for lock screen On!");
-            mWindowLayoutParams.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR;
+            mWindowLayoutParams.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_USER;
         } else {
             if (DEBUG) Log.d(TAG, "Rotation sensor for lock screen Off!");
             mWindowLayoutParams.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_NOSENSOR;
diff --git a/samples/training/network-usage/AndroidManifest.xml b/samples/training/network-usage/AndroidManifest.xml
new file mode 100644
index 0000000..4b96d14
--- /dev/null
+++ b/samples/training/network-usage/AndroidManifest.xml
@@ -0,0 +1,48 @@
+<!--
+  Copyright (C) 2012 The Android Open Source Project
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.example.android.networkusage"
+    android:versionCode="1"
+    android:versionName="1.0" >
+
+    <uses-sdk android:minSdkVersion="4"
+        android:targetSdkVersion="14" />
+
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+
+    <application
+        android:icon="@drawable/ic_launcher"
+        android:label="@string/app_name" >
+
+        <activity
+            android:name="com.example.networkusage.NetworkActivity"
+            android:label="@string/app_name" >
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+        </activity>
+        <activity android:label="SettingsActivity" android:name=".SettingsActivity">
+             <intent-filter>
+                <action android:name="android.intent.action.MANAGE_NETWORK_USAGE" />
+                <category android:name="android.intent.category.DEFAULT" />
+          </intent-filter>
+        </activity>
+    </application>
+</manifest>
diff --git a/samples/training/network-usage/README.txt b/samples/training/network-usage/README.txt
new file mode 100644
index 0000000..cc9a7a0
--- /dev/null
+++ b/samples/training/network-usage/README.txt
@@ -0,0 +1,14 @@
+README
+======
+
+This Network Usage sample app does the following:
+
+-- Downloads an XML feed from StackOverflow.com for the most recent posts tagged "android".
+
+-- Parses the XML feed, combines feed elements with HTML markup, and displays the resulting HTML in the UI.
+
+-- Lets users control their network data usage through a settings UI. Users can choose to fetch the feed
+   when any network connection is available, or only when a Wi-Fi connection is available.
+
+-- Detects when there is a change in the device's connection status and responds accordingly. For example, if
+   the device loses its network connection, the app will not attempt to download the feed.
diff --git a/samples/training/network-usage/res/drawable-hdpi/ic_launcher.png b/samples/training/network-usage/res/drawable-hdpi/ic_launcher.png
new file mode 100644
index 0000000..8074c4c
--- /dev/null
+++ b/samples/training/network-usage/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/samples/training/network-usage/res/drawable-ldpi/ic_launcher.png b/samples/training/network-usage/res/drawable-ldpi/ic_launcher.png
new file mode 100644
index 0000000..1095584
--- /dev/null
+++ b/samples/training/network-usage/res/drawable-ldpi/ic_launcher.png
Binary files differ
diff --git a/samples/training/network-usage/res/drawable-mdpi/ic_launcher.png b/samples/training/network-usage/res/drawable-mdpi/ic_launcher.png
new file mode 100644
index 0000000..a07c69f
--- /dev/null
+++ b/samples/training/network-usage/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/samples/training/network-usage/res/layout/main.xml b/samples/training/network-usage/res/layout/main.xml
new file mode 100644
index 0000000..8498934
--- /dev/null
+++ b/samples/training/network-usage/res/layout/main.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="vertical" >
+
+<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/webview"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+/>
+</LinearLayout>
diff --git a/samples/training/network-usage/res/menu/mainmenu.xml b/samples/training/network-usage/res/menu/mainmenu.xml
new file mode 100644
index 0000000..17d44db
--- /dev/null
+++ b/samples/training/network-usage/res/menu/mainmenu.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+  Copyright (C) 2012 The Android Open Source Project
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+     <item android:id="@+id/settings"
+          android:title="@string/settings" />
+    <item android:id="@+id/refresh"
+          android:title="@string/refresh" />
+</menu>
diff --git a/samples/training/network-usage/res/values/arrays.xml b/samples/training/network-usage/res/values/arrays.xml
new file mode 100644
index 0000000..2e8b8a7
--- /dev/null
+++ b/samples/training/network-usage/res/values/arrays.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+  Copyright (C) 2012 The Android Open Source Project
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+
+<resources>
+    <string-array name="listArray">
+        <item>Only when on Wi-Fi</item>
+        <item>On any network</item>
+    </string-array>
+    <string-array name="listValues">
+        <item>Wi-Fi</item>
+        <item>Any</item>
+    </string-array>
+</resources>
diff --git a/samples/training/network-usage/res/values/strings.xml b/samples/training/network-usage/res/values/strings.xml
new file mode 100644
index 0000000..d7c702f
--- /dev/null
+++ b/samples/training/network-usage/res/values/strings.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+  Copyright (C) 2012 The Android Open Source Project
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+
+<resources>
+
+    <string name="app_name">NetworkUsage</string>
+
+    <!--  Menu items -->
+    <string name="settings">Settings</string>
+    <string name="refresh">Refresh</string>
+
+    <!--  NetworkActivity -->
+    <string name="page_title">Newest StackOverflow questions tagged \'android\'</string>
+    <string name="updated">Last updated:</string>
+    <string name="lost_connection">Lost connection.</string>
+    <string name="wifi_connected">Wi-Fi reconnected.</string>
+    <string name="connection_error">Unable to load content. Check your network connection.</string>
+    <string name="xml_error">Error parsing XML.</string>
+
+</resources>
diff --git a/samples/training/network-usage/res/xml/preferences.xml b/samples/training/network-usage/res/xml/preferences.xml
new file mode 100644
index 0000000..801ba79
--- /dev/null
+++ b/samples/training/network-usage/res/xml/preferences.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+  Copyright (C) 2012 The Android Open Source Project
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    <ListPreference
+        android:title="Download Feed"
+        android:summary="Network connectivity required to download the feed."
+        android:key="listPref"
+        android:defaultValue="Wi-Fi"
+        android:entries="@array/listArray"
+        android:entryValues="@array/listValues"
+     />
+    <CheckBoxPreference
+        android:title="Show Summaries"
+        android:defaultValue="false"
+        android:summary="Show a summary for each link."
+        android:key="summaryPref" />
+</PreferenceScreen>
diff --git a/samples/training/network-usage/src/com/example/android/networkusage/NetworkActivity.java b/samples/training/network-usage/src/com/example/android/networkusage/NetworkActivity.java
new file mode 100644
index 0000000..b7ed331
--- /dev/null
+++ b/samples/training/network-usage/src/com/example/android/networkusage/NetworkActivity.java
@@ -0,0 +1,321 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
+ * in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package com.example.android.networkusage;
+
+import android.app.Activity;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.content.SharedPreferences;
+import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.preference.PreferenceManager;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.webkit.WebView;
+import android.widget.Toast;
+
+import com.example.android.networkusage.R;
+import com.example.android.networkusage.StackOverflowXmlParser.Entry;
+
+import org.xmlpull.v1.XmlPullParserException;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.List;
+
+
+/**
+ * Main Activity for the sample application.
+ *
+ * This activity does the following:
+ *
+ * o Presents a WebView screen to users. This WebView has a list of HTML links to the latest
+ *   questions tagged 'android' on stackoverflow.com.
+ *
+ * o Parses the StackOverflow XML feed using XMLPullParser.
+ *
+ * o Uses AsyncTask to download and process the XML feed.
+ *
+ * o Monitors preferences and the device's network connection to determine whether
+ *   to refresh the WebView content.
+ */
+public class NetworkActivity extends Activity {
+    public static final String WIFI = "Wi-Fi";
+    public static final String ANY = "Any";
+    private static final String URL =
+            "http://stackoverflow.com/feeds/tag?tagnames=android&sort=newest";
+
+    // Whether there is a Wi-Fi connection.
+    private static boolean wifiConnected = false;
+    // Whether there is a mobile connection.
+    private static boolean mobileConnected = false;
+    // Whether the display should be refreshed.
+    public static boolean refreshDisplay = true;
+
+    // The user's current network preference setting.
+    public static String sPref = null;
+
+    // The BroadcastReceiver that tracks network connectivity changes.
+    private NetworkReceiver receiver = new NetworkReceiver();
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Register BroadcastReceiver to track connection changes.
+        IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
+        receiver = new NetworkReceiver();
+        this.registerReceiver(receiver, filter);
+    }
+
+    // Refreshes the display if the network connection and the
+    // pref settings allow it.
+    @Override
+    public void onStart() {
+        super.onStart();
+
+        // Gets the user's network preference settings
+        SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
+
+        // Retrieves a string value for the preferences. The second parameter
+        // is the default value to use if a preference value is not found.
+        sPref = sharedPrefs.getString("listPref", "Wi-Fi");
+
+        updateConnectedFlags();
+
+        // Only loads the page if refreshDisplay is true. Otherwise, keeps previous
+        // display. For example, if the user has set "Wi-Fi only" in prefs and the
+        // device loses its Wi-Fi connection midway through the user using the app,
+        // you don't want to refresh the display--this would force the display of
+        // an error page instead of stackoverflow.com content.
+        if (refreshDisplay) {
+            loadPage();
+        }
+    }
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+        if (receiver != null) {
+            this.unregisterReceiver(receiver);
+        }
+    }
+
+    // Checks the network connection and sets the wifiConnected and mobileConnected
+    // variables accordingly.
+    private void updateConnectedFlags() {
+        ConnectivityManager connMgr =
+                (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
+
+        NetworkInfo activeInfo = connMgr.getActiveNetworkInfo();
+        if (activeInfo != null && activeInfo.isConnected()) {
+            wifiConnected = activeInfo.getType() == ConnectivityManager.TYPE_WIFI;
+            mobileConnected = activeInfo.getType() == ConnectivityManager.TYPE_MOBILE;
+        } else {
+            wifiConnected = false;
+            mobileConnected = false;
+        }
+    }
+
+    // Uses AsyncTask subclass to download the XML feed from stackoverflow.com.
+    // This avoids UI lock up. To prevent network operations from
+    // causing a delay that results in a poor user experience, always perform
+    // network operations on a separate thread from the UI.
+    private void loadPage() {
+        if (((sPref.equals(ANY)) && (wifiConnected || mobileConnected))
+                || ((sPref.equals(WIFI)) && (wifiConnected))) {
+            // AsyncTask subclass
+            new DownloadXmlTask().execute(URL);
+        } else {
+            showErrorPage();
+        }
+    }
+
+    // Displays an error if the app is unable to load content.
+    private void showErrorPage() {
+        setContentView(R.layout.main);
+
+        // The specified network connection is not available. Displays error message.
+        WebView myWebView = (WebView) findViewById(R.id.webview);
+        myWebView.loadData(getResources().getString(R.string.connection_error),
+                "text/html", null);
+    }
+
+    // Populates the activity's options menu.
+    @Override
+    public boolean onCreateOptionsMenu(Menu menu) {
+        MenuInflater inflater = getMenuInflater();
+        inflater.inflate(R.menu.mainmenu, menu);
+        return true;
+    }
+
+    // Handles the user's menu selection.
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        switch (item.getItemId()) {
+        case R.id.settings:
+                Intent settingsActivity = new Intent(getBaseContext(), SettingsActivity.class);
+                startActivity(settingsActivity);
+                return true;
+        case R.id.refresh:
+                loadPage();
+                return true;
+        default:
+                return super.onOptionsItemSelected(item);
+        }
+    }
+
+    // Implementation of AsyncTask used to download XML feed from stackoverflow.com.
+    private class DownloadXmlTask extends AsyncTask<String, Void, String> {
+
+        @Override
+        protected String doInBackground(String... urls) {
+            try {
+                return loadXmlFromNetwork(urls[0]);
+            } catch (IOException e) {
+                return getResources().getString(R.string.connection_error);
+            } catch (XmlPullParserException e) {
+                return getResources().getString(R.string.xml_error);
+            }
+        }
+
+        @Override
+        protected void onPostExecute(String result) {
+            setContentView(R.layout.main);
+            // Displays the HTML string in the UI via a WebView
+            WebView myWebView = (WebView) findViewById(R.id.webview);
+            myWebView.loadData(result, "text/html", null);
+        }
+    }
+
+    // Uploads XML from stackoverflow.com, parses it, and combines it with
+    // HTML markup. Returns HTML string.
+    private String loadXmlFromNetwork(String urlString) throws XmlPullParserException, IOException {
+        InputStream stream = null;
+        StackOverflowXmlParser stackOverflowXmlParser = new StackOverflowXmlParser();
+        List<Entry> entries = null;
+        String title = null;
+        String url = null;
+        String summary = null;
+        Calendar rightNow = Calendar.getInstance();
+        DateFormat formatter = new SimpleDateFormat("MMM dd h:mmaa");
+
+        // Checks whether the user set the preference to include summary text
+        SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
+        boolean pref = sharedPrefs.getBoolean("summaryPref", false);
+
+        StringBuilder htmlString = new StringBuilder();
+        htmlString.append("<h3>" + getResources().getString(R.string.page_title) + "</h3>");
+        htmlString.append("<em>" + getResources().getString(R.string.updated) + " " +
+                formatter.format(rightNow.getTime()) + "</em>");
+
+        try {
+            stream = downloadUrl(urlString);
+            entries = stackOverflowXmlParser.parse(stream);
+        // Makes sure that the InputStream is closed after the app is
+        // finished using it.
+        } finally {
+            if (stream != null) {
+                stream.close();
+            }
+        }
+
+        // StackOverflowXmlParser returns a List (called "entries") of Entry objects.
+        // Each Entry object represents a single post in the XML feed.
+        // This section processes the entries list to combine each entry with HTML markup.
+        // Each entry is displayed in the UI as a link that optionally includes
+        // a text summary.
+        for (Entry entry : entries) {
+            htmlString.append("<p><a href='");
+            htmlString.append(entry.link);
+            htmlString.append("'>" + entry.title + "</a></p>");
+            // If the user set the preference to include summary text,
+            // adds it to the display.
+            if (pref) {
+                htmlString.append(entry.summary);
+            }
+        }
+        return htmlString.toString();
+    }
+
+    // Given a string representation of a URL, sets up a connection and gets
+    // an input stream.
+    private InputStream downloadUrl(String urlString) throws IOException {
+        URL url = new URL(urlString);
+        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+        conn.setReadTimeout(10000 /* milliseconds */);
+        conn.setConnectTimeout(15000 /* milliseconds */);
+        conn.setRequestMethod("GET");
+        conn.setDoInput(true);
+        // Starts the query
+        conn.connect();
+        InputStream stream = conn.getInputStream();
+        return stream;
+    }
+
+    /**
+     *
+     * This BroadcastReceiver intercepts the android.net.ConnectivityManager.CONNECTIVITY_ACTION,
+     * which indicates a connection change. It checks whether the type is TYPE_WIFI.
+     * If it is, it checks whether Wi-Fi is connected and sets the wifiConnected flag in the
+     * main activity accordingly.
+     *
+     */
+    public class NetworkReceiver extends BroadcastReceiver {
+
+        @Override
+        public void onReceive(Context context, Intent intent) {
+            ConnectivityManager connMgr =
+                    (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+            NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
+
+            // Checks the user prefs and the network connection. Based on the result, decides
+            // whether
+            // to refresh the display or keep the current display.
+            // If the userpref is Wi-Fi only, checks to see if the device has a Wi-Fi connection.
+            if (WIFI.equals(sPref) && networkInfo != null
+                    && networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
+                // If device has its Wi-Fi connection, sets refreshDisplay
+                // to true. This causes the display to be refreshed when the user
+                // returns to the app.
+                refreshDisplay = true;
+                Toast.makeText(context, R.string.wifi_connected, Toast.LENGTH_SHORT).show();
+
+                // If the setting is ANY network and there is a network connection
+                // (which by process of elimination would be mobile), sets refreshDisplay to true.
+            } else if (ANY.equals(sPref) && networkInfo != null) {
+                refreshDisplay = true;
+
+                // Otherwise, the app can't download content--either because there is no network
+                // connection (mobile or Wi-Fi), or because the pref setting is WIFI, and there
+                // is no Wi-Fi connection.
+                // Sets refreshDisplay to false.
+            } else {
+                refreshDisplay = false;
+                Toast.makeText(context, R.string.lost_connection, Toast.LENGTH_SHORT).show();
+            }
+        }
+    }
+}
diff --git a/samples/training/network-usage/src/com/example/android/networkusage/SettingsActivity.java b/samples/training/network-usage/src/com/example/android/networkusage/SettingsActivity.java
new file mode 100644
index 0000000..73b72d2
--- /dev/null
+++ b/samples/training/network-usage/src/com/example/android/networkusage/SettingsActivity.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
+ * in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package com.example.android.networkusage;
+
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.os.Bundle;
+import android.preference.PreferenceActivity;
+import com.example.android.networkusage.R;
+
+/**
+ * This preference activity has in its manifest declaration an intent filter for
+ * the ACTION_MANAGE_NETWORK_USAGE action. This activity provides a settings UI
+ * for users to specify network settings to control data usage.
+ */
+public class SettingsActivity extends PreferenceActivity
+        implements
+            OnSharedPreferenceChangeListener {
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Loads the XML preferences file.
+        addPreferencesFromResource(R.xml.preferences);
+    }
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+
+        // Registers a callback to be invoked whenever a user changes a preference.
+        getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
+    }
+
+    @Override
+    protected void onPause() {
+        super.onPause();
+
+        // Unregisters the listener set in onResume().
+        // It's best practice to unregister listeners when your app isn't using them to cut down on
+        // unnecessary system overhead. You do this in onPause().
+        getPreferenceScreen()
+                .getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
+    }
+
+    // Fires when the user changes a preference.
+    @Override
+    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
+        // Sets refreshDisplay to true so that when the user returns to the main
+        // activity, the display refreshes to reflect the new settings.
+        NetworkActivity.refreshDisplay = true;
+    }
+}
diff --git a/samples/training/network-usage/src/com/example/android/networkusage/StackOverflowXmlParser.java b/samples/training/network-usage/src/com/example/android/networkusage/StackOverflowXmlParser.java
new file mode 100644
index 0000000..6a01098
--- /dev/null
+++ b/samples/training/network-usage/src/com/example/android/networkusage/StackOverflowXmlParser.java
@@ -0,0 +1,169 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
+ * in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package com.example.android.networkusage;
+
+import android.util.Xml;
+
+import org.xmlpull.v1.XmlPullParser;
+import org.xmlpull.v1.XmlPullParserException;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * This class parses XML feeds from stackoverflow.com.
+ * Given an InputStream representation of a feed, it returns a List of entries,
+ * where each list element represents a single entry (post) in the XML feed.
+ */
+public class StackOverflowXmlParser {
+    private static final String ns = null;
+
+    // We don't use namespaces
+
+    public List<Entry> parse(InputStream in) throws XmlPullParserException, IOException {
+        try {
+            XmlPullParser parser = Xml.newPullParser();
+            parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, false);
+            parser.setInput(in, null);
+            parser.nextTag();
+            return readFeed(parser);
+        } finally {
+            in.close();
+        }
+    }
+
+    private List<Entry> readFeed(XmlPullParser parser) throws XmlPullParserException, IOException {
+        List<Entry> entries = new ArrayList<Entry>();
+
+        parser.require(XmlPullParser.START_TAG, ns, "feed");
+        while (parser.next() != XmlPullParser.END_TAG) {
+            if (parser.getEventType() != XmlPullParser.START_TAG) {
+                continue;
+            }
+            String name = parser.getName();
+            // Starts by looking for the entry tag
+            if (name.equals("entry")) {
+                entries.add(readEntry(parser));
+            } else {
+                skip(parser);
+            }
+        }
+        return entries;
+    }
+
+    // This class represents a single entry (post) in the XML feed.
+    // It includes the data members "title," "link," and "summary."
+    public static class Entry {
+        public final String title;
+        public final String link;
+        public final String summary;
+
+        private Entry(String title, String summary, String link) {
+            this.title = title;
+            this.summary = summary;
+            this.link = link;
+        }
+    }
+
+    // Parses the contents of an entry. If it encounters a title, summary, or link tag, hands them
+    // off
+    // to their respective &quot;read&quot; methods for processing. Otherwise, skips the tag.
+    private Entry readEntry(XmlPullParser parser) throws XmlPullParserException, IOException {
+        parser.require(XmlPullParser.START_TAG, ns, "entry");
+        String title = null;
+        String summary = null;
+        String link = null;
+        while (parser.next() != XmlPullParser.END_TAG) {
+            if (parser.getEventType() != XmlPullParser.START_TAG) {
+                continue;
+            }
+            String name = parser.getName();
+            if (name.equals("title")) {
+                title = readTitle(parser);
+            } else if (name.equals("summary")) {
+                summary = readSummary(parser);
+            } else if (name.equals("link")) {
+                link = readLink(parser);
+            } else {
+                skip(parser);
+            }
+        }
+        return new Entry(title, summary, link);
+    }
+
+    // Processes title tags in the feed.
+    private String readTitle(XmlPullParser parser) throws IOException, XmlPullParserException {
+        parser.require(XmlPullParser.START_TAG, ns, "title");
+        String title = readText(parser);
+        parser.require(XmlPullParser.END_TAG, ns, "title");
+        return title;
+    }
+
+    // Processes link tags in the feed.
+    private String readLink(XmlPullParser parser) throws IOException, XmlPullParserException {
+        String link = "";
+        parser.require(XmlPullParser.START_TAG, ns, "link");
+        String tag = parser.getName();
+        String relType = parser.getAttributeValue(null, "rel");
+        if (tag.equals("link")) {
+            if (relType.equals("alternate")) {
+                link = parser.getAttributeValue(null, "href");
+                parser.nextTag();
+            }
+        }
+        parser.require(XmlPullParser.END_TAG, ns, "link");
+        return link;
+    }
+
+    // Processes summary tags in the feed.
+    private String readSummary(XmlPullParser parser) throws IOException, XmlPullParserException {
+        parser.require(XmlPullParser.START_TAG, ns, "summary");
+        String summary = readText(parser);
+        parser.require(XmlPullParser.END_TAG, ns, "summary");
+        return summary;
+    }
+
+    // For the tags title and summary, extracts their text values.
+    private String readText(XmlPullParser parser) throws IOException, XmlPullParserException {
+        String result = "";
+        if (parser.next() == XmlPullParser.TEXT) {
+            result = parser.getText();
+            parser.nextTag();
+        }
+        return result;
+    }
+
+    // Skips tags the parser isn't interested in. Uses depth to handle nested tags. i.e.,
+    // if the next tag after a START_TAG isn't a matching END_TAG, it keeps going until it
+    // finds the matching END_TAG (as indicated by the value of "depth" being 0).
+    private void skip(XmlPullParser parser) throws XmlPullParserException, IOException {
+        if (parser.getEventType() != XmlPullParser.START_TAG) {
+            throw new IllegalStateException();
+        }
+        int depth = 1;
+        while (depth != 0) {
+            switch (parser.next()) {
+            case XmlPullParser.END_TAG:
+                    depth--;
+                    break;
+            case XmlPullParser.START_TAG:
+                    depth++;
+                    break;
+            }
+        }
+    }
+}
diff --git a/services/java/com/android/server/AppWidgetServiceImpl.java b/services/java/com/android/server/AppWidgetServiceImpl.java
index f4e43ff..f9c432b 100644
--- a/services/java/com/android/server/AppWidgetServiceImpl.java
+++ b/services/java/com/android/server/AppWidgetServiceImpl.java
@@ -819,7 +819,10 @@
             return;
         }
 
-        int bitmapMemoryUsage = views.estimateMemoryUsage();
+        int bitmapMemoryUsage = 0;
+        if (views != null) {
+            bitmapMemoryUsage = views.estimateMemoryUsage();
+        }
         if (bitmapMemoryUsage > mMaxWidgetBitmapMemory) {
             throw new IllegalArgumentException("RemoteViews for widget update exceeds maximum" +
                     " bitmap memory usage (used: " + bitmapMemoryUsage + ", max: " +
diff --git a/services/java/com/android/server/LocationManagerService.java b/services/java/com/android/server/LocationManagerService.java
index 2918dbc..8c1581c 100644
--- a/services/java/com/android/server/LocationManagerService.java
+++ b/services/java/com/android/server/LocationManagerService.java
@@ -32,6 +32,7 @@
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.pm.Signature;
 import android.content.res.Resources;
+import android.database.ContentObserver;
 import android.database.Cursor;
 import android.location.Address;
 import android.location.Criteria;
@@ -79,6 +80,8 @@
 import java.util.Comparator;
 import java.util.HashMap;
 import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.Observable;
@@ -109,6 +112,9 @@
     private static final String INSTALL_LOCATION_PROVIDER =
         android.Manifest.permission.INSTALL_LOCATION_PROVIDER;
 
+    private static final String BLACKLIST_CONFIG_NAME = "locationPackagePrefixBlacklist";
+    private static final String WHITELIST_CONFIG_NAME = "locationPackagePrefixWhitelist";
+
     // Location Providers may sometimes deliver location updates
     // slightly faster that requested - provide grace period so
     // we don't unnecessarily filter events that are otherwise on
@@ -193,6 +199,10 @@
 
     private int mNetworkState = LocationProvider.TEMPORARILY_UNAVAILABLE;
 
+    // for prefix blacklist
+    private String[] mWhitelist = new String[0];
+    private String[] mBlacklist = new String[0];
+
     // for Settings change notification
     private ContentQueryMap mSettings;
 
@@ -205,20 +215,23 @@
         final PendingIntent mPendingIntent;
         final Object mKey;
         final HashMap<String,UpdateRecord> mUpdateRecords = new HashMap<String,UpdateRecord>();
+        final String mPackageName;
 
         int mPendingBroadcasts;
         String mRequiredPermissions;
 
-        Receiver(ILocationListener listener) {
+        Receiver(ILocationListener listener, String packageName) {
             mListener = listener;
             mPendingIntent = null;
             mKey = listener.asBinder();
+            mPackageName = packageName;
         }
 
-        Receiver(PendingIntent intent) {
+        Receiver(PendingIntent intent, String packageName) {
             mPendingIntent = intent;
             mListener = null;
             mKey = intent;
+            mPackageName = packageName;
         }
 
         @Override
@@ -601,6 +614,7 @@
 
         // Load providers
         loadProviders();
+        loadBlacklist();
 
         // Register for Network (Wifi or Mobile) updates
         IntentFilter intentFilter = new IntentFilter();
@@ -1110,11 +1124,11 @@
         }
     }
 
-    private Receiver getReceiver(ILocationListener listener) {
+    private Receiver getReceiver(ILocationListener listener, String packageName) {
         IBinder binder = listener.asBinder();
         Receiver receiver = mReceivers.get(binder);
         if (receiver == null) {
-            receiver = new Receiver(listener);
+            receiver = new Receiver(listener, packageName);
             mReceivers.put(binder, receiver);
 
             try {
@@ -1129,10 +1143,10 @@
         return receiver;
     }
 
-    private Receiver getReceiver(PendingIntent intent) {
+    private Receiver getReceiver(PendingIntent intent, String packageName) {
         Receiver receiver = mReceivers.get(intent);
         if (receiver == null) {
-            receiver = new Receiver(intent);
+            receiver = new Receiver(intent, packageName);
             mReceivers.put(intent, receiver);
         }
         return receiver;
@@ -1157,7 +1171,9 @@
     }
 
     public void requestLocationUpdates(String provider, Criteria criteria,
-        long minTime, float minDistance, boolean singleShot, ILocationListener listener) {
+        long minTime, float minDistance, boolean singleShot, ILocationListener listener,
+        String packageName) {
+        checkPackageName(Binder.getCallingUid(), packageName);
         if (criteria != null) {
             // FIXME - should we consider using multiple providers simultaneously
             // rather than only the best one?
@@ -1170,7 +1186,7 @@
         try {
             synchronized (mLock) {
                 requestLocationUpdatesLocked(provider, minTime, minDistance, singleShot,
-                        getReceiver(listener));
+                        getReceiver(listener, packageName));
             }
         } catch (SecurityException se) {
             throw se;
@@ -1194,7 +1210,9 @@
     }
 
     public void requestLocationUpdatesPI(String provider, Criteria criteria,
-            long minTime, float minDistance, boolean singleShot, PendingIntent intent) {
+            long minTime, float minDistance, boolean singleShot, PendingIntent intent,
+            String packageName) {
+        checkPackageName(Binder.getCallingUid(), packageName);
         validatePendingIntent(intent);
         if (criteria != null) {
             // FIXME - should we consider using multiple providers simultaneously
@@ -1208,7 +1226,7 @@
         try {
             synchronized (mLock) {
                 requestLocationUpdatesLocked(provider, minTime, minDistance, singleShot,
-                        getReceiver(intent));
+                        getReceiver(intent, packageName));
             }
         } catch (SecurityException se) {
             throw se;
@@ -1270,10 +1288,10 @@
         }
     }
 
-    public void removeUpdates(ILocationListener listener) {
+    public void removeUpdates(ILocationListener listener, String packageName) {
         try {
             synchronized (mLock) {
-                removeUpdatesLocked(getReceiver(listener));
+                removeUpdatesLocked(getReceiver(listener, packageName));
             }
         } catch (SecurityException se) {
             throw se;
@@ -1284,10 +1302,10 @@
         }
     }
 
-    public void removeUpdatesPI(PendingIntent intent) {
+    public void removeUpdatesPI(PendingIntent intent, String packageName) {
         try {
             synchronized (mLock) {
-                removeUpdatesLocked(getReceiver(intent));
+                removeUpdatesLocked(getReceiver(intent, packageName));
             }
         } catch (SecurityException se) {
             throw se;
@@ -1446,15 +1464,17 @@
         final long mExpiration;
         final PendingIntent mIntent;
         final Location mLocation;
+        final String mPackageName;
 
         public ProximityAlert(int uid, double latitude, double longitude,
-            float radius, long expiration, PendingIntent intent) {
+            float radius, long expiration, PendingIntent intent, String packageName) {
             mUid = uid;
             mLatitude = latitude;
             mLongitude = longitude;
             mRadius = radius;
             mExpiration = expiration;
             mIntent = intent;
+            mPackageName = packageName;
 
             mLocation = new Location("");
             mLocation.setLatitude(latitude);
@@ -1522,6 +1542,10 @@
                 PendingIntent intent = alert.getIntent();
                 long expiration = alert.getExpiration();
 
+                if (inBlacklist(alert.mPackageName)) {
+                    continue;
+                }
+
                 if ((expiration == -1) || (now <= expiration)) {
                     boolean entered = mProximitiesEntered.contains(alert);
                     boolean inProximity =
@@ -1632,11 +1656,12 @@
     }
 
     public void addProximityAlert(double latitude, double longitude,
-        float radius, long expiration, PendingIntent intent) {
+        float radius, long expiration, PendingIntent intent, String packageName) {
         validatePendingIntent(intent);
         try {
             synchronized (mLock) {
-                addProximityAlertLocked(latitude, longitude, radius, expiration, intent);
+                addProximityAlertLocked(latitude, longitude, radius, expiration, intent,
+                        packageName);
             }
         } catch (SecurityException se) {
             throw se;
@@ -1648,7 +1673,7 @@
     }
 
     private void addProximityAlertLocked(double latitude, double longitude,
-        float radius, long expiration, PendingIntent intent) {
+        float radius, long expiration, PendingIntent intent, String packageName) {
         if (LOCAL_LOGV) {
             Slog.v(TAG, "addProximityAlert: latitude = " + latitude +
                     ", longitude = " + longitude +
@@ -1656,6 +1681,8 @@
                     ", intent = " + intent);
         }
 
+        checkPackageName(Binder.getCallingUid(), packageName);
+
         // Require ability to access all providers for now
         if (!isAllowedProviderSafe(LocationManager.GPS_PROVIDER) ||
             !isAllowedProviderSafe(LocationManager.NETWORK_PROVIDER)) {
@@ -1666,12 +1693,12 @@
             expiration += System.currentTimeMillis();
         }
         ProximityAlert alert = new ProximityAlert(Binder.getCallingUid(),
-                latitude, longitude, radius, expiration, intent);
+                latitude, longitude, radius, expiration, intent, packageName);
         mProximityAlerts.put(intent, alert);
 
         if (mProximityReceiver == null) {
             mProximityListener = new ProximityListener();
-            mProximityReceiver = new Receiver(mProximityListener);
+            mProximityReceiver = new Receiver(mProximityListener, packageName);
 
             for (int i = mProviders.size() - 1; i >= 0; i--) {
                 LocationProviderInterface provider = mProviders.get(i);
@@ -1787,13 +1814,13 @@
         return isAllowedBySettingsLocked(provider);
     }
 
-    public Location getLastKnownLocation(String provider) {
+    public Location getLastKnownLocation(String provider, String packageName) {
         if (LOCAL_LOGV) {
             Slog.v(TAG, "getLastKnownLocation: " + provider);
         }
         try {
             synchronized (mLock) {
-                return _getLastKnownLocationLocked(provider);
+                return _getLastKnownLocationLocked(provider, packageName);
             }
         } catch (SecurityException se) {
             throw se;
@@ -1803,8 +1830,9 @@
         }
     }
 
-    private Location _getLastKnownLocationLocked(String provider) {
+    private Location _getLastKnownLocationLocked(String provider, String packageName) {
         checkPermissionsSafe(provider, null);
+        checkPackageName(Binder.getCallingUid(), packageName);
 
         LocationProviderInterface p = mProvidersByName.get(provider);
         if (p == null) {
@@ -1815,6 +1843,10 @@
             return null;
         }
 
+        if (inBlacklist(packageName)) {
+            return null;
+        }
+
         return mLastKnownLocation.get(provider);
     }
 
@@ -1877,6 +1909,10 @@
             Receiver receiver = r.mReceiver;
             boolean receiverDead = false;
 
+            if (inBlacklist(receiver.mPackageName)) {
+                continue;
+            }
+
             Location lastLoc = r.mLastFixBroadcast;
             if ((lastLoc == null) || shouldBroadcastSafe(location, lastLoc, r)) {
                 if (lastLoc == null) {
@@ -2315,6 +2351,113 @@
         }
     }
 
+    public class BlacklistObserver extends ContentObserver {
+        public BlacklistObserver(Handler handler) {
+            super(handler);
+        }
+        @Override
+        public void onChange(boolean selfChange) {
+            reloadBlacklist();
+        }
+    }
+
+    private void loadBlacklist() {
+        // Register for changes
+        BlacklistObserver observer = new BlacklistObserver(mLocationHandler);
+        mContext.getContentResolver().registerContentObserver(Settings.Secure.getUriFor(
+                BLACKLIST_CONFIG_NAME), false, observer);
+        mContext.getContentResolver().registerContentObserver(Settings.Secure.getUriFor(
+                WHITELIST_CONFIG_NAME), false, observer);
+        reloadBlacklist();
+    }
+
+    private void reloadBlacklist() {
+        String blacklist[] = getStringArray(BLACKLIST_CONFIG_NAME);
+        String whitelist[] = getStringArray(WHITELIST_CONFIG_NAME);
+        synchronized (mLock) {
+            mWhitelist = whitelist;
+            Slog.i(TAG, "whitelist: " + arrayToString(mWhitelist));
+            mBlacklist = blacklist;
+            Slog.i(TAG, "blacklist: " + arrayToString(mBlacklist));
+        }
+    }
+
+    private static String arrayToString(String[] array) {
+        StringBuilder s = new StringBuilder();
+        s.append('[');
+        boolean first = true;
+        for (String a : array) {
+            if (!first) s.append(',');
+            first = false;
+            s.append(a);
+        }
+        s.append(']');
+        return s.toString();
+    }
+
+    private String[] getStringArray(String key) {
+        String flatString = Settings.Secure.getString(mContext.getContentResolver(), key);
+        if (flatString == null) {
+            return new String[0];
+        }
+        String[] splitStrings = flatString.split(",");
+        ArrayList<String> result = new ArrayList<String>();
+        for (String pkg : splitStrings) {
+            pkg = pkg.trim();
+            if (pkg.isEmpty()) {
+                continue;
+            }
+            result.add(pkg);
+        }
+        return result.toArray(new String[result.size()]);
+    }
+
+    /**
+     * Return true if in blacklist, and not in whitelist.
+     */
+    private boolean inBlacklist(String packageName) {
+        synchronized (mLock) {
+            for (String black : mBlacklist) {
+                if (packageName.startsWith(black)) {
+                    if (inWhitelist(packageName)) {
+                        continue;
+                    } else {
+                        if (LOCAL_LOGV) Log.d(TAG, "dropping location (blacklisted): "
+                                + packageName + " matches " + black);
+                        return true;
+                    }
+                }
+            }
+        }
+        return false;
+    }
+
+    /**
+     * Return true if any of packages are in whitelist
+     */
+    private boolean inWhitelist(String pkg) {
+        synchronized (mLock) {
+            for (String white : mWhitelist) {
+                if (pkg.startsWith(white)) return true;
+            }
+        }
+        return false;
+    }
+
+    private void checkPackageName(int uid, String packageName) {
+        if (packageName == null) {
+            throw new SecurityException("packageName cannot be null");
+        }
+        String[] packages = mPackageManager.getPackagesForUid(uid);
+        if (packages == null) {
+            throw new SecurityException("invalid UID " + uid);
+        }
+        for (String pkg : packages) {
+            if (packageName.equals(pkg)) return;
+        }
+        throw new SecurityException("invalid package name");
+    }
+
     private void log(String log) {
         if (Log.isLoggable(TAG, Log.VERBOSE)) {
             Slog.d(TAG, log);
@@ -2346,6 +2489,8 @@
                     j.getValue().dump(pw, "        ");
                 }
             }
+            pw.println("  Package blacklist:" + arrayToString(mBlacklist));
+            pw.println("  Package whitelist:" + arrayToString(mWhitelist));
             pw.println("  Records by Provider:");
             for (Map.Entry<String, ArrayList<UpdateRecord>> i
                     : mRecordsByProvider.entrySet()) {
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index f300d74..e55e7fe 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -114,6 +114,8 @@
                 : Integer.parseInt(factoryTestStr);
         final boolean headless = "1".equals(SystemProperties.get("ro.config.headless", "0"));
 
+        AccountManagerService accountManager = null;
+        ContentService contentService = null;
         LightsService lights = null;
         PowerManagerService power = null;
         BatteryService battery = null;
@@ -190,14 +192,14 @@
             // The AccountManager must come before the ContentService
             try {
                 Slog.i(TAG, "Account Manager");
-                ServiceManager.addService(Context.ACCOUNT_SERVICE,
-                        new AccountManagerService(context));
+                accountManager = new AccountManagerService(context);
+                ServiceManager.addService(Context.ACCOUNT_SERVICE, accountManager);
             } catch (Throwable e) {
                 Slog.e(TAG, "Failure starting Account Manager", e);
             }
 
             Slog.i(TAG, "Content Manager");
-            ContentService.main(context,
+            contentService = ContentService.main(context,
                     factoryTest == SystemServer.FACTORY_TEST_LOW_LEVEL);
 
             Slog.i(TAG, "System Content Providers");
@@ -466,6 +468,20 @@
             }
 
             try {
+                if (accountManager != null)
+                    accountManager.systemReady();
+            } catch (Throwable e) {
+                reportWtf("making Account Manager Service ready", e);
+            }
+
+            try {
+                if (contentService != null)
+                    contentService.systemReady();
+            } catch (Throwable e) {
+                reportWtf("making Content Service ready", e);
+            }
+
+            try {
                 Slog.i(TAG, "Notification Manager");
                 notification = new NotificationManagerService(context, statusBar, lights);
                 ServiceManager.addService(Context.NOTIFICATION_SERVICE, notification);
diff --git a/services/java/com/android/server/pm/PackageManagerService.java b/services/java/com/android/server/pm/PackageManagerService.java
index 7390cbe..f914271 100644
--- a/services/java/com/android/server/pm/PackageManagerService.java
+++ b/services/java/com/android/server/pm/PackageManagerService.java
@@ -8844,7 +8844,7 @@
         // little while.
         mHandler.post(new Runnable() {
             public void run() {
-                updateExternalMediaStatusInner(mediaStatus, reportStatus);
+                updateExternalMediaStatusInner(mediaStatus, reportStatus, true);
             }
         });
     }
@@ -8854,7 +8854,7 @@
      * Should block until all the ASEC containers are finished being scanned.
      */
     public void scanAvailableAsecs() {
-        updateExternalMediaStatusInner(true, false);
+        updateExternalMediaStatusInner(true, false, false);
     }
 
     /*
@@ -8863,7 +8863,8 @@
      * Please note that we always have to report status if reportStatus has been
      * set to true especially when unloading packages.
      */
-    private void updateExternalMediaStatusInner(boolean isMounted, boolean reportStatus) {
+    private void updateExternalMediaStatusInner(boolean isMounted, boolean reportStatus,
+            boolean externalStorage) {
         // Collection of uids
         int uidArr[] = null;
         // Collection of stale containers
@@ -8901,6 +8902,14 @@
                         continue;
                     }
 
+                    /*
+                     * Skip packages that are not external if we're unmounting
+                     * external storage.
+                     */
+                    if (externalStorage && !isMounted && !isExternal(ps)) {
+                        continue;
+                    }
+
                     final AsecInstallArgs args = new AsecInstallArgs(cid, isForwardLocked(ps));
                     // The package status is changed only if the code path
                     // matches between settings and the container id.
diff --git a/services/java/com/android/server/wm/WindowAnimator.java b/services/java/com/android/server/wm/WindowAnimator.java
index db3b2bd..62cf711 100644
--- a/services/java/com/android/server/wm/WindowAnimator.java
+++ b/services/java/com/android/server/wm/WindowAnimator.java
@@ -32,6 +32,13 @@
 public class WindowAnimator {
     private static final String TAG = "WindowAnimator";
 
+    // mForceHiding states.
+    private static final int KEYGUARD_NOT_SHOWN     = 0;
+    private static final int KEYGUARD_ANIMATING_IN  = 1;
+    private static final int KEYGUARD_SHOWN         = 2;
+    private static final int KEYGUARD_ANIMATING_OUT = 3;
+    int mForceHiding;
+
     final WindowManagerService mService;
     final Context mContext;
     final WindowManagerPolicy mPolicy;
@@ -39,7 +46,6 @@
     ArrayList<WindowStateAnimator> mWinAnimators = new ArrayList<WindowStateAnimator>();
 
     boolean mAnimating;
-    boolean mForceHiding;
     WindowState mWindowAnimationBackground;
     int mWindowAnimationBackgroundColor;
     int mAdjResult;
@@ -279,8 +285,16 @@
                         }
                         mService.mFocusMayChange = true;
                     }
-                    if (win.isReadyForDisplay() && winAnimator.mAnimationIsEntrance) {
-                        mForceHiding = true;
+                    if (win.isReadyForDisplay()) {
+                        if (nowAnimating) {
+                            if (winAnimator.mAnimationIsEntrance) {
+                                mForceHiding = KEYGUARD_ANIMATING_IN;
+                            } else {
+                                mForceHiding = KEYGUARD_ANIMATING_OUT;
+                            }
+                        } else {
+                            mForceHiding = KEYGUARD_SHOWN;
+                        }
                     }
                     if (WindowManagerService.DEBUG_VISIBILITY) Slog.v(TAG,
                             "Force hide " + mForceHiding
@@ -292,9 +306,12 @@
                             + " hidden=" + win.mRootToken.hidden
                             + " anim=" + win.mWinAnimator.mAnimation);
                 } else if (mPolicy.canBeForceHidden(win, win.mAttrs)) {
+                    final boolean hideWhenLocked =
+                            (winAnimator.mAttrFlags & FLAG_SHOW_WHEN_LOCKED) == 0;
                     final boolean changed;
-                    if (mForceHiding && (!winAnimator.isAnimating()
-                            || (winAnimator.mAttrFlags & FLAG_SHOW_WHEN_LOCKED) == 0)) {
+                    if (((mForceHiding == KEYGUARD_ANIMATING_IN)
+                                && (!winAnimator.isAnimating() || hideWhenLocked))
+                            || ((mForceHiding == KEYGUARD_SHOWN) && hideWhenLocked)) {
                         changed = win.hideLw(false, false);
                         if (WindowManagerService.DEBUG_VISIBILITY && changed) Slog.v(TAG,
                                 "Now policy hidden: " + win);
@@ -411,7 +428,7 @@
     }
 
     private void performAnimationsLocked() {
-        mForceHiding = false;
+        mForceHiding = KEYGUARD_NOT_SHOWN;
         mDetachedWallpaper = null;
         mWindowAnimationBackground = null;
         mWindowAnimationBackgroundColor = 0;
diff --git a/telephony/java/android/telephony/cdma/CdmaSmsCbProgramData.java b/telephony/java/android/telephony/cdma/CdmaSmsCbProgramData.java
index f94efd8..010ad2b 100644
--- a/telephony/java/android/telephony/cdma/CdmaSmsCbProgramData.java
+++ b/telephony/java/android/telephony/cdma/CdmaSmsCbProgramData.java
@@ -81,8 +81,8 @@
     /** Service category to modify. */
     private final int mCategory;
 
-    /** Language used for service category name (ISO 639 two character code). */
-    private final String mLanguage;
+    /** Language used for service category name (defined in BearerData.LANGUAGE_*). */
+    private final int mLanguage;
 
     /** Maximum number of messages to store for this service category. */
     private final int mMaxMessages;
@@ -94,7 +94,7 @@
     private final String mCategoryName;
 
     /** Create a new CdmaSmsCbProgramData object with the specified values. */
-    public CdmaSmsCbProgramData(int operation, int category, String language, int maxMessages,
+    public CdmaSmsCbProgramData(int operation, int category, int language, int maxMessages,
             int alertOption, String categoryName) {
         mOperation = operation;
         mCategory = category;
@@ -108,7 +108,7 @@
     CdmaSmsCbProgramData(Parcel in) {
         mOperation = in.readInt();
         mCategory = in.readInt();
-        mLanguage = in.readString();
+        mLanguage = in.readInt();
         mMaxMessages = in.readInt();
         mAlertOption = in.readInt();
         mCategoryName = in.readString();
@@ -124,7 +124,7 @@
     public void writeToParcel(Parcel dest, int flags) {
         dest.writeInt(mOperation);
         dest.writeInt(mCategory);
-        dest.writeString(mLanguage);
+        dest.writeInt(mLanguage);
         dest.writeInt(mMaxMessages);
         dest.writeInt(mAlertOption);
         dest.writeString(mCategoryName);
@@ -147,10 +147,10 @@
     }
 
     /**
-     * Returns the ISO-639-1 language code for the service category name, or null if not present.
-     * @return a two-digit ISO-639-1 language code, e.g. "en" for English
+     * Returns the CDMA language code for this service category.
+     * @return one of the language values defined in BearerData.LANGUAGE_*
      */
-    public String getLanguageCode() {
+    public int getLanguage() {
         return mLanguage;
     }
 
@@ -171,7 +171,7 @@
     }
 
     /**
-     * Returns the service category name, in the language specified by {@link #getLanguageCode()}.
+     * Returns the service category name, in the language specified by {@link #getLanguage()}.
      * @return an optional service category name
      */
     public String getCategoryName() {
diff --git a/telephony/java/android/telephony/cdma/CdmaSmsCbProgramResults.java b/telephony/java/android/telephony/cdma/CdmaSmsCbProgramResults.java
new file mode 100644
index 0000000..68bfa3c
--- /dev/null
+++ b/telephony/java/android/telephony/cdma/CdmaSmsCbProgramResults.java
@@ -0,0 +1,144 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.telephony.cdma;
+
+import android.os.Parcel;
+import android.os.Parcelable;
+
+/**
+ * CDMA Service Category Program Results from SCPT teleservice SMS.
+ *
+ * {@hide}
+ */
+public class CdmaSmsCbProgramResults implements Parcelable {
+
+    /** Program result: success. */
+    public static final int RESULT_SUCCESS                  = 0;
+
+    /** Program result: memory limit exceeded. */
+    public static final int RESULT_MEMORY_LIMIT_EXCEEDED    = 1;
+
+    /** Program result: limit exceeded. */
+    public static final int RESULT_CATEGORY_LIMIT_EXCEEDED  = 2;
+
+    /** Program result: category already opted in. */
+    public static final int RESULT_CATEGORY_ALREADY_ADDED   = 3;
+
+    /** Program result: category already opted in. */
+    public static final int RESULT_CATEGORY_ALREADY_DELETED = 4;
+
+    /** Program result: invalid MAX_MESSAGES. */
+    public static final int RESULT_INVALID_MAX_MESSAGES     = 5;
+
+    /** Program result: invalid ALERT_OPTION. */
+    public static final int RESULT_INVALID_ALERT_OPTION     = 6;
+
+    /** Program result: invalid service category name. */
+    public static final int RESULT_INVALID_CATEGORY_NAME    = 7;
+
+    /** Program result: unspecified programming failure. */
+    public static final int RESULT_UNSPECIFIED_FAILURE      = 8;
+
+    /** Service category to modify. */
+    private final int mCategory;
+
+    /** Language used for service category name (defined in BearerData.LANGUAGE_*). */
+    private final int mLanguage;
+
+    /** Result of service category programming for this category. */
+    private final int mCategoryResult;
+
+    /** Create a new CdmaSmsCbProgramResults object with the specified values. */
+    public CdmaSmsCbProgramResults(int category, int language, int categoryResult) {
+        mCategory = category;
+        mLanguage = language;
+        mCategoryResult = categoryResult;
+    }
+
+    /** Create a new CdmaSmsCbProgramResults object from a Parcel. */
+    CdmaSmsCbProgramResults(Parcel in) {
+        mCategory = in.readInt();
+        mLanguage = in.readInt();
+        mCategoryResult = in.readInt();
+    }
+
+    /**
+     * Flatten this object into a Parcel.
+     *
+     * @param dest  The Parcel in which the object should be written.
+     * @param flags Additional flags about how the object should be written (ignored).
+     */
+    @Override
+    public void writeToParcel(Parcel dest, int flags) {
+        dest.writeInt(mCategory);
+        dest.writeInt(mLanguage);
+        dest.writeInt(mCategoryResult);
+    }
+
+    /**
+     * Returns the CDMA service category to modify.
+     * @return a 16-bit CDMA service category value
+     */
+    public int getCategory() {
+        return mCategory;
+    }
+
+    /**
+     * Returns the CDMA language code for this service category.
+     * @return one of the language values defined in BearerData.LANGUAGE_*
+     */
+    public int getLanguage() {
+        return mLanguage;
+    }
+
+    /**
+     * Returns the result of service programming for this category
+     * @return the result of service programming for this category
+     */
+    public int getCategoryResult() {
+        return mCategoryResult;
+    }
+
+    @Override
+    public String toString() {
+        return "CdmaSmsCbProgramResults{category=" + mCategory
+                + ", language=" + mLanguage + ", result=" + mCategoryResult + '}';
+    }
+
+    /**
+     * Describe the kinds of special objects contained in the marshalled representation.
+     * @return a bitmask indicating this Parcelable contains no special objects
+     */
+    @Override
+    public int describeContents() {
+        return 0;
+    }
+
+    /** Creator for unparcelling objects. */
+    public static final Parcelable.Creator<CdmaSmsCbProgramResults>
+            CREATOR = new Parcelable.Creator<CdmaSmsCbProgramResults>() {
+        @Override
+        public CdmaSmsCbProgramResults createFromParcel(Parcel in) {
+            return new CdmaSmsCbProgramResults(in);
+        }
+
+        @Override
+        public CdmaSmsCbProgramResults[] newArray(int size) {
+            return new CdmaSmsCbProgramResults[size];
+        }
+    };
+}
diff --git a/test-runner/src/android/test/MoreAsserts.java b/test-runner/src/android/test/MoreAsserts.java
index 9e0d018..83cc420 100644
--- a/test-runner/src/android/test/MoreAsserts.java
+++ b/test-runner/src/android/test/MoreAsserts.java
@@ -158,7 +158,7 @@
      * Asserts that array {@code actual} is the same size and every element
      * is the same as those in array {@code expected}. Note that this uses
      * {@code equals()} instead of {@code ==} to compare the objects.
-     * {@code null} will be considered equal to {code null} (unlike SQL).
+     * {@code null} will be considered equal to {@code null} (unlike SQL).
      * On failure, message indicates first specific element mismatch.
      */
     public static void assertEquals(
diff --git a/test-runner/src/android/test/ProviderTestCase2.java b/test-runner/src/android/test/ProviderTestCase2.java
index 2811b0d..f7c4e03 100644
--- a/test-runner/src/android/test/ProviderTestCase2.java
+++ b/test-runner/src/android/test/ProviderTestCase2.java
@@ -64,7 +64,7 @@
  *     {@link #ProviderTestCase2(Class, String)} as  its first operation.
  * </p>
  * For more information on content provider testing, please see
- * <a href="{@docRoot}guide/topics/testing/provider_testing.html">Content Provider Testing</a>.
+ * <a href="{@docRoot}tools/testing/contentprovider_testing.html">Content Provider Testing</a>.
  */
 public abstract class ProviderTestCase2<T extends ContentProvider> extends AndroidTestCase {
 
diff --git a/test-runner/src/android/test/ServiceTestCase.java b/test-runner/src/android/test/ServiceTestCase.java
index 06c1c5b..d8ced38 100644
--- a/test-runner/src/android/test/ServiceTestCase.java
+++ b/test-runner/src/android/test/ServiceTestCase.java
@@ -91,7 +91,7 @@
  *      {@link #setApplication setApplication()}.  You must do this <em>before</em> calling
  *      startService() or bindService().  The test framework provides a
  *      number of alternatives for Context, including
- *      {link android.test.mock.MockContext MockContext},
+ *      {@link android.test.mock.MockContext MockContext},
  *      {@link android.test.RenamingDelegatingContext RenamingDelegatingContext},
  *      {@link android.content.ContextWrapper ContextWrapper}, and
  *      {@link android.test.IsolatedContext}.
@@ -216,7 +216,7 @@
      *      the service. The flag is assumed to be {@link android.content.Context#BIND_AUTO_CREATE}.
      * </p>
      * <p>
-     *      See <a href="{@docRoot}guide/developing/tools/aidl.html">Designing a Remote Interface
+     *      See <a href="{@docRoot}guide/components/aidl.html">Designing a Remote Interface
      *      Using AIDL</a> for more information about the communication channel object returned
      *      by this method.
      * </p>
diff --git a/tests/DataIdleTest/src/com/android/tests/dataidle/DataIdleTest.java b/tests/DataIdleTest/src/com/android/tests/dataidle/DataIdleTest.java
index 919e2b3..4ec86b1 100644
--- a/tests/DataIdleTest/src/com/android/tests/dataidle/DataIdleTest.java
+++ b/tests/DataIdleTest/src/com/android/tests/dataidle/DataIdleTest.java
@@ -69,7 +69,7 @@
     /**
      * Helper method that fetches all the network stats available and reports it
      * to instrumentation out.
-     * @param template {link {@link NetworkTemplate} to match.
+     * @param template {@link NetworkTemplate} to match.
      */
     private void fetchStats(NetworkTemplate template) {
         INetworkStatsSession session = null;
diff --git a/tools/aapt/Resource.cpp b/tools/aapt/Resource.cpp
index a69adc1..ee076e6 100644
--- a/tools/aapt/Resource.cpp
+++ b/tools/aapt/Resource.cpp
@@ -2210,7 +2210,7 @@
 
 status_t
 writeProguardForXml(ProguardKeepSet* keep, const sp<AaptFile>& layoutFile,
-        const char* startTag, const KeyedVector<String8, NamespaceAttributePair>* tagAttrPairs)
+        const char* startTag, const KeyedVector<String8, Vector<NamespaceAttributePair> >* tagAttrPairs)
 {
     status_t err;
     ResXMLTree tree;
@@ -2254,17 +2254,21 @@
         } else if (tagAttrPairs != NULL) {
             ssize_t tagIndex = tagAttrPairs->indexOfKey(tag);
             if (tagIndex >= 0) {
-                const NamespaceAttributePair& nsAttr = tagAttrPairs->valueAt(tagIndex);
-                ssize_t attrIndex = tree.indexOfAttribute(nsAttr.ns, nsAttr.attr);
-                if (attrIndex < 0) {
-                    // fprintf(stderr, "%s:%d: <%s> does not have attribute %s:%s.\n",
-                    //        layoutFile->getPrintableSource().string(), tree.getLineNumber(),
-                    //        tag.string(), nsAttr.ns, nsAttr.attr);
-                } else {
-                    size_t len;
-                    addProguardKeepRule(keep,
-                                        String8(tree.getAttributeStringValue(attrIndex, &len)), NULL,
-                                        layoutFile->getPrintableSource(), tree.getLineNumber());
+                const Vector<NamespaceAttributePair>& nsAttrVector = tagAttrPairs->valueAt(tagIndex);
+                for (size_t i = 0; i < nsAttrVector.size(); i++) {
+                    const NamespaceAttributePair& nsAttr = nsAttrVector[i];
+
+                    ssize_t attrIndex = tree.indexOfAttribute(nsAttr.ns, nsAttr.attr);
+                    if (attrIndex < 0) {
+                        // fprintf(stderr, "%s:%d: <%s> does not have attribute %s:%s.\n",
+                        //        layoutFile->getPrintableSource().string(), tree.getLineNumber(),
+                        //        tag.string(), nsAttr.ns, nsAttr.attr);
+                    } else {
+                        size_t len;
+                        addProguardKeepRule(keep,
+                                            String8(tree.getAttributeStringValue(attrIndex, &len)), NULL,
+                                            layoutFile->getPrintableSource(), tree.getLineNumber());
+                    }
                 }
             }
         }
@@ -2280,9 +2284,18 @@
     return NO_ERROR;
 }
 
-static void addTagAttrPair(KeyedVector<String8, NamespaceAttributePair>* dest,
+static void addTagAttrPair(KeyedVector<String8, Vector<NamespaceAttributePair> >* dest,
         const char* tag, const char* ns, const char* attr) {
-    dest->add(String8(tag), NamespaceAttributePair(ns, attr));
+    String8 tagStr(tag);
+    ssize_t index = dest->indexOfKey(tagStr);
+
+    if (index < 0) {
+        Vector<NamespaceAttributePair> vector;
+        vector.add(NamespaceAttributePair(ns, attr));
+        dest->add(tagStr, vector);
+    } else {
+        dest->editValueAt(index).add(NamespaceAttributePair(ns, attr));
+    }
 }
 
 status_t
@@ -2291,13 +2304,13 @@
     status_t err;
 
     // tag:attribute pairs that should be checked in layout files.
-    KeyedVector<String8, NamespaceAttributePair> kLayoutTagAttrPairs;
+    KeyedVector<String8, Vector<NamespaceAttributePair> > kLayoutTagAttrPairs;
     addTagAttrPair(&kLayoutTagAttrPairs, "view", NULL, "class");
     addTagAttrPair(&kLayoutTagAttrPairs, "fragment", NULL, "class");
     addTagAttrPair(&kLayoutTagAttrPairs, "fragment", RESOURCES_ANDROID_NAMESPACE, "name");
 
     // tag:attribute pairs that should be checked in xml files.
-    KeyedVector<String8, NamespaceAttributePair> kXmlTagAttrPairs;
+    KeyedVector<String8, Vector<NamespaceAttributePair> > kXmlTagAttrPairs;
     addTagAttrPair(&kXmlTagAttrPairs, "PreferenceScreen", RESOURCES_ANDROID_NAMESPACE, "fragment");
     addTagAttrPair(&kXmlTagAttrPairs, "header", RESOURCES_ANDROID_NAMESPACE, "fragment");
 
@@ -2307,7 +2320,7 @@
         const sp<AaptDir>& d = dirs.itemAt(k);
         const String8& dirName = d->getLeaf();
         const char* startTag = NULL;
-        const KeyedVector<String8, NamespaceAttributePair>* tagAttrPairs = NULL;
+        const KeyedVector<String8, Vector<NamespaceAttributePair> >* tagAttrPairs = NULL;
         if ((dirName == String8("layout")) || (strncmp(dirName.string(), "layout-", 7) == 0)) {
             tagAttrPairs = &kLayoutTagAttrPairs;
         } else if ((dirName == String8("xml")) || (strncmp(dirName.string(), "xml-", 4) == 0)) {
@@ -2339,6 +2352,7 @@
     if (overlay.get()) {
         return writeProguardForLayouts(keep, overlay);
     }
+
     return NO_ERROR;
 }
 
diff --git a/tools/layoutlib/bridge/src/android/util/LruCache.java b/tools/layoutlib/bridge/src/android/util/LruCache.java
new file mode 100644
index 0000000..5208606
--- /dev/null
+++ b/tools/layoutlib/bridge/src/android/util/LruCache.java
@@ -0,0 +1,391 @@
+/*
+ * Copyright (C) 2011 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.util;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+/**
+ * BEGIN LAYOUTLIB CHANGE
+ * This is a custom version that doesn't use the non standard LinkedHashMap#eldest.
+ * END LAYOUTLIB CHANGE
+ *
+ * A cache that holds strong references to a limited number of values. Each time
+ * a value is accessed, it is moved to the head of a queue. When a value is
+ * added to a full cache, the value at the end of that queue is evicted and may
+ * become eligible for garbage collection.
+ *
+ * <p>If your cached values hold resources that need to be explicitly released,
+ * override {@link #entryRemoved}.
+ *
+ * <p>If a cache miss should be computed on demand for the corresponding keys,
+ * override {@link #create}. This simplifies the calling code, allowing it to
+ * assume a value will always be returned, even when there's a cache miss.
+ *
+ * <p>By default, the cache size is measured in the number of entries. Override
+ * {@link #sizeOf} to size the cache in different units. For example, this cache
+ * is limited to 4MiB of bitmaps:
+ * <pre>   {@code
+ *   int cacheSize = 4 * 1024 * 1024; // 4MiB
+ *   LruCache<String, Bitmap> bitmapCache = new LruCache<String, Bitmap>(cacheSize) {
+ *       protected int sizeOf(String key, Bitmap value) {
+ *           return value.getByteCount();
+ *       }
+ *   }}</pre>
+ *
+ * <p>This class is thread-safe. Perform multiple cache operations atomically by
+ * synchronizing on the cache: <pre>   {@code
+ *   synchronized (cache) {
+ *     if (cache.get(key) == null) {
+ *         cache.put(key, value);
+ *     }
+ *   }}</pre>
+ *
+ * <p>This class does not allow null to be used as a key or value. A return
+ * value of null from {@link #get}, {@link #put} or {@link #remove} is
+ * unambiguous: the key was not in the cache.
+ *
+ * <p>This class appeared in Android 3.1 (Honeycomb MR1); it's available as part
+ * of <a href="http://developer.android.com/sdk/compatibility-library.html">Android's
+ * Support Package</a> for earlier releases.
+ */
+public class LruCache<K, V> {
+    private final LinkedHashMap<K, V> map;
+
+    /** Size of this cache in units. Not necessarily the number of elements. */
+    private int size;
+    private int maxSize;
+
+    private int putCount;
+    private int createCount;
+    private int evictionCount;
+    private int hitCount;
+    private int missCount;
+
+    /**
+     * @param maxSize for caches that do not override {@link #sizeOf}, this is
+     *     the maximum number of entries in the cache. For all other caches,
+     *     this is the maximum sum of the sizes of the entries in this cache.
+     */
+    public LruCache(int maxSize) {
+        if (maxSize <= 0) {
+            throw new IllegalArgumentException("maxSize <= 0");
+        }
+        this.maxSize = maxSize;
+        this.map = new LinkedHashMap<K, V>(0, 0.75f, true);
+    }
+
+    /**
+     * Sets the size of the cache.
+     * @param maxSize The new maximum size.
+     *
+     * @hide
+     */
+    public void resize(int maxSize) {
+        if (maxSize <= 0) {
+            throw new IllegalArgumentException("maxSize <= 0");
+        }
+
+        synchronized (this) {
+            this.maxSize = maxSize;
+        }
+        trimToSize(maxSize);
+    }
+
+    /**
+     * Returns the value for {@code key} if it exists in the cache or can be
+     * created by {@code #create}. If a value was returned, it is moved to the
+     * head of the queue. This returns null if a value is not cached and cannot
+     * be created.
+     */
+    public final V get(K key) {
+        if (key == null) {
+            throw new NullPointerException("key == null");
+        }
+
+        V mapValue;
+        synchronized (this) {
+            mapValue = map.get(key);
+            if (mapValue != null) {
+                hitCount++;
+                return mapValue;
+            }
+            missCount++;
+        }
+
+        /*
+         * Attempt to create a value. This may take a long time, and the map
+         * may be different when create() returns. If a conflicting value was
+         * added to the map while create() was working, we leave that value in
+         * the map and release the created value.
+         */
+
+        V createdValue = create(key);
+        if (createdValue == null) {
+            return null;
+        }
+
+        synchronized (this) {
+            createCount++;
+            mapValue = map.put(key, createdValue);
+
+            if (mapValue != null) {
+                // There was a conflict so undo that last put
+                map.put(key, mapValue);
+            } else {
+                size += safeSizeOf(key, createdValue);
+            }
+        }
+
+        if (mapValue != null) {
+            entryRemoved(false, key, createdValue, mapValue);
+            return mapValue;
+        } else {
+            trimToSize(maxSize);
+            return createdValue;
+        }
+    }
+
+    /**
+     * Caches {@code value} for {@code key}. The value is moved to the head of
+     * the queue.
+     *
+     * @return the previous value mapped by {@code key}.
+     */
+    public final V put(K key, V value) {
+        if (key == null || value == null) {
+            throw new NullPointerException("key == null || value == null");
+        }
+
+        V previous;
+        synchronized (this) {
+            putCount++;
+            size += safeSizeOf(key, value);
+            previous = map.put(key, value);
+            if (previous != null) {
+                size -= safeSizeOf(key, previous);
+            }
+        }
+
+        if (previous != null) {
+            entryRemoved(false, key, previous, value);
+        }
+
+        trimToSize(maxSize);
+        return previous;
+    }
+
+    /**
+     * @param maxSize the maximum size of the cache before returning. May be -1
+     *     to evict even 0-sized elements.
+     */
+    private void trimToSize(int maxSize) {
+        while (true) {
+            K key;
+            V value;
+            synchronized (this) {
+                if (size < 0 || (map.isEmpty() && size != 0)) {
+                    throw new IllegalStateException(getClass().getName()
+                            + ".sizeOf() is reporting inconsistent results!");
+                }
+
+                if (size <= maxSize) {
+                    break;
+                }
+
+                // BEGIN LAYOUTLIB CHANGE
+                // get the last item in the linked list.
+                // This is not efficient, the goal here is to minimize the changes
+                // compared to the platform version.
+                Map.Entry<K, V> toEvict = null;
+                for (Map.Entry<K, V> entry : map.entrySet()) {
+                    toEvict = entry;
+                }
+                // END LAYOUTLIB CHANGE
+
+                if (toEvict == null) {
+                    break;
+                }
+
+                key = toEvict.getKey();
+                value = toEvict.getValue();
+                map.remove(key);
+                size -= safeSizeOf(key, value);
+                evictionCount++;
+            }
+
+            entryRemoved(true, key, value, null);
+        }
+    }
+
+    /**
+     * Removes the entry for {@code key} if it exists.
+     *
+     * @return the previous value mapped by {@code key}.
+     */
+    public final V remove(K key) {
+        if (key == null) {
+            throw new NullPointerException("key == null");
+        }
+
+        V previous;
+        synchronized (this) {
+            previous = map.remove(key);
+            if (previous != null) {
+                size -= safeSizeOf(key, previous);
+            }
+        }
+
+        if (previous != null) {
+            entryRemoved(false, key, previous, null);
+        }
+
+        return previous;
+    }
+
+    /**
+     * Called for entries that have been evicted or removed. This method is
+     * invoked when a value is evicted to make space, removed by a call to
+     * {@link #remove}, or replaced by a call to {@link #put}. The default
+     * implementation does nothing.
+     *
+     * <p>The method is called without synchronization: other threads may
+     * access the cache while this method is executing.
+     *
+     * @param evicted true if the entry is being removed to make space, false
+     *     if the removal was caused by a {@link #put} or {@link #remove}.
+     * @param newValue the new value for {@code key}, if it exists. If non-null,
+     *     this removal was caused by a {@link #put}. Otherwise it was caused by
+     *     an eviction or a {@link #remove}.
+     */
+    protected void entryRemoved(boolean evicted, K key, V oldValue, V newValue) {}
+
+    /**
+     * Called after a cache miss to compute a value for the corresponding key.
+     * Returns the computed value or null if no value can be computed. The
+     * default implementation returns null.
+     *
+     * <p>The method is called without synchronization: other threads may
+     * access the cache while this method is executing.
+     *
+     * <p>If a value for {@code key} exists in the cache when this method
+     * returns, the created value will be released with {@link #entryRemoved}
+     * and discarded. This can occur when multiple threads request the same key
+     * at the same time (causing multiple values to be created), or when one
+     * thread calls {@link #put} while another is creating a value for the same
+     * key.
+     */
+    protected V create(K key) {
+        return null;
+    }
+
+    private int safeSizeOf(K key, V value) {
+        int result = sizeOf(key, value);
+        if (result < 0) {
+            throw new IllegalStateException("Negative size: " + key + "=" + value);
+        }
+        return result;
+    }
+
+    /**
+     * Returns the size of the entry for {@code key} and {@code value} in
+     * user-defined units.  The default implementation returns 1 so that size
+     * is the number of entries and max size is the maximum number of entries.
+     *
+     * <p>An entry's size must not change while it is in the cache.
+     */
+    protected int sizeOf(K key, V value) {
+        return 1;
+    }
+
+    /**
+     * Clear the cache, calling {@link #entryRemoved} on each removed entry.
+     */
+    public final void evictAll() {
+        trimToSize(-1); // -1 will evict 0-sized elements
+    }
+
+    /**
+     * For caches that do not override {@link #sizeOf}, this returns the number
+     * of entries in the cache. For all other caches, this returns the sum of
+     * the sizes of the entries in this cache.
+     */
+    public synchronized final int size() {
+        return size;
+    }
+
+    /**
+     * For caches that do not override {@link #sizeOf}, this returns the maximum
+     * number of entries in the cache. For all other caches, this returns the
+     * maximum sum of the sizes of the entries in this cache.
+     */
+    public synchronized final int maxSize() {
+        return maxSize;
+    }
+
+    /**
+     * Returns the number of times {@link #get} returned a value that was
+     * already present in the cache.
+     */
+    public synchronized final int hitCount() {
+        return hitCount;
+    }
+
+    /**
+     * Returns the number of times {@link #get} returned null or required a new
+     * value to be created.
+     */
+    public synchronized final int missCount() {
+        return missCount;
+    }
+
+    /**
+     * Returns the number of times {@link #create(Object)} returned a value.
+     */
+    public synchronized final int createCount() {
+        return createCount;
+    }
+
+    /**
+     * Returns the number of times {@link #put} was called.
+     */
+    public synchronized final int putCount() {
+        return putCount;
+    }
+
+    /**
+     * Returns the number of values that have been evicted.
+     */
+    public synchronized final int evictionCount() {
+        return evictionCount;
+    }
+
+    /**
+     * Returns a copy of the current contents of the cache, ordered from least
+     * recently accessed to most recently accessed.
+     */
+    public synchronized final Map<K, V> snapshot() {
+        return new LinkedHashMap<K, V>(map);
+    }
+
+    @Override public synchronized final String toString() {
+        int accesses = hitCount + missCount;
+        int hitPercent = accesses != 0 ? (100 * hitCount / accesses) : 0;
+        return String.format("LruCache[maxSize=%d,hits=%d,misses=%d,hitRate=%d%%]",
+                maxSize, hitCount, missCount, hitPercent);
+    }
+}
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
index f9e48e2..3ae660d 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
@@ -732,14 +732,16 @@
         for (int i = 0 ; i < attrs.length ; i++) {
             Pair<String, Boolean> attribute = attributes.get(i);
 
-            // look for the value in the given style
-            ResourceValue resValue = mRenderResources.findItemInStyle(style, attribute.getFirst(),
-                    attribute.getSecond());
+            if (attribute != null) {
+                // look for the value in the given style
+                ResourceValue resValue = mRenderResources.findItemInStyle(style,
+                        attribute.getFirst(), attribute.getSecond());
 
-            if (resValue != null) {
-                // resolve it to make sure there are no references left.
-                ta.bridgeSetValue(i, attribute.getFirst(), attribute.getSecond(),
-                        mRenderResources.resolveResValue(resValue));
+                if (resValue != null) {
+                    // resolve it to make sure there are no references left.
+                    ta.bridgeSetValue(i, attribute.getFirst(), attribute.getSecond(),
+                            mRenderResources.resolveResValue(resValue));
+                }
             }
         }
 
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/CustomBar.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
index 1817ab5..62c886b 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
@@ -233,7 +233,7 @@
         BridgeContext bridgeContext = (BridgeContext) mContext;
         RenderResources res = bridgeContext.getRenderResources();
 
-        ResourceValue value = res.findItemInTheme(themeEntryName);
+        ResourceValue value = res.findItemInTheme(themeEntryName, true /*isFrameworkAttr*/);
         value = res.resolveResValue(value);
 
         if (value instanceof StyleResourceValue == false) {
@@ -243,24 +243,27 @@
         StyleResourceValue style = (StyleResourceValue) value;
 
         // get the background
-        ResourceValue backgroundValue = res.findItemInStyle(style, "background");
+        ResourceValue backgroundValue = res.findItemInStyle(style, "background",
+                true /*isFrameworkAttr*/);
         backgroundValue = res.resolveResValue(backgroundValue);
         if (backgroundValue != null) {
             Drawable d = ResourceHelper.getDrawable(backgroundValue, bridgeContext);
             if (d != null) {
-                setBackgroundDrawable(d);
+                setBackground(d);
             }
         }
 
         TextView textView = getStyleableTextView();
         if (textView != null) {
             // get the text style
-            ResourceValue textStyleValue = res.findItemInStyle(style, "titleTextStyle");
+            ResourceValue textStyleValue = res.findItemInStyle(style, "titleTextStyle",
+                    true /*isFrameworkAttr*/);
             textStyleValue = res.resolveResValue(textStyleValue);
             if (textStyleValue instanceof StyleResourceValue) {
                 StyleResourceValue textStyle = (StyleResourceValue) textStyleValue;
 
-                ResourceValue textSize = res.findItemInStyle(textStyle, "textSize");
+                ResourceValue textSize = res.findItemInStyle(textStyle, "textSize",
+                        true /*isFrameworkAttr*/);
                 textSize = res.resolveResValue(textSize);
 
                 if (textSize != null) {
@@ -273,7 +276,8 @@
                 }
 
 
-                ResourceValue textColor = res.findItemInStyle(textStyle, "textColor");
+                ResourceValue textColor = res.findItemInStyle(textStyle, "textColor",
+                        true /*isFrameworkAttr*/);
                 textColor = res.resolveResValue(textColor);
                 if (textColor != null) {
                     ColorStateList stateList = ResourceHelper.getColorStateList(
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
index 6840f46..e93b41d 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
@@ -952,7 +952,8 @@
 
     private void findBackground(RenderResources resources) {
         if (getParams().isBgColorOverridden() == false) {
-            mWindowBackground = resources.findItemInTheme("windowBackground");
+            mWindowBackground = resources.findItemInTheme("windowBackground",
+                    true /*isFrameworkAttr*/);
             if (mWindowBackground != null) {
                 mWindowBackground = resources.resolveResValue(mWindowBackground);
             }
@@ -1003,7 +1004,8 @@
             mActionBarSize = DEFAULT_TITLE_BAR_HEIGHT;
 
             // get value from the theme.
-            ResourceValue value = resources.findItemInTheme("actionBarSize");
+            ResourceValue value = resources.findItemInTheme("actionBarSize",
+                    true /*isFrameworkAttr*/);
 
             // resolve it
             value = resources.resolveResValue(value);
@@ -1028,7 +1030,8 @@
                 mTitleBarSize = DEFAULT_TITLE_BAR_HEIGHT;
 
                 // get value from the theme.
-                ResourceValue value = resources.findItemInTheme("windowTitleSize");
+                ResourceValue value = resources.findItemInTheme("windowTitleSize",
+                        true /*isFrameworkAttr*/);
 
                 // resolve it
                 value = resources.resolveResValue(value);
@@ -1068,11 +1071,20 @@
         }
     }
 
+    /**
+     * Looks for a attribute in the current theme. The attribute is in the android
+     * namespace.
+     *
+     * @param resources the render resources
+     * @param name the name of the attribute
+     * @param defaultValue the default value.
+     * @return the value of the attribute or the default one if not found.
+     */
     private boolean getBooleanThemeValue(RenderResources resources,
             String name, boolean defaultValue) {
 
         // get the title bar flag from the current theme.
-        ResourceValue value = resources.findItemInTheme(name);
+        ResourceValue value = resources.findItemInTheme(name, true /*isFrameworkAttr*/);
 
         // because it may reference something else, we resolve it.
         value = resources.resolveResValue(value);
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
index 79e02c8..5109810 100644
--- a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
@@ -116,7 +116,6 @@
         "android.view.View#isInEditMode",
         "android.view.ViewRootImpl#isInTouchMode",
         "android.view.inputmethod.InputMethodManager#getInstance",
-        "android.util.Log#println_native",
         "com.android.internal.util.XmlUtils#convertValueToInt",
         "com.android.internal.textservice.ITextServicesManager$Stub#asInterface",
     };
@@ -185,6 +184,7 @@
     private final static String[] RENAMED_CLASSES =
         new String[] {
             "android.os.ServiceManager",                       "android.os._Original_ServiceManager",
+            "android.util.LruCache",                           "android.util._Original_LruCache",
             "android.view.SurfaceView",                        "android.view._Original_SurfaceView",
             "android.view.accessibility.AccessibilityManager", "android.view.accessibility._Original_AccessibilityManager",
             "android.webkit.WebView",                          "android.webkit._Original_WebView",
diff --git a/wifi/java/android/net/wifi/WifiStateMachine.java b/wifi/java/android/net/wifi/WifiStateMachine.java
index 78c4b6c..15eb9b9 100644
--- a/wifi/java/android/net/wifi/WifiStateMachine.java
+++ b/wifi/java/android/net/wifi/WifiStateMachine.java
@@ -1590,7 +1590,7 @@
 
     /**
      * Record the detailed state of a network.
-     * @param state the new @{code DetailedState}
+     * @param state the new {@code DetailedState}
      */
     private void setNetworkDetailedState(NetworkInfo.DetailedState state) {
         if (DBG) {