package android.support.v4.accessibilityservice {

  public class AccessibilityServiceInfoCompat {
    method public static java.lang.String capabilityToString(int);
    method public static java.lang.String feedbackTypeToString(int);
    method public static java.lang.String flagToString(int);
    method public static boolean getCanRetrieveWindowContent(android.accessibilityservice.AccessibilityServiceInfo);
    method public static int getCapabilities(android.accessibilityservice.AccessibilityServiceInfo);
    method public static java.lang.String getDescription(android.accessibilityservice.AccessibilityServiceInfo);
    method public static java.lang.String getId(android.accessibilityservice.AccessibilityServiceInfo);
    method public static android.content.pm.ResolveInfo getResolveInfo(android.accessibilityservice.AccessibilityServiceInfo);
    method public static java.lang.String getSettingsActivityName(android.accessibilityservice.AccessibilityServiceInfo);
    field public static final int CAPABILITY_CAN_FILTER_KEY_EVENTS = 8; // 0x8
    field public static final int CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 4; // 0x4
    field public static final int CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION = 2; // 0x2
    field public static final int CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT = 1; // 0x1
    field public static final int DEFAULT = 1; // 0x1
    field public static final int FEEDBACK_ALL_MASK = -1; // 0xffffffff
    field public static final int FEEDBACK_BRAILLE = 32; // 0x20
    field public static final int FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 2; // 0x2
    field public static final int FLAG_REPORT_VIEW_IDS = 16; // 0x10
    field public static final int FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 8; // 0x8
    field public static final int FLAG_REQUEST_FILTER_KEY_EVENTS = 32; // 0x20
    field public static final int FLAG_REQUEST_TOUCH_EXPLORATION_MODE = 4; // 0x4
  }

}

package android.support.v4.app {

  public deprecated class ActionBarDrawerToggle implements android.support.v4.widget.DrawerLayout.DrawerListener {
    ctor public ActionBarDrawerToggle(android.app.Activity, android.support.v4.widget.DrawerLayout, int, int, int);
    ctor public ActionBarDrawerToggle(android.app.Activity, android.support.v4.widget.DrawerLayout, boolean, int, int, int);
    method public boolean isDrawerIndicatorEnabled();
    method public void onConfigurationChanged(android.content.res.Configuration);
    method public void onDrawerClosed(android.view.View);
    method public void onDrawerOpened(android.view.View);
    method public void onDrawerSlide(android.view.View, float);
    method public void onDrawerStateChanged(int);
    method public boolean onOptionsItemSelected(android.view.MenuItem);
    method public void setDrawerIndicatorEnabled(boolean);
    method public void setHomeAsUpIndicator(android.graphics.drawable.Drawable);
    method public void setHomeAsUpIndicator(int);
    method public void syncState();
  }

  public static abstract interface ActionBarDrawerToggle.Delegate {
    method public abstract android.graphics.drawable.Drawable getThemeUpIndicator();
    method public abstract void setActionBarDescription(int);
    method public abstract void setActionBarUpIndicator(android.graphics.drawable.Drawable, int);
  }

  public static abstract interface ActionBarDrawerToggle.DelegateProvider {
    method public abstract android.support.v4.app.ActionBarDrawerToggle.Delegate getDrawerToggleDelegate();
  }

  public class ActivityCompat extends android.support.v4.content.ContextCompat {
    ctor public ActivityCompat();
    method public static void finishAffinity(android.app.Activity);
    method public static void finishAfterTransition(android.app.Activity);
    method public static boolean invalidateOptionsMenu(android.app.Activity);
    method public static void postponeEnterTransition(android.app.Activity);
    method public static void setEnterSharedElementCallback(android.app.Activity, android.support.v4.app.SharedElementCallback);
    method public static void setExitSharedElementCallback(android.app.Activity, android.support.v4.app.SharedElementCallback);
    method public static void startActivity(android.app.Activity, android.content.Intent, android.os.Bundle);
    method public static void startActivityForResult(android.app.Activity, android.content.Intent, int, android.os.Bundle);
    method public static void startPostponedEnterTransition(android.app.Activity);
  }

  public final class ActivityManagerCompat {
    method public static boolean isLowRamDevice(android.app.ActivityManager);
  }

  public class ActivityOptionsCompat {
    ctor protected ActivityOptionsCompat();
    method public static android.support.v4.app.ActivityOptionsCompat makeCustomAnimation(android.content.Context, int, int);
    method public static android.support.v4.app.ActivityOptionsCompat makeScaleUpAnimation(android.view.View, int, int, int, int);
    method public static android.support.v4.app.ActivityOptionsCompat makeSceneTransitionAnimation(android.app.Activity, android.view.View, java.lang.String);
    method public static android.support.v4.app.ActivityOptionsCompat makeSceneTransitionAnimation(android.app.Activity, android.support.v4.util.Pair<android.view.View, java.lang.String>...);
    method public static android.support.v4.app.ActivityOptionsCompat makeThumbnailScaleUpAnimation(android.view.View, android.graphics.Bitmap, int, int);
    method public android.os.Bundle toBundle();
    method public void update(android.support.v4.app.ActivityOptionsCompat);
  }

  public class DialogFragment extends android.support.v4.app.Fragment implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener {
    ctor public DialogFragment();
    method public void dismiss();
    method public void dismissAllowingStateLoss();
    method public android.app.Dialog getDialog();
    method public boolean getShowsDialog();
    method public int getTheme();
    method public boolean isCancelable();
    method public void onCancel(android.content.DialogInterface);
    method public android.app.Dialog onCreateDialog(android.os.Bundle);
    method public void onDismiss(android.content.DialogInterface);
    method public void setCancelable(boolean);
    method public void setShowsDialog(boolean);
    method public void setStyle(int, int);
    method public void show(android.support.v4.app.FragmentManager, java.lang.String);
    method public int show(android.support.v4.app.FragmentTransaction, java.lang.String);
    field public static final int STYLE_NORMAL = 0; // 0x0
    field public static final int STYLE_NO_FRAME = 2; // 0x2
    field public static final int STYLE_NO_INPUT = 3; // 0x3
    field public static final int STYLE_NO_TITLE = 1; // 0x1
  }

  public class Fragment implements android.content.ComponentCallbacks android.view.View.OnCreateContextMenuListener {
    ctor public Fragment();
    method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
    method public final boolean equals(java.lang.Object);
    method public final android.support.v4.app.FragmentActivity getActivity();
    method public boolean getAllowEnterTransitionOverlap();
    method public boolean getAllowReturnTransitionOverlap();
    method public final android.os.Bundle getArguments();
    method public final android.support.v4.app.FragmentManager getChildFragmentManager();
    method public java.lang.Object getEnterTransition();
    method public java.lang.Object getExitTransition();
    method public final android.support.v4.app.FragmentManager getFragmentManager();
    method public final int getId();
    method public android.support.v4.app.LoaderManager getLoaderManager();
    method public final android.support.v4.app.Fragment getParentFragment();
    method public java.lang.Object getReenterTransition();
    method public final android.content.res.Resources getResources();
    method public final boolean getRetainInstance();
    method public java.lang.Object getReturnTransition();
    method public java.lang.Object getSharedElementEnterTransition();
    method public java.lang.Object getSharedElementReturnTransition();
    method public final java.lang.String getString(int);
    method public final java.lang.String getString(int, java.lang.Object...);
    method public final java.lang.String getTag();
    method public final android.support.v4.app.Fragment getTargetFragment();
    method public final int getTargetRequestCode();
    method public final java.lang.CharSequence getText(int);
    method public boolean getUserVisibleHint();
    method public android.view.View getView();
    method public final int hashCode();
    method public static android.support.v4.app.Fragment instantiate(android.content.Context, java.lang.String);
    method public static android.support.v4.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle);
    method public final boolean isAdded();
    method public final boolean isDetached();
    method public final boolean isHidden();
    method public final boolean isInLayout();
    method public final boolean isRemoving();
    method public final boolean isResumed();
    method public final boolean isVisible();
    method public void onActivityCreated(android.os.Bundle);
    method public void onActivityResult(int, int, android.content.Intent);
    method public void onAttach(android.app.Activity);
    method public void onConfigurationChanged(android.content.res.Configuration);
    method public boolean onContextItemSelected(android.view.MenuItem);
    method public void onCreate(android.os.Bundle);
    method public android.view.animation.Animation onCreateAnimation(int, boolean, int);
    method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo);
    method public void onCreateOptionsMenu(android.view.Menu, android.view.MenuInflater);
    method public android.view.View onCreateView(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle);
    method public void onDestroy();
    method public void onDestroyOptionsMenu();
    method public void onDestroyView();
    method public void onDetach();
    method public void onHiddenChanged(boolean);
    method public void onInflate(android.app.Activity, android.util.AttributeSet, android.os.Bundle);
    method public void onLowMemory();
    method public boolean onOptionsItemSelected(android.view.MenuItem);
    method public void onOptionsMenuClosed(android.view.Menu);
    method public void onPause();
    method public void onPrepareOptionsMenu(android.view.Menu);
    method public void onResume();
    method public void onSaveInstanceState(android.os.Bundle);
    method public void onStart();
    method public void onStop();
    method public void onViewCreated(android.view.View, android.os.Bundle);
    method public void onViewStateRestored(android.os.Bundle);
    method public void registerForContextMenu(android.view.View);
    method public void setAllowEnterTransitionOverlap(boolean);
    method public void setAllowReturnTransitionOverlap(boolean);
    method public void setArguments(android.os.Bundle);
    method public void setEnterSharedElementCallback(android.support.v4.app.SharedElementCallback);
    method public void setEnterTransition(java.lang.Object);
    method public void setExitSharedElementCallback(android.support.v4.app.SharedElementCallback);
    method public void setExitTransition(java.lang.Object);
    method public void setHasOptionsMenu(boolean);
    method public void setInitialSavedState(android.support.v4.app.Fragment.SavedState);
    method public void setMenuVisibility(boolean);
    method public void setReenterTransition(java.lang.Object);
    method public void setRetainInstance(boolean);
    method public void setReturnTransition(java.lang.Object);
    method public void setSharedElementEnterTransition(java.lang.Object);
    method public void setSharedElementReturnTransition(java.lang.Object);
    method public void setTargetFragment(android.support.v4.app.Fragment, int);
    method public void setUserVisibleHint(boolean);
    method public void startActivity(android.content.Intent);
    method public void startActivityForResult(android.content.Intent, int);
    method public void unregisterForContextMenu(android.view.View);
  }

  public static class Fragment.InstantiationException extends java.lang.RuntimeException {
    ctor public Fragment.InstantiationException(java.lang.String, java.lang.Exception);
  }

  public static class Fragment.SavedState implements android.os.Parcelable {
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.app.Fragment.SavedState> CREATOR;
  }

  public class FragmentActivity extends android.app.Activity {
    ctor public FragmentActivity();
    method public java.lang.Object getLastCustomNonConfigurationInstance();
    method public android.support.v4.app.FragmentManager getSupportFragmentManager();
    method public android.support.v4.app.LoaderManager getSupportLoaderManager();
    method public void onAttachFragment(android.support.v4.app.Fragment);
    method protected void onResumeFragments();
    method public java.lang.Object onRetainCustomNonConfigurationInstance();
    method public final java.lang.Object onRetainNonConfigurationInstance();
    method public void setEnterSharedElementCallback(android.support.v4.app.SharedElementCallback);
    method public void setExitSharedElementCallback(android.support.v4.app.SharedElementCallback);
    method public void startActivityFromFragment(android.support.v4.app.Fragment, android.content.Intent, int);
    method public void supportFinishAfterTransition();
    method public void supportInvalidateOptionsMenu();
    method public void supportPostponeEnterTransition();
    method public void supportStartPostponedEnterTransition();
  }

  public abstract class FragmentManager {
    ctor public FragmentManager();
    method public abstract void addOnBackStackChangedListener(android.support.v4.app.FragmentManager.OnBackStackChangedListener);
    method public abstract android.support.v4.app.FragmentTransaction beginTransaction();
    method public abstract void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
    method public static void enableDebugLogging(boolean);
    method public abstract boolean executePendingTransactions();
    method public abstract android.support.v4.app.Fragment findFragmentById(int);
    method public abstract android.support.v4.app.Fragment findFragmentByTag(java.lang.String);
    method public abstract android.support.v4.app.FragmentManager.BackStackEntry getBackStackEntryAt(int);
    method public abstract int getBackStackEntryCount();
    method public abstract android.support.v4.app.Fragment getFragment(android.os.Bundle, java.lang.String);
    method public abstract boolean isDestroyed();
    method public abstract void popBackStack();
    method public abstract void popBackStack(java.lang.String, int);
    method public abstract void popBackStack(int, int);
    method public abstract boolean popBackStackImmediate();
    method public abstract boolean popBackStackImmediate(java.lang.String, int);
    method public abstract boolean popBackStackImmediate(int, int);
    method public abstract void putFragment(android.os.Bundle, java.lang.String, android.support.v4.app.Fragment);
    method public abstract void removeOnBackStackChangedListener(android.support.v4.app.FragmentManager.OnBackStackChangedListener);
    method public abstract android.support.v4.app.Fragment.SavedState saveFragmentInstanceState(android.support.v4.app.Fragment);
    field public static final int POP_BACK_STACK_INCLUSIVE = 1; // 0x1
  }

  public static abstract interface FragmentManager.BackStackEntry {
    method public abstract java.lang.CharSequence getBreadCrumbShortTitle();
    method public abstract int getBreadCrumbShortTitleRes();
    method public abstract java.lang.CharSequence getBreadCrumbTitle();
    method public abstract int getBreadCrumbTitleRes();
    method public abstract int getId();
    method public abstract java.lang.String getName();
  }

  public static abstract interface FragmentManager.OnBackStackChangedListener {
    method public abstract void onBackStackChanged();
  }

  public abstract class FragmentPagerAdapter extends android.support.v4.view.PagerAdapter {
    ctor public FragmentPagerAdapter(android.support.v4.app.FragmentManager);
    method public abstract android.support.v4.app.Fragment getItem(int);
    method public long getItemId(int);
    method public boolean isViewFromObject(android.view.View, java.lang.Object);
  }

  public abstract class FragmentStatePagerAdapter extends android.support.v4.view.PagerAdapter {
    ctor public FragmentStatePagerAdapter(android.support.v4.app.FragmentManager);
    method public abstract android.support.v4.app.Fragment getItem(int);
    method public boolean isViewFromObject(android.view.View, java.lang.Object);
  }

  public class FragmentTabHost extends android.widget.TabHost implements android.widget.TabHost.OnTabChangeListener {
    ctor public FragmentTabHost(android.content.Context);
    ctor public FragmentTabHost(android.content.Context, android.util.AttributeSet);
    method public void addTab(android.widget.TabHost.TabSpec, java.lang.Class<?>, android.os.Bundle);
    method public void onTabChanged(java.lang.String);
    method public void setup(android.content.Context, android.support.v4.app.FragmentManager);
    method public void setup(android.content.Context, android.support.v4.app.FragmentManager, int);
  }

  public abstract class FragmentTransaction {
    ctor public FragmentTransaction();
    method public abstract android.support.v4.app.FragmentTransaction add(android.support.v4.app.Fragment, java.lang.String);
    method public abstract android.support.v4.app.FragmentTransaction add(int, android.support.v4.app.Fragment);
    method public abstract android.support.v4.app.FragmentTransaction add(int, android.support.v4.app.Fragment, java.lang.String);
    method public abstract android.support.v4.app.FragmentTransaction addSharedElement(android.view.View, java.lang.String);
    method public abstract android.support.v4.app.FragmentTransaction addToBackStack(java.lang.String);
    method public abstract android.support.v4.app.FragmentTransaction attach(android.support.v4.app.Fragment);
    method public abstract int commit();
    method public abstract int commitAllowingStateLoss();
    method public abstract android.support.v4.app.FragmentTransaction detach(android.support.v4.app.Fragment);
    method public abstract android.support.v4.app.FragmentTransaction disallowAddToBackStack();
    method public abstract android.support.v4.app.FragmentTransaction hide(android.support.v4.app.Fragment);
    method public abstract boolean isAddToBackStackAllowed();
    method public abstract boolean isEmpty();
    method public abstract android.support.v4.app.FragmentTransaction remove(android.support.v4.app.Fragment);
    method public abstract android.support.v4.app.FragmentTransaction replace(int, android.support.v4.app.Fragment);
    method public abstract android.support.v4.app.FragmentTransaction replace(int, android.support.v4.app.Fragment, java.lang.String);
    method public abstract android.support.v4.app.FragmentTransaction setBreadCrumbShortTitle(int);
    method public abstract android.support.v4.app.FragmentTransaction setBreadCrumbShortTitle(java.lang.CharSequence);
    method public abstract android.support.v4.app.FragmentTransaction setBreadCrumbTitle(int);
    method public abstract android.support.v4.app.FragmentTransaction setBreadCrumbTitle(java.lang.CharSequence);
    method public abstract android.support.v4.app.FragmentTransaction setCustomAnimations(int, int);
    method public abstract android.support.v4.app.FragmentTransaction setCustomAnimations(int, int, int, int);
    method public abstract android.support.v4.app.FragmentTransaction setTransition(int);
    method public abstract android.support.v4.app.FragmentTransaction setTransitionStyle(int);
    method public abstract android.support.v4.app.FragmentTransaction show(android.support.v4.app.Fragment);
    field public static final int TRANSIT_ENTER_MASK = 4096; // 0x1000
    field public static final int TRANSIT_EXIT_MASK = 8192; // 0x2000
    field public static final int TRANSIT_FRAGMENT_CLOSE = 8194; // 0x2002
    field public static final int TRANSIT_FRAGMENT_FADE = 4099; // 0x1003
    field public static final int TRANSIT_FRAGMENT_OPEN = 4097; // 0x1001
    field public static final int TRANSIT_NONE = 0; // 0x0
    field public static final int TRANSIT_UNSET = -1; // 0xffffffff
  }

  public class ListFragment extends android.support.v4.app.Fragment {
    ctor public ListFragment();
    method public android.widget.ListAdapter getListAdapter();
    method public android.widget.ListView getListView();
    method public long getSelectedItemId();
    method public int getSelectedItemPosition();
    method public void onListItemClick(android.widget.ListView, android.view.View, int, long);
    method public void setEmptyText(java.lang.CharSequence);
    method public void setListAdapter(android.widget.ListAdapter);
    method public void setListShown(boolean);
    method public void setListShownNoAnimation(boolean);
    method public void setSelection(int);
  }

  public abstract class LoaderManager {
    ctor public LoaderManager();
    method public abstract void destroyLoader(int);
    method public abstract void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
    method public static void enableDebugLogging(boolean);
    method public abstract android.support.v4.content.Loader<D> getLoader(int);
    method public boolean hasRunningLoaders();
    method public abstract android.support.v4.content.Loader<D> initLoader(int, android.os.Bundle, android.support.v4.app.LoaderManager.LoaderCallbacks<D>);
    method public abstract android.support.v4.content.Loader<D> restartLoader(int, android.os.Bundle, android.support.v4.app.LoaderManager.LoaderCallbacks<D>);
  }

  public static abstract interface LoaderManager.LoaderCallbacks {
    method public abstract android.support.v4.content.Loader<D> onCreateLoader(int, android.os.Bundle);
    method public abstract void onLoadFinished(android.support.v4.content.Loader<D>, D);
    method public abstract void onLoaderReset(android.support.v4.content.Loader<D>);
  }

  public class NavUtils {
    method public static android.content.Intent getParentActivityIntent(android.app.Activity);
    method public static android.content.Intent getParentActivityIntent(android.content.Context, java.lang.Class<?>) throws android.content.pm.PackageManager.NameNotFoundException;
    method public static android.content.Intent getParentActivityIntent(android.content.Context, android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException;
    method public static java.lang.String getParentActivityName(android.app.Activity);
    method public static java.lang.String getParentActivityName(android.content.Context, android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException;
    method public static void navigateUpFromSameTask(android.app.Activity);
    method public static void navigateUpTo(android.app.Activity, android.content.Intent);
    method public static boolean shouldUpRecreateTask(android.app.Activity, android.content.Intent);
    field public static final java.lang.String PARENT_ACTIVITY = "android.support.PARENT_ACTIVITY";
  }

  public class NotificationCompat {
    ctor public NotificationCompat();
    method public static android.support.v4.app.NotificationCompat.Action getAction(android.app.Notification, int);
    method public static int getActionCount(android.app.Notification);
    method public static java.lang.String getCategory(android.app.Notification);
    method public static android.os.Bundle getExtras(android.app.Notification);
    method public static java.lang.String getGroup(android.app.Notification);
    method public static boolean getLocalOnly(android.app.Notification);
    method public static java.lang.String getSortKey(android.app.Notification);
    method public static boolean isGroupSummary(android.app.Notification);
    field public static final java.lang.String CATEGORY_ALARM = "alarm";
    field public static final java.lang.String CATEGORY_CALL = "call";
    field public static final java.lang.String CATEGORY_EMAIL = "email";
    field public static final java.lang.String CATEGORY_ERROR = "err";
    field public static final java.lang.String CATEGORY_EVENT = "event";
    field public static final java.lang.String CATEGORY_MESSAGE = "msg";
    field public static final java.lang.String CATEGORY_PROGRESS = "progress";
    field public static final java.lang.String CATEGORY_PROMO = "promo";
    field public static final java.lang.String CATEGORY_RECOMMENDATION = "recommendation";
    field public static final java.lang.String CATEGORY_SERVICE = "service";
    field public static final java.lang.String CATEGORY_SOCIAL = "social";
    field public static final java.lang.String CATEGORY_STATUS = "status";
    field public static final java.lang.String CATEGORY_SYSTEM = "sys";
    field public static final java.lang.String CATEGORY_TRANSPORT = "transport";
    field public static final int COLOR_DEFAULT = 0; // 0x0
    field public static final int DEFAULT_ALL = -1; // 0xffffffff
    field public static final int DEFAULT_LIGHTS = 4; // 0x4
    field public static final int DEFAULT_SOUND = 1; // 0x1
    field public static final int DEFAULT_VIBRATE = 2; // 0x2
    field public static final java.lang.String EXTRA_BACKGROUND_IMAGE_URI = "android.backgroundImageUri";
    field public static final java.lang.String EXTRA_BIG_TEXT = "android.bigText";
    field public static final java.lang.String EXTRA_COMPACT_ACTIONS = "android.compactActions";
    field public static final java.lang.String EXTRA_INFO_TEXT = "android.infoText";
    field public static final java.lang.String EXTRA_LARGE_ICON = "android.largeIcon";
    field public static final java.lang.String EXTRA_LARGE_ICON_BIG = "android.largeIcon.big";
    field public static final java.lang.String EXTRA_MEDIA_SESSION = "android.mediaSession";
    field public static final java.lang.String EXTRA_PEOPLE = "android.people";
    field public static final java.lang.String EXTRA_PICTURE = "android.picture";
    field public static final java.lang.String EXTRA_PROGRESS = "android.progress";
    field public static final java.lang.String EXTRA_PROGRESS_INDETERMINATE = "android.progressIndeterminate";
    field public static final java.lang.String EXTRA_PROGRESS_MAX = "android.progressMax";
    field public static final java.lang.String EXTRA_SHOW_CHRONOMETER = "android.showChronometer";
    field public static final java.lang.String EXTRA_SHOW_WHEN = "android.showWhen";
    field public static final java.lang.String EXTRA_SMALL_ICON = "android.icon";
    field public static final java.lang.String EXTRA_SUB_TEXT = "android.subText";
    field public static final java.lang.String EXTRA_SUMMARY_TEXT = "android.summaryText";
    field public static final java.lang.String EXTRA_TEMPLATE = "android.template";
    field public static final java.lang.String EXTRA_TEXT = "android.text";
    field public static final java.lang.String EXTRA_TEXT_LINES = "android.textLines";
    field public static final java.lang.String EXTRA_TITLE = "android.title";
    field public static final java.lang.String EXTRA_TITLE_BIG = "android.title.big";
    field public static final int FLAG_AUTO_CANCEL = 16; // 0x10
    field public static final int FLAG_FOREGROUND_SERVICE = 64; // 0x40
    field public static final int FLAG_GROUP_SUMMARY = 512; // 0x200
    field public static final deprecated int FLAG_HIGH_PRIORITY = 128; // 0x80
    field public static final int FLAG_INSISTENT = 4; // 0x4
    field public static final int FLAG_LOCAL_ONLY = 256; // 0x100
    field public static final int FLAG_NO_CLEAR = 32; // 0x20
    field public static final int FLAG_ONGOING_EVENT = 2; // 0x2
    field public static final int FLAG_ONLY_ALERT_ONCE = 8; // 0x8
    field public static final int FLAG_SHOW_LIGHTS = 1; // 0x1
    field public static final int PRIORITY_DEFAULT = 0; // 0x0
    field public static final int PRIORITY_HIGH = 1; // 0x1
    field public static final int PRIORITY_LOW = -1; // 0xffffffff
    field public static final int PRIORITY_MAX = 2; // 0x2
    field public static final int PRIORITY_MIN = -2; // 0xfffffffe
    field public static final int STREAM_DEFAULT = -1; // 0xffffffff
    field public static final int VISIBILITY_PRIVATE = 0; // 0x0
    field public static final int VISIBILITY_PUBLIC = 1; // 0x1
    field public static final int VISIBILITY_SECRET = -1; // 0xffffffff
  }

  public static class NotificationCompat.Action extends android.support.v4.app.NotificationCompatBase.Action {
    ctor public NotificationCompat.Action(int, java.lang.CharSequence, android.app.PendingIntent);
    method protected android.app.PendingIntent getActionIntent();
    method public android.os.Bundle getExtras();
    method protected int getIcon();
    method public android.support.v4.app.RemoteInput[] getRemoteInputs();
    method protected java.lang.CharSequence getTitle();
    field public android.app.PendingIntent actionIntent;
    field public int icon;
    field public java.lang.CharSequence title;
  }

  public static final class NotificationCompat.Action.Builder {
    ctor public NotificationCompat.Action.Builder(int, java.lang.CharSequence, android.app.PendingIntent);
    ctor public NotificationCompat.Action.Builder(android.support.v4.app.NotificationCompat.Action);
    method public android.support.v4.app.NotificationCompat.Action.Builder addExtras(android.os.Bundle);
    method public android.support.v4.app.NotificationCompat.Action.Builder addRemoteInput(android.support.v4.app.RemoteInput);
    method public android.support.v4.app.NotificationCompat.Action build();
    method public android.support.v4.app.NotificationCompat.Action.Builder extend(android.support.v4.app.NotificationCompat.Action.Extender);
    method public android.os.Bundle getExtras();
  }

  public static abstract interface NotificationCompat.Action.Extender {
    method public abstract android.support.v4.app.NotificationCompat.Action.Builder extend(android.support.v4.app.NotificationCompat.Action.Builder);
  }

  public static final class NotificationCompat.Action.WearableExtender implements android.support.v4.app.NotificationCompat.Action.Extender {
    ctor public NotificationCompat.Action.WearableExtender();
    ctor public NotificationCompat.Action.WearableExtender(android.support.v4.app.NotificationCompat.Action);
    method public android.support.v4.app.NotificationCompat.Action.WearableExtender clone();
    method public android.support.v4.app.NotificationCompat.Action.Builder extend(android.support.v4.app.NotificationCompat.Action.Builder);
    method public java.lang.CharSequence getCancelLabel();
    method public java.lang.CharSequence getConfirmLabel();
    method public java.lang.CharSequence getInProgressLabel();
    method public boolean isAvailableOffline();
    method public android.support.v4.app.NotificationCompat.Action.WearableExtender setAvailableOffline(boolean);
    method public android.support.v4.app.NotificationCompat.Action.WearableExtender setCancelLabel(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Action.WearableExtender setConfirmLabel(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Action.WearableExtender setInProgressLabel(java.lang.CharSequence);
  }

  public static class NotificationCompat.BigPictureStyle extends android.support.v4.app.NotificationCompat.Style {
    ctor public NotificationCompat.BigPictureStyle();
    ctor public NotificationCompat.BigPictureStyle(android.support.v4.app.NotificationCompat.Builder);
    method public android.support.v4.app.NotificationCompat.BigPictureStyle bigLargeIcon(android.graphics.Bitmap);
    method public android.support.v4.app.NotificationCompat.BigPictureStyle bigPicture(android.graphics.Bitmap);
    method public android.support.v4.app.NotificationCompat.BigPictureStyle setBigContentTitle(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.BigPictureStyle setSummaryText(java.lang.CharSequence);
  }

  public static class NotificationCompat.BigTextStyle extends android.support.v4.app.NotificationCompat.Style {
    ctor public NotificationCompat.BigTextStyle();
    ctor public NotificationCompat.BigTextStyle(android.support.v4.app.NotificationCompat.Builder);
    method public android.support.v4.app.NotificationCompat.BigTextStyle bigText(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.BigTextStyle setBigContentTitle(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.BigTextStyle setSummaryText(java.lang.CharSequence);
  }

  public static class NotificationCompat.Builder {
    ctor public NotificationCompat.Builder(android.content.Context);
    method public android.support.v4.app.NotificationCompat.Builder addAction(int, java.lang.CharSequence, android.app.PendingIntent);
    method public android.support.v4.app.NotificationCompat.Builder addAction(android.support.v4.app.NotificationCompat.Action);
    method public android.support.v4.app.NotificationCompat.Builder addExtras(android.os.Bundle);
    method public android.support.v4.app.NotificationCompat.Builder addPerson(java.lang.String);
    method public android.app.Notification build();
    method public android.support.v4.app.NotificationCompat.Builder extend(android.support.v4.app.NotificationCompat.Extender);
    method public android.os.Bundle getExtras();
    method public deprecated android.app.Notification getNotification();
    method protected static java.lang.CharSequence limitCharSequenceLength(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Builder setAutoCancel(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setCategory(java.lang.String);
    method public android.support.v4.app.NotificationCompat.Builder setColor(int);
    method public android.support.v4.app.NotificationCompat.Builder setContent(android.widget.RemoteViews);
    method public android.support.v4.app.NotificationCompat.Builder setContentInfo(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Builder setContentIntent(android.app.PendingIntent);
    method public android.support.v4.app.NotificationCompat.Builder setContentText(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Builder setContentTitle(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Builder setDefaults(int);
    method public android.support.v4.app.NotificationCompat.Builder setDeleteIntent(android.app.PendingIntent);
    method public android.support.v4.app.NotificationCompat.Builder setExtras(android.os.Bundle);
    method public android.support.v4.app.NotificationCompat.Builder setFullScreenIntent(android.app.PendingIntent, boolean);
    method public android.support.v4.app.NotificationCompat.Builder setGroup(java.lang.String);
    method public android.support.v4.app.NotificationCompat.Builder setGroupSummary(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setLargeIcon(android.graphics.Bitmap);
    method public android.support.v4.app.NotificationCompat.Builder setLights(int, int, int);
    method public android.support.v4.app.NotificationCompat.Builder setLocalOnly(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setNumber(int);
    method public android.support.v4.app.NotificationCompat.Builder setOngoing(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setOnlyAlertOnce(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setPriority(int);
    method public android.support.v4.app.NotificationCompat.Builder setProgress(int, int, boolean);
    method public android.support.v4.app.NotificationCompat.Builder setPublicVersion(android.app.Notification);
    method public android.support.v4.app.NotificationCompat.Builder setShowWhen(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setSmallIcon(int);
    method public android.support.v4.app.NotificationCompat.Builder setSmallIcon(int, int);
    method public android.support.v4.app.NotificationCompat.Builder setSortKey(java.lang.String);
    method public android.support.v4.app.NotificationCompat.Builder setSound(android.net.Uri);
    method public android.support.v4.app.NotificationCompat.Builder setSound(android.net.Uri, int);
    method public android.support.v4.app.NotificationCompat.Builder setStyle(android.support.v4.app.NotificationCompat.Style);
    method public android.support.v4.app.NotificationCompat.Builder setSubText(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Builder setTicker(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.Builder setTicker(java.lang.CharSequence, android.widget.RemoteViews);
    method public android.support.v4.app.NotificationCompat.Builder setUsesChronometer(boolean);
    method public android.support.v4.app.NotificationCompat.Builder setVibrate(long[]);
    method public android.support.v4.app.NotificationCompat.Builder setVisibility(int);
    method public android.support.v4.app.NotificationCompat.Builder setWhen(long);
    field public java.util.ArrayList<java.lang.String> mPeople;
  }

  public static final class NotificationCompat.CarExtender implements android.support.v4.app.NotificationCompat.Extender {
    ctor public NotificationCompat.CarExtender();
    ctor public NotificationCompat.CarExtender(android.app.Notification);
    method public android.support.v4.app.NotificationCompat.Builder extend(android.support.v4.app.NotificationCompat.Builder);
    method public int getColor();
    method public android.graphics.Bitmap getLargeIcon();
    method public android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation getUnreadConversation();
    method public android.support.v4.app.NotificationCompat.CarExtender setColor(int);
    method public android.support.v4.app.NotificationCompat.CarExtender setLargeIcon(android.graphics.Bitmap);
    method public android.support.v4.app.NotificationCompat.CarExtender setUnreadConversation(android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation);
  }

  public static class NotificationCompat.CarExtender.UnreadConversation extends android.support.v4.app.NotificationCompatBase.UnreadConversation {
    method public long getLatestTimestamp();
    method public java.lang.String[] getMessages();
    method public java.lang.String getParticipant();
    method public java.lang.String[] getParticipants();
    method public android.app.PendingIntent getReadPendingIntent();
    method public android.support.v4.app.RemoteInput getRemoteInput();
    method public android.app.PendingIntent getReplyPendingIntent();
  }

  public static class NotificationCompat.CarExtender.UnreadConversation.Builder {
    ctor public NotificationCompat.CarExtender.UnreadConversation.Builder(java.lang.String);
    method public android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation.Builder addMessage(java.lang.String);
    method public android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation build();
    method public android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation.Builder setLatestTimestamp(long);
    method public android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation.Builder setReadPendingIntent(android.app.PendingIntent);
    method public android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation.Builder setReplyAction(android.app.PendingIntent, android.support.v4.app.RemoteInput);
  }

  public static abstract interface NotificationCompat.Extender {
    method public abstract android.support.v4.app.NotificationCompat.Builder extend(android.support.v4.app.NotificationCompat.Builder);
  }

  public static class NotificationCompat.InboxStyle extends android.support.v4.app.NotificationCompat.Style {
    ctor public NotificationCompat.InboxStyle();
    ctor public NotificationCompat.InboxStyle(android.support.v4.app.NotificationCompat.Builder);
    method public android.support.v4.app.NotificationCompat.InboxStyle addLine(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.InboxStyle setBigContentTitle(java.lang.CharSequence);
    method public android.support.v4.app.NotificationCompat.InboxStyle setSummaryText(java.lang.CharSequence);
  }

  public static abstract class NotificationCompat.Style {
    ctor public NotificationCompat.Style();
    method public android.app.Notification build();
    method public void setBuilder(android.support.v4.app.NotificationCompat.Builder);
  }

  public static final class NotificationCompat.WearableExtender implements android.support.v4.app.NotificationCompat.Extender {
    ctor public NotificationCompat.WearableExtender();
    ctor public NotificationCompat.WearableExtender(android.app.Notification);
    method public android.support.v4.app.NotificationCompat.WearableExtender addAction(android.support.v4.app.NotificationCompat.Action);
    method public android.support.v4.app.NotificationCompat.WearableExtender addActions(java.util.List<android.support.v4.app.NotificationCompat.Action>);
    method public android.support.v4.app.NotificationCompat.WearableExtender addPage(android.app.Notification);
    method public android.support.v4.app.NotificationCompat.WearableExtender addPages(java.util.List<android.app.Notification>);
    method public android.support.v4.app.NotificationCompat.WearableExtender clearActions();
    method public android.support.v4.app.NotificationCompat.WearableExtender clearPages();
    method public android.support.v4.app.NotificationCompat.WearableExtender clone();
    method public android.support.v4.app.NotificationCompat.Builder extend(android.support.v4.app.NotificationCompat.Builder);
    method public java.util.List<android.support.v4.app.NotificationCompat.Action> getActions();
    method public android.graphics.Bitmap getBackground();
    method public int getContentAction();
    method public int getContentIcon();
    method public int getContentIconGravity();
    method public boolean getContentIntentAvailableOffline();
    method public int getCustomContentHeight();
    method public int getCustomSizePreset();
    method public android.app.PendingIntent getDisplayIntent();
    method public int getGravity();
    method public boolean getHintAvoidBackgroundClipping();
    method public boolean getHintHideIcon();
    method public int getHintScreenTimeout();
    method public boolean getHintShowBackgroundOnly();
    method public java.util.List<android.app.Notification> getPages();
    method public boolean getStartScrollBottom();
    method public android.support.v4.app.NotificationCompat.WearableExtender setBackground(android.graphics.Bitmap);
    method public android.support.v4.app.NotificationCompat.WearableExtender setContentAction(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setContentIcon(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setContentIconGravity(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setContentIntentAvailableOffline(boolean);
    method public android.support.v4.app.NotificationCompat.WearableExtender setCustomContentHeight(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setCustomSizePreset(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setDisplayIntent(android.app.PendingIntent);
    method public android.support.v4.app.NotificationCompat.WearableExtender setGravity(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setHintAvoidBackgroundClipping(boolean);
    method public android.support.v4.app.NotificationCompat.WearableExtender setHintHideIcon(boolean);
    method public android.support.v4.app.NotificationCompat.WearableExtender setHintScreenTimeout(int);
    method public android.support.v4.app.NotificationCompat.WearableExtender setHintShowBackgroundOnly(boolean);
    method public android.support.v4.app.NotificationCompat.WearableExtender setStartScrollBottom(boolean);
    field public static final int SCREEN_TIMEOUT_LONG = -1; // 0xffffffff
    field public static final int SCREEN_TIMEOUT_SHORT = 0; // 0x0
    field public static final int SIZE_DEFAULT = 0; // 0x0
    field public static final int SIZE_FULL_SCREEN = 5; // 0x5
    field public static final int SIZE_LARGE = 4; // 0x4
    field public static final int SIZE_MEDIUM = 3; // 0x3
    field public static final int SIZE_SMALL = 2; // 0x2
    field public static final int SIZE_XSMALL = 1; // 0x1
    field public static final int UNSET_ACTION_INDEX = -1; // 0xffffffff
  }

   class NotificationCompatBase {
  }

  public static abstract class NotificationCompatBase.Action {
    ctor public NotificationCompatBase.Action();
    method protected abstract android.app.PendingIntent getActionIntent();
    method protected abstract android.os.Bundle getExtras();
    method protected abstract int getIcon();
    method protected abstract android.support.v4.app.RemoteInputCompatBase.RemoteInput[] getRemoteInputs();
    method protected abstract java.lang.CharSequence getTitle();
  }

  public static abstract class NotificationCompatBase.UnreadConversation {
    ctor public NotificationCompatBase.UnreadConversation();
  }

  public final class NotificationCompatExtras {
    field public static final java.lang.String EXTRA_ACTION_EXTRAS = "android.support.actionExtras";
    field public static final java.lang.String EXTRA_GROUP_KEY = "android.support.groupKey";
    field public static final java.lang.String EXTRA_GROUP_SUMMARY = "android.support.isGroupSummary";
    field public static final java.lang.String EXTRA_LOCAL_ONLY = "android.support.localOnly";
    field public static final java.lang.String EXTRA_REMOTE_INPUTS = "android.support.remoteInputs";
    field public static final java.lang.String EXTRA_SORT_KEY = "android.support.sortKey";
  }

  public abstract class NotificationCompatSideChannelService extends android.app.Service {
    ctor public NotificationCompatSideChannelService();
    method public abstract void cancel(java.lang.String, int, java.lang.String);
    method public abstract void cancelAll(java.lang.String);
    method public abstract void notify(java.lang.String, int, java.lang.String, android.app.Notification);
    method public android.os.IBinder onBind(android.content.Intent);
  }

  public class NotificationManagerCompat {
    method public void cancel(int);
    method public void cancel(java.lang.String, int);
    method public void cancelAll();
    method public static android.support.v4.app.NotificationManagerCompat from(android.content.Context);
    method public static java.util.Set<java.lang.String> getEnabledListenerPackages(android.content.Context);
    method public void notify(int, android.app.Notification);
    method public void notify(java.lang.String, int, android.app.Notification);
    field public static final java.lang.String ACTION_BIND_SIDE_CHANNEL = "android.support.BIND_NOTIFICATION_SIDE_CHANNEL";
    field public static final java.lang.String EXTRA_USE_SIDE_CHANNEL = "android.support.useSideChannel";
  }

  public class RemoteInput extends android.support.v4.app.RemoteInputCompatBase.RemoteInput {
    method public static void addResultsToIntent(android.support.v4.app.RemoteInput[], android.content.Intent, android.os.Bundle);
    method public boolean getAllowFreeFormInput();
    method public java.lang.CharSequence[] getChoices();
    method public android.os.Bundle getExtras();
    method public java.lang.CharSequence getLabel();
    method public java.lang.String getResultKey();
    method public static android.os.Bundle getResultsFromIntent(android.content.Intent);
    field public static final java.lang.String EXTRA_RESULTS_DATA = "android.remoteinput.resultsData";
    field public static final java.lang.String RESULTS_CLIP_LABEL = "android.remoteinput.results";
  }

  public static final class RemoteInput.Builder {
    ctor public RemoteInput.Builder(java.lang.String);
    method public android.support.v4.app.RemoteInput.Builder addExtras(android.os.Bundle);
    method public android.support.v4.app.RemoteInput build();
    method public android.os.Bundle getExtras();
    method public android.support.v4.app.RemoteInput.Builder setAllowFreeFormInput(boolean);
    method public android.support.v4.app.RemoteInput.Builder setChoices(java.lang.CharSequence[]);
    method public android.support.v4.app.RemoteInput.Builder setLabel(java.lang.CharSequence);
  }

   class RemoteInputCompatBase {
  }

  public static abstract class RemoteInputCompatBase.RemoteInput {
    ctor public RemoteInputCompatBase.RemoteInput();
    method protected abstract boolean getAllowFreeFormInput();
    method protected abstract java.lang.CharSequence[] getChoices();
    method protected abstract android.os.Bundle getExtras();
    method protected abstract java.lang.CharSequence getLabel();
    method protected abstract java.lang.String getResultKey();
  }

  public class ServiceCompat {
    field public static final int START_STICKY = 1; // 0x1
  }

  public class ShareCompat {
    ctor public ShareCompat();
    method public static void configureMenuItem(android.view.MenuItem, android.support.v4.app.ShareCompat.IntentBuilder);
    method public static void configureMenuItem(android.view.Menu, int, android.support.v4.app.ShareCompat.IntentBuilder);
    method public static android.content.ComponentName getCallingActivity(android.app.Activity);
    method public static java.lang.String getCallingPackage(android.app.Activity);
    field public static final java.lang.String EXTRA_CALLING_ACTIVITY = "android.support.v4.app.EXTRA_CALLING_ACTIVITY";
    field public static final java.lang.String EXTRA_CALLING_PACKAGE = "android.support.v4.app.EXTRA_CALLING_PACKAGE";
  }

  public static class ShareCompat.IntentBuilder {
    method public android.support.v4.app.ShareCompat.IntentBuilder addEmailBcc(java.lang.String);
    method public android.support.v4.app.ShareCompat.IntentBuilder addEmailBcc(java.lang.String[]);
    method public android.support.v4.app.ShareCompat.IntentBuilder addEmailCc(java.lang.String);
    method public android.support.v4.app.ShareCompat.IntentBuilder addEmailCc(java.lang.String[]);
    method public android.support.v4.app.ShareCompat.IntentBuilder addEmailTo(java.lang.String);
    method public android.support.v4.app.ShareCompat.IntentBuilder addEmailTo(java.lang.String[]);
    method public android.support.v4.app.ShareCompat.IntentBuilder addStream(android.net.Uri);
    method public android.content.Intent createChooserIntent();
    method public static android.support.v4.app.ShareCompat.IntentBuilder from(android.app.Activity);
    method public android.content.Intent getIntent();
    method public android.support.v4.app.ShareCompat.IntentBuilder setChooserTitle(java.lang.CharSequence);
    method public android.support.v4.app.ShareCompat.IntentBuilder setChooserTitle(int);
    method public android.support.v4.app.ShareCompat.IntentBuilder setEmailBcc(java.lang.String[]);
    method public android.support.v4.app.ShareCompat.IntentBuilder setEmailCc(java.lang.String[]);
    method public android.support.v4.app.ShareCompat.IntentBuilder setEmailTo(java.lang.String[]);
    method public android.support.v4.app.ShareCompat.IntentBuilder setHtmlText(java.lang.String);
    method public android.support.v4.app.ShareCompat.IntentBuilder setStream(android.net.Uri);
    method public android.support.v4.app.ShareCompat.IntentBuilder setSubject(java.lang.String);
    method public android.support.v4.app.ShareCompat.IntentBuilder setText(java.lang.CharSequence);
    method public android.support.v4.app.ShareCompat.IntentBuilder setType(java.lang.String);
    method public void startChooser();
  }

  public static class ShareCompat.IntentReader {
    method public static android.support.v4.app.ShareCompat.IntentReader from(android.app.Activity);
    method public android.content.ComponentName getCallingActivity();
    method public android.graphics.drawable.Drawable getCallingActivityIcon();
    method public android.graphics.drawable.Drawable getCallingApplicationIcon();
    method public java.lang.CharSequence getCallingApplicationLabel();
    method public java.lang.String getCallingPackage();
    method public java.lang.String[] getEmailBcc();
    method public java.lang.String[] getEmailCc();
    method public java.lang.String[] getEmailTo();
    method public java.lang.String getHtmlText();
    method public android.net.Uri getStream();
    method public android.net.Uri getStream(int);
    method public int getStreamCount();
    method public java.lang.String getSubject();
    method public java.lang.CharSequence getText();
    method public java.lang.String getType();
    method public boolean isMultipleShare();
    method public boolean isShareIntent();
    method public boolean isSingleShare();
  }

  public abstract class SharedElementCallback {
    ctor public SharedElementCallback();
    method public android.os.Parcelable onCaptureSharedElementSnapshot(android.view.View, android.graphics.Matrix, android.graphics.RectF);
    method public android.view.View onCreateSnapshotView(android.content.Context, android.os.Parcelable);
    method public void onMapSharedElements(java.util.List<java.lang.String>, java.util.Map<java.lang.String, android.view.View>);
    method public void onRejectSharedElements(java.util.List<android.view.View>);
    method public void onSharedElementEnd(java.util.List<java.lang.String>, java.util.List<android.view.View>, java.util.List<android.view.View>);
    method public void onSharedElementStart(java.util.List<java.lang.String>, java.util.List<android.view.View>, java.util.List<android.view.View>);
  }

  public class TaskStackBuilder implements java.lang.Iterable {
    method public android.support.v4.app.TaskStackBuilder addNextIntent(android.content.Intent);
    method public android.support.v4.app.TaskStackBuilder addNextIntentWithParentStack(android.content.Intent);
    method public android.support.v4.app.TaskStackBuilder addParentStack(android.app.Activity);
    method public android.support.v4.app.TaskStackBuilder addParentStack(java.lang.Class<?>);
    method public android.support.v4.app.TaskStackBuilder addParentStack(android.content.ComponentName);
    method public static android.support.v4.app.TaskStackBuilder create(android.content.Context);
    method public android.content.Intent editIntentAt(int);
    method public static deprecated android.support.v4.app.TaskStackBuilder from(android.content.Context);
    method public deprecated android.content.Intent getIntent(int);
    method public int getIntentCount();
    method public android.content.Intent[] getIntents();
    method public android.app.PendingIntent getPendingIntent(int, int);
    method public android.app.PendingIntent getPendingIntent(int, int, android.os.Bundle);
    method public deprecated java.util.Iterator<android.content.Intent> iterator();
    method public void startActivities();
    method public void startActivities(android.os.Bundle);
  }

  public static abstract interface TaskStackBuilder.SupportParentable {
    method public abstract android.content.Intent getSupportParentActivityIntent();
  }

}

package android.support.v4.content {

  public abstract class AsyncTaskLoader extends android.support.v4.content.Loader {
    ctor public AsyncTaskLoader(android.content.Context);
    method public boolean cancelLoad();
    method public abstract D loadInBackground();
    method public void onCanceled(D);
    method protected D onLoadInBackground();
    method public void setUpdateThrottle(long);
  }

  public class ContextCompat {
    ctor public ContextCompat();
    method public final java.io.File getCodeCacheDir(android.content.Context);
    method public static final android.graphics.drawable.Drawable getDrawable(android.content.Context, int);
    method public static java.io.File[] getExternalCacheDirs(android.content.Context);
    method public static java.io.File[] getExternalFilesDirs(android.content.Context, java.lang.String);
    method public final java.io.File getNoBackupFilesDir(android.content.Context);
    method public static java.io.File[] getObbDirs(android.content.Context);
    method public static boolean startActivities(android.content.Context, android.content.Intent[]);
    method public static boolean startActivities(android.content.Context, android.content.Intent[], android.os.Bundle);
  }

  public class CursorLoader extends android.support.v4.content.AsyncTaskLoader {
    ctor public CursorLoader(android.content.Context);
    ctor public CursorLoader(android.content.Context, android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
    method public void deliverResult(android.database.Cursor);
    method public java.lang.String[] getProjection();
    method public java.lang.String getSelection();
    method public java.lang.String[] getSelectionArgs();
    method public java.lang.String getSortOrder();
    method public android.net.Uri getUri();
    method public android.database.Cursor loadInBackground();
    method public void onCanceled(android.database.Cursor);
    method public void setProjection(java.lang.String[]);
    method public void setSelection(java.lang.String);
    method public void setSelectionArgs(java.lang.String[]);
    method public void setSortOrder(java.lang.String);
    method public void setUri(android.net.Uri);
  }

  public class FileProvider extends android.content.ContentProvider {
    ctor public FileProvider();
    method public int delete(android.net.Uri, java.lang.String, java.lang.String[]);
    method public java.lang.String getType(android.net.Uri);
    method public static android.net.Uri getUriForFile(android.content.Context, java.lang.String, java.io.File);
    method public android.net.Uri insert(android.net.Uri, android.content.ContentValues);
    method public boolean onCreate();
    method public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
    method public int update(android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]);
  }

  public class IntentCompat {
    method public static android.content.Intent makeMainActivity(android.content.ComponentName);
    method public static android.content.Intent makeMainSelectorActivity(java.lang.String, java.lang.String);
    method public static android.content.Intent makeRestartActivityTask(android.content.ComponentName);
    field public static final java.lang.String ACTION_EXTERNAL_APPLICATIONS_AVAILABLE = "android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE";
    field public static final java.lang.String ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE = "android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE";
    field public static final java.lang.String EXTRA_CHANGED_PACKAGE_LIST = "android.intent.extra.changed_package_list";
    field public static final java.lang.String EXTRA_CHANGED_UID_LIST = "android.intent.extra.changed_uid_list";
    field public static final java.lang.String EXTRA_HTML_TEXT = "android.intent.extra.HTML_TEXT";
    field public static final int FLAG_ACTIVITY_CLEAR_TASK = 32768; // 0x8000
    field public static final int FLAG_ACTIVITY_TASK_ON_HOME = 16384; // 0x4000
  }

  public class Loader {
    ctor public Loader(android.content.Context);
    method public void abandon();
    method public void commitContentChanged();
    method public java.lang.String dataToString(D);
    method public void deliverResult(D);
    method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
    method public void forceLoad();
    method public android.content.Context getContext();
    method public int getId();
    method public boolean isAbandoned();
    method public boolean isReset();
    method public boolean isStarted();
    method protected void onAbandon();
    method public void onContentChanged();
    method protected void onForceLoad();
    method protected void onReset();
    method protected void onStartLoading();
    method protected void onStopLoading();
    method public void registerListener(int, android.support.v4.content.Loader.OnLoadCompleteListener<D>);
    method public void reset();
    method public void rollbackContentChanged();
    method public final void startLoading();
    method public void stopLoading();
    method public boolean takeContentChanged();
    method public void unregisterListener(android.support.v4.content.Loader.OnLoadCompleteListener<D>);
  }

  public final class Loader.ForceLoadContentObserver extends android.database.ContentObserver {
    ctor public Loader.ForceLoadContentObserver();
  }

  public static abstract interface Loader.OnLoadCompleteListener {
    method public abstract void onLoadComplete(android.support.v4.content.Loader<D>, D);
  }

  public class LocalBroadcastManager {
    method public static android.support.v4.content.LocalBroadcastManager getInstance(android.content.Context);
    method public void registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter);
    method public boolean sendBroadcast(android.content.Intent);
    method public void sendBroadcastSync(android.content.Intent);
    method public void unregisterReceiver(android.content.BroadcastReceiver);
  }

  public abstract class WakefulBroadcastReceiver extends android.content.BroadcastReceiver {
    ctor public WakefulBroadcastReceiver();
    method public static boolean completeWakefulIntent(android.content.Intent);
    method public static android.content.ComponentName startWakefulService(android.content.Context, android.content.Intent);
  }

}

package android.support.v4.database {

  public class DatabaseUtilsCompat {
    method public static java.lang.String[] appendSelectionArgs(java.lang.String[], java.lang.String[]);
    method public static java.lang.String concatenateWhere(java.lang.String, java.lang.String);
  }

}

package android.support.v4.graphics {

  public class BitmapCompat {
    ctor public BitmapCompat();
    method public static int getAllocationByteCount(android.graphics.Bitmap);
    method public static boolean hasMipMap(android.graphics.Bitmap);
    method public static void setHasMipMap(android.graphics.Bitmap, boolean);
  }

  public class ColorUtils {
    method public static int HSLToColor(float[]);
    method public static void RGBToHSL(int, int, int, float[]);
    method public static double calculateContrast(int, int);
    method public static double calculateLuminance(int);
    method public static int calculateMinimumAlpha(int, int, float);
    method public static void colorToHSL(int, float[]);
    method public static int compositeColors(int, int);
    method public static int setAlphaComponent(int, int);
  }

}

package android.support.v4.graphics.drawable {

  public class DrawableCompat {
    ctor public DrawableCompat();
    method public static boolean isAutoMirrored(android.graphics.drawable.Drawable);
    method public static void jumpToCurrentState(android.graphics.drawable.Drawable);
    method public static void setAutoMirrored(android.graphics.drawable.Drawable, boolean);
    method public static void setHotspot(android.graphics.drawable.Drawable, float, float);
    method public static void setHotspotBounds(android.graphics.drawable.Drawable, int, int, int, int);
    method public static void setTint(android.graphics.drawable.Drawable, int);
    method public static void setTintList(android.graphics.drawable.Drawable, android.content.res.ColorStateList);
    method public static void setTintMode(android.graphics.drawable.Drawable, android.graphics.PorterDuff.Mode);
    method public static T unwrap(android.graphics.drawable.Drawable);
    method public static android.graphics.drawable.Drawable wrap(android.graphics.drawable.Drawable);
  }

  public abstract class RoundedBitmapDrawable extends android.graphics.drawable.Drawable {
    method public void draw(android.graphics.Canvas);
    method public final android.graphics.Bitmap getBitmap();
    method public float getCornerRadius();
    method public int getGravity();
    method public int getOpacity();
    method public final android.graphics.Paint getPaint();
    method public boolean hasAntiAlias();
    method public boolean hasMipMap();
    method public void setAlpha(int);
    method public void setAntiAlias(boolean);
    method public void setColorFilter(android.graphics.ColorFilter);
    method public void setCornerRadius(float);
    method public void setGravity(int);
    method public void setMipMap(boolean);
    method public void setTargetDensity(android.graphics.Canvas);
    method public void setTargetDensity(android.util.DisplayMetrics);
    method public void setTargetDensity(int);
  }

  public class RoundedBitmapDrawableFactory {
    ctor public RoundedBitmapDrawableFactory();
    method public static android.support.v4.graphics.drawable.RoundedBitmapDrawable create(android.content.res.Resources, android.graphics.Bitmap);
    method public static android.support.v4.graphics.drawable.RoundedBitmapDrawable create(android.content.res.Resources, java.lang.String);
    method public static android.support.v4.graphics.drawable.RoundedBitmapDrawable create(android.content.res.Resources, java.io.InputStream);
  }

}

package android.support.v4.hardware.display {

  public abstract class DisplayManagerCompat {
    method public abstract android.view.Display getDisplay(int);
    method public abstract android.view.Display[] getDisplays();
    method public abstract android.view.Display[] getDisplays(java.lang.String);
    method public static android.support.v4.hardware.display.DisplayManagerCompat getInstance(android.content.Context);
    field public static final java.lang.String DISPLAY_CATEGORY_PRESENTATION = "android.hardware.display.category.PRESENTATION";
  }

}

package android.support.v4.media {

  public final class MediaDescriptionCompat implements android.os.Parcelable {
    method public int describeContents();
    method public static android.support.v4.media.MediaDescriptionCompat fromMediaDescription(java.lang.Object);
    method public java.lang.CharSequence getDescription();
    method public android.os.Bundle getExtras();
    method public android.graphics.Bitmap getIconBitmap();
    method public android.net.Uri getIconUri();
    method public java.lang.Object getMediaDescription();
    method public java.lang.String getMediaId();
    method public java.lang.CharSequence getSubtitle();
    method public java.lang.CharSequence getTitle();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaDescriptionCompat> CREATOR;
  }

  public static final class MediaDescriptionCompat.Builder {
    ctor public MediaDescriptionCompat.Builder();
    method public android.support.v4.media.MediaDescriptionCompat build();
    method public android.support.v4.media.MediaDescriptionCompat.Builder setDescription(java.lang.CharSequence);
    method public android.support.v4.media.MediaDescriptionCompat.Builder setExtras(android.os.Bundle);
    method public android.support.v4.media.MediaDescriptionCompat.Builder setIconBitmap(android.graphics.Bitmap);
    method public android.support.v4.media.MediaDescriptionCompat.Builder setIconUri(android.net.Uri);
    method public android.support.v4.media.MediaDescriptionCompat.Builder setMediaId(java.lang.String);
    method public android.support.v4.media.MediaDescriptionCompat.Builder setSubtitle(java.lang.CharSequence);
    method public android.support.v4.media.MediaDescriptionCompat.Builder setTitle(java.lang.CharSequence);
  }

  public final class MediaMetadataCompat implements android.os.Parcelable {
    method public boolean containsKey(java.lang.String);
    method public int describeContents();
    method public static android.support.v4.media.MediaMetadataCompat fromMediaMetadata(java.lang.Object);
    method public android.graphics.Bitmap getBitmap(java.lang.String);
    method public android.os.Bundle getBundle();
    method public android.support.v4.media.MediaDescriptionCompat getDescription();
    method public long getLong(java.lang.String);
    method public java.lang.Object getMediaMetadata();
    method public android.support.v4.media.RatingCompat getRating(java.lang.String);
    method public java.lang.String getString(java.lang.String);
    method public java.lang.CharSequence getText(java.lang.String);
    method public java.util.Set<java.lang.String> keySet();
    method public int size();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.MediaMetadataCompat> CREATOR;
    field public static final java.lang.String METADATA_KEY_ALBUM = "android.media.metadata.ALBUM";
    field public static final java.lang.String METADATA_KEY_ALBUM_ART = "android.media.metadata.ALBUM_ART";
    field public static final java.lang.String METADATA_KEY_ALBUM_ARTIST = "android.media.metadata.ALBUM_ARTIST";
    field public static final java.lang.String METADATA_KEY_ALBUM_ART_URI = "android.media.metadata.ALBUM_ART_URI";
    field public static final java.lang.String METADATA_KEY_ART = "android.media.metadata.ART";
    field public static final java.lang.String METADATA_KEY_ARTIST = "android.media.metadata.ARTIST";
    field public static final java.lang.String METADATA_KEY_ART_URI = "android.media.metadata.ART_URI";
    field public static final java.lang.String METADATA_KEY_AUTHOR = "android.media.metadata.AUTHOR";
    field public static final java.lang.String METADATA_KEY_COMPILATION = "android.media.metadata.COMPILATION";
    field public static final java.lang.String METADATA_KEY_COMPOSER = "android.media.metadata.COMPOSER";
    field public static final java.lang.String METADATA_KEY_DATE = "android.media.metadata.DATE";
    field public static final java.lang.String METADATA_KEY_DISC_NUMBER = "android.media.metadata.DISC_NUMBER";
    field public static final java.lang.String METADATA_KEY_DISPLAY_DESCRIPTION = "android.media.metadata.DISPLAY_DESCRIPTION";
    field public static final java.lang.String METADATA_KEY_DISPLAY_ICON = "android.media.metadata.DISPLAY_ICON";
    field public static final java.lang.String METADATA_KEY_DISPLAY_ICON_URI = "android.media.metadata.DISPLAY_ICON_URI";
    field public static final java.lang.String METADATA_KEY_DISPLAY_SUBTITLE = "android.media.metadata.DISPLAY_SUBTITLE";
    field public static final java.lang.String METADATA_KEY_DISPLAY_TITLE = "android.media.metadata.DISPLAY_TITLE";
    field public static final java.lang.String METADATA_KEY_DURATION = "android.media.metadata.DURATION";
    field public static final java.lang.String METADATA_KEY_GENRE = "android.media.metadata.GENRE";
    field public static final java.lang.String METADATA_KEY_MEDIA_ID = "android.media.metadata.MEDIA_ID";
    field public static final java.lang.String METADATA_KEY_NUM_TRACKS = "android.media.metadata.NUM_TRACKS";
    field public static final java.lang.String METADATA_KEY_RATING = "android.media.metadata.RATING";
    field public static final java.lang.String METADATA_KEY_TITLE = "android.media.metadata.TITLE";
    field public static final java.lang.String METADATA_KEY_TRACK_NUMBER = "android.media.metadata.TRACK_NUMBER";
    field public static final java.lang.String METADATA_KEY_USER_RATING = "android.media.metadata.USER_RATING";
    field public static final java.lang.String METADATA_KEY_WRITER = "android.media.metadata.WRITER";
    field public static final java.lang.String METADATA_KEY_YEAR = "android.media.metadata.YEAR";
  }

  public static final class MediaMetadataCompat.Builder {
    ctor public MediaMetadataCompat.Builder();
    ctor public MediaMetadataCompat.Builder(android.support.v4.media.MediaMetadataCompat);
    method public android.support.v4.media.MediaMetadataCompat build();
    method public android.support.v4.media.MediaMetadataCompat.Builder putBitmap(java.lang.String, android.graphics.Bitmap);
    method public android.support.v4.media.MediaMetadataCompat.Builder putLong(java.lang.String, long);
    method public android.support.v4.media.MediaMetadataCompat.Builder putRating(java.lang.String, android.support.v4.media.RatingCompat);
    method public android.support.v4.media.MediaMetadataCompat.Builder putString(java.lang.String, java.lang.String);
    method public android.support.v4.media.MediaMetadataCompat.Builder putText(java.lang.String, java.lang.CharSequence);
  }

  public final class RatingCompat implements android.os.Parcelable {
    method public int describeContents();
    method public static android.support.v4.media.RatingCompat fromRating(java.lang.Object);
    method public float getPercentRating();
    method public java.lang.Object getRating();
    method public int getRatingStyle();
    method public float getStarRating();
    method public boolean hasHeart();
    method public boolean isRated();
    method public boolean isThumbUp();
    method public static android.support.v4.media.RatingCompat newHeartRating(boolean);
    method public static android.support.v4.media.RatingCompat newPercentageRating(float);
    method public static android.support.v4.media.RatingCompat newStarRating(int, float);
    method public static android.support.v4.media.RatingCompat newThumbRating(boolean);
    method public static android.support.v4.media.RatingCompat newUnratedRating(int);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.RatingCompat> CREATOR;
    field public static final int RATING_3_STARS = 3; // 0x3
    field public static final int RATING_4_STARS = 4; // 0x4
    field public static final int RATING_5_STARS = 5; // 0x5
    field public static final int RATING_HEART = 1; // 0x1
    field public static final int RATING_NONE = 0; // 0x0
    field public static final int RATING_PERCENTAGE = 6; // 0x6
    field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2
  }

  public abstract class TransportController {
    ctor public TransportController();
    method public abstract int getBufferPercentage();
    method public abstract long getCurrentPosition();
    method public abstract long getDuration();
    method public abstract int getTransportControlFlags();
    method public abstract boolean isPlaying();
    method public abstract void pausePlaying();
    method public abstract void registerStateListener(android.support.v4.media.TransportStateListener);
    method public abstract void seekTo(long);
    method public abstract void startPlaying();
    method public abstract void stopPlaying();
    method public abstract void unregisterStateListener(android.support.v4.media.TransportStateListener);
  }

  public class TransportMediator extends android.support.v4.media.TransportController {
    ctor public TransportMediator(android.app.Activity, android.support.v4.media.TransportPerformer);
    ctor public TransportMediator(android.view.View, android.support.v4.media.TransportPerformer);
    method public void destroy();
    method public boolean dispatchKeyEvent(android.view.KeyEvent);
    method public int getBufferPercentage();
    method public long getCurrentPosition();
    method public long getDuration();
    method public java.lang.Object getRemoteControlClient();
    method public int getTransportControlFlags();
    method public boolean isPlaying();
    method public void pausePlaying();
    method public void refreshState();
    method public void registerStateListener(android.support.v4.media.TransportStateListener);
    method public void seekTo(long);
    method public void startPlaying();
    method public void stopPlaying();
    method public void unregisterStateListener(android.support.v4.media.TransportStateListener);
    field public static final int FLAG_KEY_MEDIA_FAST_FORWARD = 64; // 0x40
    field public static final int FLAG_KEY_MEDIA_NEXT = 128; // 0x80
    field public static final int FLAG_KEY_MEDIA_PAUSE = 16; // 0x10
    field public static final int FLAG_KEY_MEDIA_PLAY = 4; // 0x4
    field public static final int FLAG_KEY_MEDIA_PLAY_PAUSE = 8; // 0x8
    field public static final int FLAG_KEY_MEDIA_PREVIOUS = 1; // 0x1
    field public static final int FLAG_KEY_MEDIA_REWIND = 2; // 0x2
    field public static final int FLAG_KEY_MEDIA_STOP = 32; // 0x20
    field public static final int KEYCODE_MEDIA_PAUSE = 127; // 0x7f
    field public static final int KEYCODE_MEDIA_PLAY = 126; // 0x7e
    field public static final int KEYCODE_MEDIA_RECORD = 130; // 0x82
  }

  public abstract class TransportPerformer {
    ctor public TransportPerformer();
    method public void onAudioFocusChange(int);
    method public int onGetBufferPercentage();
    method public abstract long onGetCurrentPosition();
    method public abstract long onGetDuration();
    method public int onGetTransportControlFlags();
    method public abstract boolean onIsPlaying();
    method public boolean onMediaButtonDown(int, android.view.KeyEvent);
    method public boolean onMediaButtonUp(int, android.view.KeyEvent);
    method public abstract void onPause();
    method public abstract void onSeekTo(long);
    method public abstract void onStart();
    method public abstract void onStop();
  }

  public class TransportStateListener {
    ctor public TransportStateListener();
    method public void onPlayingChanged(android.support.v4.media.TransportController);
    method public void onTransportControlsChanged(android.support.v4.media.TransportController);
  }

  public abstract class VolumeProviderCompat {
    ctor public VolumeProviderCompat(int, int, int);
    method public final int getCurrentVolume();
    method public final int getMaxVolume();
    method public final int getVolumeControl();
    method public java.lang.Object getVolumeProvider();
    method public void onAdjustVolume(int);
    method public void onSetVolumeTo(int);
    method public void setCallback(android.support.v4.media.VolumeProviderCompat.Callback);
    method public final void setCurrentVolume(int);
    field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2
    field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0
    field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1
  }

  public static abstract class VolumeProviderCompat.Callback {
    ctor public VolumeProviderCompat.Callback();
    method public abstract void onVolumeChanged(android.support.v4.media.VolumeProviderCompat);
  }

}

package android.support.v4.media.session {

  public final class MediaControllerCompat {
    ctor public MediaControllerCompat(android.content.Context, android.support.v4.media.session.MediaSessionCompat);
    ctor public MediaControllerCompat(android.content.Context, android.support.v4.media.session.MediaSessionCompat.Token) throws android.os.RemoteException;
    method public void adjustVolume(int, int);
    method public boolean dispatchMediaButtonEvent(android.view.KeyEvent);
    method public android.os.Bundle getExtras();
    method public long getFlags();
    method public java.lang.Object getMediaController();
    method public android.support.v4.media.MediaMetadataCompat getMetadata();
    method public java.lang.String getPackageName();
    method public android.support.v4.media.session.MediaControllerCompat.PlaybackInfo getPlaybackInfo();
    method public android.support.v4.media.session.PlaybackStateCompat getPlaybackState();
    method public java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem> getQueue();
    method public java.lang.CharSequence getQueueTitle();
    method public int getRatingType();
    method public android.app.PendingIntent getSessionActivity();
    method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
    method public android.support.v4.media.session.MediaControllerCompat.TransportControls getTransportControls();
    method public void registerCallback(android.support.v4.media.session.MediaControllerCompat.Callback);
    method public void registerCallback(android.support.v4.media.session.MediaControllerCompat.Callback, android.os.Handler);
    method public void sendCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
    method public void setVolumeTo(int, int);
    method public void unregisterCallback(android.support.v4.media.session.MediaControllerCompat.Callback);
  }

  public static abstract class MediaControllerCompat.Callback implements android.os.IBinder.DeathRecipient {
    ctor public MediaControllerCompat.Callback();
    method public void binderDied();
    method public void onAudioInfoChanged(android.support.v4.media.session.MediaControllerCompat.PlaybackInfo);
    method public void onExtrasChanged(android.os.Bundle);
    method public void onMetadataChanged(android.support.v4.media.MediaMetadataCompat);
    method public void onPlaybackStateChanged(android.support.v4.media.session.PlaybackStateCompat);
    method public void onQueueChanged(java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem>);
    method public void onQueueTitleChanged(java.lang.CharSequence);
    method public void onSessionDestroyed();
    method public void onSessionEvent(java.lang.String, android.os.Bundle);
  }

  public static final class MediaControllerCompat.PlaybackInfo {
    method public int getAudioStream();
    method public int getCurrentVolume();
    method public int getMaxVolume();
    method public int getPlaybackType();
    method public int getVolumeControl();
    field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1
    field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2
  }

  public static abstract class MediaControllerCompat.TransportControls {
    method public abstract void fastForward();
    method public abstract void pause();
    method public abstract void play();
    method public abstract void playFromMediaId(java.lang.String, android.os.Bundle);
    method public abstract void playFromSearch(java.lang.String, android.os.Bundle);
    method public abstract void rewind();
    method public abstract void seekTo(long);
    method public abstract void sendCustomAction(android.support.v4.media.session.PlaybackStateCompat.CustomAction, android.os.Bundle);
    method public abstract void sendCustomAction(java.lang.String, android.os.Bundle);
    method public abstract void setRating(android.support.v4.media.RatingCompat);
    method public abstract void skipToNext();
    method public abstract void skipToPrevious();
    method public abstract void skipToQueueItem(long);
    method public abstract void stop();
  }

  public class MediaSessionCompat {
    ctor public MediaSessionCompat(android.content.Context, java.lang.String, android.content.ComponentName, android.app.PendingIntent);
    method public void addOnActiveChangeListener(android.support.v4.media.session.MediaSessionCompat.OnActiveChangeListener);
    method public android.support.v4.media.session.MediaControllerCompat getController();
    method public java.lang.Object getMediaSession();
    method public java.lang.Object getRemoteControlClient();
    method public android.support.v4.media.session.MediaSessionCompat.Token getSessionToken();
    method public boolean isActive();
    method public static android.support.v4.media.session.MediaSessionCompat obtain(android.content.Context, java.lang.Object);
    method public void release();
    method public void removeOnActiveChangeListener(android.support.v4.media.session.MediaSessionCompat.OnActiveChangeListener);
    method public void sendSessionEvent(java.lang.String, android.os.Bundle);
    method public void setActive(boolean);
    method public void setCallback(android.support.v4.media.session.MediaSessionCompat.Callback);
    method public void setCallback(android.support.v4.media.session.MediaSessionCompat.Callback, android.os.Handler);
    method public void setExtras(android.os.Bundle);
    method public void setFlags(int);
    method public void setMediaButtonReceiver(android.app.PendingIntent);
    method public void setMetadata(android.support.v4.media.MediaMetadataCompat);
    method public void setPlaybackState(android.support.v4.media.session.PlaybackStateCompat);
    method public void setPlaybackToLocal(int);
    method public void setPlaybackToRemote(android.support.v4.media.VolumeProviderCompat);
    method public void setQueue(java.util.List<android.support.v4.media.session.MediaSessionCompat.QueueItem>);
    method public void setQueueTitle(java.lang.CharSequence);
    method public void setRatingType(int);
    method public void setSessionActivity(android.app.PendingIntent);
    field public static final int FLAG_HANDLES_MEDIA_BUTTONS = 1; // 0x1
    field public static final int FLAG_HANDLES_TRANSPORT_CONTROLS = 2; // 0x2
  }

  public static abstract class MediaSessionCompat.Callback {
    ctor public MediaSessionCompat.Callback();
    method public void onCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
    method public void onCustomAction(java.lang.String, android.os.Bundle);
    method public void onFastForward();
    method public boolean onMediaButtonEvent(android.content.Intent);
    method public void onPause();
    method public void onPlay();
    method public void onPlayFromMediaId(java.lang.String, android.os.Bundle);
    method public void onPlayFromSearch(java.lang.String, android.os.Bundle);
    method public void onRewind();
    method public void onSeekTo(long);
    method public void onSetRating(android.support.v4.media.RatingCompat);
    method public void onSkipToNext();
    method public void onSkipToPrevious();
    method public void onSkipToQueueItem(long);
    method public void onStop();
  }

  public static abstract interface MediaSessionCompat.OnActiveChangeListener {
    method public abstract void onActiveChanged();
  }

  public static final class MediaSessionCompat.QueueItem implements android.os.Parcelable {
    ctor public MediaSessionCompat.QueueItem(android.support.v4.media.MediaDescriptionCompat, long);
    method public int describeContents();
    method public android.support.v4.media.MediaDescriptionCompat getDescription();
    method public long getQueueId();
    method public java.lang.Object getQueueItem();
    method public static android.support.v4.media.session.MediaSessionCompat.QueueItem obtain(java.lang.Object);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.session.MediaSessionCompat.QueueItem> CREATOR;
    field public static final int UNKNOWN_ID = -1; // 0xffffffff
  }

  public static final class MediaSessionCompat.Token implements android.os.Parcelable {
    method public int describeContents();
    method public static android.support.v4.media.session.MediaSessionCompat.Token fromToken(java.lang.Object);
    method public java.lang.Object getToken();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.session.MediaSessionCompat.Token> CREATOR;
  }

  public class ParcelableVolumeInfo implements android.os.Parcelable {
    ctor public ParcelableVolumeInfo(int, int, int, int, int);
    ctor public ParcelableVolumeInfo(android.os.Parcel);
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.session.ParcelableVolumeInfo> CREATOR;
    field public int audioStream;
    field public int controlType;
    field public int currentVolume;
    field public int maxVolume;
    field public int volumeType;
  }

  public final class PlaybackStateCompat implements android.os.Parcelable {
    method public int describeContents();
    method public static android.support.v4.media.session.PlaybackStateCompat fromPlaybackState(java.lang.Object);
    method public long getActions();
    method public long getBufferedPosition();
    method public java.lang.CharSequence getErrorMessage();
    method public long getLastPositionUpdateTime();
    method public float getPlaybackSpeed();
    method public java.lang.Object getPlaybackState();
    method public long getPosition();
    method public int getState();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L
    field public static final long ACTION_PAUSE = 2L; // 0x2L
    field public static final long ACTION_PLAY = 4L; // 0x4L
    field public static final long ACTION_PLAY_FROM_MEDIA_ID = 1024L; // 0x400L
    field public static final long ACTION_PLAY_FROM_SEARCH = 2048L; // 0x800L
    field public static final long ACTION_PLAY_PAUSE = 512L; // 0x200L
    field public static final long ACTION_REWIND = 8L; // 0x8L
    field public static final long ACTION_SEEK_TO = 256L; // 0x100L
    field public static final long ACTION_SET_RATING = 128L; // 0x80L
    field public static final long ACTION_SKIP_TO_NEXT = 32L; // 0x20L
    field public static final long ACTION_SKIP_TO_PREVIOUS = 16L; // 0x10L
    field public static final long ACTION_SKIP_TO_QUEUE_ITEM = 4096L; // 0x1000L
    field public static final long ACTION_STOP = 1L; // 0x1L
    field public static final android.os.Parcelable.Creator<android.support.v4.media.session.PlaybackStateCompat> CREATOR;
    field public static final long PLAYBACK_POSITION_UNKNOWN = -1L; // 0xffffffffffffffffL
    field public static final int STATE_BUFFERING = 6; // 0x6
    field public static final int STATE_ERROR = 7; // 0x7
    field public static final int STATE_FAST_FORWARDING = 4; // 0x4
    field public static final int STATE_NONE = 0; // 0x0
    field public static final int STATE_PAUSED = 2; // 0x2
    field public static final int STATE_PLAYING = 3; // 0x3
    field public static final int STATE_REWINDING = 5; // 0x5
    field public static final int STATE_SKIPPING_TO_NEXT = 10; // 0xa
    field public static final int STATE_SKIPPING_TO_PREVIOUS = 9; // 0x9
    field public static final int STATE_STOPPED = 1; // 0x1
  }

  public static final class PlaybackStateCompat.Builder {
    ctor public PlaybackStateCompat.Builder();
    ctor public PlaybackStateCompat.Builder(android.support.v4.media.session.PlaybackStateCompat);
    method public android.support.v4.media.session.PlaybackStateCompat build();
    method public android.support.v4.media.session.PlaybackStateCompat.Builder setActions(long);
    method public android.support.v4.media.session.PlaybackStateCompat.Builder setBufferedPosition(long);
    method public android.support.v4.media.session.PlaybackStateCompat.Builder setErrorMessage(java.lang.CharSequence);
    method public android.support.v4.media.session.PlaybackStateCompat.Builder setState(int, long, float);
    method public android.support.v4.media.session.PlaybackStateCompat.Builder setState(int, long, float, long);
  }

  public static final class PlaybackStateCompat.CustomAction implements android.os.Parcelable {
    method public int describeContents();
    method public java.lang.String getAction();
    method public android.os.Bundle getExtras();
    method public int getIcon();
    method public java.lang.CharSequence getName();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.support.v4.media.session.PlaybackStateCompat.CustomAction> CREATOR;
  }

  public static final class PlaybackStateCompat.CustomAction.Builder {
    ctor public PlaybackStateCompat.CustomAction.Builder(java.lang.String, java.lang.CharSequence, int);
    method public android.support.v4.media.session.PlaybackStateCompat.CustomAction build();
    method public android.support.v4.media.session.PlaybackStateCompat.CustomAction.Builder setExtras(android.os.Bundle);
  }

}

package android.support.v4.net {

  public class ConnectivityManagerCompat {
    ctor public ConnectivityManagerCompat();
    method public static android.net.NetworkInfo getNetworkInfoFromBroadcast(android.net.ConnectivityManager, android.content.Intent);
    method public static boolean isActiveNetworkMetered(android.net.ConnectivityManager);
  }

  public class TrafficStatsCompat {
    ctor public TrafficStatsCompat();
    method public static void clearThreadStatsTag();
    method public static int getThreadStatsTag();
    method public static void incrementOperationCount(int);
    method public static void incrementOperationCount(int, int);
    method public static void setThreadStatsTag(int);
    method public static void tagSocket(java.net.Socket) throws java.net.SocketException;
    method public static void untagSocket(java.net.Socket) throws java.net.SocketException;
  }

}

package android.support.v4.os {

  public class AsyncTaskCompat {
    ctor public AsyncTaskCompat();
    method public static android.os.AsyncTask<Params, Progress, Result> executeParallel(android.os.AsyncTask<Params, Progress, Result>, Params...);
  }

  public class EnvironmentCompat {
    ctor public EnvironmentCompat();
    method public static java.lang.String getStorageState(java.io.File);
    field public static final java.lang.String MEDIA_UNKNOWN = "unknown";
  }

  public class ParcelableCompat {
    ctor public ParcelableCompat();
    method public static android.os.Parcelable.Creator<T> newCreator(android.support.v4.os.ParcelableCompatCreatorCallbacks<T>);
  }

  public abstract interface ParcelableCompatCreatorCallbacks {
    method public abstract T createFromParcel(android.os.Parcel, java.lang.ClassLoader);
    method public abstract T[] newArray(int);
  }

  public class TraceCompat {
    ctor public TraceCompat();
    method public static void beginSection(java.lang.String);
    method public static void endSection();
  }

}

package android.support.v4.print {

  public final class PrintHelper {
    ctor public PrintHelper(android.content.Context);
    method public int getColorMode();
    method public int getOrientation();
    method public int getScaleMode();
    method public void printBitmap(java.lang.String, android.graphics.Bitmap);
    method public void printBitmap(java.lang.String, android.graphics.Bitmap, android.support.v4.print.PrintHelper.OnPrintFinishCallback);
    method public void printBitmap(java.lang.String, android.net.Uri) throws java.io.FileNotFoundException;
    method public void printBitmap(java.lang.String, android.net.Uri, android.support.v4.print.PrintHelper.OnPrintFinishCallback) throws java.io.FileNotFoundException;
    method public void setColorMode(int);
    method public void setOrientation(int);
    method public void setScaleMode(int);
    method public static boolean systemSupportsPrint();
    field public static final int COLOR_MODE_COLOR = 2; // 0x2
    field public static final int COLOR_MODE_MONOCHROME = 1; // 0x1
    field public static final int ORIENTATION_LANDSCAPE = 1; // 0x1
    field public static final int ORIENTATION_PORTRAIT = 2; // 0x2
    field public static final int SCALE_MODE_FILL = 2; // 0x2
    field public static final int SCALE_MODE_FIT = 1; // 0x1
  }

  public static abstract interface PrintHelper.OnPrintFinishCallback {
    method public abstract void onFinish();
  }

}

package android.support.v4.provider {

  public abstract class DocumentFile {
    method public abstract boolean canRead();
    method public abstract boolean canWrite();
    method public abstract android.support.v4.provider.DocumentFile createDirectory(java.lang.String);
    method public abstract android.support.v4.provider.DocumentFile createFile(java.lang.String, java.lang.String);
    method public abstract boolean delete();
    method public abstract boolean exists();
    method public android.support.v4.provider.DocumentFile findFile(java.lang.String);
    method public static android.support.v4.provider.DocumentFile fromFile(java.io.File);
    method public static android.support.v4.provider.DocumentFile fromSingleUri(android.content.Context, android.net.Uri);
    method public static android.support.v4.provider.DocumentFile fromTreeUri(android.content.Context, android.net.Uri);
    method public abstract java.lang.String getName();
    method public android.support.v4.provider.DocumentFile getParentFile();
    method public abstract java.lang.String getType();
    method public abstract android.net.Uri getUri();
    method public abstract boolean isDirectory();
    method public static boolean isDocumentUri(android.content.Context, android.net.Uri);
    method public abstract boolean isFile();
    method public abstract long lastModified();
    method public abstract long length();
    method public abstract android.support.v4.provider.DocumentFile[] listFiles();
    method public abstract boolean renameTo(java.lang.String);
  }

}

package android.support.v4.text {

  public final class BidiFormatter {
    method public static android.support.v4.text.BidiFormatter getInstance();
    method public static android.support.v4.text.BidiFormatter getInstance(boolean);
    method public static android.support.v4.text.BidiFormatter getInstance(java.util.Locale);
    method public boolean getStereoReset();
    method public boolean isRtl(java.lang.String);
    method public boolean isRtlContext();
    method public java.lang.String unicodeWrap(java.lang.String, android.support.v4.text.TextDirectionHeuristicCompat, boolean);
    method public java.lang.String unicodeWrap(java.lang.String, android.support.v4.text.TextDirectionHeuristicCompat);
    method public java.lang.String unicodeWrap(java.lang.String, boolean);
    method public java.lang.String unicodeWrap(java.lang.String);
  }

  public static final class BidiFormatter.Builder {
    ctor public BidiFormatter.Builder();
    ctor public BidiFormatter.Builder(boolean);
    ctor public BidiFormatter.Builder(java.util.Locale);
    method public android.support.v4.text.BidiFormatter build();
    method public android.support.v4.text.BidiFormatter.Builder setTextDirectionHeuristic(android.support.v4.text.TextDirectionHeuristicCompat);
    method public android.support.v4.text.BidiFormatter.Builder stereoReset(boolean);
  }

  public class ICUCompat {
    ctor public ICUCompat();
    method public static java.lang.String addLikelySubtags(java.lang.String);
    method public static java.lang.String getScript(java.lang.String);
  }

  public abstract interface TextDirectionHeuristicCompat {
    method public abstract boolean isRtl(char[], int, int);
    method public abstract boolean isRtl(java.lang.CharSequence, int, int);
  }

  public class TextDirectionHeuristicsCompat {
    ctor public TextDirectionHeuristicsCompat();
    field public static final android.support.v4.text.TextDirectionHeuristicCompat ANYRTL_LTR;
    field public static final android.support.v4.text.TextDirectionHeuristicCompat FIRSTSTRONG_LTR;
    field public static final android.support.v4.text.TextDirectionHeuristicCompat FIRSTSTRONG_RTL;
    field public static final android.support.v4.text.TextDirectionHeuristicCompat LOCALE;
    field public static final android.support.v4.text.TextDirectionHeuristicCompat LTR;
    field public static final android.support.v4.text.TextDirectionHeuristicCompat RTL;
  }

  public class TextUtilsCompat {
    ctor public TextUtilsCompat();
    method public static int getLayoutDirectionFromLocale(java.util.Locale);
    method public static java.lang.String htmlEncode(java.lang.String);
    field public static final java.util.Locale ROOT;
  }

}

package android.support.v4.util {

  public class ArrayMap extends android.support.v4.util.SimpleArrayMap implements java.util.Map {
    ctor public ArrayMap();
    ctor public ArrayMap(int);
    ctor public ArrayMap(android.support.v4.util.SimpleArrayMap);
    method public boolean containsAll(java.util.Collection<?>);
    method public java.util.Set<java.util.Map.Entry<K, V>> entrySet();
    method public java.util.Set<K> keySet();
    method public void putAll(java.util.Map<? extends K, ? extends V>);
    method public boolean removeAll(java.util.Collection<?>);
    method public boolean retainAll(java.util.Collection<?>);
    method public java.util.Collection<V> values();
  }

  public class AtomicFile {
    ctor public AtomicFile(java.io.File);
    method public void delete();
    method public void failWrite(java.io.FileOutputStream);
    method public void finishWrite(java.io.FileOutputStream);
    method public java.io.File getBaseFile();
    method public java.io.FileInputStream openRead() throws java.io.FileNotFoundException;
    method public byte[] readFully() throws java.io.IOException;
    method public java.io.FileOutputStream startWrite() throws java.io.IOException;
  }

  public final class CircularArray {
    ctor public CircularArray();
    ctor public CircularArray(int);
    method public void addFirst(E);
    method public void addLast(E);
    method public void clear();
    method public E get(int);
    method public E getFirst();
    method public E getLast();
    method public boolean isEmpty();
    method public E popFirst();
    method public E popLast();
    method public void removeFromEnd(int);
    method public void removeFromStart(int);
    method public int size();
  }

  public final class CircularIntArray {
    ctor public CircularIntArray();
    ctor public CircularIntArray(int);
    method public void addFirst(int);
    method public void addLast(int);
    method public void clear();
    method public int get(int);
    method public int getFirst();
    method public int getLast();
    method public boolean isEmpty();
    method public int popFirst();
    method public int popLast();
    method public void removeFromEnd(int);
    method public void removeFromStart(int);
    method public int size();
  }

  public class LongSparseArray {
    ctor public LongSparseArray();
    ctor public LongSparseArray(int);
    method public void append(long, E);
    method public void clear();
    method public android.support.v4.util.LongSparseArray<E> clone();
    method public void delete(long);
    method public E get(long);
    method public E get(long, E);
    method public int indexOfKey(long);
    method public int indexOfValue(E);
    method public long keyAt(int);
    method public void put(long, E);
    method public void remove(long);
    method public void removeAt(int);
    method public void setValueAt(int, E);
    method public int size();
    method public E valueAt(int);
  }

  public class LruCache {
    ctor public LruCache(int);
    method protected V create(K);
    method public final synchronized int createCount();
    method protected void entryRemoved(boolean, K, V, V);
    method public final void evictAll();
    method public final synchronized int evictionCount();
    method public final V get(K);
    method public final synchronized int hitCount();
    method public final synchronized int maxSize();
    method public final synchronized int missCount();
    method public final V put(K, V);
    method public final synchronized int putCount();
    method public final V remove(K);
    method public void resize(int);
    method public final synchronized int size();
    method protected int sizeOf(K, V);
    method public final synchronized java.util.Map<K, V> snapshot();
    method public final synchronized java.lang.String toString();
    method public void trimToSize(int);
  }

  public class Pair {
    ctor public Pair(F, S);
    method public static android.support.v4.util.Pair<A, B> create(A, B);
    field public final F first;
    field public final S second;
  }

  public final class Pools {
  }

  public static abstract interface Pools.Pool {
    method public abstract T acquire();
    method public abstract boolean release(T);
  }

  public static class Pools.SimplePool implements android.support.v4.util.Pools.Pool {
    ctor public Pools.SimplePool(int);
    method public T acquire();
    method public boolean release(T);
  }

  public static class Pools.SynchronizedPool extends android.support.v4.util.Pools.SimplePool {
    ctor public Pools.SynchronizedPool(int);
  }

  public class SimpleArrayMap {
    ctor public SimpleArrayMap();
    ctor public SimpleArrayMap(int);
    ctor public SimpleArrayMap(android.support.v4.util.SimpleArrayMap);
    method public void clear();
    method public boolean containsKey(java.lang.Object);
    method public boolean containsValue(java.lang.Object);
    method public void ensureCapacity(int);
    method public V get(java.lang.Object);
    method public int indexOfKey(java.lang.Object);
    method public boolean isEmpty();
    method public K keyAt(int);
    method public V put(K, V);
    method public void putAll(android.support.v4.util.SimpleArrayMap<? extends K, ? extends V>);
    method public V remove(java.lang.Object);
    method public V removeAt(int);
    method public V setValueAt(int, V);
    method public int size();
    method public V valueAt(int);
  }

  public class SparseArrayCompat {
    ctor public SparseArrayCompat();
    ctor public SparseArrayCompat(int);
    method public void append(int, E);
    method public void clear();
    method public android.support.v4.util.SparseArrayCompat<E> clone();
    method public void delete(int);
    method public E get(int);
    method public E get(int, E);
    method public int indexOfKey(int);
    method public int indexOfValue(E);
    method public int keyAt(int);
    method public void put(int, E);
    method public void remove(int);
    method public void removeAt(int);
    method public void removeAtRange(int, int);
    method public void setValueAt(int, E);
    method public int size();
    method public E valueAt(int);
  }

}

package android.support.v4.view {

  public class AccessibilityDelegateCompat {
    ctor public AccessibilityDelegateCompat();
    method public boolean dispatchPopulateAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
    method public android.support.v4.view.accessibility.AccessibilityNodeProviderCompat getAccessibilityNodeProvider(android.view.View);
    method public void onInitializeAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
    method public void onInitializeAccessibilityNodeInfo(android.view.View, android.support.v4.view.accessibility.AccessibilityNodeInfoCompat);
    method public void onPopulateAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
    method public boolean onRequestSendAccessibilityEvent(android.view.ViewGroup, android.view.View, android.view.accessibility.AccessibilityEvent);
    method public boolean performAccessibilityAction(android.view.View, int, android.os.Bundle);
    method public void sendAccessibilityEvent(android.view.View, int);
    method public void sendAccessibilityEventUnchecked(android.view.View, android.view.accessibility.AccessibilityEvent);
  }

  public abstract class ActionProvider {
    ctor public ActionProvider(android.content.Context);
    method public android.content.Context getContext();
    method public boolean hasSubMenu();
    method public boolean isVisible();
    method public abstract android.view.View onCreateActionView();
    method public android.view.View onCreateActionView(android.view.MenuItem);
    method public boolean onPerformDefaultAction();
    method public void onPrepareSubMenu(android.view.SubMenu);
    method public boolean overridesItemVisibility();
    method public void refreshVisibility();
    method public void setVisibilityListener(android.support.v4.view.ActionProvider.VisibilityListener);
  }

  public static abstract interface ActionProvider.VisibilityListener {
    method public abstract void onActionProviderVisibilityChanged(boolean);
  }

  public class GestureDetectorCompat {
    ctor public GestureDetectorCompat(android.content.Context, android.view.GestureDetector.OnGestureListener);
    ctor public GestureDetectorCompat(android.content.Context, android.view.GestureDetector.OnGestureListener, android.os.Handler);
    method public boolean isLongpressEnabled();
    method public boolean onTouchEvent(android.view.MotionEvent);
    method public void setIsLongpressEnabled(boolean);
    method public void setOnDoubleTapListener(android.view.GestureDetector.OnDoubleTapListener);
  }

  public class GravityCompat {
    ctor public GravityCompat();
    method public static void apply(int, int, int, android.graphics.Rect, android.graphics.Rect, int);
    method public static void apply(int, int, int, android.graphics.Rect, int, int, android.graphics.Rect, int);
    method public static void applyDisplay(int, android.graphics.Rect, android.graphics.Rect, int);
    method public static int getAbsoluteGravity(int, int);
    field public static final int END = 8388613; // 0x800005
    field public static final int RELATIVE_HORIZONTAL_GRAVITY_MASK = 8388615; // 0x800007
    field public static final int RELATIVE_LAYOUT_DIRECTION = 8388608; // 0x800000
    field public static final int START = 8388611; // 0x800003
  }

  public class InputDeviceCompat {
    ctor public InputDeviceCompat();
    field public static final int SOURCE_ANY = -256; // 0xffffff00
    field public static final int SOURCE_CLASS_BUTTON = 1; // 0x1
    field public static final int SOURCE_CLASS_JOYSTICK = 16; // 0x10
    field public static final int SOURCE_CLASS_MASK = 255; // 0xff
    field public static final int SOURCE_CLASS_NONE = 0; // 0x0
    field public static final int SOURCE_CLASS_POINTER = 2; // 0x2
    field public static final int SOURCE_CLASS_POSITION = 8; // 0x8
    field public static final int SOURCE_CLASS_TRACKBALL = 4; // 0x4
    field public static final int SOURCE_DPAD = 513; // 0x201
    field public static final int SOURCE_GAMEPAD = 1025; // 0x401
    field public static final int SOURCE_HDMI = 33554433; // 0x2000001
    field public static final int SOURCE_JOYSTICK = 16777232; // 0x1000010
    field public static final int SOURCE_KEYBOARD = 257; // 0x101
    field public static final int SOURCE_MOUSE = 8194; // 0x2002
    field public static final int SOURCE_STYLUS = 16386; // 0x4002
    field public static final int SOURCE_TOUCHPAD = 1048584; // 0x100008
    field public static final int SOURCE_TOUCHSCREEN = 4098; // 0x1002
    field public static final int SOURCE_TOUCH_NAVIGATION = 2097152; // 0x200000
    field public static final int SOURCE_TRACKBALL = 65540; // 0x10004
    field public static final int SOURCE_UNKNOWN = 0; // 0x0
  }

  public class KeyEventCompat {
    ctor public KeyEventCompat();
    method public static boolean dispatch(android.view.KeyEvent, android.view.KeyEvent.Callback, java.lang.Object, java.lang.Object);
    method public static java.lang.Object getKeyDispatcherState(android.view.View);
    method public static boolean hasModifiers(android.view.KeyEvent, int);
    method public static boolean hasNoModifiers(android.view.KeyEvent);
    method public static boolean isTracking(android.view.KeyEvent);
    method public static boolean metaStateHasModifiers(int, int);
    method public static boolean metaStateHasNoModifiers(int);
    method public static int normalizeMetaState(int);
    method public static void startTracking(android.view.KeyEvent);
  }

  public class LayoutInflaterCompat {
    method public static void setFactory(android.view.LayoutInflater, android.support.v4.view.LayoutInflaterFactory);
  }

  public abstract interface LayoutInflaterFactory {
    method public abstract android.view.View onCreateView(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet);
  }

  public class MarginLayoutParamsCompat {
    ctor public MarginLayoutParamsCompat();
    method public static int getLayoutDirection(android.view.ViewGroup.MarginLayoutParams);
    method public static int getMarginEnd(android.view.ViewGroup.MarginLayoutParams);
    method public static int getMarginStart(android.view.ViewGroup.MarginLayoutParams);
    method public static boolean isMarginRelative(android.view.ViewGroup.MarginLayoutParams);
    method public static void resolveLayoutDirection(android.view.ViewGroup.MarginLayoutParams, int);
    method public static void setLayoutDirection(android.view.ViewGroup.MarginLayoutParams, int);
    method public static void setMarginEnd(android.view.ViewGroup.MarginLayoutParams, int);
    method public static void setMarginStart(android.view.ViewGroup.MarginLayoutParams, int);
  }

  public class MenuCompat {
    ctor public MenuCompat();
    method public static deprecated void setShowAsAction(android.view.MenuItem, int);
  }

  public class MenuItemCompat {
    ctor public MenuItemCompat();
    method public static boolean collapseActionView(android.view.MenuItem);
    method public static boolean expandActionView(android.view.MenuItem);
    method public static android.support.v4.view.ActionProvider getActionProvider(android.view.MenuItem);
    method public static android.view.View getActionView(android.view.MenuItem);
    method public static boolean isActionViewExpanded(android.view.MenuItem);
    method public static android.view.MenuItem setActionProvider(android.view.MenuItem, android.support.v4.view.ActionProvider);
    method public static android.view.MenuItem setActionView(android.view.MenuItem, android.view.View);
    method public static android.view.MenuItem setActionView(android.view.MenuItem, int);
    method public static android.view.MenuItem setOnActionExpandListener(android.view.MenuItem, android.support.v4.view.MenuItemCompat.OnActionExpandListener);
    method public static void setShowAsAction(android.view.MenuItem, int);
    field public static final int SHOW_AS_ACTION_ALWAYS = 2; // 0x2
    field public static final int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8; // 0x8
    field public static final int SHOW_AS_ACTION_IF_ROOM = 1; // 0x1
    field public static final int SHOW_AS_ACTION_NEVER = 0; // 0x0
    field public static final int SHOW_AS_ACTION_WITH_TEXT = 4; // 0x4
  }

  public static abstract interface MenuItemCompat.OnActionExpandListener {
    method public abstract boolean onMenuItemActionCollapse(android.view.MenuItem);
    method public abstract boolean onMenuItemActionExpand(android.view.MenuItem);
  }

  public class MotionEventCompat {
    ctor public MotionEventCompat();
    method public static int findPointerIndex(android.view.MotionEvent, int);
    method public static int getActionIndex(android.view.MotionEvent);
    method public static int getActionMasked(android.view.MotionEvent);
    method public static float getAxisValue(android.view.MotionEvent, int);
    method public static float getAxisValue(android.view.MotionEvent, int, int);
    method public static int getPointerCount(android.view.MotionEvent);
    method public static int getPointerId(android.view.MotionEvent, int);
    method public static int getSource(android.view.MotionEvent);
    method public static float getX(android.view.MotionEvent, int);
    method public static float getY(android.view.MotionEvent, int);
    field public static final int ACTION_HOVER_ENTER = 9; // 0x9
    field public static final int ACTION_HOVER_EXIT = 10; // 0xa
    field public static final int ACTION_HOVER_MOVE = 7; // 0x7
    field public static final int ACTION_MASK = 255; // 0xff
    field public static final int ACTION_POINTER_DOWN = 5; // 0x5
    field public static final int ACTION_POINTER_INDEX_MASK = 65280; // 0xff00
    field public static final int ACTION_POINTER_INDEX_SHIFT = 8; // 0x8
    field public static final int ACTION_POINTER_UP = 6; // 0x6
    field public static final int ACTION_SCROLL = 8; // 0x8
    field public static final int AXIS_BRAKE = 23; // 0x17
    field public static final int AXIS_DISTANCE = 24; // 0x18
    field public static final int AXIS_GAS = 22; // 0x16
    field public static final int AXIS_GENERIC_1 = 32; // 0x20
    field public static final int AXIS_GENERIC_10 = 41; // 0x29
    field public static final int AXIS_GENERIC_11 = 42; // 0x2a
    field public static final int AXIS_GENERIC_12 = 43; // 0x2b
    field public static final int AXIS_GENERIC_13 = 44; // 0x2c
    field public static final int AXIS_GENERIC_14 = 45; // 0x2d
    field public static final int AXIS_GENERIC_15 = 46; // 0x2e
    field public static final int AXIS_GENERIC_16 = 47; // 0x2f
    field public static final int AXIS_GENERIC_2 = 33; // 0x21
    field public static final int AXIS_GENERIC_3 = 34; // 0x22
    field public static final int AXIS_GENERIC_4 = 35; // 0x23
    field public static final int AXIS_GENERIC_5 = 36; // 0x24
    field public static final int AXIS_GENERIC_6 = 37; // 0x25
    field public static final int AXIS_GENERIC_7 = 38; // 0x26
    field public static final int AXIS_GENERIC_8 = 39; // 0x27
    field public static final int AXIS_GENERIC_9 = 40; // 0x28
    field public static final int AXIS_HAT_X = 15; // 0xf
    field public static final int AXIS_HAT_Y = 16; // 0x10
    field public static final int AXIS_HSCROLL = 10; // 0xa
    field public static final int AXIS_LTRIGGER = 17; // 0x11
    field public static final int AXIS_ORIENTATION = 8; // 0x8
    field public static final int AXIS_PRESSURE = 2; // 0x2
    field public static final int AXIS_RTRIGGER = 18; // 0x12
    field public static final int AXIS_RUDDER = 20; // 0x14
    field public static final int AXIS_RX = 12; // 0xc
    field public static final int AXIS_RY = 13; // 0xd
    field public static final int AXIS_RZ = 14; // 0xe
    field public static final int AXIS_SIZE = 3; // 0x3
    field public static final int AXIS_THROTTLE = 19; // 0x13
    field public static final int AXIS_TILT = 25; // 0x19
    field public static final int AXIS_TOOL_MAJOR = 6; // 0x6
    field public static final int AXIS_TOOL_MINOR = 7; // 0x7
    field public static final int AXIS_TOUCH_MAJOR = 4; // 0x4
    field public static final int AXIS_TOUCH_MINOR = 5; // 0x5
    field public static final int AXIS_VSCROLL = 9; // 0x9
    field public static final int AXIS_WHEEL = 21; // 0x15
    field public static final int AXIS_X = 0; // 0x0
    field public static final int AXIS_Y = 1; // 0x1
    field public static final int AXIS_Z = 11; // 0xb
  }

  public abstract interface NestedScrollingChild {
    method public abstract boolean dispatchNestedFling(float, float, boolean);
    method public abstract boolean dispatchNestedPreFling(float, float);
    method public abstract boolean dispatchNestedPreScroll(int, int, int[], int[]);
    method public abstract boolean dispatchNestedScroll(int, int, int, int, int[]);
    method public abstract boolean hasNestedScrollingParent();
    method public abstract boolean isNestedScrollingEnabled();
    method public abstract void setNestedScrollingEnabled(boolean);
    method public abstract boolean startNestedScroll(int);
    method public abstract void stopNestedScroll();
  }

  public class NestedScrollingChildHelper {
    ctor public NestedScrollingChildHelper(android.view.View);
    method public boolean dispatchNestedFling(float, float, boolean);
    method public boolean dispatchNestedPreFling(float, float);
    method public boolean dispatchNestedPreScroll(int, int, int[], int[]);
    method public boolean dispatchNestedScroll(int, int, int, int, int[]);
    method public boolean hasNestedScrollingParent();
    method public boolean isNestedScrollingEnabled();
    method public void onDetachedFromWindow();
    method public void onStopNestedScroll(android.view.View);
    method public void setNestedScrollingEnabled(boolean);
    method public boolean startNestedScroll(int);
    method public void stopNestedScroll();
  }

  public abstract interface NestedScrollingParent {
    method public abstract int getNestedScrollAxes();
    method public abstract boolean onNestedFling(android.view.View, float, float, boolean);
    method public abstract boolean onNestedPreFling(android.view.View, float, float);
    method public abstract void onNestedPreScroll(android.view.View, int, int, int[]);
    method public abstract void onNestedScroll(android.view.View, int, int, int, int);
    method public abstract void onNestedScrollAccepted(android.view.View, android.view.View, int);
    method public abstract boolean onStartNestedScroll(android.view.View, android.view.View, int);
    method public abstract void onStopNestedScroll(android.view.View);
  }

  public class NestedScrollingParentHelper {
    ctor public NestedScrollingParentHelper(android.view.ViewGroup);
    method public int getNestedScrollAxes();
    method public void onNestedScrollAccepted(android.view.View, android.view.View, int);
    method public void onStopNestedScroll(android.view.View);
  }

  public abstract interface OnApplyWindowInsetsListener {
    method public abstract android.support.v4.view.WindowInsetsCompat onApplyWindowInsets(android.view.View, android.support.v4.view.WindowInsetsCompat);
  }

  public abstract class PagerAdapter {
    ctor public PagerAdapter();
    method public void destroyItem(android.view.ViewGroup, int, java.lang.Object);
    method public deprecated void destroyItem(android.view.View, int, java.lang.Object);
    method public void finishUpdate(android.view.ViewGroup);
    method public deprecated void finishUpdate(android.view.View);
    method public abstract int getCount();
    method public int getItemPosition(java.lang.Object);
    method public java.lang.CharSequence getPageTitle(int);
    method public float getPageWidth(int);
    method public java.lang.Object instantiateItem(android.view.ViewGroup, int);
    method public deprecated java.lang.Object instantiateItem(android.view.View, int);
    method public abstract boolean isViewFromObject(android.view.View, java.lang.Object);
    method public void notifyDataSetChanged();
    method public void registerDataSetObserver(android.database.DataSetObserver);
    method public void restoreState(android.os.Parcelable, java.lang.ClassLoader);
    method public android.os.Parcelable saveState();
    method public void setPrimaryItem(android.view.ViewGroup, int, java.lang.Object);
    method public deprecated void setPrimaryItem(android.view.View, int, java.lang.Object);
    method public void startUpdate(android.view.ViewGroup);
    method public deprecated void startUpdate(android.view.View);
    method public void unregisterDataSetObserver(android.database.DataSetObserver);
    field public static final int POSITION_NONE = -2; // 0xfffffffe
    field public static final int POSITION_UNCHANGED = -1; // 0xffffffff
  }

  public class PagerTabStrip extends android.support.v4.view.PagerTitleStrip {
    ctor public PagerTabStrip(android.content.Context);
    ctor public PagerTabStrip(android.content.Context, android.util.AttributeSet);
    method public boolean getDrawFullUnderline();
    method public int getTabIndicatorColor();
    method public void setDrawFullUnderline(boolean);
    method public void setTabIndicatorColor(int);
    method public void setTabIndicatorColorResource(int);
  }

  public class PagerTitleStrip extends android.view.ViewGroup {
    ctor public PagerTitleStrip(android.content.Context);
    ctor public PagerTitleStrip(android.content.Context, android.util.AttributeSet);
    method public int getTextSpacing();
    method protected void onLayout(boolean, int, int, int, int);
    method public void setGravity(int);
    method public void setNonPrimaryAlpha(float);
    method public void setTextColor(int);
    method public void setTextSize(int, float);
    method public void setTextSpacing(int);
  }

  public class ScaleGestureDetectorCompat {
    method public static boolean isQuickScaleEnabled(java.lang.Object);
    method public static void setQuickScaleEnabled(java.lang.Object, boolean);
  }

  public abstract interface ScrollingView {
    method public abstract int computeHorizontalScrollExtent();
    method public abstract int computeHorizontalScrollOffset();
    method public abstract int computeHorizontalScrollRange();
    method public abstract int computeVerticalScrollExtent();
    method public abstract int computeVerticalScrollOffset();
    method public abstract int computeVerticalScrollRange();
  }

  public class VelocityTrackerCompat {
    ctor public VelocityTrackerCompat();
    method public static float getXVelocity(android.view.VelocityTracker, int);
    method public static float getYVelocity(android.view.VelocityTracker, int);
  }

  public class ViewCompat {
    ctor public ViewCompat();
    method public static android.support.v4.view.ViewPropertyAnimatorCompat animate(android.view.View);
    method public static boolean canScrollHorizontally(android.view.View, int);
    method public static boolean canScrollVertically(android.view.View, int);
    method public static int combineMeasuredStates(int, int);
    method public static android.support.v4.view.WindowInsetsCompat dispatchApplyWindowInsets(android.view.View, android.support.v4.view.WindowInsetsCompat);
    method public static void dispatchFinishTemporaryDetach(android.view.View);
    method public static boolean dispatchNestedFling(android.view.View, float, float, boolean);
    method public static boolean dispatchNestedPreFling(android.view.View, float, float);
    method public static boolean dispatchNestedPreScroll(android.view.View, int, int, int[], int[]);
    method public static boolean dispatchNestedScroll(android.view.View, int, int, int, int, int[]);
    method public static void dispatchStartTemporaryDetach(android.view.View);
    method public static int getAccessibilityLiveRegion(android.view.View);
    method public static android.support.v4.view.accessibility.AccessibilityNodeProviderCompat getAccessibilityNodeProvider(android.view.View);
    method public static float getAlpha(android.view.View);
    method public static android.content.res.ColorStateList getBackgroundTintList(android.view.View);
    method public static android.graphics.PorterDuff.Mode getBackgroundTintMode(android.view.View);
    method public static float getElevation(android.view.View);
    method public static boolean getFitsSystemWindows(android.view.View);
    method public static int getImportantForAccessibility(android.view.View);
    method public static int getLabelFor(android.view.View);
    method public static int getLayerType(android.view.View);
    method public static int getLayoutDirection(android.view.View);
    method public static int getMeasuredHeightAndState(android.view.View);
    method public static int getMeasuredState(android.view.View);
    method public static int getMeasuredWidthAndState(android.view.View);
    method public static int getMinimumHeight(android.view.View);
    method public static int getMinimumWidth(android.view.View);
    method public static int getOverScrollMode(android.view.View);
    method public static int getPaddingEnd(android.view.View);
    method public static int getPaddingStart(android.view.View);
    method public static android.view.ViewParent getParentForAccessibility(android.view.View);
    method public static float getPivotX(android.view.View);
    method public static float getPivotY(android.view.View);
    method public static float getRotation(android.view.View);
    method public static float getRotationX(android.view.View);
    method public static float getRotationY(android.view.View);
    method public static float getScaleX(android.view.View);
    method public static float getScaleY(android.view.View);
    method public static java.lang.String getTransitionName(android.view.View);
    method public static float getTranslationX(android.view.View);
    method public static float getTranslationY(android.view.View);
    method public static float getTranslationZ(android.view.View);
    method public static int getWindowSystemUiVisibility(android.view.View);
    method public static float getX(android.view.View);
    method public static float getY(android.view.View);
    method public static float getZ(android.view.View);
    method public static boolean hasAccessibilityDelegate(android.view.View);
    method public static boolean hasNestedScrollingParent(android.view.View);
    method public static boolean hasTransientState(android.view.View);
    method public static boolean isLaidOut(android.view.View);
    method public static boolean isNestedScrollingEnabled(android.view.View);
    method public static boolean isOpaque(android.view.View);
    method public static boolean isPaddingRelative(android.view.View);
    method public static void jumpDrawablesToCurrentState(android.view.View);
    method public static android.support.v4.view.WindowInsetsCompat onApplyWindowInsets(android.view.View, android.support.v4.view.WindowInsetsCompat);
    method public static void onInitializeAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
    method public static void onInitializeAccessibilityNodeInfo(android.view.View, android.support.v4.view.accessibility.AccessibilityNodeInfoCompat);
    method public static void onPopulateAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
    method public static boolean performAccessibilityAction(android.view.View, int, android.os.Bundle);
    method public static void postInvalidateOnAnimation(android.view.View);
    method public static void postInvalidateOnAnimation(android.view.View, int, int, int, int);
    method public static void postOnAnimation(android.view.View, java.lang.Runnable);
    method public static void postOnAnimationDelayed(android.view.View, java.lang.Runnable, long);
    method public static void requestApplyInsets(android.view.View);
    method public static int resolveSizeAndState(int, int, int);
    method public static void setAccessibilityDelegate(android.view.View, android.support.v4.view.AccessibilityDelegateCompat);
    method public static void setAccessibilityLiveRegion(android.view.View, int);
    method public static void setActivated(android.view.View, boolean);
    method public static void setAlpha(android.view.View, float);
    method public static void setBackgroundTintList(android.view.View, android.content.res.ColorStateList);
    method public static void setBackgroundTintMode(android.view.View, android.graphics.PorterDuff.Mode);
    method public static void setChildrenDrawingOrderEnabled(android.view.ViewGroup, boolean);
    method public static void setElevation(android.view.View, float);
    method public static void setFitsSystemWindows(android.view.View, boolean);
    method public static void setHasTransientState(android.view.View, boolean);
    method public static void setImportantForAccessibility(android.view.View, int);
    method public static void setLabelFor(android.view.View, int);
    method public static void setLayerPaint(android.view.View, android.graphics.Paint);
    method public static void setLayerType(android.view.View, int, android.graphics.Paint);
    method public static void setLayoutDirection(android.view.View, int);
    method public static void setNestedScrollingEnabled(android.view.View, boolean);
    method public static void setOnApplyWindowInsetsListener(android.view.View, android.support.v4.view.OnApplyWindowInsetsListener);
    method public static void setOverScrollMode(android.view.View, int);
    method public static void setPaddingRelative(android.view.View, int, int, int, int);
    method public static void setPivotX(android.view.View, float);
    method public static void setPivotY(android.view.View, float);
    method public static void setRotation(android.view.View, float);
    method public static void setRotationX(android.view.View, float);
    method public static void setRotationY(android.view.View, float);
    method public static void setSaveFromParentEnabled(android.view.View, boolean);
    method public static void setScaleX(android.view.View, float);
    method public static void setScaleY(android.view.View, float);
    method public static void setTransitionName(android.view.View, java.lang.String);
    method public static void setTranslationX(android.view.View, float);
    method public static void setTranslationY(android.view.View, float);
    method public static void setTranslationZ(android.view.View, float);
    method public static void setX(android.view.View, float);
    method public static void setY(android.view.View, float);
    method public static boolean startNestedScroll(android.view.View, int);
    method public static void stopNestedScroll(android.view.View);
    field public static final int ACCESSIBILITY_LIVE_REGION_ASSERTIVE = 2; // 0x2
    field public static final int ACCESSIBILITY_LIVE_REGION_NONE = 0; // 0x0
    field public static final int ACCESSIBILITY_LIVE_REGION_POLITE = 1; // 0x1
    field public static final int IMPORTANT_FOR_ACCESSIBILITY_AUTO = 0; // 0x0
    field public static final int IMPORTANT_FOR_ACCESSIBILITY_NO = 2; // 0x2
    field public static final int IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS = 4; // 0x4
    field public static final int IMPORTANT_FOR_ACCESSIBILITY_YES = 1; // 0x1
    field public static final int LAYER_TYPE_HARDWARE = 2; // 0x2
    field public static final int LAYER_TYPE_NONE = 0; // 0x0
    field public static final int LAYER_TYPE_SOFTWARE = 1; // 0x1
    field public static final int LAYOUT_DIRECTION_INHERIT = 2; // 0x2
    field public static final int LAYOUT_DIRECTION_LOCALE = 3; // 0x3
    field public static final int LAYOUT_DIRECTION_LTR = 0; // 0x0
    field public static final int LAYOUT_DIRECTION_RTL = 1; // 0x1
    field public static final int MEASURED_HEIGHT_STATE_SHIFT = 16; // 0x10
    field public static final int MEASURED_SIZE_MASK = 16777215; // 0xffffff
    field public static final int MEASURED_STATE_MASK = -16777216; // 0xff000000
    field public static final int MEASURED_STATE_TOO_SMALL = 16777216; // 0x1000000
    field public static final int OVER_SCROLL_ALWAYS = 0; // 0x0
    field public static final int OVER_SCROLL_IF_CONTENT_SCROLLS = 1; // 0x1
    field public static final int OVER_SCROLL_NEVER = 2; // 0x2
    field public static final int SCROLL_AXIS_HORIZONTAL = 1; // 0x1
    field public static final int SCROLL_AXIS_NONE = 0; // 0x0
    field public static final int SCROLL_AXIS_VERTICAL = 2; // 0x2
  }

  public class ViewConfigurationCompat {
    ctor public ViewConfigurationCompat();
    method public static int getScaledPagingTouchSlop(android.view.ViewConfiguration);
    method public static boolean hasPermanentMenuKey(android.view.ViewConfiguration);
  }

  public class ViewGroupCompat {
    method public static int getLayoutMode(android.view.ViewGroup);
    method public static int getNestedScrollAxes(android.view.ViewGroup);
    method public static boolean isTransitionGroup(android.view.ViewGroup);
    method public static boolean onRequestSendAccessibilityEvent(android.view.ViewGroup, android.view.View, android.view.accessibility.AccessibilityEvent);
    method public static void setLayoutMode(android.view.ViewGroup, int);
    method public static void setMotionEventSplittingEnabled(android.view.ViewGroup, boolean);
    method public static void setTransitionGroup(android.view.ViewGroup, boolean);
    field public static final int LAYOUT_MODE_CLIP_BOUNDS = 0; // 0x0
    field public static final int LAYOUT_MODE_OPTICAL_BOUNDS = 1; // 0x1
  }

  public class ViewPager extends android.view.ViewGroup {
    ctor public ViewPager(android.content.Context);
    ctor public ViewPager(android.content.Context, android.util.AttributeSet);
    method public boolean arrowScroll(int);
    method public boolean beginFakeDrag();
    method protected boolean canScroll(android.view.View, boolean, int, int, int);
    method public void endFakeDrag();
    method public boolean executeKeyEvent(android.view.KeyEvent);
    method public void fakeDragBy(float);
    method public android.support.v4.view.PagerAdapter getAdapter();
    method public int getCurrentItem();
    method public int getOffscreenPageLimit();
    method public int getPageMargin();
    method public boolean isFakeDragging();
    method protected void onLayout(boolean, int, int, int, int);
    method protected void onPageScrolled(int, float, int);
    method public void onRestoreInstanceState(android.os.Parcelable);
    method public android.os.Parcelable onSaveInstanceState();
    method public void setAdapter(android.support.v4.view.PagerAdapter);
    method public void setCurrentItem(int);
    method public void setCurrentItem(int, boolean);
    method public void setOffscreenPageLimit(int);
    method public void setOnPageChangeListener(android.support.v4.view.ViewPager.OnPageChangeListener);
    method public void setPageMargin(int);
    method public void setPageMarginDrawable(android.graphics.drawable.Drawable);
    method public void setPageMarginDrawable(int);
    method public void setPageTransformer(boolean, android.support.v4.view.ViewPager.PageTransformer);
    field public static final int SCROLL_STATE_DRAGGING = 1; // 0x1
    field public static final int SCROLL_STATE_IDLE = 0; // 0x0
    field public static final int SCROLL_STATE_SETTLING = 2; // 0x2
  }

  public static class ViewPager.LayoutParams extends android.view.ViewGroup.LayoutParams {
    ctor public ViewPager.LayoutParams();
    ctor public ViewPager.LayoutParams(android.content.Context, android.util.AttributeSet);
    field public int gravity;
    field public boolean isDecor;
  }

  public static abstract interface ViewPager.OnPageChangeListener {
    method public abstract void onPageScrollStateChanged(int);
    method public abstract void onPageScrolled(int, float, int);
    method public abstract void onPageSelected(int);
  }

  public static abstract interface ViewPager.PageTransformer {
    method public abstract void transformPage(android.view.View, float);
  }

  public static class ViewPager.SavedState extends android.view.View.BaseSavedState {
    ctor public ViewPager.SavedState(android.os.Parcelable);
    field public static final android.os.Parcelable.Creator<android.support.v4.view.ViewPager.SavedState> CREATOR;
  }

  public static class ViewPager.SimpleOnPageChangeListener implements android.support.v4.view.ViewPager.OnPageChangeListener {
    ctor public ViewPager.SimpleOnPageChangeListener();
    method public void onPageScrollStateChanged(int);
    method public void onPageScrolled(int, float, int);
    method public void onPageSelected(int);
  }

  public class ViewParentCompat {
    method public static boolean onNestedFling(android.view.ViewParent, android.view.View, float, float, boolean);
    method public static boolean onNestedPreFling(android.view.ViewParent, android.view.View, float, float);
    method public static void onNestedPreScroll(android.view.ViewParent, android.view.View, int, int, int[]);
    method public static void onNestedScroll(android.view.ViewParent, android.view.View, int, int, int, int);
    method public static void onNestedScrollAccepted(android.view.ViewParent, android.view.View, android.view.View, int);
    method public static boolean onStartNestedScroll(android.view.ViewParent, android.view.View, android.view.View, int);
    method public static void onStopNestedScroll(android.view.ViewParent, android.view.View);
    method public static boolean requestSendAccessibilityEvent(android.view.ViewParent, android.view.View, android.view.accessibility.AccessibilityEvent);
  }

  public class ViewPropertyAnimatorCompat {
    method public android.support.v4.view.ViewPropertyAnimatorCompat alpha(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat alphaBy(float);
    method public void cancel();
    method public long getDuration();
    method public android.view.animation.Interpolator getInterpolator();
    method public long getStartDelay();
    method public android.support.v4.view.ViewPropertyAnimatorCompat rotation(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat rotationBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat rotationX(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat rotationXBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat rotationY(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat rotationYBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat scaleX(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat scaleXBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat scaleY(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat scaleYBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat setDuration(long);
    method public android.support.v4.view.ViewPropertyAnimatorCompat setInterpolator(android.view.animation.Interpolator);
    method public android.support.v4.view.ViewPropertyAnimatorCompat setListener(android.support.v4.view.ViewPropertyAnimatorListener);
    method public android.support.v4.view.ViewPropertyAnimatorCompat setStartDelay(long);
    method public android.support.v4.view.ViewPropertyAnimatorCompat setUpdateListener(android.support.v4.view.ViewPropertyAnimatorUpdateListener);
    method public void start();
    method public android.support.v4.view.ViewPropertyAnimatorCompat translationX(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat translationXBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat translationY(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat translationYBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat withEndAction(java.lang.Runnable);
    method public android.support.v4.view.ViewPropertyAnimatorCompat withLayer();
    method public android.support.v4.view.ViewPropertyAnimatorCompat withStartAction(java.lang.Runnable);
    method public android.support.v4.view.ViewPropertyAnimatorCompat x(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat xBy(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat y(float);
    method public android.support.v4.view.ViewPropertyAnimatorCompat yBy(float);
  }

  public abstract interface ViewPropertyAnimatorListener {
    method public abstract void onAnimationCancel(android.view.View);
    method public abstract void onAnimationEnd(android.view.View);
    method public abstract void onAnimationStart(android.view.View);
  }

  public class ViewPropertyAnimatorListenerAdapter implements android.support.v4.view.ViewPropertyAnimatorListener {
    ctor public ViewPropertyAnimatorListenerAdapter();
    method public void onAnimationCancel(android.view.View);
    method public void onAnimationEnd(android.view.View);
    method public void onAnimationStart(android.view.View);
  }

  public abstract interface ViewPropertyAnimatorUpdateListener {
    method public abstract void onAnimationUpdate(android.view.View);
  }

  public class WindowCompat {
    ctor public WindowCompat();
    field public static final int FEATURE_ACTION_BAR = 8; // 0x8
    field public static final int FEATURE_ACTION_BAR_OVERLAY = 9; // 0x9
    field public static final int FEATURE_ACTION_MODE_OVERLAY = 10; // 0xa
  }

  public class WindowInsetsCompat {
    method public android.support.v4.view.WindowInsetsCompat consumeStableInsets();
    method public android.support.v4.view.WindowInsetsCompat consumeSystemWindowInsets();
    method public int getStableInsetBottom();
    method public int getStableInsetLeft();
    method public int getStableInsetRight();
    method public int getStableInsetTop();
    method public int getSystemWindowInsetBottom();
    method public int getSystemWindowInsetLeft();
    method public int getSystemWindowInsetRight();
    method public int getSystemWindowInsetTop();
    method public boolean hasInsets();
    method public boolean hasStableInsets();
    method public boolean hasSystemWindowInsets();
    method public boolean isConsumed();
    method public boolean isRound();
    method public android.support.v4.view.WindowInsetsCompat replaceSystemWindowInsets(int, int, int, int);
    method public android.support.v4.view.WindowInsetsCompat replaceSystemWindowInsets(android.graphics.Rect);
  }

}

package android.support.v4.view.accessibility {

  public class AccessibilityEventCompat {
    method public static void appendRecord(android.view.accessibility.AccessibilityEvent, android.support.v4.view.accessibility.AccessibilityRecordCompat);
    method public static android.support.v4.view.accessibility.AccessibilityRecordCompat asRecord(android.view.accessibility.AccessibilityEvent);
    method public static android.support.v4.view.accessibility.AccessibilityRecordCompat getRecord(android.view.accessibility.AccessibilityEvent, int);
    method public static int getRecordCount(android.view.accessibility.AccessibilityEvent);
    field public static final int TYPES_ALL_MASK = -1; // 0xffffffff
    field public static final int TYPE_ANNOUNCEMENT = 16384; // 0x4000
    field public static final int TYPE_GESTURE_DETECTION_END = 524288; // 0x80000
    field public static final int TYPE_GESTURE_DETECTION_START = 262144; // 0x40000
    field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_END = 1024; // 0x400
    field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_START = 512; // 0x200
    field public static final int TYPE_TOUCH_INTERACTION_END = 2097152; // 0x200000
    field public static final int TYPE_TOUCH_INTERACTION_START = 1048576; // 0x100000
    field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUSED = 32768; // 0x8000
    field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED = 65536; // 0x10000
    field public static final int TYPE_VIEW_HOVER_ENTER = 128; // 0x80
    field public static final int TYPE_VIEW_HOVER_EXIT = 256; // 0x100
    field public static final int TYPE_VIEW_SCROLLED = 4096; // 0x1000
    field public static final int TYPE_VIEW_TEXT_SELECTION_CHANGED = 8192; // 0x2000
    field public static final int TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY = 131072; // 0x20000
    field public static final int TYPE_WINDOW_CONTENT_CHANGED = 2048; // 0x800
  }

  public class AccessibilityManagerCompat {
    ctor public AccessibilityManagerCompat();
    method public static boolean addAccessibilityStateChangeListener(android.view.accessibility.AccessibilityManager, android.support.v4.view.accessibility.AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat);
    method public static java.util.List<android.accessibilityservice.AccessibilityServiceInfo> getEnabledAccessibilityServiceList(android.view.accessibility.AccessibilityManager, int);
    method public static java.util.List<android.accessibilityservice.AccessibilityServiceInfo> getInstalledAccessibilityServiceList(android.view.accessibility.AccessibilityManager);
    method public static boolean isTouchExplorationEnabled(android.view.accessibility.AccessibilityManager);
    method public static boolean removeAccessibilityStateChangeListener(android.view.accessibility.AccessibilityManager, android.support.v4.view.accessibility.AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat);
  }

  public static abstract class AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat {
    ctor public AccessibilityManagerCompat.AccessibilityStateChangeListenerCompat();
    method public abstract void onAccessibilityStateChanged(boolean);
  }

  public class AccessibilityNodeInfoCompat {
    ctor public AccessibilityNodeInfoCompat(java.lang.Object);
    method public void addAction(int);
    method public void addAction(android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat);
    method public void addChild(android.view.View);
    method public void addChild(android.view.View, int);
    method public java.util.List<android.support.v4.view.accessibility.AccessibilityNodeInfoCompat> findAccessibilityNodeInfosByText(java.lang.String);
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat findFocus(int);
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat focusSearch(int);
    method public java.util.List<android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat> getActionList();
    method public int getActions();
    method public void getBoundsInParent(android.graphics.Rect);
    method public void getBoundsInScreen(android.graphics.Rect);
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat getChild(int);
    method public int getChildCount();
    method public java.lang.CharSequence getClassName();
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.CollectionInfoCompat getCollectionInfo();
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.CollectionItemInfoCompat getCollectionItemInfo();
    method public java.lang.CharSequence getContentDescription();
    method public java.lang.CharSequence getError();
    method public java.lang.Object getInfo();
    method public int getLiveRegion();
    method public int getMovementGranularities();
    method public java.lang.CharSequence getPackageName();
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat getParent();
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.RangeInfoCompat getRangeInfo();
    method public java.lang.CharSequence getText();
    method public java.lang.String getViewIdResourceName();
    method public int getWindowId();
    method public boolean isAccessibilityFocused();
    method public boolean isCheckable();
    method public boolean isChecked();
    method public boolean isClickable();
    method public boolean isContentInvalid();
    method public boolean isEnabled();
    method public boolean isFocusable();
    method public boolean isFocused();
    method public boolean isLongClickable();
    method public boolean isPassword();
    method public boolean isScrollable();
    method public boolean isSelected();
    method public boolean isVisibleToUser();
    method public static android.support.v4.view.accessibility.AccessibilityNodeInfoCompat obtain(android.view.View);
    method public static android.support.v4.view.accessibility.AccessibilityNodeInfoCompat obtain(android.view.View, int);
    method public static android.support.v4.view.accessibility.AccessibilityNodeInfoCompat obtain();
    method public static android.support.v4.view.accessibility.AccessibilityNodeInfoCompat obtain(android.support.v4.view.accessibility.AccessibilityNodeInfoCompat);
    method public boolean performAction(int);
    method public boolean performAction(int, android.os.Bundle);
    method public void recycle();
    method public void setAccessibilityFocused(boolean);
    method public void setBoundsInParent(android.graphics.Rect);
    method public void setBoundsInScreen(android.graphics.Rect);
    method public void setCheckable(boolean);
    method public void setChecked(boolean);
    method public void setClassName(java.lang.CharSequence);
    method public void setClickable(boolean);
    method public void setCollectionInfo(java.lang.Object);
    method public void setCollectionItemInfo(java.lang.Object);
    method public void setContentDescription(java.lang.CharSequence);
    method public void setContentInvalid(boolean);
    method public void setEnabled(boolean);
    method public void setError(java.lang.CharSequence);
    method public void setFocusable(boolean);
    method public void setFocused(boolean);
    method public void setLabelFor(android.view.View);
    method public void setLabelFor(android.view.View, int);
    method public void setLiveRegion(int);
    method public void setLongClickable(boolean);
    method public void setMovementGranularities(int);
    method public void setPackageName(java.lang.CharSequence);
    method public void setParent(android.view.View);
    method public void setParent(android.view.View, int);
    method public void setPassword(boolean);
    method public void setScrollable(boolean);
    method public void setSelected(boolean);
    method public void setSource(android.view.View);
    method public void setSource(android.view.View, int);
    method public void setText(java.lang.CharSequence);
    method public void setViewIdResourceName(java.lang.String);
    method public void setVisibleToUser(boolean);
    field public static final int ACTION_ACCESSIBILITY_FOCUS = 64; // 0x40
    field public static final java.lang.String ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN = "ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN";
    field public static final java.lang.String ACTION_ARGUMENT_HTML_ELEMENT_STRING = "ACTION_ARGUMENT_HTML_ELEMENT_STRING";
    field public static final java.lang.String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT = "ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT";
    field public static final java.lang.String ACTION_ARGUMENT_SELECTION_END_INT = "ACTION_ARGUMENT_SELECTION_END_INT";
    field public static final java.lang.String ACTION_ARGUMENT_SELECTION_START_INT = "ACTION_ARGUMENT_SELECTION_START_INT";
    field public static final java.lang.String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE = "ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE";
    field public static final int ACTION_CLEAR_ACCESSIBILITY_FOCUS = 128; // 0x80
    field public static final int ACTION_CLEAR_FOCUS = 2; // 0x2
    field public static final int ACTION_CLEAR_SELECTION = 8; // 0x8
    field public static final int ACTION_CLICK = 16; // 0x10
    field public static final int ACTION_COPY = 16384; // 0x4000
    field public static final int ACTION_CUT = 65536; // 0x10000
    field public static final int ACTION_FOCUS = 1; // 0x1
    field public static final int ACTION_LONG_CLICK = 32; // 0x20
    field public static final int ACTION_NEXT_AT_MOVEMENT_GRANULARITY = 256; // 0x100
    field public static final int ACTION_NEXT_HTML_ELEMENT = 1024; // 0x400
    field public static final int ACTION_PASTE = 32768; // 0x8000
    field public static final int ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY = 512; // 0x200
    field public static final int ACTION_PREVIOUS_HTML_ELEMENT = 2048; // 0x800
    field public static final int ACTION_SCROLL_BACKWARD = 8192; // 0x2000
    field public static final int ACTION_SCROLL_FORWARD = 4096; // 0x1000
    field public static final int ACTION_SELECT = 4; // 0x4
    field public static final int ACTION_SET_SELECTION = 131072; // 0x20000
    field public static final int ACTION_SET_TEXT = 2097152; // 0x200000
    field public static final int FOCUS_ACCESSIBILITY = 2; // 0x2
    field public static final int FOCUS_INPUT = 1; // 0x1
    field public static final int MOVEMENT_GRANULARITY_CHARACTER = 1; // 0x1
    field public static final int MOVEMENT_GRANULARITY_LINE = 4; // 0x4
    field public static final int MOVEMENT_GRANULARITY_PAGE = 16; // 0x10
    field public static final int MOVEMENT_GRANULARITY_PARAGRAPH = 8; // 0x8
    field public static final int MOVEMENT_GRANULARITY_WORD = 2; // 0x2
  }

  public static class AccessibilityNodeInfoCompat.AccessibilityActionCompat {
    ctor public AccessibilityNodeInfoCompat.AccessibilityActionCompat(int, java.lang.CharSequence);
    method public int getId();
    method public java.lang.CharSequence getLabel();
  }

  public static class AccessibilityNodeInfoCompat.CollectionInfoCompat {
    method public int getColumnCount();
    method public int getRowCount();
    method public boolean isHierarchical();
    method public static android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.CollectionInfoCompat obtain(int, int, boolean, int);
    field public static final int SELECTION_MODE_MULTIPLE = 2; // 0x2
    field public static final int SELECTION_MODE_NONE = 0; // 0x0
    field public static final int SELECTION_MODE_SINGLE = 1; // 0x1
  }

  public static class AccessibilityNodeInfoCompat.CollectionItemInfoCompat {
    method public int getColumnIndex();
    method public int getColumnSpan();
    method public int getRowIndex();
    method public int getRowSpan();
    method public boolean isHeading();
    method public boolean isSelected();
    method public static android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.CollectionItemInfoCompat obtain(int, int, int, int, boolean, boolean);
  }

  public static class AccessibilityNodeInfoCompat.RangeInfoCompat {
    method public float getCurrent();
    method public float getMax();
    method public float getMin();
    method public int getType();
    field public static final int RANGE_TYPE_FLOAT = 1; // 0x1
    field public static final int RANGE_TYPE_INT = 0; // 0x0
    field public static final int RANGE_TYPE_PERCENT = 2; // 0x2
  }

  public class AccessibilityNodeProviderCompat {
    ctor public AccessibilityNodeProviderCompat();
    ctor public AccessibilityNodeProviderCompat(java.lang.Object);
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat createAccessibilityNodeInfo(int);
    method public java.util.List<android.support.v4.view.accessibility.AccessibilityNodeInfoCompat> findAccessibilityNodeInfosByText(java.lang.String, int);
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat findFocus(int);
    method public java.lang.Object getProvider();
    method public boolean performAction(int, int, android.os.Bundle);
  }

  public class AccessibilityRecordCompat {
    ctor public deprecated AccessibilityRecordCompat(java.lang.Object);
    method public int getAddedCount();
    method public java.lang.CharSequence getBeforeText();
    method public java.lang.CharSequence getClassName();
    method public java.lang.CharSequence getContentDescription();
    method public int getCurrentItemIndex();
    method public int getFromIndex();
    method public deprecated java.lang.Object getImpl();
    method public int getItemCount();
    method public int getMaxScrollX();
    method public int getMaxScrollY();
    method public android.os.Parcelable getParcelableData();
    method public int getRemovedCount();
    method public int getScrollX();
    method public int getScrollY();
    method public android.support.v4.view.accessibility.AccessibilityNodeInfoCompat getSource();
    method public java.util.List<java.lang.CharSequence> getText();
    method public int getToIndex();
    method public int getWindowId();
    method public boolean isChecked();
    method public boolean isEnabled();
    method public boolean isFullScreen();
    method public boolean isPassword();
    method public boolean isScrollable();
    method public static android.support.v4.view.accessibility.AccessibilityRecordCompat obtain(android.support.v4.view.accessibility.AccessibilityRecordCompat);
    method public static android.support.v4.view.accessibility.AccessibilityRecordCompat obtain();
    method public void recycle();
    method public void setAddedCount(int);
    method public void setBeforeText(java.lang.CharSequence);
    method public void setChecked(boolean);
    method public void setClassName(java.lang.CharSequence);
    method public void setContentDescription(java.lang.CharSequence);
    method public void setCurrentItemIndex(int);
    method public void setEnabled(boolean);
    method public void setFromIndex(int);
    method public void setFullScreen(boolean);
    method public void setItemCount(int);
    method public void setMaxScrollX(int);
    method public void setMaxScrollY(int);
    method public void setParcelableData(android.os.Parcelable);
    method public void setPassword(boolean);
    method public void setRemovedCount(int);
    method public void setScrollX(int);
    method public void setScrollY(int);
    method public void setScrollable(boolean);
    method public void setSource(android.view.View);
    method public void setSource(android.view.View, int);
    method public void setToIndex(int);
  }

}

package android.support.v4.view.animation {

  public class FastOutLinearInInterpolator extends android.support.v4.view.animation.LookupTableInterpolator {
    ctor public FastOutLinearInInterpolator();
  }

  public class FastOutSlowInInterpolator extends android.support.v4.view.animation.LookupTableInterpolator {
    ctor public FastOutSlowInInterpolator();
  }

  public class LinearOutSlowInInterpolator extends android.support.v4.view.animation.LookupTableInterpolator {
    ctor public LinearOutSlowInInterpolator();
  }

   abstract class LookupTableInterpolator implements android.view.animation.Interpolator {
    ctor public LookupTableInterpolator(float[]);
    method public float getInterpolation(float);
  }

  public class PathInterpolatorCompat {
    method public static android.view.animation.Interpolator create(android.graphics.Path);
    method public static android.view.animation.Interpolator create(float, float);
    method public static android.view.animation.Interpolator create(float, float, float, float);
  }

}

package android.support.v4.widget {

  public abstract class AutoScrollHelper implements android.view.View.OnTouchListener {
    ctor public AutoScrollHelper(android.view.View);
    method public abstract boolean canTargetScrollHorizontally(int);
    method public abstract boolean canTargetScrollVertically(int);
    method public boolean isEnabled();
    method public boolean isExclusive();
    method public boolean onTouch(android.view.View, android.view.MotionEvent);
    method public abstract void scrollTargetBy(int, int);
    method public android.support.v4.widget.AutoScrollHelper setActivationDelay(int);
    method public android.support.v4.widget.AutoScrollHelper setEdgeType(int);
    method public android.support.v4.widget.AutoScrollHelper setEnabled(boolean);
    method public android.support.v4.widget.AutoScrollHelper setExclusive(boolean);
    method public android.support.v4.widget.AutoScrollHelper setMaximumEdges(float, float);
    method public android.support.v4.widget.AutoScrollHelper setMaximumVelocity(float, float);
    method public android.support.v4.widget.AutoScrollHelper setMinimumVelocity(float, float);
    method public android.support.v4.widget.AutoScrollHelper setRampDownDuration(int);
    method public android.support.v4.widget.AutoScrollHelper setRampUpDuration(int);
    method public android.support.v4.widget.AutoScrollHelper setRelativeEdges(float, float);
    method public android.support.v4.widget.AutoScrollHelper setRelativeVelocity(float, float);
    field public static final int EDGE_TYPE_INSIDE = 0; // 0x0
    field public static final int EDGE_TYPE_INSIDE_EXTEND = 1; // 0x1
    field public static final int EDGE_TYPE_OUTSIDE = 2; // 0x2
    field public static final float NO_MAX = 3.4028235E38f;
    field public static final float NO_MIN = 0.0f;
    field public static final float RELATIVE_UNSPECIFIED = 0.0f;
  }

  public class ContentLoadingProgressBar extends android.widget.ProgressBar {
    ctor public ContentLoadingProgressBar(android.content.Context);
    ctor public ContentLoadingProgressBar(android.content.Context, android.util.AttributeSet);
    method public void hide();
    method public void onAttachedToWindow();
    method public void onDetachedFromWindow();
    method public void show();
  }

  public abstract class CursorAdapter extends android.widget.BaseAdapter {
    ctor public deprecated CursorAdapter(android.content.Context, android.database.Cursor);
    ctor public CursorAdapter(android.content.Context, android.database.Cursor, boolean);
    ctor public CursorAdapter(android.content.Context, android.database.Cursor, int);
    method public abstract void bindView(android.view.View, android.content.Context, android.database.Cursor);
    method public void changeCursor(android.database.Cursor);
    method public java.lang.CharSequence convertToString(android.database.Cursor);
    method public int getCount();
    method public android.database.Cursor getCursor();
    method public android.widget.Filter getFilter();
    method public android.widget.FilterQueryProvider getFilterQueryProvider();
    method public java.lang.Object getItem(int);
    method public long getItemId(int);
    method public android.view.View getView(int, android.view.View, android.view.ViewGroup);
    method protected deprecated void init(android.content.Context, android.database.Cursor, boolean);
    method public android.view.View newDropDownView(android.content.Context, android.database.Cursor, android.view.ViewGroup);
    method public abstract android.view.View newView(android.content.Context, android.database.Cursor, android.view.ViewGroup);
    method protected void onContentChanged();
    method public android.database.Cursor runQueryOnBackgroundThread(java.lang.CharSequence);
    method public void setFilterQueryProvider(android.widget.FilterQueryProvider);
    method public android.database.Cursor swapCursor(android.database.Cursor);
    field public static final deprecated int FLAG_AUTO_REQUERY = 1; // 0x1
    field public static final int FLAG_REGISTER_CONTENT_OBSERVER = 2; // 0x2
  }

  public class DrawerLayout extends android.view.ViewGroup {
    ctor public DrawerLayout(android.content.Context);
    ctor public DrawerLayout(android.content.Context, android.util.AttributeSet);
    ctor public DrawerLayout(android.content.Context, android.util.AttributeSet, int);
    method public void closeDrawer(android.view.View);
    method public void closeDrawer(int);
    method public void closeDrawers();
    method public int getDrawerLockMode(int);
    method public int getDrawerLockMode(android.view.View);
    method public java.lang.CharSequence getDrawerTitle(int);
    method public android.graphics.drawable.Drawable getStatusBarBackgroundDrawable();
    method public boolean isDrawerOpen(android.view.View);
    method public boolean isDrawerOpen(int);
    method public boolean isDrawerVisible(android.view.View);
    method public boolean isDrawerVisible(int);
    method public void onDraw(android.graphics.Canvas);
    method protected void onLayout(boolean, int, int, int, int);
    method public void openDrawer(android.view.View);
    method public void openDrawer(int);
    method public void setDrawerListener(android.support.v4.widget.DrawerLayout.DrawerListener);
    method public void setDrawerLockMode(int);
    method public void setDrawerLockMode(int, int);
    method public void setDrawerLockMode(int, android.view.View);
    method public void setDrawerShadow(android.graphics.drawable.Drawable, int);
    method public void setDrawerShadow(int, int);
    method public void setDrawerTitle(int, java.lang.CharSequence);
    method public void setScrimColor(int);
    method public void setStatusBarBackground(android.graphics.drawable.Drawable);
    method public void setStatusBarBackground(int);
    method public void setStatusBarBackgroundColor(int);
    field public static final int LOCK_MODE_LOCKED_CLOSED = 1; // 0x1
    field public static final int LOCK_MODE_LOCKED_OPEN = 2; // 0x2
    field public static final int LOCK_MODE_UNLOCKED = 0; // 0x0
    field public static final int STATE_DRAGGING = 1; // 0x1
    field public static final int STATE_IDLE = 0; // 0x0
    field public static final int STATE_SETTLING = 2; // 0x2
  }

  public static abstract interface DrawerLayout.DrawerListener {
    method public abstract void onDrawerClosed(android.view.View);
    method public abstract void onDrawerOpened(android.view.View);
    method public abstract void onDrawerSlide(android.view.View, float);
    method public abstract void onDrawerStateChanged(int);
  }

  public static class DrawerLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
    ctor public DrawerLayout.LayoutParams(android.content.Context, android.util.AttributeSet);
    ctor public DrawerLayout.LayoutParams(int, int);
    ctor public DrawerLayout.LayoutParams(int, int, int);
    ctor public DrawerLayout.LayoutParams(android.support.v4.widget.DrawerLayout.LayoutParams);
    ctor public DrawerLayout.LayoutParams(android.view.ViewGroup.LayoutParams);
    ctor public DrawerLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams);
    field public int gravity;
  }

  protected static class DrawerLayout.SavedState extends android.view.View.BaseSavedState {
    ctor public DrawerLayout.SavedState(android.os.Parcel);
    ctor public DrawerLayout.SavedState(android.os.Parcelable);
    field public static final android.os.Parcelable.Creator<android.support.v4.widget.DrawerLayout.SavedState> CREATOR;
  }

  public static abstract class DrawerLayout.SimpleDrawerListener implements android.support.v4.widget.DrawerLayout.DrawerListener {
    ctor public DrawerLayout.SimpleDrawerListener();
    method public void onDrawerClosed(android.view.View);
    method public void onDrawerOpened(android.view.View);
    method public void onDrawerSlide(android.view.View, float);
    method public void onDrawerStateChanged(int);
  }

  public class EdgeEffectCompat {
    ctor public EdgeEffectCompat(android.content.Context);
    method public boolean draw(android.graphics.Canvas);
    method public void finish();
    method public boolean isFinished();
    method public boolean onAbsorb(int);
    method public deprecated boolean onPull(float);
    method public boolean onPull(float, float);
    method public boolean onRelease();
    method public void setSize(int, int);
  }

  public abstract class ExploreByTouchHelper extends android.support.v4.view.AccessibilityDelegateCompat {
    ctor public ExploreByTouchHelper(android.view.View);
    method public boolean dispatchHoverEvent(android.view.MotionEvent);
    method public int getFocusedVirtualView();
    method protected abstract int getVirtualViewAt(float, float);
    method protected abstract void getVisibleVirtualViews(java.util.List<java.lang.Integer>);
    method public void invalidateRoot();
    method public void invalidateVirtualView(int);
    method protected abstract boolean onPerformActionForVirtualView(int, int, android.os.Bundle);
    method protected abstract void onPopulateEventForVirtualView(int, android.view.accessibility.AccessibilityEvent);
    method protected abstract void onPopulateNodeForVirtualView(int, android.support.v4.view.accessibility.AccessibilityNodeInfoCompat);
    method public boolean sendEventForVirtualView(int, int);
    field public static final int INVALID_ID = -2147483648; // 0x80000000
  }

  public class ListPopupWindowCompat {
    method public static android.view.View.OnTouchListener createDragToOpenListener(java.lang.Object, android.view.View);
  }

  public class ListViewAutoScrollHelper extends android.support.v4.widget.AutoScrollHelper {
    ctor public ListViewAutoScrollHelper(android.widget.ListView);
    method public boolean canTargetScrollHorizontally(int);
    method public boolean canTargetScrollVertically(int);
    method public void scrollTargetBy(int, int);
  }

  public class NestedScrollView extends android.widget.FrameLayout implements android.support.v4.view.NestedScrollingChild android.support.v4.view.NestedScrollingParent {
    ctor public NestedScrollView(android.content.Context);
    ctor public NestedScrollView(android.content.Context, android.util.AttributeSet);
    ctor public NestedScrollView(android.content.Context, android.util.AttributeSet, int);
    method public boolean arrowScroll(int);
    method protected int computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect);
    method public boolean executeKeyEvent(android.view.KeyEvent);
    method public void fling(int);
    method public boolean fullScroll(int);
    method public int getMaxScrollAmount();
    method public boolean isFillViewport();
    method public boolean isSmoothScrollingEnabled();
    method public void onAttachedToWindow();
    method public boolean pageScroll(int);
    method public void setFillViewport(boolean);
    method public void setSmoothScrollingEnabled(boolean);
    method public final void smoothScrollBy(int, int);
    method public final void smoothScrollTo(int, int);
  }

  public class PopupMenuCompat {
    method public static android.view.View.OnTouchListener getDragToOpenListener(java.lang.Object);
  }

  public class PopupWindowCompat {
    method public static void showAsDropDown(android.widget.PopupWindow, android.view.View, int, int, int);
  }

  public abstract class ResourceCursorAdapter extends android.support.v4.widget.CursorAdapter {
    ctor public deprecated ResourceCursorAdapter(android.content.Context, int, android.database.Cursor);
    ctor public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor, boolean);
    ctor public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor, int);
    method public android.view.View newView(android.content.Context, android.database.Cursor, android.view.ViewGroup);
    method public void setDropDownViewResource(int);
    method public void setViewResource(int);
  }

  public class ScrollerCompat {
    method public void abortAnimation();
    method public boolean computeScrollOffset();
    method public static android.support.v4.widget.ScrollerCompat create(android.content.Context);
    method public static android.support.v4.widget.ScrollerCompat create(android.content.Context, android.view.animation.Interpolator);
    method public void fling(int, int, int, int, int, int, int, int);
    method public void fling(int, int, int, int, int, int, int, int, int, int);
    method public float getCurrVelocity();
    method public int getCurrX();
    method public int getCurrY();
    method public int getFinalX();
    method public int getFinalY();
    method public boolean isFinished();
    method public boolean isOverScrolled();
    method public void notifyHorizontalEdgeReached(int, int, int);
    method public void notifyVerticalEdgeReached(int, int, int);
    method public void startScroll(int, int, int, int);
    method public void startScroll(int, int, int, int, int);
  }

  public class SearchViewCompat {
    method public static java.lang.CharSequence getQuery(android.view.View);
    method public static boolean isIconified(android.view.View);
    method public static boolean isQueryRefinementEnabled(android.view.View);
    method public static boolean isSubmitButtonEnabled(android.view.View);
    method public static android.view.View newSearchView(android.content.Context);
    method public static void setIconified(android.view.View, boolean);
    method public static void setImeOptions(android.view.View, int);
    method public static void setInputType(android.view.View, int);
    method public static void setMaxWidth(android.view.View, int);
    method public static void setOnCloseListener(android.view.View, android.support.v4.widget.SearchViewCompat.OnCloseListenerCompat);
    method public static void setOnQueryTextListener(android.view.View, android.support.v4.widget.SearchViewCompat.OnQueryTextListenerCompat);
    method public static void setQuery(android.view.View, java.lang.CharSequence, boolean);
    method public static void setQueryHint(android.view.View, java.lang.CharSequence);
    method public static void setQueryRefinementEnabled(android.view.View, boolean);
    method public static void setSearchableInfo(android.view.View, android.content.ComponentName);
    method public static void setSubmitButtonEnabled(android.view.View, boolean);
  }

  public static abstract class SearchViewCompat.OnCloseListenerCompat {
    ctor public SearchViewCompat.OnCloseListenerCompat();
    method public boolean onClose();
  }

  public static abstract class SearchViewCompat.OnQueryTextListenerCompat {
    ctor public SearchViewCompat.OnQueryTextListenerCompat();
    method public boolean onQueryTextChange(java.lang.String);
    method public boolean onQueryTextSubmit(java.lang.String);
  }

  public class SimpleCursorAdapter extends android.support.v4.widget.ResourceCursorAdapter {
    ctor public deprecated SimpleCursorAdapter(android.content.Context, int, android.database.Cursor, java.lang.String[], int[]);
    ctor public SimpleCursorAdapter(android.content.Context, int, android.database.Cursor, java.lang.String[], int[], int);
    method public void bindView(android.view.View, android.content.Context, android.database.Cursor);
    method public void changeCursorAndColumns(android.database.Cursor, java.lang.String[], int[]);
    method public android.support.v4.widget.SimpleCursorAdapter.CursorToStringConverter getCursorToStringConverter();
    method public int getStringConversionColumn();
    method public android.support.v4.widget.SimpleCursorAdapter.ViewBinder getViewBinder();
    method public void setCursorToStringConverter(android.support.v4.widget.SimpleCursorAdapter.CursorToStringConverter);
    method public void setStringConversionColumn(int);
    method public void setViewBinder(android.support.v4.widget.SimpleCursorAdapter.ViewBinder);
    method public void setViewImage(android.widget.ImageView, java.lang.String);
    method public void setViewText(android.widget.TextView, java.lang.String);
  }

  public static abstract interface SimpleCursorAdapter.CursorToStringConverter {
    method public abstract java.lang.CharSequence convertToString(android.database.Cursor);
  }

  public static abstract interface SimpleCursorAdapter.ViewBinder {
    method public abstract boolean setViewValue(android.view.View, android.database.Cursor, int);
  }

  public class SlidingPaneLayout extends android.view.ViewGroup {
    ctor public SlidingPaneLayout(android.content.Context);
    ctor public SlidingPaneLayout(android.content.Context, android.util.AttributeSet);
    ctor public SlidingPaneLayout(android.content.Context, android.util.AttributeSet, int);
    method protected boolean canScroll(android.view.View, boolean, int, int, int);
    method public deprecated boolean canSlide();
    method public boolean closePane();
    method public int getCoveredFadeColor();
    method public int getParallaxDistance();
    method public int getSliderFadeColor();
    method public boolean isOpen();
    method public boolean isSlideable();
    method protected void onLayout(boolean, int, int, int, int);
    method public boolean openPane();
    method public void setCoveredFadeColor(int);
    method public void setPanelSlideListener(android.support.v4.widget.SlidingPaneLayout.PanelSlideListener);
    method public void setParallaxDistance(int);
    method public deprecated void setShadowDrawable(android.graphics.drawable.Drawable);
    method public void setShadowDrawableLeft(android.graphics.drawable.Drawable);
    method public void setShadowDrawableRight(android.graphics.drawable.Drawable);
    method public deprecated void setShadowResource(int);
    method public void setShadowResourceLeft(int);
    method public void setShadowResourceRight(int);
    method public void setSliderFadeColor(int);
    method public deprecated void smoothSlideClosed();
    method public deprecated void smoothSlideOpen();
  }

  public static class SlidingPaneLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams {
    ctor public SlidingPaneLayout.LayoutParams();
    ctor public SlidingPaneLayout.LayoutParams(int, int);
    ctor public SlidingPaneLayout.LayoutParams(android.view.ViewGroup.LayoutParams);
    ctor public SlidingPaneLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams);
    ctor public SlidingPaneLayout.LayoutParams(android.support.v4.widget.SlidingPaneLayout.LayoutParams);
    ctor public SlidingPaneLayout.LayoutParams(android.content.Context, android.util.AttributeSet);
    field public float weight;
  }

  public static abstract interface SlidingPaneLayout.PanelSlideListener {
    method public abstract void onPanelClosed(android.view.View);
    method public abstract void onPanelOpened(android.view.View);
    method public abstract void onPanelSlide(android.view.View, float);
  }

  public static class SlidingPaneLayout.SimplePanelSlideListener implements android.support.v4.widget.SlidingPaneLayout.PanelSlideListener {
    ctor public SlidingPaneLayout.SimplePanelSlideListener();
    method public void onPanelClosed(android.view.View);
    method public void onPanelOpened(android.view.View);
    method public void onPanelSlide(android.view.View, float);
  }

  public class Space extends android.view.View {
    ctor public Space(android.content.Context, android.util.AttributeSet, int);
    ctor public Space(android.content.Context, android.util.AttributeSet);
    ctor public Space(android.content.Context);
  }

  public class SwipeRefreshLayout extends android.view.ViewGroup {
    ctor public SwipeRefreshLayout(android.content.Context);
    ctor public SwipeRefreshLayout(android.content.Context, android.util.AttributeSet);
    method public boolean canChildScrollUp();
    method public int getProgressCircleDiameter();
    method public boolean isRefreshing();
    method protected void onLayout(boolean, int, int, int, int);
    method public void onMeasure(int, int);
    method public deprecated void setColorScheme(int...);
    method public void setColorSchemeColors(int...);
    method public void setColorSchemeResources(int...);
    method public void setDistanceToTriggerSync(int);
    method public void setOnRefreshListener(android.support.v4.widget.SwipeRefreshLayout.OnRefreshListener);
    method public deprecated void setProgressBackgroundColor(int);
    method public void setProgressBackgroundColorSchemeColor(int);
    method public void setProgressBackgroundColorSchemeResource(int);
    method public void setProgressViewEndTarget(boolean, int);
    method public void setProgressViewOffset(boolean, int, int);
    method public void setRefreshing(boolean);
    method public void setSize(int);
    field public static final int DEFAULT = 1; // 0x1
    field public static final int LARGE = 0; // 0x0
    field protected int mFrom;
    field protected int mOriginalOffsetTop;
  }

  public static abstract interface SwipeRefreshLayout.OnRefreshListener {
    method public abstract void onRefresh();
  }

  public class TextViewCompat {
    method public static void setCompoundDrawablesRelative(android.widget.TextView, android.graphics.drawable.Drawable, android.graphics.drawable.Drawable, android.graphics.drawable.Drawable, android.graphics.drawable.Drawable);
    method public static void setCompoundDrawablesRelativeWithIntrinsicBounds(android.widget.TextView, android.graphics.drawable.Drawable, android.graphics.drawable.Drawable, android.graphics.drawable.Drawable, android.graphics.drawable.Drawable);
    method public static void setCompoundDrawablesRelativeWithIntrinsicBounds(android.widget.TextView, int, int, int, int);
  }

  public class ViewDragHelper {
    method public void abort();
    method protected boolean canScroll(android.view.View, boolean, int, int, int, int);
    method public void cancel();
    method public void captureChildView(android.view.View, int);
    method public boolean checkTouchSlop(int);
    method public boolean checkTouchSlop(int, int);
    method public boolean continueSettling(boolean);
    method public static android.support.v4.widget.ViewDragHelper create(android.view.ViewGroup, android.support.v4.widget.ViewDragHelper.Callback);
    method public static android.support.v4.widget.ViewDragHelper create(android.view.ViewGroup, float, android.support.v4.widget.ViewDragHelper.Callback);
    method public android.view.View findTopChildUnder(int, int);
    method public void flingCapturedView(int, int, int, int);
    method public int getActivePointerId();
    method public android.view.View getCapturedView();
    method public int getEdgeSize();
    method public float getMinVelocity();
    method public int getTouchSlop();
    method public int getViewDragState();
    method public boolean isCapturedViewUnder(int, int);
    method public boolean isEdgeTouched(int);
    method public boolean isEdgeTouched(int, int);
    method public boolean isPointerDown(int);
    method public boolean isViewUnder(android.view.View, int, int);
    method public void processTouchEvent(android.view.MotionEvent);
    method public void setEdgeTrackingEnabled(int);
    method public void setMinVelocity(float);
    method public boolean settleCapturedViewAt(int, int);
    method public boolean shouldInterceptTouchEvent(android.view.MotionEvent);
    method public boolean smoothSlideViewTo(android.view.View, int, int);
    field public static final int DIRECTION_ALL = 3; // 0x3
    field public static final int DIRECTION_HORIZONTAL = 1; // 0x1
    field public static final int DIRECTION_VERTICAL = 2; // 0x2
    field public static final int EDGE_ALL = 15; // 0xf
    field public static final int EDGE_BOTTOM = 8; // 0x8
    field public static final int EDGE_LEFT = 1; // 0x1
    field public static final int EDGE_RIGHT = 2; // 0x2
    field public static final int EDGE_TOP = 4; // 0x4
    field public static final int INVALID_POINTER = -1; // 0xffffffff
    field public static final int STATE_DRAGGING = 1; // 0x1
    field public static final int STATE_IDLE = 0; // 0x0
    field public static final int STATE_SETTLING = 2; // 0x2
  }

  public static abstract class ViewDragHelper.Callback {
    ctor public ViewDragHelper.Callback();
    method public int clampViewPositionHorizontal(android.view.View, int, int);
    method public int clampViewPositionVertical(android.view.View, int, int);
    method public int getOrderedChildIndex(int);
    method public int getViewHorizontalDragRange(android.view.View);
    method public int getViewVerticalDragRange(android.view.View);
    method public void onEdgeDragStarted(int, int);
    method public boolean onEdgeLock(int);
    method public void onEdgeTouched(int, int);
    method public void onViewCaptured(android.view.View, int);
    method public void onViewDragStateChanged(int);
    method public void onViewPositionChanged(android.view.View, int, int, int, int);
    method public void onViewReleased(android.view.View, float, float);
    method public abstract boolean tryCaptureView(android.view.View, int);
  }

}

