From 438b292435b37ee0d5c3fae933b329ca9de74fc2 Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Tue, 14 Feb 2023 11:45:14 -1000
Subject: [PATCH 1/9] =?UTF-8?q?=EF=BB=BF[Mono.Android]=20Bind=20Android=20?=
 =?UTF-8?q?14=20DP=201.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Configuration.props                           |     6 +-
 .../CheckApiCompatibility.cs                  |     1 +
 build-tools/api-merge/merge-configuration.xml |     2 +
 build-tools/api-xml-adjuster/Makefile         |     2 +-
 build-tools/automation/azure-pipelines.yaml   |     2 +-
 .../installers/create-installers.targets      |     2 +-
 .../ConfigAndData/BuildAndroidPlatforms.cs    |     1 +
 .../Dependencies/AndroidToolchain.cs          |     1 +
 .../Mono.Android.Runtime.csproj               |     4 +-
 .../Android.Graphics/PathIterator.cs          |    16 +
 src/Mono.Android/Mono.Android.csproj          |     1 +
 .../Profiles/api-UpsideDownCake.params.txt    | 37431 ++++++++++++++++
 src/Mono.Android/metadata                     |    13 +
 .../WorkloadManifest.in.json                  |    32 +
 .../acceptable-breakages-v13.0.99.txt         |    15 +
 15 files changed, 37521 insertions(+), 8 deletions(-)
 create mode 100644 src/Mono.Android/Android.Graphics/PathIterator.cs
 create mode 100644 src/Mono.Android/Profiles/api-UpsideDownCake.params.txt
 create mode 100644 tests/api-compatibility/acceptable-breakages-v13.0.99.txt

diff --git a/Configuration.props b/Configuration.props
index 5ba6d2e4297..b817667364a 100644
--- a/Configuration.props
+++ b/Configuration.props
@@ -29,9 +29,9 @@
     <AndroidLatestStablePlatformId Condition="'$(AndroidLatestStablePlatformId)' == ''">$(AndroidLatestStableApiLevel)</AndroidLatestStablePlatformId>
     <AndroidLatestStableFrameworkVersion Condition="'$(AndroidLatestStableFrameworkVersion)'==''">v13.0</AndroidLatestStableFrameworkVersion>
     <!-- *Latest* *unstable* API level binding that we support; this can be the same as *stable* -->
-    <AndroidLatestUnstableApiLevel Condition="'$(AndroidLatestUnstableApiLevel)' == ''">$(AndroidLatestStableApiLevel)</AndroidLatestUnstableApiLevel>
-    <AndroidLatestUnstablePlatformId Condition="'$(AndroidLatestUnstablePlatformId)' == ''">Tiramisu</AndroidLatestUnstablePlatformId>
-    <AndroidLatestUnstableFrameworkVersion Condition="'$(AndroidLatestUnstableFrameworkVersion)'==''">v13.0</AndroidLatestUnstableFrameworkVersion>
+    <AndroidLatestUnstableApiLevel Condition="'$(AndroidLatestUnstableApiLevel)' == ''">34</AndroidLatestUnstableApiLevel>
+    <AndroidLatestUnstablePlatformId Condition="'$(AndroidLatestUnstablePlatformId)' == ''">UpsideDownCake</AndroidLatestUnstablePlatformId>
+    <AndroidLatestUnstableFrameworkVersion Condition="'$(AndroidLatestUnstableFrameworkVersion)'==''">v13.0.99</AndroidLatestUnstableFrameworkVersion>
     <!-- The default API level used for $(TargetPlatformVersion) -->
     <AndroidDefaultTargetDotnetApiLevel Condition=" '$(AndroidDefaultTargetDotnetApiLevel)' == '' ">33</AndroidDefaultTargetDotnetApiLevel>
     <!-- The API level and TargetFrameworkVersion for the default Mono.Android.dll build -->
diff --git a/build-tools/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/CheckApiCompatibility.cs b/build-tools/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/CheckApiCompatibility.cs
index 421bde4f589..e02c42229b1 100644
--- a/build-tools/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/CheckApiCompatibility.cs
+++ b/build-tools/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks/CheckApiCompatibility.cs
@@ -31,6 +31,7 @@ public sealed class CheckApiCompatibility : Task
 			{ "v12.0", "v11.0" },
 			{ "v12.1", "v12.0" },
 			{ "v13.0", "v12.1" },
+			{ "v13.0.99", "v13.0" },
 		};
 
 		static readonly string assemblyToValidate = "Mono.Android.dll";
diff --git a/build-tools/api-merge/merge-configuration.xml b/build-tools/api-merge/merge-configuration.xml
index 85c70df6228..411be8f9d78 100644
--- a/build-tools/api-merge/merge-configuration.xml
+++ b/build-tools/api-merge/merge-configuration.xml
@@ -22,6 +22,7 @@
     <File Path="api-31.xml.in" Level="31" />
     <File Path="api-32.xml.in" Level="32" />
     <File Path="api-33.xml.in" Level="33" />
+    <File Path="api-UpsideDownCake.xml.in" Level="34" />
   </Inputs>
   <Outputs>
     <File Path="api-19.xml" LastLevel="19" />
@@ -39,5 +40,6 @@
     <File Path="api-31.xml" LastLevel="31" />
     <File Path="api-32.xml" LastLevel="32" />
     <File Path="api-33.xml" LastLevel="33" />
+    <File Path="api-UpsideDownCake.xml" LastLevel="34" />
   </Outputs>
 </Configuration>
\ No newline at end of file
diff --git a/build-tools/api-xml-adjuster/Makefile b/build-tools/api-xml-adjuster/Makefile
index ed4b8897ab3..b1a51adc39f 100644
--- a/build-tools/api-xml-adjuster/Makefile
+++ b/build-tools/api-xml-adjuster/Makefile
@@ -17,7 +17,7 @@ API_XML_TOOL = $(BUILDBIN)/api-xml-adjuster.exe
 RUNTIME = mono --debug
 RUN_CLASS_PARSE = $(RUNTIME) $(CLASS_PARSE)
 RUN_API_XML_TOOL = $(RUNTIME) $(API_XML_TOOL)
-API_LEVELS = 33
+API_LEVELS = 33 UpsideDownCake
 
 XML_OUTPUT_DIR = .
 
diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml
index 1245f11a616..788bf41bf4d 100644
--- a/build-tools/automation/azure-pipelines.yaml
+++ b/build-tools/automation/azure-pipelines.yaml
@@ -58,7 +58,7 @@ variables:
 - name: ExcludedNUnitCategories
   value: '& cat != DotNetIgnore & cat != HybridAOT & cat != MkBundle & cat != MonoSymbolicate & cat != PackagesConfig & cat != StaticProject & cat != SystemApplication'
 - name: DefaultTestSdkPlatforms  # Comma-separated SDK Platform(s) to install on test agents (no spaces)
-  value: 33
+  value: 33,UpsideDownCake
 - ${{ if eq(variables['Build.DefinitionName'], 'Xamarin.Android-Private') }}:
   - group: AzureDevOps-Artifact-Feeds-Pats
   - group: DotNet-MSRC-Storage
diff --git a/build-tools/installers/create-installers.targets b/build-tools/installers/create-installers.targets
index f5d9ae9cf6c..6db89aba64b 100644
--- a/build-tools/installers/create-installers.targets
+++ b/build-tools/installers/create-installers.targets
@@ -37,7 +37,7 @@
   <Target Name="_FindFrameworkDirs">
     <ItemGroup>
       <_FrameworkDirs Include="@(AndroidApiInfo->'$(FrameworkSrcDir)%(Identity)\')" />
-      <_FrameworkDirsThatExist Condition="Exists('%(Identity)')" Include="@(_FrameworkDirs)" />
+      <_FrameworkDirsThatExist Condition="Exists('%(Identity)')" Include="@(_FrameworkDirs)" Exclude="$(FrameworkSrcDir)v13.0.99\" />
       <_EarlierFrameworkDir Include="@(_FrameworkDirsThatExist)" Exclude="$(_LatestStableFrameworkDir)" />
     </ItemGroup>
   </Target>
diff --git a/build-tools/xaprepare/xaprepare/ConfigAndData/BuildAndroidPlatforms.cs b/build-tools/xaprepare/xaprepare/ConfigAndData/BuildAndroidPlatforms.cs
index 57e13dbf89a..fd32ad81a3d 100644
--- a/build-tools/xaprepare/xaprepare/ConfigAndData/BuildAndroidPlatforms.cs
+++ b/build-tools/xaprepare/xaprepare/ConfigAndData/BuildAndroidPlatforms.cs
@@ -44,6 +44,7 @@ class BuildAndroidPlatforms
 			new AndroidPlatform (apiName: "S",                      apiLevel: 31, platformID: "31",  include: "v12.0"),
 			new AndroidPlatform (apiName: "Sv2",                    apiLevel: 32, platformID: "32",  include: "v12.1"),
 			new AndroidPlatform (apiName: "Tiramisu",               apiLevel: 33, platformID: "33",  include: "v13.0",   framework: "v13.0"),
+			new AndroidPlatform (apiName: "UpsideDownCake",         apiLevel: 34, platformID: "UpsideDownCake",   include: "v13.0.99",framework: "v13.0.99", stable: false),
 		};
 
 		public static readonly Dictionary<string, uint> NdkMinimumAPIMap = new Dictionary<string, uint> {
diff --git a/build-tools/xaprepare/xaprepare/ConfigAndData/Dependencies/AndroidToolchain.cs b/build-tools/xaprepare/xaprepare/ConfigAndData/Dependencies/AndroidToolchain.cs
index 8a2a190bbbd..a7863edb155 100644
--- a/build-tools/xaprepare/xaprepare/ConfigAndData/Dependencies/AndroidToolchain.cs
+++ b/build-tools/xaprepare/xaprepare/ConfigAndData/Dependencies/AndroidToolchain.cs
@@ -73,6 +73,7 @@ public AndroidToolchain ()
 				new AndroidPlatformComponent ("platform-31_r01",   apiLevel: "31", pkgRevision: "1"),
 				new AndroidPlatformComponent ("platform-32_r01",   apiLevel: "32", pkgRevision: "1"),
 				new AndroidPlatformComponent ("platform-33_r01",   apiLevel: "33", pkgRevision: "1"),
+				new AndroidPlatformComponent ("platform-UpsideDownCake_r01",   apiLevel: "UpsideDownCake", pkgRevision: "1"),
 
 				new AndroidToolchainComponent ("sources-33_r01",
 					destDir: Path.Combine ("sources", "android-33"),
diff --git a/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj b/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
index 62e90145971..c8d9755eb58 100644
--- a/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
+++ b/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
@@ -31,11 +31,11 @@
 
   <Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
 
-  <!-- Only build the .NET 6+ version of 'Mono.Android.Export.dll' for the latest stable Android version. -->
+  <!-- Only build the .NET 6+ version of 'Mono.Android.Export.dll' for the latest stable Android version.
   <PropertyGroup Condition=" '$(AndroidApiLevel)' != '$(AndroidLatestStableApiLevel)' ">
     <BuildDependsOn></BuildDependsOn>
   </PropertyGroup>
-
+ -->
   <!-- Copy .NET ref/runtime assemblies to bin/$(Configuration)/dotnet/packs folder -->
   <PropertyGroup Condition=" '$(AndroidApiLevel)' == '$(AndroidLatestStableApiLevel)' ">
     <BuildDependsOn>
diff --git a/src/Mono.Android/Android.Graphics/PathIterator.cs b/src/Mono.Android/Android.Graphics/PathIterator.cs
new file mode 100644
index 00000000000..f0639171c08
--- /dev/null
+++ b/src/Mono.Android/Android.Graphics/PathIterator.cs
@@ -0,0 +1,16 @@
+using System;
+using Android.Runtime;
+
+namespace Android.Graphics
+{	partial class PathIterator
+	{
+
+#if ANDROID_34
+		// This implements an interface method that should be marked as 'default' but isn't.
+		public void Remove ()
+		{
+			throw new Java.Lang.UnsupportedOperationException ();
+		}
+#endif
+	}
+}
diff --git a/src/Mono.Android/Mono.Android.csproj b/src/Mono.Android/Mono.Android.csproj
index aa085c17e26..93b503ec884 100644
--- a/src/Mono.Android/Mono.Android.csproj
+++ b/src/Mono.Android/Mono.Android.csproj
@@ -121,6 +121,7 @@
     <Compile Include="..\..\external\Java.Interop\src\Java.Interop.Tools.JavaCallableWrappers\Java.Interop.Tools.JavaCallableWrappers\Crc64.Table.cs">
       <Link>Crc64.Table.cs</Link>
     </Compile>
+    <Compile Include="Android.Graphics\PathIterator.cs" />
     <Compile Include="Android.Icu\ListFormatter.cs" />
     <Compile Include="Android.Icu\RelativeDateTimeFormatter.cs" />
     <Compile Include="Android.Icu\DateIntervalFormat.cs" />
diff --git a/src/Mono.Android/Profiles/api-UpsideDownCake.params.txt b/src/Mono.Android/Profiles/api-UpsideDownCake.params.txt
new file mode 100644
index 00000000000..67ccc5e90a7
--- /dev/null
+++ b/src/Mono.Android/Profiles/api-UpsideDownCake.params.txt
@@ -0,0 +1,37431 @@
+
+package android
+;---------------------------------------
+
+package android.accessibilityservice
+;---------------------------------------
+  class AccessibilityButtonController
+    registerAccessibilityButtonCallback(android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback callback)
+    registerAccessibilityButtonCallback(android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback callback, android.os.Handler handler)
+    unregisterAccessibilityButtonCallback(android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback callback)
+  class AccessibilityButtonController.AccessibilityButtonCallback
+    onAvailabilityChanged(android.accessibilityservice.AccessibilityButtonController controller, boolean available)
+    onClicked(android.accessibilityservice.AccessibilityButtonController controller)
+  class AccessibilityGestureEvent
+    #ctor(int gestureId, int displayId, java.util.List<android.view.MotionEvent> motionEvents)
+    gestureIdToString(int id)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class AccessibilityService
+    attachAccessibilityOverlayToDisplay(int displayId, android.view.SurfaceControl sc)
+    attachAccessibilityOverlayToWindow(int accessibilityWindowId, android.view.SurfaceControl sc)
+    clearCachedSubtree(android.view.accessibility.AccessibilityNodeInfo node)
+    createDisplayContext(android.view.Display display)
+    createWindowContext(android.view.Display display, int type, android.os.Bundle options)
+    createWindowContext(int type, android.os.Bundle options)
+    dispatchGesture(android.accessibilityservice.GestureDescription gesture, android.accessibilityservice.AccessibilityService.GestureResultCallback callback, android.os.Handler handler)
+    findFocus(int focus)
+    getAccessibilityButtonController(int displayId)
+    getRootInActiveWindow(int prefetchingStrategy)
+    getSystemService(java.lang.String name)
+    getTouchInteractionController(int displayId)
+    isNodeInCache(android.view.accessibility.AccessibilityNodeInfo node)
+    onAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    onBind(android.content.Intent intent)
+    onGesture(android.accessibilityservice.AccessibilityGestureEvent gestureEvent)
+    onGesture(int gestureId)
+    onKeyEvent(android.view.KeyEvent event)
+    onMotionEvent(android.view.MotionEvent event)
+    performGlobalAction(int action)
+    setAccessibilityFocusAppearance(int strokeWidth, int color)
+    setAnimationScale(float scale)
+    setCacheEnabled(boolean enabled)
+    setGestureDetectionPassthroughRegion(int displayId, android.graphics.Region region)
+    setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo info)
+    setTouchExplorationPassthroughRegion(int displayId, android.graphics.Region region)
+    takeScreenshot(int displayId, java.util.concurrent.Executor executor, android.accessibilityservice.AccessibilityService.TakeScreenshotCallback callback)
+    takeScreenshotOfWindow(int accessibilityWindowId, java.util.concurrent.Executor executor, android.accessibilityservice.AccessibilityService.TakeScreenshotCallback callback)
+  class AccessibilityService.GestureResultCallback
+    onCancelled(android.accessibilityservice.GestureDescription gestureDescription)
+    onCompleted(android.accessibilityservice.GestureDescription gestureDescription)
+  class AccessibilityService.MagnificationController
+    addListener(android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener listener)
+    addListener(android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener listener, android.os.Handler handler)
+    removeListener(android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener listener)
+    reset(boolean animate)
+    resetCurrentMagnification(boolean animate)
+    setCenter(float centerX, float centerY, boolean animate)
+    setMagnificationConfig(android.accessibilityservice.MagnificationConfig config, boolean animate)
+    setScale(float scale, boolean animate)
+  interface AccessibilityService.MagnificationController.OnMagnificationChangedListener
+    onMagnificationChanged(android.accessibilityservice.AccessibilityService.MagnificationController controller, android.graphics.Region region, android.accessibilityservice.MagnificationConfig config)
+    onMagnificationChanged(android.accessibilityservice.AccessibilityService.MagnificationController controller, android.graphics.Region region, float scale, float centerX, float centerY)
+  class AccessibilityService.SoftKeyboardController
+    addOnShowModeChangedListener(android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener)
+    addOnShowModeChangedListener(android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener, android.os.Handler handler)
+    removeOnShowModeChangedListener(android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener)
+    setInputMethodEnabled(java.lang.String imeId, boolean enabled)
+    setShowMode(int showMode)
+    switchToInputMethod(java.lang.String imeId)
+  interface AccessibilityService.SoftKeyboardController.OnShowModeChangedListener
+    onShowModeChanged(android.accessibilityservice.AccessibilityService.SoftKeyboardController controller, int showMode)
+  interface AccessibilityService.TakeScreenshotCallback
+    onFailure(int errorCode)
+    onSuccess(android.accessibilityservice.AccessibilityService.ScreenshotResult screenshot)
+  class AccessibilityServiceInfo
+    capabilityToString(int capability)
+    equals(java.lang.Object obj)
+    feedbackTypeToString(int feedbackType)
+    flagToString(int flag)
+    loadDescription(android.content.pm.PackageManager packageManager)
+    loadIntro(android.content.pm.PackageManager packageManager)
+    loadSummary(android.content.pm.PackageManager packageManager)
+    setInteractiveUiTimeoutMillis(int timeout)
+    setMotionEventSources(int motionEventSources)
+    setNonInteractiveUiTimeoutMillis(int timeout)
+    writeToParcel(android.os.Parcel parcel, int flagz)
+  class FingerprintGestureController
+    registerFingerprintGestureCallback(android.accessibilityservice.FingerprintGestureController.FingerprintGestureCallback callback, android.os.Handler handler)
+    unregisterFingerprintGestureCallback(android.accessibilityservice.FingerprintGestureController.FingerprintGestureCallback callback)
+  class FingerprintGestureController.FingerprintGestureCallback
+    onGestureDetected(int gesture)
+    onGestureDetectionAvailabilityChanged(boolean available)
+  class GestureDescription
+    getStroke(int index)
+  class GestureDescription.Builder
+    addStroke(android.accessibilityservice.GestureDescription.StrokeDescription strokeDescription)
+    setDisplayId(int displayId)
+  class GestureDescription.StrokeDescription
+    continueStroke(android.graphics.Path path, long startTime, long duration, boolean willContinue)
+    #ctor(android.graphics.Path path, long startTime, long duration)
+    #ctor(android.graphics.Path path, long startTime, long duration, boolean willContinue)
+  class InputMethod
+    #ctor(android.accessibilityservice.AccessibilityService service)
+    onStartInput(android.view.inputmethod.EditorInfo attribute, boolean restarting)
+    onUpdateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)
+  class InputMethod.AccessibilityInputConnection
+    clearMetaKeyStates(int states)
+    commitText(java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    deleteSurroundingText(int beforeLength, int afterLength)
+    getCursorCapsMode(int reqModes)
+    getSurroundingText(int beforeLength, int afterLength, int flags)
+    performContextMenuAction(int id)
+    performEditorAction(int editorAction)
+    sendKeyEvent(android.view.KeyEvent event)
+    setSelection(int start, int end)
+  class MagnificationConfig
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class MagnificationConfig.Builder
+    setCenterX(float centerX)
+    setCenterY(float centerY)
+    setMode(int mode)
+    setScale(float scale)
+  class TouchInteractionController
+    registerCallback(java.util.concurrent.Executor executor, android.accessibilityservice.TouchInteractionController.Callback callback)
+    requestDragging(int pointerId)
+    stateToString(int state)
+    unregisterCallback(android.accessibilityservice.TouchInteractionController.Callback callback)
+  interface TouchInteractionController.Callback
+    onMotionEvent(android.view.MotionEvent event)
+    onStateChanged(int state)
+
+package android.accounts
+;---------------------------------------
+  class AbstractAccountAuthenticator
+    #ctor(android.content.Context context)
+    addAccount(android.accounts.AccountAuthenticatorResponse response, java.lang.String accountType, java.lang.String authTokenType, java.lang.String[] requiredFeatures, android.os.Bundle options)
+    addAccountFromCredentials(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, android.os.Bundle accountCredentials)
+    confirmCredentials(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, android.os.Bundle options)
+    editProperties(android.accounts.AccountAuthenticatorResponse response, java.lang.String accountType)
+    finishSession(android.accounts.AccountAuthenticatorResponse response, java.lang.String accountType, android.os.Bundle sessionBundle)
+    getAccountCredentialsForCloning(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account)
+    getAccountRemovalAllowed(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account)
+    getAuthToken(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options)
+    getAuthTokenLabel(java.lang.String authTokenType)
+    hasFeatures(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, java.lang.String[] features)
+    isCredentialsUpdateSuggested(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, java.lang.String statusToken)
+    startAddAccountSession(android.accounts.AccountAuthenticatorResponse response, java.lang.String accountType, java.lang.String authTokenType, java.lang.String[] requiredFeatures, android.os.Bundle options)
+    startUpdateCredentialsSession(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options)
+    updateCredentials(android.accounts.AccountAuthenticatorResponse response, android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options)
+  class Account
+    #ctor(android.os.Parcel in)
+    #ctor(java.lang.String name, java.lang.String type)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AccountAuthenticatorActivity
+    onCreate(android.os.Bundle icicle)
+    setAccountAuthenticatorResult(android.os.Bundle result)
+  class AccountAuthenticatorResponse
+    #ctor(android.os.Parcel parcel)
+    onError(int errorCode, java.lang.String errorMessage)
+    onResult(android.os.Bundle result)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AccountManager
+    addAccount(java.lang.String accountType, java.lang.String authTokenType, java.lang.String[] requiredFeatures, android.os.Bundle addAccountOptions, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    addAccountExplicitly(android.accounts.Account account, java.lang.String password, android.os.Bundle userdata)
+    addAccountExplicitly(android.accounts.Account account, java.lang.String password, android.os.Bundle extras, java.util.Map<java.lang.String,java.lang.Integer> visibility)
+    addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener listener, android.os.Handler handler, boolean updateImmediately)
+    addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener listener, android.os.Handler handler, boolean updateImmediately, java.lang.String[] accountTypes)
+    blockingGetAuthToken(android.accounts.Account account, java.lang.String authTokenType, boolean notifyAuthFailure)
+    clearPassword(android.accounts.Account account)
+    confirmCredentials(android.accounts.Account account, android.os.Bundle options, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    editProperties(java.lang.String accountType, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    finishSession(android.os.Bundle sessionBundle, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    get(android.content.Context context)
+    getAccountsAndVisibilityForPackage(java.lang.String packageName, java.lang.String accountType)
+    getAccountsByType(java.lang.String type)
+    getAccountsByTypeAndFeatures(java.lang.String type, java.lang.String[] features, android.accounts.AccountManagerCallback<android.accounts.Account[]> callback, android.os.Handler handler)
+    getAccountsByTypeForPackage(java.lang.String type, java.lang.String packageName)
+    getAccountVisibility(android.accounts.Account account, java.lang.String packageName)
+    getAuthToken(android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    getAuthToken(android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options, boolean notifyAuthFailure, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    getAuthToken(android.accounts.Account account, java.lang.String authTokenType, boolean notifyAuthFailure, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    getAuthTokenByFeatures(java.lang.String accountType, java.lang.String authTokenType, java.lang.String[] features, android.app.Activity activity, android.os.Bundle addAccountOptions, android.os.Bundle getAuthTokenOptions, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    getPackagesAndVisibilityForAccount(android.accounts.Account account)
+    getPassword(android.accounts.Account account)
+    getPreviousName(android.accounts.Account account)
+    getUserData(android.accounts.Account account, java.lang.String key)
+    hasFeatures(android.accounts.Account account, java.lang.String[] features, android.accounts.AccountManagerCallback<java.lang.Boolean> callback, android.os.Handler handler)
+    invalidateAuthToken(java.lang.String accountType, java.lang.String authToken)
+    isCredentialsUpdateSuggested(android.accounts.Account account, java.lang.String statusToken, android.accounts.AccountManagerCallback<java.lang.Boolean> callback, android.os.Handler handler)
+    newChooseAccountIntent(android.accounts.Account selectedAccount, java.util.ArrayList<android.accounts.Account> allowableAccounts, java.lang.String[] allowableAccountTypes, boolean alwaysPromptForAccount, java.lang.String descriptionOverrideText, java.lang.String addAccountAuthTokenType, java.lang.String[] addAccountRequiredFeatures, android.os.Bundle addAccountOptions)
+    newChooseAccountIntent(android.accounts.Account selectedAccount, java.util.List<android.accounts.Account> allowableAccounts, java.lang.String[] allowableAccountTypes, java.lang.String descriptionOverrideText, java.lang.String addAccountAuthTokenType, java.lang.String[] addAccountRequiredFeatures, android.os.Bundle addAccountOptions)
+    notifyAccountAuthenticated(android.accounts.Account account)
+    peekAuthToken(android.accounts.Account account, java.lang.String authTokenType)
+    removeAccount(android.accounts.Account account, android.accounts.AccountManagerCallback<java.lang.Boolean> callback, android.os.Handler handler)
+    removeAccount(android.accounts.Account account, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    removeAccountExplicitly(android.accounts.Account account)
+    removeOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener listener)
+    renameAccount(android.accounts.Account account, java.lang.String newName, android.accounts.AccountManagerCallback<android.accounts.Account> callback, android.os.Handler handler)
+    setAccountVisibility(android.accounts.Account account, java.lang.String packageName, int visibility)
+    setAuthToken(android.accounts.Account account, java.lang.String authTokenType, java.lang.String authToken)
+    setPassword(android.accounts.Account account, java.lang.String password)
+    setUserData(android.accounts.Account account, java.lang.String key, java.lang.String value)
+    startAddAccountSession(java.lang.String accountType, java.lang.String authTokenType, java.lang.String[] requiredFeatures, android.os.Bundle options, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    startUpdateCredentialsSession(android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+    updateCredentials(android.accounts.Account account, java.lang.String authTokenType, android.os.Bundle options, android.app.Activity activity, android.accounts.AccountManagerCallback<android.os.Bundle> callback, android.os.Handler handler)
+  interface AccountManagerCallback<V>
+    run(android.accounts.AccountManagerFuture<V> future)
+  interface AccountManagerFuture<V>
+    cancel(boolean mayInterruptIfRunning)
+    getResult(long timeout, java.util.concurrent.TimeUnit unit)
+  class AccountsException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class AuthenticatorDescription
+    #ctor(java.lang.String type, java.lang.String packageName, int labelId, int iconId, int smallIconId, int prefId)
+    #ctor(java.lang.String type, java.lang.String packageName, int labelId, int iconId, int smallIconId, int prefId, boolean customTokens)
+    equals(java.lang.Object o)
+    newKey(java.lang.String type)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AuthenticatorException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class NetworkErrorException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface OnAccountsUpdateListener
+    onAccountsUpdated(android.accounts.Account[] accounts)
+  class OperationCanceledException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+
+package android.adservices
+;---------------------------------------
+
+package android.adservices.adid
+;---------------------------------------
+  class AdId
+    #ctor(java.lang.String adId, boolean limitAdTrackingEnabled)
+    equals(java.lang.Object o)
+  class AdIdManager
+    getAdId(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.adservices.adid.AdId,java.lang.Exception> callback)
+
+package android.adservices.adselection
+;---------------------------------------
+  class AddAdSelectionFromOutcomesOverrideRequest
+    #ctor(android.adservices.adselection.AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, java.lang.String selectionLogicJs, android.adservices.common.AdSelectionSignals selectionSignals)
+  class AddAdSelectionOverrideRequest
+    #ctor(android.adservices.adselection.AdSelectionConfig adSelectionConfig, java.lang.String decisionLogicJs, android.adservices.common.AdSelectionSignals trustedScoringSignals)
+  class AdSelectionConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdSelectionConfig.Builder
+    setAdSelectionSignals(android.adservices.common.AdSelectionSignals adSelectionSignals)
+    setCustomAudienceBuyers(java.util.List<android.adservices.common.AdTechIdentifier> customAudienceBuyers)
+    setDecisionLogicUri(android.net.Uri decisionLogicUri)
+    setPerBuyerSignals(java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.common.AdSelectionSignals> perBuyerSignals)
+    setSeller(android.adservices.common.AdTechIdentifier seller)
+    setSellerSignals(android.adservices.common.AdSelectionSignals sellerSignals)
+    setTrustedScoringSignalsUri(android.net.Uri trustedScoringSignalsUri)
+  class AdSelectionFromOutcomesConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdSelectionFromOutcomesConfig.Builder
+    setAdSelectionIds(java.util.List<java.lang.Long> adSelectionIds)
+    setSelectionLogicUri(android.net.Uri selectionLogicUri)
+    setSelectionSignals(android.adservices.common.AdSelectionSignals selectionSignals)
+    setSeller(android.adservices.common.AdTechIdentifier seller)
+  class AdSelectionManager
+    reportImpression(android.adservices.adselection.ReportImpressionRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    selectAds(android.adservices.adselection.AdSelectionConfig adSelectionConfig, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.adservices.adselection.AdSelectionOutcome,java.lang.Exception> receiver)
+    selectAds(android.adservices.adselection.AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.adservices.adselection.AdSelectionOutcome,java.lang.Exception> receiver)
+  class AdSelectionOutcome
+    equals(java.lang.Object o)
+  class AdSelectionOutcome.Builder
+    setAdSelectionId(long adSelectionId)
+    setRenderUri(android.net.Uri renderUri)
+  class RemoveAdSelectionFromOutcomesOverrideRequest
+    #ctor(android.adservices.adselection.AdSelectionFromOutcomesConfig config)
+  class RemoveAdSelectionOverrideRequest
+    #ctor(android.adservices.adselection.AdSelectionConfig adSelectionConfig)
+  class ReportImpressionRequest
+    #ctor(long adSelectionId, android.adservices.adselection.AdSelectionConfig adSelectionConfig)
+  class TestAdSelectionManager
+    overrideAdSelectionConfigRemoteInfo(android.adservices.adselection.AddAdSelectionOverrideRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    overrideAdSelectionFromOutcomesConfigRemoteInfo(android.adservices.adselection.AddAdSelectionFromOutcomesOverrideRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    removeAdSelectionConfigRemoteInfoOverride(android.adservices.adselection.RemoveAdSelectionOverrideRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    removeAdSelectionFromOutcomesConfigRemoteInfoOverride(android.adservices.adselection.RemoveAdSelectionFromOutcomesOverrideRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    resetAllAdSelectionConfigRemoteOverrides(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    resetAllAdSelectionFromOutcomesConfigRemoteOverrides(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+
+package android.adservices.appsetid
+;---------------------------------------
+  class AppSetId
+    #ctor(java.lang.String appSetId, int appSetIdScope)
+    equals(java.lang.Object o)
+  class AppSetIdManager
+    getAppSetId(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.adservices.appsetid.AppSetId,java.lang.Exception> callback)
+
+package android.adservices.common
+;---------------------------------------
+  class AdData
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdData.Builder
+    setMetadata(java.lang.String metadata)
+    setRenderUri(android.net.Uri renderUri)
+  class AdSelectionSignals
+    equals(java.lang.Object o)
+    fromString(java.lang.String source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdTechIdentifier
+    equals(java.lang.Object o)
+    fromString(java.lang.String source)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.adservices.customaudience
+;---------------------------------------
+  class AddCustomAudienceOverrideRequest
+    #ctor(android.adservices.common.AdTechIdentifier buyer, java.lang.String name, java.lang.String biddingLogicJs, android.adservices.common.AdSelectionSignals trustedBiddingSignals)
+  class AddCustomAudienceOverrideRequest.Builder
+    setBiddingLogicJs(java.lang.String biddingLogicJs)
+    setBuyer(android.adservices.common.AdTechIdentifier buyer)
+    setName(java.lang.String name)
+    setTrustedBiddingSignals(android.adservices.common.AdSelectionSignals trustedBiddingSignals)
+  class CustomAudience
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CustomAudience.Builder
+    setActivationTime(java.time.Instant activationTime)
+    setAds(java.util.List<android.adservices.common.AdData> ads)
+    setBiddingLogicUri(android.net.Uri biddingLogicUri)
+    setBuyer(android.adservices.common.AdTechIdentifier buyer)
+    setDailyUpdateUri(android.net.Uri dailyUpdateUri)
+    setExpirationTime(java.time.Instant expirationTime)
+    setName(java.lang.String name)
+    setTrustedBiddingData(android.adservices.customaudience.TrustedBiddingData trustedBiddingData)
+    setUserBiddingSignals(android.adservices.common.AdSelectionSignals userBiddingSignals)
+  class CustomAudienceManager
+    joinCustomAudience(android.adservices.customaudience.JoinCustomAudienceRequest joinCustomAudienceRequest, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    leaveCustomAudience(android.adservices.customaudience.LeaveCustomAudienceRequest leaveCustomAudienceRequest, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+  class JoinCustomAudienceRequest
+    equals(java.lang.Object o)
+  class JoinCustomAudienceRequest.Builder
+    setCustomAudience(android.adservices.customaudience.CustomAudience customAudience)
+  class LeaveCustomAudienceRequest
+    equals(java.lang.Object o)
+  class LeaveCustomAudienceRequest.Builder
+    setBuyer(android.adservices.common.AdTechIdentifier buyer)
+    setName(java.lang.String name)
+  class RemoveCustomAudienceOverrideRequest
+    #ctor(android.adservices.common.AdTechIdentifier buyer, java.lang.String name)
+  class RemoveCustomAudienceOverrideRequest.Builder
+    setBuyer(android.adservices.common.AdTechIdentifier buyer)
+    setName(java.lang.String name)
+  class TestCustomAudienceManager
+    overrideCustomAudienceRemoteInfo(android.adservices.customaudience.AddCustomAudienceOverrideRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    removeCustomAudienceRemoteInfoOverride(android.adservices.customaudience.RemoveCustomAudienceOverrideRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+    resetAllCustomAudienceOverrides(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> receiver)
+  class TrustedBiddingData
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TrustedBiddingData.Builder
+    setTrustedBiddingKeys(java.util.List<java.lang.String> trustedBiddingKeys)
+    setTrustedBiddingUri(android.net.Uri trustedBiddingUri)
+
+package android.adservices.exceptions
+;---------------------------------------
+  class AdServicesException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable e)
+
+package android.adservices.measurement
+;---------------------------------------
+  class DeletionRequest.Builder
+    setDeletionMode(int deletionMode)
+    setDomainUris(java.util.List<android.net.Uri> domainUris)
+    setEnd(java.time.Instant end)
+    setMatchBehavior(int matchBehavior)
+    setOriginUris(java.util.List<android.net.Uri> originUris)
+    setStart(java.time.Instant start)
+  class MeasurementManager
+    deleteRegistrations(android.adservices.measurement.DeletionRequest deletionRequest, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> callback)
+    getMeasurementApiStatus(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Integer,java.lang.Exception> callback)
+    registerSource(android.net.Uri attributionSource, android.view.InputEvent inputEvent, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> callback)
+    registerTrigger(android.net.Uri trigger, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> callback)
+    registerWebSource(android.adservices.measurement.WebSourceRegistrationRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> callback)
+    registerWebTrigger(android.adservices.measurement.WebTriggerRegistrationRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception> callback)
+  class WebSourceParams
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class WebSourceParams.Builder
+    setDebugKeyAllowed(boolean debugKeyAllowed)
+    #ctor(android.net.Uri registrationUri)
+  class WebSourceRegistrationRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class WebSourceRegistrationRequest.Builder
+    setAppDestination(android.net.Uri appDestination)
+    setInputEvent(android.view.InputEvent inputEvent)
+    setVerifiedDestination(android.net.Uri verifiedDestination)
+    setWebDestination(android.net.Uri webDestination)
+    #ctor(java.util.List<android.adservices.measurement.WebSourceParams> webSourceParams, android.net.Uri topOriginUri)
+  class WebTriggerParams
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class WebTriggerParams.Builder
+    setDebugKeyAllowed(boolean debugKeyAllowed)
+    #ctor(android.net.Uri registrationUri)
+  class WebTriggerRegistrationRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class WebTriggerRegistrationRequest.Builder
+    #ctor(java.util.List<android.adservices.measurement.WebTriggerParams> webTriggerParams, android.net.Uri destination)
+
+package android.adservices.topics
+;---------------------------------------
+  class GetTopicsRequest.Builder
+    setAdsSdkName(java.lang.String adsSdkName)
+    setShouldRecordObservation(boolean recordObservation)
+  class GetTopicsResponse
+    equals(java.lang.Object o)
+  class GetTopicsResponse.Builder
+    #ctor(java.util.List<android.adservices.topics.Topic> topics)
+  class Topic
+    equals(java.lang.Object object)
+    #ctor(long mTaxonomyVersion, long mModelVersion, int mTopicId)
+  class TopicsManager
+    getTopics(android.adservices.topics.GetTopicsRequest getTopicsRequest, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.adservices.topics.GetTopicsResponse,java.lang.Exception> callback)
+
+package android.animation
+;---------------------------------------
+  class Animator
+    addListener(android.animation.Animator.AnimatorListener listener)
+    addPauseListener(android.animation.Animator.AnimatorPauseListener listener)
+    removeListener(android.animation.Animator.AnimatorListener listener)
+    removePauseListener(android.animation.Animator.AnimatorPauseListener listener)
+    setDuration(long duration)
+    setInterpolator(android.animation.TimeInterpolator value)
+    setStartDelay(long startDelay)
+    setTarget(java.lang.Object target)
+  interface Animator.AnimatorListener
+    onAnimationCancel(android.animation.Animator animation)
+    onAnimationEnd(android.animation.Animator animation)
+    onAnimationEnd(android.animation.Animator animation, boolean isReverse)
+    onAnimationRepeat(android.animation.Animator animation)
+    onAnimationStart(android.animation.Animator animation)
+    onAnimationStart(android.animation.Animator animation, boolean isReverse)
+  interface Animator.AnimatorPauseListener
+    onAnimationPause(android.animation.Animator animation)
+    onAnimationResume(android.animation.Animator animation)
+  class AnimatorInflater
+    loadAnimator(android.content.Context context, int id)
+    loadStateListAnimator(android.content.Context context, int id)
+  class AnimatorListenerAdapter
+    onAnimationCancel(android.animation.Animator animation)
+    onAnimationEnd(android.animation.Animator animation)
+    onAnimationPause(android.animation.Animator animation)
+    onAnimationRepeat(android.animation.Animator animation)
+    onAnimationResume(android.animation.Animator animation)
+    onAnimationStart(android.animation.Animator animation)
+  class AnimatorSet
+    play(android.animation.Animator anim)
+    playSequentially(android.animation.Animator... items)
+    playSequentially(java.util.List<android.animation.Animator> items)
+    playTogether(android.animation.Animator... items)
+    playTogether(java.util.Collection<android.animation.Animator> items)
+    setCurrentPlayTime(long playTime)
+    setDuration(long duration)
+    setInterpolator(android.animation.TimeInterpolator interpolator)
+    setStartDelay(long startDelay)
+    setTarget(java.lang.Object target)
+  class AnimatorSet.Builder
+    after(android.animation.Animator anim)
+    after(long delay)
+    before(android.animation.Animator anim)
+    with(android.animation.Animator anim)
+  class ArgbEvaluator
+    evaluate(float fraction, java.lang.Object startValue, java.lang.Object endValue)
+  class BidirectionalTypeConverter<T,V>
+    #ctor(java.lang.Class<T> fromClass, java.lang.Class<V> toClass)
+    convertBack(V value)
+  class FloatArrayEvaluator
+    evaluate(float fraction, float[] startValue, float[] endValue)
+    #ctor(float[] reuseArray)
+  class FloatEvaluator
+    evaluate(float fraction, java.lang.Number startValue, java.lang.Number endValue)
+  class IntArrayEvaluator
+    evaluate(float fraction, int[] startValue, int[] endValue)
+    #ctor(int[] reuseArray)
+  class IntEvaluator
+    evaluate(float fraction, java.lang.Integer startValue, java.lang.Integer endValue)
+  class Keyframe
+    ofFloat(float fraction)
+    ofFloat(float fraction, float value)
+    ofInt(float fraction)
+    ofInt(float fraction, int value)
+    ofObject(float fraction)
+    ofObject(float fraction, java.lang.Object value)
+    setFraction(float fraction)
+    setInterpolator(android.animation.TimeInterpolator interpolator)
+    setValue(java.lang.Object value)
+  class LayoutTransition
+    addChild(android.view.ViewGroup parent, android.view.View child)
+    addTransitionListener(android.animation.LayoutTransition.TransitionListener listener)
+    disableTransitionType(int transitionType)
+    enableTransitionType(int transitionType)
+    getAnimator(int transitionType)
+    getDuration(int transitionType)
+    getInterpolator(int transitionType)
+    getStagger(int transitionType)
+    getStartDelay(int transitionType)
+    hideChild(android.view.ViewGroup parent, android.view.View child)
+    hideChild(android.view.ViewGroup parent, android.view.View child, int newVisibility)
+    isTransitionTypeEnabled(int transitionType)
+    removeChild(android.view.ViewGroup parent, android.view.View child)
+    removeTransitionListener(android.animation.LayoutTransition.TransitionListener listener)
+    setAnimateParentHierarchy(boolean animateParentHierarchy)
+    setAnimator(int transitionType, android.animation.Animator animator)
+    setDuration(int transitionType, long duration)
+    setDuration(long duration)
+    setInterpolator(int transitionType, android.animation.TimeInterpolator interpolator)
+    setStagger(int transitionType, long duration)
+    setStartDelay(int transitionType, long delay)
+    showChild(android.view.ViewGroup parent, android.view.View child)
+    showChild(android.view.ViewGroup parent, android.view.View child, int oldVisibility)
+  interface LayoutTransition.TransitionListener
+    endTransition(android.animation.LayoutTransition transition, android.view.ViewGroup container, android.view.View view, int transitionType)
+    startTransition(android.animation.LayoutTransition transition, android.view.ViewGroup container, android.view.View view, int transitionType)
+  class ObjectAnimator
+    ofArgb(java.lang.Object target, java.lang.String propertyName, int... values)
+    <T> ofArgb(T target, android.util.Property<T,java.lang.Integer> property, int... values)
+    ofFloat(java.lang.Object target, java.lang.String propertyName, float... values)
+    ofFloat(java.lang.Object target, java.lang.String xPropertyName, java.lang.String yPropertyName, android.graphics.Path path)
+    <T> ofFloat(T target, android.util.Property<T,java.lang.Float> xProperty, android.util.Property<T,java.lang.Float> yProperty, android.graphics.Path path)
+    <T> ofFloat(T target, android.util.Property<T,java.lang.Float> property, float... values)
+    ofInt(java.lang.Object target, java.lang.String propertyName, int... values)
+    ofInt(java.lang.Object target, java.lang.String xPropertyName, java.lang.String yPropertyName, android.graphics.Path path)
+    <T> ofInt(T target, android.util.Property<T,java.lang.Integer> xProperty, android.util.Property<T,java.lang.Integer> yProperty, android.graphics.Path path)
+    <T> ofInt(T target, android.util.Property<T,java.lang.Integer> property, int... values)
+    <T> ofMultiFloat(java.lang.Object target, java.lang.String propertyName, android.animation.TypeConverter<T,float[]> converter, android.animation.TypeEvaluator<T> evaluator, T... values)
+    ofMultiFloat(java.lang.Object target, java.lang.String propertyName, android.graphics.Path path)
+    ofMultiFloat(java.lang.Object target, java.lang.String propertyName, float[][] values)
+    <T> ofMultiInt(java.lang.Object target, java.lang.String propertyName, android.animation.TypeConverter<T,int[]> converter, android.animation.TypeEvaluator<T> evaluator, T... values)
+    ofMultiInt(java.lang.Object target, java.lang.String propertyName, android.graphics.Path path)
+    ofMultiInt(java.lang.Object target, java.lang.String propertyName, int[][] values)
+    ofObject(java.lang.Object target, java.lang.String propertyName, android.animation.TypeConverter<android.graphics.PointF,?> converter, android.graphics.Path path)
+    ofObject(java.lang.Object target, java.lang.String propertyName, android.animation.TypeEvaluator evaluator, java.lang.Object... values)
+    <T,V,P> ofObject(T target, android.util.Property<T,P> property, android.animation.TypeConverter<V,P> converter, android.animation.TypeEvaluator<V> evaluator, V... values)
+    <T,V> ofObject(T target, android.util.Property<T,V> property, android.animation.TypeConverter<android.graphics.PointF,V> converter, android.graphics.Path path)
+    <T,V> ofObject(T target, android.util.Property<T,V> property, android.animation.TypeEvaluator<V> evaluator, V... values)
+    ofPropertyValuesHolder(java.lang.Object target, android.animation.PropertyValuesHolder... values)
+    setAutoCancel(boolean cancel)
+    setDuration(long duration)
+    setFloatValues(float... values)
+    setIntValues(int... values)
+    setObjectValues(java.lang.Object... values)
+    setProperty(android.util.Property property)
+    setPropertyName(java.lang.String propertyName)
+    setTarget(java.lang.Object target)
+  class PointFEvaluator
+    evaluate(float fraction, android.graphics.PointF startValue, android.graphics.PointF endValue)
+    #ctor(android.graphics.PointF reuse)
+  class PropertyValuesHolder
+    ofFloat(android.util.Property<?,java.lang.Float> property, float... values)
+    ofFloat(java.lang.String propertyName, float... values)
+    ofInt(android.util.Property<?,java.lang.Integer> property, int... values)
+    ofInt(java.lang.String propertyName, int... values)
+    ofKeyframe(android.util.Property property, android.animation.Keyframe... values)
+    ofKeyframe(java.lang.String propertyName, android.animation.Keyframe... values)
+    <T> ofMultiFloat(java.lang.String propertyName, android.animation.TypeConverter<T,float[]> converter, android.animation.TypeEvaluator<T> evaluator, android.animation.Keyframe... values)
+    <V> ofMultiFloat(java.lang.String propertyName, android.animation.TypeConverter<V,float[]> converter, android.animation.TypeEvaluator<V> evaluator, V... values)
+    ofMultiFloat(java.lang.String propertyName, android.graphics.Path path)
+    ofMultiFloat(java.lang.String propertyName, float[][] values)
+    <T> ofMultiInt(java.lang.String propertyName, android.animation.TypeConverter<T,int[]> converter, android.animation.TypeEvaluator<T> evaluator, android.animation.Keyframe... values)
+    <V> ofMultiInt(java.lang.String propertyName, android.animation.TypeConverter<V,int[]> converter, android.animation.TypeEvaluator<V> evaluator, V... values)
+    ofMultiInt(java.lang.String propertyName, android.graphics.Path path)
+    ofMultiInt(java.lang.String propertyName, int[][] values)
+    <V> ofObject(android.util.Property property, android.animation.TypeEvaluator<V> evaluator, V... values)
+    <V> ofObject(android.util.Property<?,V> property, android.animation.TypeConverter<android.graphics.PointF,V> converter, android.graphics.Path path)
+    <T,V> ofObject(android.util.Property<?,V> property, android.animation.TypeConverter<T,V> converter, android.animation.TypeEvaluator<T> evaluator, T... values)
+    ofObject(java.lang.String propertyName, android.animation.TypeConverter<android.graphics.PointF,?> converter, android.graphics.Path path)
+    ofObject(java.lang.String propertyName, android.animation.TypeEvaluator evaluator, java.lang.Object... values)
+    setConverter(android.animation.TypeConverter converter)
+    setEvaluator(android.animation.TypeEvaluator evaluator)
+    setFloatValues(float... values)
+    setIntValues(int... values)
+    setKeyframes(android.animation.Keyframe... values)
+    setObjectValues(java.lang.Object... values)
+    setProperty(android.util.Property property)
+    setPropertyName(java.lang.String propertyName)
+  class RectEvaluator
+    evaluate(float fraction, android.graphics.Rect startValue, android.graphics.Rect endValue)
+    #ctor(android.graphics.Rect reuseRect)
+  class StateListAnimator
+    addState(int[] specs, android.animation.Animator animator)
+  class TimeAnimator
+    setCurrentPlayTime(long playTime)
+    setTimeListener(android.animation.TimeAnimator.TimeListener listener)
+  interface TimeAnimator.TimeListener
+    onTimeUpdate(android.animation.TimeAnimator animation, long totalTime, long deltaTime)
+  interface TimeInterpolator
+    getInterpolation(float input)
+  class TypeConverter<T,V>
+    convert(T value)
+    #ctor(java.lang.Class<T> fromClass, java.lang.Class<V> toClass)
+  interface TypeEvaluator<T>
+    evaluate(float fraction, T startValue, T endValue)
+  class ValueAnimator
+    addUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener listener)
+    getAnimatedValue(java.lang.String propertyName)
+    ofArgb(int... values)
+    ofFloat(float... values)
+    ofInt(int... values)
+    ofObject(android.animation.TypeEvaluator evaluator, java.lang.Object... values)
+    ofPropertyValuesHolder(android.animation.PropertyValuesHolder... values)
+    registerDurationScaleChangeListener(android.animation.ValueAnimator.DurationScaleChangeListener listener)
+    removeUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener listener)
+    setCurrentFraction(float fraction)
+    setCurrentPlayTime(long playTime)
+    setDuration(long duration)
+    setEvaluator(android.animation.TypeEvaluator value)
+    setFloatValues(float... values)
+    setFrameDelay(long frameDelay)
+    setInterpolator(android.animation.TimeInterpolator value)
+    setIntValues(int... values)
+    setObjectValues(java.lang.Object... values)
+    setRepeatCount(int value)
+    setRepeatMode(int value)
+    setStartDelay(long startDelay)
+    setValues(android.animation.PropertyValuesHolder... values)
+    unregisterDurationScaleChangeListener(android.animation.ValueAnimator.DurationScaleChangeListener listener)
+  interface ValueAnimator.AnimatorUpdateListener
+    onAnimationUpdate(android.animation.ValueAnimator animation)
+  interface ValueAnimator.DurationScaleChangeListener
+    onChanged(float scale)
+
+package android.annotation
+;---------------------------------------
+
+package android.app
+;---------------------------------------
+  class ActionBar
+    addOnMenuVisibilityListener(android.app.ActionBar.OnMenuVisibilityListener listener)
+    addTab(android.app.ActionBar.Tab tab)
+    addTab(android.app.ActionBar.Tab tab, boolean setSelected)
+    addTab(android.app.ActionBar.Tab tab, int position)
+    addTab(android.app.ActionBar.Tab tab, int position, boolean setSelected)
+    getTabAt(int index)
+    removeOnMenuVisibilityListener(android.app.ActionBar.OnMenuVisibilityListener listener)
+    removeTab(android.app.ActionBar.Tab tab)
+    removeTabAt(int position)
+    selectTab(android.app.ActionBar.Tab tab)
+    setBackgroundDrawable(android.graphics.drawable.Drawable d)
+    setCustomView(android.view.View view)
+    setCustomView(android.view.View view, android.app.ActionBar.LayoutParams layoutParams)
+    setCustomView(int resId)
+    setDisplayHomeAsUpEnabled(boolean showHomeAsUp)
+    setDisplayOptions(int options)
+    setDisplayOptions(int options, int mask)
+    setDisplayShowCustomEnabled(boolean showCustom)
+    setDisplayShowHomeEnabled(boolean showHome)
+    setDisplayShowTitleEnabled(boolean showTitle)
+    setDisplayUseLogoEnabled(boolean useLogo)
+    setElevation(float elevation)
+    setHideOffset(int offset)
+    setHideOnContentScrollEnabled(boolean hideOnContentScroll)
+    setHomeActionContentDescription(int resId)
+    setHomeActionContentDescription(java.lang.CharSequence description)
+    setHomeAsUpIndicator(android.graphics.drawable.Drawable indicator)
+    setHomeAsUpIndicator(int resId)
+    setHomeButtonEnabled(boolean enabled)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int resId)
+    setListNavigationCallbacks(android.widget.SpinnerAdapter adapter, android.app.ActionBar.OnNavigationListener callback)
+    setLogo(android.graphics.drawable.Drawable logo)
+    setLogo(int resId)
+    setNavigationMode(int mode)
+    setSelectedNavigationItem(int position)
+    setSplitBackgroundDrawable(android.graphics.drawable.Drawable d)
+    setStackedBackgroundDrawable(android.graphics.drawable.Drawable d)
+    setSubtitle(int resId)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTitle(int resId)
+    setTitle(java.lang.CharSequence title)
+  class ActionBar.LayoutParams
+    #ctor(android.app.ActionBar.LayoutParams source)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(int gravity)
+    #ctor(int width, int height)
+    #ctor(int width, int height, int gravity)
+  interface ActionBar.OnMenuVisibilityListener
+    onMenuVisibilityChanged(boolean isVisible)
+  interface ActionBar.OnNavigationListener
+    onNavigationItemSelected(int itemPosition, long itemId)
+  class ActionBar.Tab
+    setContentDescription(int resId)
+    setContentDescription(java.lang.CharSequence contentDesc)
+    setCustomView(android.view.View view)
+    setCustomView(int layoutResId)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int resId)
+    setTabListener(android.app.ActionBar.TabListener listener)
+    setTag(java.lang.Object obj)
+    setText(int resId)
+    setText(java.lang.CharSequence text)
+  interface ActionBar.TabListener
+    onTabReselected(android.app.ActionBar.Tab tab, android.app.FragmentTransaction ft)
+    onTabSelected(android.app.ActionBar.Tab tab, android.app.FragmentTransaction ft)
+    onTabUnselected(android.app.ActionBar.Tab tab, android.app.FragmentTransaction ft)
+  class Activity
+    addContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    attachBaseContext(android.content.Context newBase)
+    createPendingResult(int requestCode, android.content.Intent data, int flags)
+    dismissDialog(int id)
+    dispatchGenericMotionEvent(android.view.MotionEvent ev)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchKeyShortcutEvent(android.view.KeyEvent event)
+    dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    dispatchTouchEvent(android.view.MotionEvent ev)
+    dispatchTrackballEvent(android.view.MotionEvent ev)
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    enterPictureInPictureMode(android.app.PictureInPictureParams params)
+    <T> findViewById(int id)
+    finishActivity(int requestCode)
+    finishActivityFromChild(android.app.Activity child, int requestCode)
+    finishFromChild(android.app.Activity child)
+    getPreferences(int mode)
+    getSystemService(java.lang.String name)
+    managedQuery(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    moveTaskToBack(boolean nonRoot)
+    navigateUpTo(android.content.Intent upIntent)
+    navigateUpToFromChild(android.app.Activity child, android.content.Intent upIntent)
+    onActionModeFinished(android.view.ActionMode mode)
+    onActionModeStarted(android.view.ActionMode mode)
+    onActivityReenter(int resultCode, android.content.Intent data)
+    onActivityResult(int requestCode, int resultCode, android.content.Intent data)
+    onApplyThemeResource(android.content.res.Resources.Theme theme, int resid, boolean first)
+    onAttachFragment(android.app.Fragment fragment)
+    onChildTitleChanged(android.app.Activity childActivity, java.lang.CharSequence title)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onContextItemSelected(android.view.MenuItem item)
+    onContextMenuClosed(android.view.Menu menu)
+    onCreate(android.os.Bundle savedInstanceState)
+    onCreate(android.os.Bundle savedInstanceState, android.os.PersistableBundle persistentState)
+    onCreateContextMenu(android.view.ContextMenu menu, android.view.View v, android.view.ContextMenu.ContextMenuInfo menuInfo)
+    onCreateDialog(int id)
+    onCreateDialog(int id, android.os.Bundle args)
+    onCreateNavigateUpTaskStack(android.app.TaskStackBuilder builder)
+    onCreateOptionsMenu(android.view.Menu menu)
+    onCreatePanelMenu(int featureId, android.view.Menu menu)
+    onCreatePanelView(int featureId)
+    onCreateThumbnail(android.graphics.Bitmap outBitmap, android.graphics.Canvas canvas)
+    onCreateView(android.view.View parent, java.lang.String name, android.content.Context context, android.util.AttributeSet attrs)
+    onCreateView(java.lang.String name, android.content.Context context, android.util.AttributeSet attrs)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onGetDirectActions(android.os.CancellationSignal cancellationSignal, java.util.function.Consumer<java.util.List<android.app.DirectAction>> callback)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyShortcut(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onMenuItemSelected(int featureId, android.view.MenuItem item)
+    onMenuOpened(int featureId, android.view.Menu menu)
+    onMultiWindowModeChanged(boolean isInMultiWindowMode)
+    onMultiWindowModeChanged(boolean isInMultiWindowMode, android.content.res.Configuration newConfig)
+    onNavigateUpFromChild(android.app.Activity child)
+    onNewIntent(android.content.Intent intent)
+    onOptionsItemSelected(android.view.MenuItem item)
+    onOptionsMenuClosed(android.view.Menu menu)
+    onPanelClosed(int featureId, android.view.Menu menu)
+    onPerformDirectAction(java.lang.String actionId, android.os.Bundle arguments, android.os.CancellationSignal cancellationSignal, java.util.function.Consumer<android.os.Bundle> resultListener)
+    onPictureInPictureModeChanged(boolean isInPictureInPictureMode)
+    onPictureInPictureModeChanged(boolean isInPictureInPictureMode, android.content.res.Configuration newConfig)
+    onPictureInPictureUiStateChanged(android.app.PictureInPictureUiState pipState)
+    onPostCreate(android.os.Bundle savedInstanceState)
+    onPostCreate(android.os.Bundle savedInstanceState, android.os.PersistableBundle persistentState)
+    onPrepareDialog(int id, android.app.Dialog dialog)
+    onPrepareDialog(int id, android.app.Dialog dialog, android.os.Bundle args)
+    onPrepareNavigateUpTaskStack(android.app.TaskStackBuilder builder)
+    onPrepareOptionsMenu(android.view.Menu menu)
+    onPreparePanel(int featureId, android.view.View view, android.view.Menu menu)
+    onProvideAssistContent(android.app.assist.AssistContent outContent)
+    onProvideAssistData(android.os.Bundle data)
+    onProvideKeyboardShortcuts(java.util.List<android.view.KeyboardShortcutGroup> data, android.view.Menu menu, int deviceId)
+    onRequestPermissionsResult(int requestCode, java.lang.String[] permissions, int[] grantResults)
+    onRestoreInstanceState(android.os.Bundle savedInstanceState)
+    onRestoreInstanceState(android.os.Bundle savedInstanceState, android.os.PersistableBundle persistentState)
+    onSaveInstanceState(android.os.Bundle outState)
+    onSaveInstanceState(android.os.Bundle outState, android.os.PersistableBundle outPersistentState)
+    onSearchRequested(android.view.SearchEvent searchEvent)
+    onTitleChanged(java.lang.CharSequence title, int color)
+    onTopResumedActivityChanged(boolean isTopResumedActivity)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onTrimMemory(int level)
+    onWindowAttributesChanged(android.view.WindowManager.LayoutParams params)
+    onWindowFocusChanged(boolean hasFocus)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback, int type)
+    openContextMenu(android.view.View view)
+    overridePendingTransition(int enterAnim, int exitAnim)
+    overridePendingTransition(int enterAnim, int exitAnim, int backgroundColor)
+    registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks callback)
+    registerComponentCallbacks(android.content.ComponentCallbacks callback)
+    registerForContextMenu(android.view.View view)
+    removeDialog(int id)
+    requestDragAndDropPermissions(android.view.DragEvent event)
+    requestFullscreenMode(int request, android.os.OutcomeReceiver<java.lang.Void,java.lang.Throwable> approvalCallback)
+    requestPermissions(java.lang.String[] permissions, int requestCode)
+    requestVisibleBehind(boolean visible)
+    requestWindowFeature(int featureId)
+    <T> requireViewById(int id)
+    runOnUiThread(java.lang.Runnable action)
+    setActionBar(android.widget.Toolbar toolbar)
+    setContentTransitionManager(android.transition.TransitionManager tm)
+    setContentView(android.view.View view)
+    setContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    setContentView(int layoutResID)
+    setDefaultKeyMode(int mode)
+    setEnterSharedElementCallback(android.app.SharedElementCallback callback)
+    setExitSharedElementCallback(android.app.SharedElementCallback callback)
+    setFeatureDrawable(int featureId, android.graphics.drawable.Drawable drawable)
+    setFeatureDrawableAlpha(int featureId, int alpha)
+    setFeatureDrawableResource(int featureId, int resId)
+    setFeatureDrawableUri(int featureId, android.net.Uri uri)
+    setFinishOnTouchOutside(boolean finish)
+    setImmersive(boolean i)
+    setInheritShowWhenLocked(boolean inheritShowWhenLocked)
+    setIntent(android.content.Intent newIntent)
+    setLocusContext(android.content.LocusId locusId, android.os.Bundle bundle)
+    setMediaController(android.media.session.MediaController controller)
+    setPictureInPictureParams(android.app.PictureInPictureParams params)
+    setProgress(int progress)
+    setProgressBarIndeterminate(boolean indeterminate)
+    setProgressBarIndeterminateVisibility(boolean visible)
+    setProgressBarVisibility(boolean visible)
+    setRecentsScreenshotEnabled(boolean enabled)
+    setRequestedOrientation(int requestedOrientation)
+    setResult(int resultCode)
+    setResult(int resultCode, android.content.Intent data)
+    setSecondaryProgress(int secondaryProgress)
+    setShouldDockBigOverlays(boolean shouldDockBigOverlays)
+    setShowWhenLocked(boolean showWhenLocked)
+    setTaskDescription(android.app.ActivityManager.TaskDescription taskDescription)
+    setTheme(int resid)
+    setTitle(int titleId)
+    setTitle(java.lang.CharSequence title)
+    setTitleColor(int textColor)
+    setTranslucent(boolean translucent)
+    setTurnScreenOn(boolean turnScreenOn)
+    setVisible(boolean visible)
+    setVolumeControlStream(int streamType)
+    setVrModeEnabled(boolean enabled, android.content.ComponentName requestedComponent)
+    shouldShowRequestPermissionRationale(java.lang.String permission)
+    shouldUpRecreateTask(android.content.Intent targetIntent)
+    showAssist(android.os.Bundle args)
+    showDialog(int id)
+    showDialog(int id, android.os.Bundle args)
+    startActionMode(android.view.ActionMode.Callback callback)
+    startActionMode(android.view.ActionMode.Callback callback, int type)
+    startActivities(android.content.Intent[] intents)
+    startActivities(android.content.Intent[] intents, android.os.Bundle options)
+    startActivity(android.content.Intent intent)
+    startActivity(android.content.Intent intent, android.os.Bundle options)
+    startActivityForResult(android.content.Intent intent, int requestCode)
+    startActivityForResult(android.content.Intent intent, int requestCode, android.os.Bundle options)
+    startActivityFromChild(android.app.Activity child, android.content.Intent intent, int requestCode)
+    startActivityFromChild(android.app.Activity child, android.content.Intent intent, int requestCode, android.os.Bundle options)
+    startActivityFromFragment(android.app.Fragment fragment, android.content.Intent intent, int requestCode)
+    startActivityFromFragment(android.app.Fragment fragment, android.content.Intent intent, int requestCode, android.os.Bundle options)
+    startActivityIfNeeded(android.content.Intent intent, int requestCode)
+    startActivityIfNeeded(android.content.Intent intent, int requestCode, android.os.Bundle options)
+    startIntentSender(android.content.IntentSender intent, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
+    startIntentSender(android.content.IntentSender intent, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+    startIntentSenderForResult(android.content.IntentSender intent, int requestCode, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
+    startIntentSenderForResult(android.content.IntentSender intent, int requestCode, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+    startIntentSenderFromChild(android.app.Activity child, android.content.IntentSender intent, int requestCode, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
+    startIntentSenderFromChild(android.app.Activity child, android.content.IntentSender intent, int requestCode, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+    startLocalVoiceInteraction(android.os.Bundle privateOptions)
+    startManagingCursor(android.database.Cursor c)
+    startNextMatchingActivity(android.content.Intent intent)
+    startNextMatchingActivity(android.content.Intent intent, android.os.Bundle options)
+    startSearch(java.lang.String initialQuery, boolean selectInitialQuery, android.os.Bundle appSearchData, boolean globalSearch)
+    stopManagingCursor(android.database.Cursor c)
+    takeKeyEvents(boolean get)
+    triggerSearch(java.lang.String query, android.os.Bundle appSearchData)
+    unregisterActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks callback)
+    unregisterComponentCallbacks(android.content.ComponentCallbacks callback)
+    unregisterForContextMenu(android.view.View view)
+  class ActivityGroup
+    #ctor(boolean singleActivityMode)
+    onCreate(android.os.Bundle savedInstanceState)
+    onSaveInstanceState(android.os.Bundle outState)
+  class ActivityManager
+    addAppTask(android.app.Activity activity, android.content.Intent intent, android.app.ActivityManager.TaskDescription description, android.graphics.Bitmap thumbnail)
+    appNotResponding(java.lang.String reason)
+    dumpPackageState(java.io.FileDescriptor fd, java.lang.String packageName)
+    getHistoricalProcessExitReasons(java.lang.String packageName, int pid, int maxNum)
+    getMemoryInfo(android.app.ActivityManager.MemoryInfo outInfo)
+    getMyMemoryState(android.app.ActivityManager.RunningAppProcessInfo outState)
+    getProcessMemoryInfo(int[] pids)
+    getRecentTasks(int maxNum, int flags)
+    getRunningServiceControlPanel(android.content.ComponentName service)
+    getRunningServices(int maxNum)
+    getRunningTasks(int maxNum)
+    isActivityStartAllowedOnDisplay(android.content.Context context, int displayId, android.content.Intent intent)
+    killBackgroundProcesses(java.lang.String packageName)
+    moveTaskToFront(int taskId, int flags)
+    moveTaskToFront(int taskId, int flags, android.os.Bundle options)
+    restartPackage(java.lang.String packageName)
+    setProcessStateSummary(byte[] state)
+    setVrThread(int tid)
+    setWatchHeapLimit(long pssSize)
+  class ActivityManager.AppTask
+    setExcludeFromRecents(boolean exclude)
+    startActivity(android.content.Context context, android.content.Intent intent, android.os.Bundle options)
+  class ActivityManager.MemoryInfo
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.ProcessErrorStateInfo
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.RecentTaskInfo
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.RunningAppProcessInfo
+    #ctor(java.lang.String pProcessName, int pPid, java.lang.String[] pArr)
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.RunningServiceInfo
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.RunningTaskInfo
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.TaskDescription
+    #ctor(android.app.ActivityManager.TaskDescription td)
+    #ctor(java.lang.String label)
+    #ctor(java.lang.String label, android.graphics.Bitmap icon)
+    #ctor(java.lang.String label, android.graphics.Bitmap icon, int colorPrimary)
+    #ctor(java.lang.String label, int iconRes)
+    #ctor(java.lang.String label, int iconRes, int colorPrimary)
+    equals(java.lang.Object obj)
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActivityManager.TaskDescription.Builder
+    setBackgroundColor(int color)
+    setIcon(int iconRes)
+    setLabel(java.lang.String label)
+    setNavigationBarColor(int color)
+    setPrimaryColor(int color)
+    setStatusBarColor(int color)
+  class ActivityOptions
+    makeClipRevealAnimation(android.view.View source, int startX, int startY, int width, int height)
+    makeCustomAnimation(android.content.Context context, int enterResId, int exitResId)
+    makeCustomAnimation(android.content.Context context, int enterResId, int exitResId, int backgroundColor)
+    makeLaunchIntoPip(android.app.PictureInPictureParams pictureInPictureParams)
+    makeScaleUpAnimation(android.view.View source, int startX, int startY, int width, int height)
+    makeSceneTransitionAnimation(android.app.Activity activity, android.util.Pair<android.view.View,java.lang.String>... sharedElements)
+    makeSceneTransitionAnimation(android.app.Activity activity, android.view.View sharedElement, java.lang.String sharedElementName)
+    makeThumbnailScaleUpAnimation(android.view.View source, android.graphics.Bitmap thumbnail, int startX, int startY)
+    requestUsageTimeReport(android.app.PendingIntent receiver)
+    setAppVerificationBundle(android.os.Bundle bundle)
+    setLaunchBounds(android.graphics.Rect screenSpacePixelRect)
+    setLaunchDisplayId(int launchDisplayId)
+    setLockTaskEnabled(boolean lockTaskMode)
+    setPendingIntentBackgroundActivityLaunchAllowed(boolean allowed)
+    setShareIdentityEnabled(boolean shareIdentity)
+    setSplashScreenStyle(int style)
+    update(android.app.ActivityOptions otherOptions)
+  class AlarmManager
+    cancel(android.app.AlarmManager.OnAlarmListener listener)
+    cancel(android.app.PendingIntent operation)
+    set(int type, long triggerAtMillis, android.app.PendingIntent operation)
+    set(int type, long triggerAtMillis, java.lang.String tag, android.app.AlarmManager.OnAlarmListener listener, android.os.Handler targetHandler)
+    setAlarmClock(android.app.AlarmManager.AlarmClockInfo info, android.app.PendingIntent operation)
+    setAndAllowWhileIdle(int type, long triggerAtMillis, android.app.PendingIntent operation)
+    setExact(int type, long triggerAtMillis, android.app.PendingIntent operation)
+    setExact(int type, long triggerAtMillis, java.lang.String tag, android.app.AlarmManager.OnAlarmListener listener, android.os.Handler targetHandler)
+    setExactAndAllowWhileIdle(int type, long triggerAtMillis, android.app.PendingIntent operation)
+    setInexactRepeating(int type, long triggerAtMillis, long intervalMillis, android.app.PendingIntent operation)
+    setRepeating(int type, long triggerAtMillis, long intervalMillis, android.app.PendingIntent operation)
+    setTime(long millis)
+    setTimeZone(java.lang.String timeZone)
+    setWindow(int type, long windowStartMillis, long windowLengthMillis, android.app.PendingIntent operation)
+    setWindow(int type, long windowStartMillis, long windowLengthMillis, java.lang.String tag, android.app.AlarmManager.OnAlarmListener listener, android.os.Handler targetHandler)
+    setWindow(int type, long windowStartMillis, long windowLengthMillis, java.lang.String tag, java.util.concurrent.Executor executor, android.app.AlarmManager.OnAlarmListener listener)
+  class AlarmManager.AlarmClockInfo
+    #ctor(long triggerTime, android.app.PendingIntent showIntent)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AlertDialog
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, boolean cancelable, android.content.DialogInterface.OnCancelListener cancelListener)
+    #ctor(android.content.Context context, int themeResId)
+    getButton(int whichButton)
+    onCreate(android.os.Bundle savedInstanceState)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    setButton(int whichButton, java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setButton(int whichButton, java.lang.CharSequence text, android.os.Message msg)
+    setButton(java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setButton(java.lang.CharSequence text, android.os.Message msg)
+    setButton2(java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setButton2(java.lang.CharSequence text, android.os.Message msg)
+    setButton3(java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setButton3(java.lang.CharSequence text, android.os.Message msg)
+    setCustomTitle(android.view.View customTitleView)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int resId)
+    setIconAttribute(int attrId)
+    setInverseBackgroundForced(boolean forceInverseBackground)
+    setMessage(java.lang.CharSequence message)
+    setTitle(java.lang.CharSequence title)
+    setView(android.view.View view)
+    setView(android.view.View view, int viewSpacingLeft, int viewSpacingTop, int viewSpacingRight, int viewSpacingBottom)
+  class AlertDialog.Builder
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, int themeResId)
+    setAdapter(android.widget.ListAdapter adapter, android.content.DialogInterface.OnClickListener listener)
+    setCancelable(boolean cancelable)
+    setCursor(android.database.Cursor cursor, android.content.DialogInterface.OnClickListener listener, java.lang.String labelColumn)
+    setCustomTitle(android.view.View customTitleView)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int iconId)
+    setIconAttribute(int attrId)
+    setInverseBackgroundForced(boolean useInverseBackground)
+    setItems(int itemsId, android.content.DialogInterface.OnClickListener listener)
+    setItems(java.lang.CharSequence[] items, android.content.DialogInterface.OnClickListener listener)
+    setMessage(int messageId)
+    setMessage(java.lang.CharSequence message)
+    setMultiChoiceItems(android.database.Cursor cursor, java.lang.String isCheckedColumn, java.lang.String labelColumn, android.content.DialogInterface.OnMultiChoiceClickListener listener)
+    setMultiChoiceItems(int itemsId, boolean[] checkedItems, android.content.DialogInterface.OnMultiChoiceClickListener listener)
+    setMultiChoiceItems(java.lang.CharSequence[] items, boolean[] checkedItems, android.content.DialogInterface.OnMultiChoiceClickListener listener)
+    setNegativeButton(int textId, android.content.DialogInterface.OnClickListener listener)
+    setNegativeButton(java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setNeutralButton(int textId, android.content.DialogInterface.OnClickListener listener)
+    setNeutralButton(java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setOnCancelListener(android.content.DialogInterface.OnCancelListener onCancelListener)
+    setOnDismissListener(android.content.DialogInterface.OnDismissListener onDismissListener)
+    setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener listener)
+    setOnKeyListener(android.content.DialogInterface.OnKeyListener onKeyListener)
+    setPositiveButton(int textId, android.content.DialogInterface.OnClickListener listener)
+    setPositiveButton(java.lang.CharSequence text, android.content.DialogInterface.OnClickListener listener)
+    setSingleChoiceItems(android.database.Cursor cursor, int checkedItem, java.lang.String labelColumn, android.content.DialogInterface.OnClickListener listener)
+    setSingleChoiceItems(android.widget.ListAdapter adapter, int checkedItem, android.content.DialogInterface.OnClickListener listener)
+    setSingleChoiceItems(int itemsId, int checkedItem, android.content.DialogInterface.OnClickListener listener)
+    setSingleChoiceItems(java.lang.CharSequence[] items, int checkedItem, android.content.DialogInterface.OnClickListener listener)
+    setTitle(int titleId)
+    setTitle(java.lang.CharSequence title)
+    setView(android.view.View view)
+    setView(int layoutResId)
+  class AliasActivity
+    onCreate(android.os.Bundle savedInstanceState)
+  class AppComponentFactory
+    instantiateActivity(java.lang.ClassLoader cl, java.lang.String className, android.content.Intent intent)
+    instantiateApplication(java.lang.ClassLoader cl, java.lang.String className)
+    instantiateClassLoader(java.lang.ClassLoader cl, android.content.pm.ApplicationInfo aInfo)
+    instantiateProvider(java.lang.ClassLoader cl, java.lang.String className)
+    instantiateReceiver(java.lang.ClassLoader cl, java.lang.String className, android.content.Intent intent)
+    instantiateService(java.lang.ClassLoader cl, java.lang.String className, android.content.Intent intent)
+  class Application
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onTrimMemory(int level)
+    registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks callback)
+    registerComponentCallbacks(android.content.ComponentCallbacks callback)
+    registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener callback)
+    unregisterActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks callback)
+    unregisterComponentCallbacks(android.content.ComponentCallbacks callback)
+    unregisterOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener callback)
+  interface Application.ActivityLifecycleCallbacks
+    onActivityCreated(android.app.Activity activity, android.os.Bundle savedInstanceState)
+    onActivityDestroyed(android.app.Activity activity)
+    onActivityPaused(android.app.Activity activity)
+    onActivityPostCreated(android.app.Activity activity, android.os.Bundle savedInstanceState)
+    onActivityPostDestroyed(android.app.Activity activity)
+    onActivityPostPaused(android.app.Activity activity)
+    onActivityPostResumed(android.app.Activity activity)
+    onActivityPostSaveInstanceState(android.app.Activity activity, android.os.Bundle outState)
+    onActivityPostStarted(android.app.Activity activity)
+    onActivityPostStopped(android.app.Activity activity)
+    onActivityPreCreated(android.app.Activity activity, android.os.Bundle savedInstanceState)
+    onActivityPreDestroyed(android.app.Activity activity)
+    onActivityPrePaused(android.app.Activity activity)
+    onActivityPreResumed(android.app.Activity activity)
+    onActivityPreSaveInstanceState(android.app.Activity activity, android.os.Bundle outState)
+    onActivityPreStarted(android.app.Activity activity)
+    onActivityPreStopped(android.app.Activity activity)
+    onActivityResumed(android.app.Activity activity)
+    onActivitySaveInstanceState(android.app.Activity activity, android.os.Bundle outState)
+    onActivityStarted(android.app.Activity activity)
+    onActivityStopped(android.app.Activity activity)
+  interface Application.OnProvideAssistDataListener
+    onProvideAssistData(android.app.Activity activity, android.os.Bundle data)
+  class ApplicationErrorReport
+    dump(android.util.Printer pw, java.lang.String prefix)
+    getErrorReportReceiver(android.content.Context context, java.lang.String packageName, int appFlags)
+    readFromParcel(android.os.Parcel in)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationErrorReport.AnrInfo
+    #ctor(android.os.Parcel in)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationErrorReport.BatteryInfo
+    #ctor(android.os.Parcel in)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationErrorReport.CrashInfo
+    #ctor(android.os.Parcel in)
+    #ctor(java.lang.Throwable tr)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationErrorReport.RunningServiceInfo
+    #ctor(android.os.Parcel in)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationExitInfo
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AppOpsManager
+    checkOp(java.lang.String op, int uid, java.lang.String packageName)
+    checkOpNoThrow(java.lang.String op, int uid, java.lang.String packageName)
+    checkPackage(int uid, java.lang.String packageName)
+    finishOp(java.lang.String op, int uid, java.lang.String packageName)
+    finishOp(java.lang.String op, int uid, java.lang.String packageName, java.lang.String attributionTag)
+    finishProxyOp(java.lang.String op, int proxiedUid, java.lang.String proxiedPackageName, java.lang.String proxiedAttributionTag)
+    isOpActive(java.lang.String op, int uid, java.lang.String packageName)
+    noteOp(java.lang.String op, int uid, java.lang.String packageName)
+    noteOp(java.lang.String op, int uid, java.lang.String packageName, java.lang.String attributionTag, java.lang.String message)
+    noteOpNoThrow(java.lang.String op, int uid, java.lang.String packageName)
+    noteOpNoThrow(java.lang.String op, int uid, java.lang.String packageName, java.lang.String attributionTag, java.lang.String message)
+    noteProxyOp(java.lang.String op, java.lang.String proxiedPackageName)
+    noteProxyOp(java.lang.String op, java.lang.String proxiedPackageName, int proxiedUid, java.lang.String proxiedAttributionTag, java.lang.String message)
+    noteProxyOpNoThrow(java.lang.String op, java.lang.String proxiedPackageName)
+    noteProxyOpNoThrow(java.lang.String op, java.lang.String proxiedPackageName, int proxiedUid)
+    noteProxyOpNoThrow(java.lang.String op, java.lang.String proxiedPackageName, int proxiedUid, java.lang.String proxiedAttributionTag, java.lang.String message)
+    permissionToOp(java.lang.String permission)
+    setOnOpNotedCallback(java.util.concurrent.Executor asyncExecutor, android.app.AppOpsManager.OnOpNotedCallback callback)
+    startOp(java.lang.String op, int uid, java.lang.String packageName)
+    startOp(java.lang.String op, int uid, java.lang.String packageName, java.lang.String attributionTag, java.lang.String message)
+    startOpNoThrow(java.lang.String op, int uid, java.lang.String packageName)
+    startOpNoThrow(java.lang.String op, int uid, java.lang.String packageName, java.lang.String attributionTag, java.lang.String message)
+    startProxyOp(java.lang.String op, int proxiedUid, java.lang.String proxiedPackageName, java.lang.String proxiedAttributionTag, java.lang.String message)
+    startProxyOpNoThrow(java.lang.String op, int proxiedUid, java.lang.String proxiedPackageName, java.lang.String proxiedAttributionTag, java.lang.String message)
+    startWatchingActive(java.lang.String[] ops, java.util.concurrent.Executor executor, android.app.AppOpsManager.OnOpActiveChangedListener callback)
+    startWatchingMode(java.lang.String op, java.lang.String packageName, android.app.AppOpsManager.OnOpChangedListener callback)
+    startWatchingMode(java.lang.String op, java.lang.String packageName, int flags, android.app.AppOpsManager.OnOpChangedListener callback)
+    stopWatchingActive(android.app.AppOpsManager.OnOpActiveChangedListener callback)
+    stopWatchingMode(android.app.AppOpsManager.OnOpChangedListener callback)
+    unsafeCheckOp(java.lang.String op, int uid, java.lang.String packageName)
+    unsafeCheckOpNoThrow(java.lang.String op, int uid, java.lang.String packageName)
+    unsafeCheckOpRaw(java.lang.String op, int uid, java.lang.String packageName)
+    unsafeCheckOpRawNoThrow(java.lang.String op, int uid, java.lang.String packageName)
+  interface AppOpsManager.OnOpActiveChangedListener
+    onOpActiveChanged(java.lang.String op, int uid, java.lang.String packageName, boolean active)
+  interface AppOpsManager.OnOpChangedListener
+    onOpChanged(java.lang.String op, java.lang.String packageName)
+  class AppOpsManager.OnOpNotedCallback
+    onAsyncNoted(android.app.AsyncNotedAppOp asyncOp)
+    onNoted(android.app.SyncNotedAppOp op)
+    onSelfNoted(android.app.SyncNotedAppOp op)
+  class AsyncNotedAppOp
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AuthenticationRequiredException
+    #ctor(java.lang.Throwable cause, android.app.PendingIntent userAction)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AutomaticZenRule
+    #ctor(android.os.Parcel source)
+    #ctor(java.lang.String name, android.content.ComponentName owner, android.content.ComponentName configurationActivity, android.net.Uri conditionId, android.service.notification.ZenPolicy policy, int interruptionFilter, boolean enabled)
+    #ctor(java.lang.String name, android.content.ComponentName owner, android.net.Uri conditionId, int interruptionFilter, boolean enabled)
+    equals(java.lang.Object o)
+    setConditionId(android.net.Uri conditionId)
+    setConfigurationActivity(android.content.ComponentName componentName)
+    setEnabled(boolean enabled)
+    setInterruptionFilter(int interruptionFilter)
+    setName(java.lang.String name)
+    setZenPolicy(android.service.notification.ZenPolicy zenPolicy)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BackgroundServiceStartNotAllowedException
+    #ctor(java.lang.String message)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DatePickerDialog
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.app.DatePickerDialog.OnDateSetListener listener, int year, int month, int dayOfMonth)
+    #ctor(android.content.Context context, int themeResId)
+    #ctor(android.content.Context context, int themeResId, android.app.DatePickerDialog.OnDateSetListener listener, int year, int monthOfYear, int dayOfMonth)
+    onClick(android.content.DialogInterface dialog, int which)
+    onDateChanged(android.widget.DatePicker view, int year, int month, int dayOfMonth)
+    onRestoreInstanceState(android.os.Bundle savedInstanceState)
+    setOnDateSetListener(android.app.DatePickerDialog.OnDateSetListener listener)
+    updateDate(int year, int month, int dayOfMonth)
+  interface DatePickerDialog.OnDateSetListener
+    onDateSet(android.widget.DatePicker view, int year, int month, int dayOfMonth)
+  class Dialog
+    addContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, boolean cancelable, android.content.DialogInterface.OnCancelListener cancelListener)
+    #ctor(android.content.Context context, int themeResId)
+    dispatchGenericMotionEvent(android.view.MotionEvent ev)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchKeyShortcutEvent(android.view.KeyEvent event)
+    dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    dispatchTouchEvent(android.view.MotionEvent ev)
+    dispatchTrackballEvent(android.view.MotionEvent ev)
+    <T> findViewById(int id)
+    onActionModeFinished(android.view.ActionMode mode)
+    onActionModeStarted(android.view.ActionMode mode)
+    onContextItemSelected(android.view.MenuItem item)
+    onContextMenuClosed(android.view.Menu menu)
+    onCreate(android.os.Bundle savedInstanceState)
+    onCreateContextMenu(android.view.ContextMenu menu, android.view.View v, android.view.ContextMenu.ContextMenuInfo menuInfo)
+    onCreateOptionsMenu(android.view.Menu menu)
+    onCreatePanelMenu(int featureId, android.view.Menu menu)
+    onCreatePanelView(int featureId)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyShortcut(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onMenuItemSelected(int featureId, android.view.MenuItem item)
+    onMenuOpened(int featureId, android.view.Menu menu)
+    onOptionsItemSelected(android.view.MenuItem item)
+    onOptionsMenuClosed(android.view.Menu menu)
+    onPanelClosed(int featureId, android.view.Menu menu)
+    onPrepareOptionsMenu(android.view.Menu menu)
+    onPreparePanel(int featureId, android.view.View view, android.view.Menu menu)
+    onRestoreInstanceState(android.os.Bundle savedInstanceState)
+    onSearchRequested(android.view.SearchEvent searchEvent)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onWindowAttributesChanged(android.view.WindowManager.LayoutParams params)
+    onWindowFocusChanged(boolean hasFocus)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback, int type)
+    openContextMenu(android.view.View view)
+    registerForContextMenu(android.view.View view)
+    requestWindowFeature(int featureId)
+    <T> requireViewById(int id)
+    setCancelable(boolean flag)
+    setCanceledOnTouchOutside(boolean cancel)
+    setCancelMessage(android.os.Message msg)
+    setContentView(android.view.View view)
+    setContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    setContentView(int layoutResID)
+    setDismissMessage(android.os.Message msg)
+    setFeatureDrawable(int featureId, android.graphics.drawable.Drawable drawable)
+    setFeatureDrawableAlpha(int featureId, int alpha)
+    setFeatureDrawableResource(int featureId, int resId)
+    setFeatureDrawableUri(int featureId, android.net.Uri uri)
+    setOnCancelListener(android.content.DialogInterface.OnCancelListener listener)
+    setOnDismissListener(android.content.DialogInterface.OnDismissListener listener)
+    setOnKeyListener(android.content.DialogInterface.OnKeyListener onKeyListener)
+    setOnShowListener(android.content.DialogInterface.OnShowListener listener)
+    setOwnerActivity(android.app.Activity activity)
+    setTitle(int titleId)
+    setTitle(java.lang.CharSequence title)
+    setVolumeControlStream(int streamType)
+    takeKeyEvents(boolean get)
+    unregisterForContextMenu(android.view.View view)
+  class DialogFragment
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    onActivityCreated(android.os.Bundle savedInstanceState)
+    onAttach(android.content.Context context)
+    onCancel(android.content.DialogInterface dialog)
+    onCreate(android.os.Bundle savedInstanceState)
+    onCreateDialog(android.os.Bundle savedInstanceState)
+    onDismiss(android.content.DialogInterface dialog)
+    onGetLayoutInflater(android.os.Bundle savedInstanceState)
+    onSaveInstanceState(android.os.Bundle outState)
+    setCancelable(boolean cancelable)
+    setShowsDialog(boolean showsDialog)
+    setStyle(int style, int theme)
+    show(android.app.FragmentManager manager, java.lang.String tag)
+    show(android.app.FragmentTransaction transaction, java.lang.String tag)
+  class DirectAction
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DirectAction.Builder
+    #ctor(java.lang.String id)
+    setExtras(android.os.Bundle extras)
+    setLocusId(android.content.LocusId locusId)
+  class DownloadManager
+    addCompletedDownload(java.lang.String title, java.lang.String description, boolean isMediaScannerScannable, java.lang.String mimeType, java.lang.String path, long length, boolean showNotification)
+    addCompletedDownload(java.lang.String title, java.lang.String description, boolean isMediaScannerScannable, java.lang.String mimeType, java.lang.String path, long length, boolean showNotification, android.net.Uri uri, android.net.Uri referer)
+    enqueue(android.app.DownloadManager.Request request)
+    getMaxBytesOverMobile(android.content.Context context)
+    getMimeTypeForDownloadedFile(long id)
+    getRecommendedMaxBytesOverMobile(android.content.Context context)
+    getUriForDownloadedFile(long id)
+    openDownloadedFile(long id)
+    query(android.app.DownloadManager.Query query)
+    remove(long... ids)
+  class DownloadManager.Query
+    setFilterById(long... ids)
+    setFilterByStatus(int flags)
+  class DownloadManager.Request
+    addRequestHeader(java.lang.String header, java.lang.String value)
+    #ctor(android.net.Uri uri)
+    setAllowedNetworkTypes(int flags)
+    setAllowedOverMetered(boolean allow)
+    setAllowedOverRoaming(boolean allowed)
+    setDescription(java.lang.CharSequence description)
+    setDestinationInExternalFilesDir(android.content.Context context, java.lang.String dirType, java.lang.String subPath)
+    setDestinationInExternalPublicDir(java.lang.String dirType, java.lang.String subPath)
+    setDestinationUri(android.net.Uri uri)
+    setMimeType(java.lang.String mimeType)
+    setNotificationVisibility(int visibility)
+    setRequiresCharging(boolean requiresCharging)
+    setRequiresDeviceIdle(boolean requiresDeviceIdle)
+    setShowRunningNotification(boolean show)
+    setTitle(java.lang.CharSequence title)
+    setVisibleInDownloadsUi(boolean isVisible)
+  class ExpandableListActivity
+    onChildClick(android.widget.ExpandableListView parent, android.view.View v, int groupPosition, int childPosition, long id)
+    onCreateContextMenu(android.view.ContextMenu menu, android.view.View v, android.view.ContextMenu.ContextMenuInfo menuInfo)
+    onGroupCollapse(int groupPosition)
+    onGroupExpand(int groupPosition)
+    onRestoreInstanceState(android.os.Bundle state)
+    setListAdapter(android.widget.ExpandableListAdapter adapter)
+    setSelectedChild(int groupPosition, int childPosition, boolean shouldExpandGroup)
+    setSelectedGroup(int groupPosition)
+  class ForegroundServiceStartNotAllowedException
+    #ctor(java.lang.String message)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ForegroundServiceTypeException
+    #ctor(java.lang.String message)
+  class Fragment
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    equals(java.lang.Object o)
+    getString(int resId)
+    getString(int resId, java.lang.Object... formatArgs)
+    getText(int resId)
+    instantiate(android.content.Context context, java.lang.String fname)
+    instantiate(android.content.Context context, java.lang.String fname, android.os.Bundle args)
+    onActivityCreated(android.os.Bundle savedInstanceState)
+    onActivityResult(int requestCode, int resultCode, android.content.Intent data)
+    onAttach(android.app.Activity activity)
+    onAttach(android.content.Context context)
+    onAttachFragment(android.app.Fragment childFragment)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onContextItemSelected(android.view.MenuItem item)
+    onCreate(android.os.Bundle savedInstanceState)
+    onCreateAnimator(int transit, boolean enter, int nextAnim)
+    onCreateContextMenu(android.view.ContextMenu menu, android.view.View v, android.view.ContextMenu.ContextMenuInfo menuInfo)
+    onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater)
+    onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
+    onGetLayoutInflater(android.os.Bundle savedInstanceState)
+    onHiddenChanged(boolean hidden)
+    onInflate(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState)
+    onInflate(android.content.Context context, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState)
+    onInflate(android.util.AttributeSet attrs, android.os.Bundle savedInstanceState)
+    onMultiWindowModeChanged(boolean isInMultiWindowMode)
+    onMultiWindowModeChanged(boolean isInMultiWindowMode, android.content.res.Configuration newConfig)
+    onOptionsItemSelected(android.view.MenuItem item)
+    onOptionsMenuClosed(android.view.Menu menu)
+    onPictureInPictureModeChanged(boolean isInPictureInPictureMode)
+    onPictureInPictureModeChanged(boolean isInPictureInPictureMode, android.content.res.Configuration newConfig)
+    onPrepareOptionsMenu(android.view.Menu menu)
+    onRequestPermissionsResult(int requestCode, java.lang.String[] permissions, int[] grantResults)
+    onSaveInstanceState(android.os.Bundle outState)
+    onTrimMemory(int level)
+    onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
+    onViewStateRestored(android.os.Bundle savedInstanceState)
+    registerForContextMenu(android.view.View view)
+    requestPermissions(java.lang.String[] permissions, int requestCode)
+    setAllowEnterTransitionOverlap(boolean allow)
+    setAllowReturnTransitionOverlap(boolean allow)
+    setArguments(android.os.Bundle args)
+    setEnterSharedElementCallback(android.app.SharedElementCallback callback)
+    setEnterTransition(android.transition.Transition transition)
+    setExitSharedElementCallback(android.app.SharedElementCallback callback)
+    setExitTransition(android.transition.Transition transition)
+    setHasOptionsMenu(boolean hasMenu)
+    setInitialSavedState(android.app.Fragment.SavedState state)
+    setMenuVisibility(boolean menuVisible)
+    setReenterTransition(android.transition.Transition transition)
+    setRetainInstance(boolean retain)
+    setReturnTransition(android.transition.Transition transition)
+    setSharedElementEnterTransition(android.transition.Transition transition)
+    setSharedElementReturnTransition(android.transition.Transition transition)
+    setTargetFragment(android.app.Fragment fragment, int requestCode)
+    setUserVisibleHint(boolean isVisibleToUser)
+    shouldShowRequestPermissionRationale(java.lang.String permission)
+    startActivity(android.content.Intent intent)
+    startActivity(android.content.Intent intent, android.os.Bundle options)
+    startActivityForResult(android.content.Intent intent, int requestCode)
+    startActivityForResult(android.content.Intent intent, int requestCode, android.os.Bundle options)
+    startIntentSenderForResult(android.content.IntentSender intent, int requestCode, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+    unregisterForContextMenu(android.view.View view)
+  class Fragment.InstantiationException
+    #ctor(java.lang.String msg, java.lang.Exception cause)
+  class Fragment.SavedState
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FragmentBreadCrumbs
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setActivity(android.app.Activity a)
+    setMaxVisible(int visibleCrumbs)
+    setOnBreadCrumbClickListener(android.app.FragmentBreadCrumbs.OnBreadCrumbClickListener listener)
+    setParentTitle(java.lang.CharSequence title, java.lang.CharSequence shortTitle, android.view.View.OnClickListener listener)
+    setTitle(java.lang.CharSequence title, java.lang.CharSequence shortTitle)
+  interface FragmentBreadCrumbs.OnBreadCrumbClickListener
+    onBreadCrumbClick(android.app.FragmentManager.BackStackEntry backStack, int flags)
+  class FragmentContainer
+    <T> onFindViewById(int id)
+  class FragmentController
+    attachHost(android.app.Fragment parent)
+    createController(android.app.FragmentHostCallback<?> callbacks)
+    dispatchConfigurationChanged(android.content.res.Configuration newConfig)
+    dispatchContextItemSelected(android.view.MenuItem item)
+    dispatchCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater)
+    dispatchMultiWindowModeChanged(boolean isInMultiWindowMode)
+    dispatchMultiWindowModeChanged(boolean isInMultiWindowMode, android.content.res.Configuration newConfig)
+    dispatchOptionsItemSelected(android.view.MenuItem item)
+    dispatchOptionsMenuClosed(android.view.Menu menu)
+    dispatchPictureInPictureModeChanged(boolean isInPictureInPictureMode)
+    dispatchPictureInPictureModeChanged(boolean isInPictureInPictureMode, android.content.res.Configuration newConfig)
+    dispatchPrepareOptionsMenu(android.view.Menu menu)
+    dispatchTrimMemory(int level)
+    doLoaderStop(boolean retain)
+    dumpLoaders(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    findFragmentByWho(java.lang.String who)
+    onCreateView(android.view.View parent, java.lang.String name, android.content.Context context, android.util.AttributeSet attrs)
+    restoreAllState(android.os.Parcelable state, android.app.FragmentManagerNonConfig nonConfig)
+    restoreAllState(android.os.Parcelable state, java.util.List<android.app.Fragment> nonConfigList)
+    restoreLoaderNonConfig(android.util.ArrayMap<java.lang.String,android.app.LoaderManager> loaderManagers)
+  class FragmentHostCallback<E>
+    #ctor(android.content.Context context, android.os.Handler handler, int windowAnimations)
+    onAttachFragment(android.app.Fragment fragment)
+    onDump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    <T> onFindViewById(int id)
+    onRequestPermissionsFromFragment(android.app.Fragment fragment, java.lang.String[] permissions, int requestCode)
+    onShouldSaveFragmentState(android.app.Fragment fragment)
+    onStartActivityFromFragment(android.app.Fragment fragment, android.content.Intent intent, int requestCode, android.os.Bundle options)
+    onStartIntentSenderFromFragment(android.app.Fragment fragment, android.content.IntentSender intent, int requestCode, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+  class FragmentManager
+    addOnBackStackChangedListener(android.app.FragmentManager.OnBackStackChangedListener listener)
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    enableDebugLogging(boolean enabled)
+    findFragmentById(int id)
+    findFragmentByTag(java.lang.String tag)
+    getBackStackEntryAt(int index)
+    getFragment(android.os.Bundle bundle, java.lang.String key)
+    popBackStack(int id, int flags)
+    popBackStack(java.lang.String name, int flags)
+    popBackStackImmediate(int id, int flags)
+    popBackStackImmediate(java.lang.String name, int flags)
+    putFragment(android.os.Bundle bundle, java.lang.String key, android.app.Fragment fragment)
+    registerFragmentLifecycleCallbacks(android.app.FragmentManager.FragmentLifecycleCallbacks cb, boolean recursive)
+    removeOnBackStackChangedListener(android.app.FragmentManager.OnBackStackChangedListener listener)
+    saveFragmentInstanceState(android.app.Fragment f)
+    unregisterFragmentLifecycleCallbacks(android.app.FragmentManager.FragmentLifecycleCallbacks cb)
+  class FragmentManager.FragmentLifecycleCallbacks
+    onFragmentActivityCreated(android.app.FragmentManager fm, android.app.Fragment f, android.os.Bundle savedInstanceState)
+    onFragmentAttached(android.app.FragmentManager fm, android.app.Fragment f, android.content.Context context)
+    onFragmentCreated(android.app.FragmentManager fm, android.app.Fragment f, android.os.Bundle savedInstanceState)
+    onFragmentDestroyed(android.app.FragmentManager fm, android.app.Fragment f)
+    onFragmentDetached(android.app.FragmentManager fm, android.app.Fragment f)
+    onFragmentPaused(android.app.FragmentManager fm, android.app.Fragment f)
+    onFragmentPreAttached(android.app.FragmentManager fm, android.app.Fragment f, android.content.Context context)
+    onFragmentPreCreated(android.app.FragmentManager fm, android.app.Fragment f, android.os.Bundle savedInstanceState)
+    onFragmentResumed(android.app.FragmentManager fm, android.app.Fragment f)
+    onFragmentSaveInstanceState(android.app.FragmentManager fm, android.app.Fragment f, android.os.Bundle outState)
+    onFragmentStarted(android.app.FragmentManager fm, android.app.Fragment f)
+    onFragmentStopped(android.app.FragmentManager fm, android.app.Fragment f)
+    onFragmentViewCreated(android.app.FragmentManager fm, android.app.Fragment f, android.view.View v, android.os.Bundle savedInstanceState)
+    onFragmentViewDestroyed(android.app.FragmentManager fm, android.app.Fragment f)
+  class FragmentTransaction
+    add(android.app.Fragment fragment, java.lang.String tag)
+    add(int containerViewId, android.app.Fragment fragment)
+    add(int containerViewId, android.app.Fragment fragment, java.lang.String tag)
+    addSharedElement(android.view.View sharedElement, java.lang.String name)
+    addToBackStack(java.lang.String name)
+    attach(android.app.Fragment fragment)
+    detach(android.app.Fragment fragment)
+    hide(android.app.Fragment fragment)
+    remove(android.app.Fragment fragment)
+    replace(int containerViewId, android.app.Fragment fragment)
+    replace(int containerViewId, android.app.Fragment fragment, java.lang.String tag)
+    runOnCommit(java.lang.Runnable runnable)
+    setBreadCrumbShortTitle(int res)
+    setBreadCrumbShortTitle(java.lang.CharSequence text)
+    setBreadCrumbTitle(int res)
+    setBreadCrumbTitle(java.lang.CharSequence text)
+    setCustomAnimations(int enter, int exit)
+    setCustomAnimations(int enter, int exit, int popEnter, int popExit)
+    setPrimaryNavigationFragment(android.app.Fragment fragment)
+    setReorderingAllowed(boolean reorderingAllowed)
+    setTransition(int transit)
+    setTransitionStyle(int styleRes)
+    show(android.app.Fragment fragment)
+  class GameManager
+    setGameState(android.app.GameState gameState)
+  class GameState
+    #ctor(boolean isLoading, int mode)
+    #ctor(boolean isLoading, int mode, int label, int quality)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GrammaticalInflectionManager
+    setRequestedApplicationGrammaticalGender(int grammaticalGender)
+  class Instrumentation
+    acquireLooperManager(android.os.Looper looper)
+    addMonitor(android.app.Instrumentation.ActivityMonitor monitor)
+    addMonitor(android.content.IntentFilter filter, android.app.Instrumentation.ActivityResult result, boolean block)
+    addMonitor(java.lang.String cls, android.app.Instrumentation.ActivityResult result, boolean block)
+    addResults(android.os.Bundle results)
+    callActivityOnCreate(android.app.Activity activity, android.os.Bundle icicle)
+    callActivityOnCreate(android.app.Activity activity, android.os.Bundle icicle, android.os.PersistableBundle persistentState)
+    callActivityOnDestroy(android.app.Activity activity)
+    callActivityOnNewIntent(android.app.Activity activity, android.content.Intent intent)
+    callActivityOnPause(android.app.Activity activity)
+    callActivityOnPictureInPictureRequested(android.app.Activity activity)
+    callActivityOnPostCreate(android.app.Activity activity, android.os.Bundle savedInstanceState)
+    callActivityOnPostCreate(android.app.Activity activity, android.os.Bundle savedInstanceState, android.os.PersistableBundle persistentState)
+    callActivityOnRestart(android.app.Activity activity)
+    callActivityOnRestoreInstanceState(android.app.Activity activity, android.os.Bundle savedInstanceState)
+    callActivityOnRestoreInstanceState(android.app.Activity activity, android.os.Bundle savedInstanceState, android.os.PersistableBundle persistentState)
+    callActivityOnResume(android.app.Activity activity)
+    callActivityOnSaveInstanceState(android.app.Activity activity, android.os.Bundle outState)
+    callActivityOnSaveInstanceState(android.app.Activity activity, android.os.Bundle outState, android.os.PersistableBundle outPersistentState)
+    callActivityOnStart(android.app.Activity activity)
+    callActivityOnStop(android.app.Activity activity)
+    callActivityOnUserLeaving(android.app.Activity activity)
+    callApplicationOnCreate(android.app.Application app)
+    checkMonitorHit(android.app.Instrumentation.ActivityMonitor monitor, int minHits)
+    finish(int resultCode, android.os.Bundle results)
+    getUiAutomation(int flags)
+    invokeContextMenuAction(android.app.Activity targetActivity, int id, int flag)
+    invokeMenuActionSync(android.app.Activity targetActivity, int id, int flag)
+    newActivity(java.lang.Class<?> clazz, android.content.Context context, android.os.IBinder token, android.app.Application application, android.content.Intent intent, android.content.pm.ActivityInfo info, java.lang.CharSequence title, android.app.Activity parent, java.lang.String id, java.lang.Object lastNonConfigurationInstance)
+    newActivity(java.lang.ClassLoader cl, java.lang.String className, android.content.Intent intent)
+    newApplication(java.lang.Class<?> clazz, android.content.Context context)
+    newApplication(java.lang.ClassLoader cl, java.lang.String className, android.content.Context context)
+    onCreate(android.os.Bundle arguments)
+    onException(java.lang.Object obj, java.lang.Throwable e)
+    removeMonitor(android.app.Instrumentation.ActivityMonitor monitor)
+    runOnMainSync(java.lang.Runnable runner)
+    sendCharacterSync(int keyCode)
+    sendKeyDownUpSync(int keyCode)
+    sendKeySync(android.view.KeyEvent event)
+    sendPointerSync(android.view.MotionEvent event)
+    sendStatus(int resultCode, android.os.Bundle results)
+    sendStringSync(java.lang.String text)
+    sendTrackballEventSync(android.view.MotionEvent event)
+    setInTouchMode(boolean inTouch)
+    startActivitySync(android.content.Intent intent)
+    startActivitySync(android.content.Intent intent, android.os.Bundle options)
+    waitForIdle(java.lang.Runnable recipient)
+    waitForMonitor(android.app.Instrumentation.ActivityMonitor monitor)
+    waitForMonitorWithTimeout(android.app.Instrumentation.ActivityMonitor monitor, long timeOut)
+  class Instrumentation.ActivityMonitor
+    #ctor(android.content.IntentFilter which, android.app.Instrumentation.ActivityResult result, boolean block)
+    #ctor(java.lang.String cls, android.app.Instrumentation.ActivityResult result, boolean block)
+    onStartActivity(android.content.Intent intent)
+    waitForActivityWithTimeout(long timeOut)
+  class Instrumentation.ActivityResult
+    #ctor(int resultCode, android.content.Intent resultData)
+  class IntentService
+    #ctor(java.lang.String name)
+    onBind(android.content.Intent intent)
+    onHandleIntent(android.content.Intent intent)
+    onStart(android.content.Intent intent, int startId)
+    onStartCommand(android.content.Intent intent, int flags, int startId)
+    setIntentRedelivery(boolean enabled)
+  class InvalidForegroundServiceTypeException
+    #ctor(java.lang.String message)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class KeyguardManager
+    addKeyguardLockedStateListener(java.util.concurrent.Executor executor, android.app.KeyguardManager.KeyguardLockedStateListener listener)
+    createConfirmDeviceCredentialIntent(java.lang.CharSequence title, java.lang.CharSequence description)
+    exitKeyguardSecurely(android.app.KeyguardManager.OnKeyguardExitResult callback)
+    newKeyguardLock(java.lang.String tag)
+    removeKeyguardLockedStateListener(android.app.KeyguardManager.KeyguardLockedStateListener listener)
+    requestDismissKeyguard(android.app.Activity activity, android.app.KeyguardManager.KeyguardDismissCallback callback)
+  interface KeyguardManager.KeyguardLockedStateListener
+    onKeyguardLockedStateChanged(boolean isKeyguardLocked)
+  interface KeyguardManager.OnKeyguardExitResult
+    onKeyguardExitResult(boolean success)
+  class LauncherActivity
+    intentForPosition(int position)
+    itemForPosition(int position)
+    onCreate(android.os.Bundle icicle)
+    onListItemClick(android.widget.ListView l, android.view.View v, int position, long id)
+    onQueryPackageManager(android.content.Intent queryIntent)
+    setTitle(int titleId)
+    setTitle(java.lang.CharSequence title)
+  class LauncherActivity.IconResizer
+    createIconThumbnail(android.graphics.drawable.Drawable icon)
+  class ListActivity
+    onListItemClick(android.widget.ListView l, android.view.View v, int position, long id)
+    onRestoreInstanceState(android.os.Bundle state)
+    setListAdapter(android.widget.ListAdapter adapter)
+    setSelection(int position)
+  class ListFragment
+    onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
+    onListItemClick(android.widget.ListView l, android.view.View v, int position, long id)
+    onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
+    setEmptyText(java.lang.CharSequence text)
+    setListAdapter(android.widget.ListAdapter adapter)
+    setListShown(boolean shown)
+    setListShownNoAnimation(boolean shown)
+    setSelection(int position)
+  class LoaderManager
+    destroyLoader(int id)
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    enableDebugLogging(boolean enabled)
+    <D> getLoader(int id)
+    <D> initLoader(int id, android.os.Bundle args, android.app.LoaderManager.LoaderCallbacks<D> callback)
+    <D> restartLoader(int id, android.os.Bundle args, android.app.LoaderManager.LoaderCallbacks<D> callback)
+  interface LoaderManager.LoaderCallbacks<D>
+    onCreateLoader(int id, android.os.Bundle args)
+    onLoaderReset(android.content.Loader<D> loader)
+    onLoadFinished(android.content.Loader<D> loader, D data)
+  class LocalActivityManager
+    destroyActivity(java.lang.String id, boolean finish)
+    dispatchCreate(android.os.Bundle state)
+    dispatchDestroy(boolean finishing)
+    dispatchPause(boolean finishing)
+    getActivity(java.lang.String id)
+    #ctor(android.app.Activity parent, boolean singleMode)
+    startActivity(java.lang.String id, android.content.Intent intent)
+  class LocaleConfig
+    fromContextIgnoringOverride(android.content.Context context)
+    #ctor(android.content.Context context)
+    #ctor(android.os.LocaleList locales)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LocaleManager
+    getApplicationLocales(java.lang.String appPackageName)
+    setApplicationLocales(android.os.LocaleList locales)
+    setOverrideLocaleConfig(android.app.LocaleConfig localeConfig)
+  class MediaRouteActionProvider
+    #ctor(android.content.Context context)
+    onCreateActionView(android.view.MenuItem item)
+    setExtendedSettingsClickListener(android.view.View.OnClickListener listener)
+    setRouteTypes(int types)
+  class MediaRouteButton
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onCreateDrawableState(int extraSpace)
+    onDraw(android.graphics.Canvas canvas)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setExtendedSettingsClickListener(android.view.View.OnClickListener listener)
+    setRouteTypes(int types)
+    setVisibility(int visibility)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  class MissingForegroundServiceTypeException
+    #ctor(java.lang.String message)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NativeActivity
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onCreate(android.os.Bundle savedInstanceState)
+    onInputQueueCreated(android.view.InputQueue queue)
+    onInputQueueDestroyed(android.view.InputQueue queue)
+    onSaveInstanceState(android.os.Bundle outState)
+    onWindowFocusChanged(boolean hasFocus)
+    surfaceChanged(android.view.SurfaceHolder holder, int format, int width, int height)
+    surfaceCreated(android.view.SurfaceHolder holder)
+    surfaceDestroyed(android.view.SurfaceHolder holder)
+    surfaceRedrawNeeded(android.view.SurfaceHolder holder)
+  class Notification
+    findRemoteInputActionPair(boolean requiresFreeform)
+    #ctor(android.os.Parcel parcel)
+    #ctor(int icon, java.lang.CharSequence tickerText, long when)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Notification.Action
+    #ctor(int icon, java.lang.CharSequence title, android.app.PendingIntent intent)
+    writeToParcel(android.os.Parcel out, int flags)
+  class Notification.Action.Builder
+    addExtras(android.os.Bundle extras)
+    addRemoteInput(android.app.RemoteInput remoteInput)
+    extend(android.app.Notification.Action.Extender extender)
+    #ctor(android.app.Notification.Action action)
+    #ctor(android.graphics.drawable.Icon icon, java.lang.CharSequence title, android.app.PendingIntent intent)
+    #ctor(int icon, java.lang.CharSequence title, android.app.PendingIntent intent)
+    setAllowGeneratedReplies(boolean allowGeneratedReplies)
+    setAuthenticationRequired(boolean authenticationRequired)
+    setContextual(boolean isContextual)
+    setSemanticAction(int semanticAction)
+  interface Notification.Action.Extender
+    extend(android.app.Notification.Action.Builder builder)
+  class Notification.Action.WearableExtender
+    extend(android.app.Notification.Action.Builder builder)
+    #ctor(android.app.Notification.Action action)
+    setAvailableOffline(boolean availableOffline)
+    setCancelLabel(java.lang.CharSequence label)
+    setConfirmLabel(java.lang.CharSequence label)
+    setHintDisplayActionInline(boolean hintDisplayInline)
+    setHintLaunchesActivity(boolean hintLaunchesActivity)
+    setInProgressLabel(java.lang.CharSequence label)
+  class Notification.BigPictureStyle
+    bigLargeIcon(android.graphics.Bitmap b)
+    bigLargeIcon(android.graphics.drawable.Icon icon)
+    bigPicture(android.graphics.Bitmap b)
+    bigPicture(android.graphics.drawable.Icon icon)
+    #ctor(android.app.Notification.Builder builder)
+    setBigContentTitle(java.lang.CharSequence title)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setSummaryText(java.lang.CharSequence cs)
+    showBigPictureWhenCollapsed(boolean show)
+  class Notification.BigTextStyle
+    bigText(java.lang.CharSequence cs)
+    #ctor(android.app.Notification.Builder builder)
+    setBigContentTitle(java.lang.CharSequence title)
+    setSummaryText(java.lang.CharSequence cs)
+  class Notification.BubbleMetadata
+    writeToParcel(android.os.Parcel out, int flags)
+  class Notification.BubbleMetadata.Builder
+    #ctor(android.app.PendingIntent intent, android.graphics.drawable.Icon icon)
+    #ctor(java.lang.String shortcutId)
+    setAutoExpandBubble(boolean shouldExpand)
+    setDeleteIntent(android.app.PendingIntent deleteIntent)
+    setDesiredHeight(int height)
+    setDesiredHeightResId(int heightResId)
+    setIcon(android.graphics.drawable.Icon icon)
+    setIntent(android.app.PendingIntent intent)
+    setSuppressableBubble(boolean suppressBubble)
+    setSuppressNotification(boolean shouldSuppressNotif)
+  class Notification.Builder
+    addAction(android.app.Notification.Action action)
+    addAction(int icon, java.lang.CharSequence title, android.app.PendingIntent intent)
+    addExtras(android.os.Bundle extras)
+    addPerson(android.app.Person person)
+    addPerson(java.lang.String uri)
+    extend(android.app.Notification.Extender extender)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, java.lang.String channelId)
+    recoverBuilder(android.content.Context context, android.app.Notification n)
+    setActions(android.app.Notification.Action... actions)
+    setAllowSystemGeneratedContextualActions(boolean allowed)
+    setAutoCancel(boolean autoCancel)
+    setBadgeIconType(int icon)
+    setBubbleMetadata(android.app.Notification.BubbleMetadata data)
+    setCategory(java.lang.String category)
+    setChannelId(java.lang.String channelId)
+    setChronometerCountDown(boolean countDown)
+    setColor(int argb)
+    setColorized(boolean colorize)
+    setContent(android.widget.RemoteViews views)
+    setContentInfo(java.lang.CharSequence info)
+    setContentIntent(android.app.PendingIntent intent)
+    setContentText(java.lang.CharSequence text)
+    setContentTitle(java.lang.CharSequence title)
+    setCustomBigContentView(android.widget.RemoteViews contentView)
+    setCustomContentView(android.widget.RemoteViews contentView)
+    setCustomHeadsUpContentView(android.widget.RemoteViews contentView)
+    setDefaults(int defaults)
+    setDeleteIntent(android.app.PendingIntent intent)
+    setExtras(android.os.Bundle extras)
+    setFlag(int mask, boolean value)
+    setForegroundServiceBehavior(int behavior)
+    setFullScreenIntent(android.app.PendingIntent intent, boolean highPriority)
+    setGroup(java.lang.String groupKey)
+    setGroupAlertBehavior(int groupAlertBehavior)
+    setGroupSummary(boolean isGroupSummary)
+    setLargeIcon(android.graphics.Bitmap b)
+    setLargeIcon(android.graphics.drawable.Icon icon)
+    setLights(int argb, int onMs, int offMs)
+    setLocalOnly(boolean localOnly)
+    setLocusId(android.content.LocusId locusId)
+    setNumber(int number)
+    setOngoing(boolean ongoing)
+    setOnlyAlertOnce(boolean onlyAlertOnce)
+    setPriority(int pri)
+    setProgress(int max, int progress, boolean indeterminate)
+    setPublicVersion(android.app.Notification n)
+    setRemoteInputHistory(java.lang.CharSequence[] text)
+    setSettingsText(java.lang.CharSequence text)
+    setShortcutId(java.lang.String shortcutId)
+    setShowWhen(boolean show)
+    setSmallIcon(android.graphics.drawable.Icon icon)
+    setSmallIcon(int icon)
+    setSmallIcon(int icon, int level)
+    setSortKey(java.lang.String sortKey)
+    setSound(android.net.Uri sound)
+    setSound(android.net.Uri sound, android.media.AudioAttributes audioAttributes)
+    setSound(android.net.Uri sound, int streamType)
+    setStyle(android.app.Notification.Style style)
+    setSubText(java.lang.CharSequence text)
+    setTicker(java.lang.CharSequence tickerText)
+    setTicker(java.lang.CharSequence tickerText, android.widget.RemoteViews views)
+    setTimeoutAfter(long durationMs)
+    setUsesChronometer(boolean b)
+    setVibrate(long[] pattern)
+    setVisibility(int visibility)
+    setWhen(long when)
+  class Notification.CallStyle
+    forIncomingCall(android.app.Person person, android.app.PendingIntent declineIntent, android.app.PendingIntent answerIntent)
+    forOngoingCall(android.app.Person person, android.app.PendingIntent hangUpIntent)
+    forScreeningCall(android.app.Person person, android.app.PendingIntent hangUpIntent, android.app.PendingIntent answerIntent)
+    setAnswerButtonColorHint(int color)
+    setDeclineButtonColorHint(int color)
+    setIsVideo(boolean isVideo)
+    setVerificationIcon(android.graphics.drawable.Icon verificationIcon)
+    setVerificationText(java.lang.CharSequence verificationText)
+  class Notification.CarExtender
+    extend(android.app.Notification.Builder builder)
+    #ctor(android.app.Notification notif)
+    setColor(int color)
+    setLargeIcon(android.graphics.Bitmap largeIcon)
+    setUnreadConversation(android.app.Notification.CarExtender.UnreadConversation unreadConversation)
+  class Notification.CarExtender.Builder
+    addMessage(java.lang.String message)
+    #ctor(java.lang.String name)
+    setLatestTimestamp(long timestamp)
+    setReadPendingIntent(android.app.PendingIntent pendingIntent)
+    setReplyAction(android.app.PendingIntent pendingIntent, android.app.RemoteInput remoteInput)
+  interface Notification.Extender
+    extend(android.app.Notification.Builder builder)
+  class Notification.InboxStyle
+    addLine(java.lang.CharSequence cs)
+    #ctor(android.app.Notification.Builder builder)
+    setBigContentTitle(java.lang.CharSequence title)
+    setSummaryText(java.lang.CharSequence cs)
+  class Notification.MediaStyle
+    #ctor(android.app.Notification.Builder builder)
+    setMediaSession(android.media.session.MediaSession.Token token)
+    setShowActionsInCompactView(int... actions)
+  class Notification.MessagingStyle
+    addHistoricMessage(android.app.Notification.MessagingStyle.Message message)
+    addMessage(android.app.Notification.MessagingStyle.Message message)
+    addMessage(java.lang.CharSequence text, long timestamp, android.app.Person sender)
+    addMessage(java.lang.CharSequence text, long timestamp, java.lang.CharSequence sender)
+    #ctor(android.app.Person user)
+    #ctor(java.lang.CharSequence userDisplayName)
+    setConversationTitle(java.lang.CharSequence conversationTitle)
+    setGroupConversation(boolean isGroupConversation)
+  class Notification.MessagingStyle.Message
+    getMessagesFromBundleArray(android.os.Parcelable[] bundles)
+    #ctor(java.lang.CharSequence text, long timestamp, android.app.Person sender)
+    #ctor(java.lang.CharSequence text, long timestamp, java.lang.CharSequence sender)
+    setData(java.lang.String dataMimeType, android.net.Uri dataUri)
+  class Notification.Style
+    getStandardView(int layoutId)
+    internalSetBigContentTitle(java.lang.CharSequence title)
+    internalSetSummaryText(java.lang.CharSequence cs)
+    setBuilder(android.app.Notification.Builder builder)
+  class Notification.WearableExtender
+    addAction(android.app.Notification.Action action)
+    addActions(java.util.List<android.app.Notification.Action> actions)
+    addPage(android.app.Notification page)
+    addPages(java.util.List<android.app.Notification> pages)
+    extend(android.app.Notification.Builder builder)
+    #ctor(android.app.Notification notif)
+    setBackground(android.graphics.Bitmap background)
+    setBridgeTag(java.lang.String bridgeTag)
+    setContentAction(int actionIndex)
+    setContentIcon(int icon)
+    setContentIconGravity(int contentIconGravity)
+    setContentIntentAvailableOffline(boolean contentIntentAvailableOffline)
+    setCustomContentHeight(int height)
+    setCustomSizePreset(int sizePreset)
+    setDismissalId(java.lang.String dismissalId)
+    setDisplayIntent(android.app.PendingIntent intent)
+    setGravity(int gravity)
+    setHintAmbientBigPicture(boolean hintAmbientBigPicture)
+    setHintAvoidBackgroundClipping(boolean hintAvoidBackgroundClipping)
+    setHintContentIntentLaunchesActivity(boolean hintContentIntentLaunchesActivity)
+    setHintHideIcon(boolean hintHideIcon)
+    setHintScreenTimeout(int timeout)
+    setHintShowBackgroundOnly(boolean hintShowBackgroundOnly)
+    setStartScrollBottom(boolean startScrollBottom)
+  class NotificationChannel
+    enableLights(boolean lights)
+    enableVibration(boolean vibration)
+    equals(java.lang.Object o)
+    #ctor(java.lang.String id, java.lang.CharSequence name, int importance)
+    setAllowBubbles(boolean allowBubbles)
+    setBlockable(boolean blockable)
+    setBypassDnd(boolean bypassDnd)
+    setConversationId(java.lang.String parentChannelId, java.lang.String conversationId)
+    setDescription(java.lang.String description)
+    setGroup(java.lang.String groupId)
+    setImportance(int importance)
+    setLightColor(int argb)
+    setLockscreenVisibility(int lockscreenVisibility)
+    setName(java.lang.CharSequence name)
+    setShowBadge(boolean showBadge)
+    setSound(android.net.Uri sound, android.media.AudioAttributes audioAttributes)
+    setVibrationPattern(long[] vibrationPattern)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NotificationChannelGroup
+    equals(java.lang.Object o)
+    #ctor(java.lang.String id, java.lang.CharSequence name)
+    setDescription(java.lang.String description)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NotificationManager
+    addAutomaticZenRule(android.app.AutomaticZenRule automaticZenRule)
+    cancel(int id)
+    cancel(java.lang.String tag, int id)
+    cancelAsPackage(java.lang.String targetPackage, java.lang.String tag, int id)
+    canNotifyAsPackage(java.lang.String pkg)
+    createNotificationChannel(android.app.NotificationChannel channel)
+    createNotificationChannelGroup(android.app.NotificationChannelGroup group)
+    createNotificationChannelGroups(java.util.List<android.app.NotificationChannelGroup> groups)
+    createNotificationChannels(java.util.List<android.app.NotificationChannel> channels)
+    deleteNotificationChannel(java.lang.String channelId)
+    deleteNotificationChannelGroup(java.lang.String groupId)
+    getAutomaticZenRule(java.lang.String id)
+    getNotificationChannel(java.lang.String channelId)
+    getNotificationChannel(java.lang.String channelId, java.lang.String conversationId)
+    getNotificationChannelGroup(java.lang.String channelGroupId)
+    isNotificationListenerAccessGranted(android.content.ComponentName listener)
+    matchesCallFilter(android.net.Uri uri)
+    notify(int id, android.app.Notification notification)
+    notify(java.lang.String tag, int id, android.app.Notification notification)
+    notifyAsPackage(java.lang.String targetPackage, java.lang.String tag, int id, android.app.Notification notification)
+    removeAutomaticZenRule(java.lang.String id)
+    setAutomaticZenRuleState(java.lang.String id, android.service.notification.Condition condition)
+    setInterruptionFilter(int interruptionFilter)
+    setNotificationDelegate(java.lang.String delegate)
+    setNotificationPolicy(android.app.NotificationManager.Policy policy)
+    updateAutomaticZenRule(java.lang.String id, android.app.AutomaticZenRule automaticZenRule)
+  class NotificationManager.Policy
+    equals(java.lang.Object o)
+    #ctor(int priorityCategories, int priorityCallSenders, int priorityMessageSenders)
+    #ctor(int priorityCategories, int priorityCallSenders, int priorityMessageSenders, int suppressedVisualEffects)
+    #ctor(int priorityCategories, int priorityCallSenders, int priorityMessageSenders, int suppressedVisualEffects, int priorityConversationSenders)
+    priorityCategoriesToString(int priorityCategories)
+    prioritySendersToString(int prioritySenders)
+    suppressedEffectsToString(int effects)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PendingIntent
+    equals(java.lang.Object otherObj)
+    getActivities(android.content.Context context, int requestCode, android.content.Intent[] intents, int flags)
+    getActivities(android.content.Context context, int requestCode, android.content.Intent[] intents, int flags, android.os.Bundle options)
+    getActivity(android.content.Context context, int requestCode, android.content.Intent intent, int flags)
+    getActivity(android.content.Context context, int requestCode, android.content.Intent intent, int flags, android.os.Bundle options)
+    getBroadcast(android.content.Context context, int requestCode, android.content.Intent intent, int flags)
+    getForegroundService(android.content.Context context, int requestCode, android.content.Intent intent, int flags)
+    getService(android.content.Context context, int requestCode, android.content.Intent intent, int flags)
+    readPendingIntentOrNullFromParcel(android.os.Parcel in)
+    send(android.content.Context context, int code, android.content.Intent intent)
+    send(android.content.Context context, int code, android.content.Intent intent, android.app.PendingIntent.OnFinished onFinished, android.os.Handler handler)
+    send(android.content.Context context, int code, android.content.Intent intent, android.app.PendingIntent.OnFinished onFinished, android.os.Handler handler, java.lang.String requiredPermission)
+    send(android.content.Context context, int code, android.content.Intent intent, android.app.PendingIntent.OnFinished onFinished, android.os.Handler handler, java.lang.String requiredPermission, android.os.Bundle options)
+    send(int code)
+    send(int code, android.app.PendingIntent.OnFinished onFinished, android.os.Handler handler)
+    writePendingIntentOrNullToParcel(android.app.PendingIntent sender, android.os.Parcel out)
+    writeToParcel(android.os.Parcel out, int flags)
+  class PendingIntent.CanceledException
+    #ctor(java.lang.Exception cause)
+    #ctor(java.lang.String name)
+  interface PendingIntent.OnFinished
+    onSendFinished(android.app.PendingIntent pendingIntent, android.content.Intent intent, int resultCode, java.lang.String resultData, android.os.Bundle resultExtras)
+  class Person
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Person.Builder
+    setBot(boolean isBot)
+    setIcon(android.graphics.drawable.Icon icon)
+    setImportant(boolean isImportant)
+    setKey(java.lang.String key)
+    setName(java.lang.CharSequence name)
+    setUri(java.lang.String uri)
+  class PictureInPictureParams
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class PictureInPictureParams.Builder
+    #ctor(android.app.PictureInPictureParams original)
+    setActions(java.util.List<android.app.RemoteAction> actions)
+    setAspectRatio(android.util.Rational aspectRatio)
+    setAutoEnterEnabled(boolean autoEnterEnabled)
+    setCloseAction(android.app.RemoteAction action)
+    setExpandedAspectRatio(android.util.Rational expandedAspectRatio)
+    setSeamlessResizeEnabled(boolean seamlessResizeEnabled)
+    setSourceRectHint(android.graphics.Rect launchBounds)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTitle(java.lang.CharSequence title)
+  class PictureInPictureUiState
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class Presentation
+    #ctor(android.content.Context outerContext, android.view.Display display)
+    #ctor(android.content.Context outerContext, android.view.Display display, int theme)
+  class ProgressDialog
+    incrementProgressBy(int diff)
+    incrementSecondaryProgressBy(int diff)
+    onCreate(android.os.Bundle savedInstanceState)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, int theme)
+    setIndeterminate(boolean indeterminate)
+    setIndeterminateDrawable(android.graphics.drawable.Drawable d)
+    setMax(int max)
+    setMessage(java.lang.CharSequence message)
+    setProgress(int value)
+    setProgressDrawable(android.graphics.drawable.Drawable d)
+    setProgressNumberFormat(java.lang.String format)
+    setProgressPercentFormat(java.text.NumberFormat format)
+    setProgressStyle(int style)
+    setSecondaryProgress(int secondaryProgress)
+    show(android.content.Context context, java.lang.CharSequence title, java.lang.CharSequence message)
+    show(android.content.Context context, java.lang.CharSequence title, java.lang.CharSequence message, boolean indeterminate)
+    show(android.content.Context context, java.lang.CharSequence title, java.lang.CharSequence message, boolean indeterminate, boolean cancelable)
+    show(android.content.Context context, java.lang.CharSequence title, java.lang.CharSequence message, boolean indeterminate, boolean cancelable, android.content.DialogInterface.OnCancelListener cancelListener)
+  class RecoverableSecurityException
+    #ctor(java.lang.Throwable cause, java.lang.CharSequence userMessage, android.app.RemoteAction userAction)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RemoteAction
+    dump(java.lang.String prefix, java.io.PrintWriter pw)
+    equals(java.lang.Object o)
+    #ctor(android.graphics.drawable.Icon icon, java.lang.CharSequence title, java.lang.CharSequence contentDescription, android.app.PendingIntent intent)
+    setEnabled(boolean enabled)
+    setShouldShowIcon(boolean shouldShowIcon)
+    writeToParcel(android.os.Parcel out, int flags)
+  class RemoteInput
+    addDataResultToIntent(android.app.RemoteInput remoteInput, android.content.Intent intent, java.util.Map<java.lang.String,android.net.Uri> results)
+    addResultsToIntent(android.app.RemoteInput[] remoteInputs, android.content.Intent intent, android.os.Bundle results)
+    getDataResultsFromIntent(android.content.Intent intent, java.lang.String remoteInputResultKey)
+    getResultsFromIntent(android.content.Intent intent)
+    getResultsSource(android.content.Intent intent)
+    setResultsSource(android.content.Intent intent, int source)
+    writeToParcel(android.os.Parcel out, int flags)
+  class RemoteInput.Builder
+    addExtras(android.os.Bundle extras)
+    #ctor(java.lang.String resultKey)
+    setAllowDataType(java.lang.String mimeType, boolean doAllow)
+    setAllowFreeFormInput(boolean allowFreeFormTextInput)
+    setChoices(java.lang.CharSequence[] choices)
+    setEditChoicesBeforeSending(int editChoicesBeforeSending)
+    setLabel(java.lang.CharSequence label)
+  class SearchableInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SearchManager
+    getSearchableInfo(android.content.ComponentName componentName)
+    onCancel(android.content.DialogInterface dialog)
+    onDismiss(android.content.DialogInterface dialog)
+    setOnCancelListener(android.app.SearchManager.OnCancelListener listener)
+    setOnDismissListener(android.app.SearchManager.OnDismissListener listener)
+    startSearch(java.lang.String initialQuery, boolean selectInitialQuery, android.content.ComponentName launchActivity, android.os.Bundle appSearchData, boolean globalSearch)
+    triggerSearch(java.lang.String query, android.content.ComponentName launchActivity, android.os.Bundle appSearchData)
+  class Service
+    attachBaseContext(android.content.Context newBase)
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    onBind(android.content.Intent intent)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onRebind(android.content.Intent intent)
+    onStart(android.content.Intent intent, int startId)
+    onStartCommand(android.content.Intent intent, int flags, int startId)
+    onTaskRemoved(android.content.Intent rootIntent)
+    onTimeout(int startId)
+    onTrimMemory(int level)
+    onUnbind(android.content.Intent intent)
+    startForeground(int id, android.app.Notification notification)
+    startForeground(int id, android.app.Notification notification, int foregroundServiceType)
+    stopForeground(boolean removeNotification)
+    stopForeground(int notificationBehavior)
+    stopSelf(int startId)
+    stopSelfResult(int startId)
+  class SharedElementCallback
+    onCaptureSharedElementSnapshot(android.view.View sharedElement, android.graphics.Matrix viewToGlobalMatrix, android.graphics.RectF screenBounds)
+    onCreateSnapshotView(android.content.Context context, android.os.Parcelable snapshot)
+    onMapSharedElements(java.util.List<java.lang.String> names, java.util.Map<java.lang.String,android.view.View> sharedElements)
+    onRejectSharedElements(java.util.List<android.view.View> rejectedSharedElements)
+    onSharedElementEnd(java.util.List<java.lang.String> sharedElementNames, java.util.List<android.view.View> sharedElements, java.util.List<android.view.View> sharedElementSnapshots)
+    onSharedElementsArrived(java.util.List<java.lang.String> sharedElementNames, java.util.List<android.view.View> sharedElements, android.app.SharedElementCallback.OnSharedElementsReadyListener listener)
+    onSharedElementStart(java.util.List<java.lang.String> sharedElementNames, java.util.List<android.view.View> sharedElements, java.util.List<android.view.View> sharedElementSnapshots)
+  class StatusBarManager
+    requestAddTileService(android.content.ComponentName tileServiceComponentName, java.lang.CharSequence tileLabel, android.graphics.drawable.Icon icon, java.util.concurrent.Executor resultExecutor, java.util.function.Consumer<java.lang.Integer> resultCallback)
+  class SyncNotedAppOp
+    equals(java.lang.Object o)
+    #ctor(int opCode, java.lang.String attributionTag)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TabActivity
+    onChildTitleChanged(android.app.Activity childActivity, java.lang.CharSequence title)
+    onPostCreate(android.os.Bundle icicle)
+    onRestoreInstanceState(android.os.Bundle state)
+    onSaveInstanceState(android.os.Bundle outState)
+    setDefaultTab(int index)
+    setDefaultTab(java.lang.String tag)
+  class TaskStackBuilder
+    addNextIntent(android.content.Intent nextIntent)
+    addNextIntentWithParentStack(android.content.Intent nextIntent)
+    addParentStack(android.app.Activity sourceActivity)
+    addParentStack(android.content.ComponentName sourceActivityName)
+    addParentStack(java.lang.Class<?> sourceActivityClass)
+    create(android.content.Context context)
+    editIntentAt(int index)
+    getPendingIntent(int requestCode, int flags)
+    getPendingIntent(int requestCode, int flags, android.os.Bundle options)
+    startActivities(android.os.Bundle options)
+  class TimePickerDialog
+    onClick(android.content.DialogInterface dialog, int which)
+    onRestoreInstanceState(android.os.Bundle savedInstanceState)
+    onTimeChanged(android.widget.TimePicker view, int hourOfDay, int minute)
+    #ctor(android.content.Context context, android.app.TimePickerDialog.OnTimeSetListener listener, int hourOfDay, int minute, boolean is24HourView)
+    #ctor(android.content.Context context, int themeResId, android.app.TimePickerDialog.OnTimeSetListener listener, int hourOfDay, int minute, boolean is24HourView)
+    updateTime(int hourOfDay, int minuteOfHour)
+  interface TimePickerDialog.OnTimeSetListener
+    onTimeSet(android.widget.TimePicker view, int hourOfDay, int minute)
+  class UiAutomation
+    adoptShellPermissionIdentity(java.lang.String... permissions)
+    clearWindowContentFrameStats(int windowId)
+    executeAndWaitForEvent(java.lang.Runnable command, android.app.UiAutomation.AccessibilityEventFilter filter, long timeoutMillis)
+    executeShellCommand(java.lang.String command)
+    executeShellCommandRw(java.lang.String command)
+    findFocus(int focus)
+    getWindowContentFrameStats(int windowId)
+    grantRuntimePermission(java.lang.String packageName, java.lang.String permission)
+    grantRuntimePermissionAsUser(java.lang.String packageName, java.lang.String permission, android.os.UserHandle userHandle)
+    injectInputEvent(android.view.InputEvent event, boolean sync)
+    performGlobalAction(int action)
+    revokeRuntimePermission(java.lang.String packageName, java.lang.String permission)
+    revokeRuntimePermissionAsUser(java.lang.String packageName, java.lang.String permission, android.os.UserHandle userHandle)
+    setAnimationScale(float scale)
+    setOnAccessibilityEventListener(android.app.UiAutomation.OnAccessibilityEventListener listener)
+    setRotation(int rotation)
+    setRunAsMonkey(boolean enable)
+    setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo info)
+    takeScreenshot(android.view.Window window)
+    waitForIdle(long idleTimeoutMillis, long globalTimeoutMillis)
+  interface UiAutomation.AccessibilityEventFilter
+    accept(android.view.accessibility.AccessibilityEvent event)
+  interface UiAutomation.OnAccessibilityEventListener
+    onAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+  class UiModeManager
+    disableCarMode(int flags)
+    enableCarMode(int flags)
+    setApplicationNightMode(int mode)
+    setCustomNightModeEnd(java.time.LocalTime time)
+    setCustomNightModeStart(java.time.LocalTime time)
+    setNightMode(int mode)
+  class VoiceInteractor
+    getActiveRequest(java.lang.String name)
+    registerOnDestroyedCallback(java.util.concurrent.Executor executor, java.lang.Runnable callback)
+    submitRequest(android.app.VoiceInteractor.Request request)
+    submitRequest(android.app.VoiceInteractor.Request request, java.lang.String name)
+    supportsCommands(java.lang.String[] commands)
+    unregisterOnDestroyedCallback(java.lang.Runnable callback)
+  class VoiceInteractor.AbortVoiceRequest
+    onAbortResult(android.os.Bundle result)
+    #ctor(android.app.VoiceInteractor.Prompt prompt, android.os.Bundle extras)
+  class VoiceInteractor.CommandRequest
+    onCommandResult(boolean isCompleted, android.os.Bundle result)
+    #ctor(java.lang.String command, android.os.Bundle args)
+  class VoiceInteractor.CompleteVoiceRequest
+    onCompleteResult(android.os.Bundle result)
+    #ctor(android.app.VoiceInteractor.Prompt prompt, android.os.Bundle extras)
+  class VoiceInteractor.ConfirmationRequest
+    onConfirmationResult(boolean confirmed, android.os.Bundle result)
+    #ctor(android.app.VoiceInteractor.Prompt prompt, android.os.Bundle extras)
+  class VoiceInteractor.PickOptionRequest
+    onPickOptionResult(boolean finished, android.app.VoiceInteractor.PickOptionRequest.Option[] selections, android.os.Bundle result)
+    #ctor(android.app.VoiceInteractor.Prompt prompt, android.app.VoiceInteractor.PickOptionRequest.Option[] options, android.os.Bundle extras)
+  class VoiceInteractor.PickOptionRequest.Option
+    addSynonym(java.lang.CharSequence synonym)
+    getSynonymAt(int index)
+    setExtras(android.os.Bundle extras)
+    #ctor(java.lang.CharSequence label, int index)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VoiceInteractor.Prompt
+    getVoicePromptAt(int index)
+    #ctor(java.lang.CharSequence prompt)
+    #ctor(java.lang.CharSequence[] voicePrompts, java.lang.CharSequence visualPrompt)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VoiceInteractor.Request
+    onAttached(android.app.Activity activity)
+  class WallpaperColors
+    equals(java.lang.Object o)
+    fromBitmap(android.graphics.Bitmap bitmap)
+    fromDrawable(android.graphics.drawable.Drawable drawable)
+    #ctor(android.graphics.Color primaryColor, android.graphics.Color secondaryColor, android.graphics.Color tertiaryColor)
+    #ctor(android.graphics.Color primaryColor, android.graphics.Color secondaryColor, android.graphics.Color tertiaryColor, int colorHints)
+    #ctor(android.os.Parcel parcel)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WallpaperInfo
+    dump(android.util.Printer pw, java.lang.String prefix)
+    loadAuthor(android.content.pm.PackageManager pm)
+    loadContextDescription(android.content.pm.PackageManager pm)
+    loadContextUri(android.content.pm.PackageManager pm)
+    loadDescription(android.content.pm.PackageManager pm)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    loadThumbnail(android.content.pm.PackageManager pm)
+    #ctor(android.content.Context context, android.content.pm.ResolveInfo service)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WallpaperManager
+    addOnColorsChangedListener(android.app.WallpaperManager.OnColorsChangedListener listener, android.os.Handler handler)
+    clear(int which)
+    clearWallpaperOffsets(android.os.IBinder windowToken)
+    getBuiltInDrawable(int which)
+    getBuiltInDrawable(int outWidth, int outHeight, boolean scaleToFit, float horizontalAlignment, float verticalAlignment)
+    getBuiltInDrawable(int outWidth, int outHeight, boolean scaleToFit, float horizontalAlignment, float verticalAlignment, int which)
+    getCropAndSetWallpaperIntent(android.net.Uri imageUri)
+    getDrawable(int which)
+    getFastDrawable(int which)
+    getInstance(android.content.Context context)
+    getWallpaperColors(int which)
+    getWallpaperFile(int which)
+    getWallpaperId(int which)
+    getWallpaperInfo(int which)
+    hasResourceWallpaper(int resid)
+    peekDrawable(int which)
+    peekFastDrawable(int which)
+    removeOnColorsChangedListener(android.app.WallpaperManager.OnColorsChangedListener callback)
+    sendWallpaperCommand(android.os.IBinder windowToken, java.lang.String action, int x, int y, int z, android.os.Bundle extras)
+    setBitmap(android.graphics.Bitmap bitmap)
+    setBitmap(android.graphics.Bitmap fullImage, android.graphics.Rect visibleCropHint, boolean allowBackup)
+    setBitmap(android.graphics.Bitmap fullImage, android.graphics.Rect visibleCropHint, boolean allowBackup, int which)
+    setDisplayPadding(android.graphics.Rect padding)
+    setResource(int resid)
+    setResource(int resid, int which)
+    setStream(java.io.InputStream bitmapData)
+    setStream(java.io.InputStream bitmapData, android.graphics.Rect visibleCropHint, boolean allowBackup)
+    setStream(java.io.InputStream bitmapData, android.graphics.Rect visibleCropHint, boolean allowBackup, int which)
+    setWallpaperOffsets(android.os.IBinder windowToken, float xOffset, float yOffset)
+    setWallpaperOffsetSteps(float xStep, float yStep)
+    suggestDesiredDimensions(int minimumWidth, int minimumHeight)
+  interface WallpaperManager.OnColorsChangedListener
+    onColorsChanged(android.app.WallpaperColors colors, int which)
+  interface ZygotePreload
+    doPreload(android.content.pm.ApplicationInfo appInfo)
+
+package android.app.admin
+;---------------------------------------
+  class ConnectEvent
+    writeToParcel(android.os.Parcel out, int flags)
+  class DelegatedAdminReceiver
+    onChoosePrivateKeyAlias(android.content.Context context, android.content.Intent intent, int uid, android.net.Uri uri, java.lang.String alias)
+    onNetworkLogsAvailable(android.content.Context context, android.content.Intent intent, long batchToken, int networkLogsCount)
+    onReceive(android.content.Context context, android.content.Intent intent)
+    onSecurityLogsAvailable(android.content.Context context, android.content.Intent intent)
+  class DeviceAdminInfo
+    #ctor(android.content.Context context, android.content.pm.ResolveInfo resolveInfo)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    getTagForPolicy(int policyIdent)
+    loadDescription(android.content.pm.PackageManager pm)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    usesPolicy(int policyIdent)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DeviceAdminReceiver
+    getManager(android.content.Context context)
+    getWho(android.content.Context context)
+    onBugreportFailed(android.content.Context context, android.content.Intent intent, int failureCode)
+    onBugreportShared(android.content.Context context, android.content.Intent intent, java.lang.String bugreportHash)
+    onBugreportSharingDeclined(android.content.Context context, android.content.Intent intent)
+    onChoosePrivateKeyAlias(android.content.Context context, android.content.Intent intent, int uid, android.net.Uri uri, java.lang.String alias)
+    onComplianceAcknowledgementRequired(android.content.Context context, android.content.Intent intent)
+    onDisabled(android.content.Context context, android.content.Intent intent)
+    onDisableRequested(android.content.Context context, android.content.Intent intent)
+    onEnabled(android.content.Context context, android.content.Intent intent)
+    onLockTaskModeEntering(android.content.Context context, android.content.Intent intent, java.lang.String pkg)
+    onLockTaskModeExiting(android.content.Context context, android.content.Intent intent)
+    onNetworkLogsAvailable(android.content.Context context, android.content.Intent intent, long batchToken, int networkLogsCount)
+    onOperationSafetyStateChanged(android.content.Context context, int reason, boolean isSafe)
+    onPasswordChanged(android.content.Context context, android.content.Intent intent)
+    onPasswordChanged(android.content.Context context, android.content.Intent intent, android.os.UserHandle user)
+    onPasswordExpiring(android.content.Context context, android.content.Intent intent)
+    onPasswordExpiring(android.content.Context context, android.content.Intent intent, android.os.UserHandle user)
+    onPasswordFailed(android.content.Context context, android.content.Intent intent)
+    onPasswordFailed(android.content.Context context, android.content.Intent intent, android.os.UserHandle user)
+    onPasswordSucceeded(android.content.Context context, android.content.Intent intent)
+    onPasswordSucceeded(android.content.Context context, android.content.Intent intent, android.os.UserHandle user)
+    onProfileProvisioningComplete(android.content.Context context, android.content.Intent intent)
+    onReadyForUserInitialization(android.content.Context context, android.content.Intent intent)
+    onReceive(android.content.Context context, android.content.Intent intent)
+    onSecurityLogsAvailable(android.content.Context context, android.content.Intent intent)
+    onSystemUpdatePending(android.content.Context context, android.content.Intent intent, long receivedTime)
+    onTransferAffiliatedProfileOwnershipComplete(android.content.Context context, android.os.UserHandle user)
+    onTransferOwnershipComplete(android.content.Context context, android.os.PersistableBundle bundle)
+    onUserAdded(android.content.Context context, android.content.Intent intent, android.os.UserHandle addedUser)
+    onUserRemoved(android.content.Context context, android.content.Intent intent, android.os.UserHandle removedUser)
+    onUserStarted(android.content.Context context, android.content.Intent intent, android.os.UserHandle startedUser)
+    onUserStopped(android.content.Context context, android.content.Intent intent, android.os.UserHandle stoppedUser)
+    onUserSwitched(android.content.Context context, android.content.Intent intent, android.os.UserHandle switchedUser)
+  class DeviceAdminService
+    onBind(android.content.Intent intent)
+  class DevicePolicyManager
+    addCrossProfileIntentFilter(android.content.ComponentName admin, android.content.IntentFilter filter, int flags)
+    addCrossProfileWidgetProvider(android.content.ComponentName admin, java.lang.String packageName)
+    addOverrideApn(android.content.ComponentName admin, android.telephony.data.ApnSetting apnSetting)
+    addPersistentPreferredActivity(android.content.ComponentName admin, android.content.IntentFilter filter, android.content.ComponentName activity)
+    addUserRestriction(android.content.ComponentName admin, java.lang.String key)
+    bindDeviceAdminServiceAsUser(android.content.ComponentName admin, android.content.Intent serviceIntent, android.content.ServiceConnection conn, int flags, android.os.UserHandle targetUser)
+    clearApplicationUserData(android.content.ComponentName admin, java.lang.String packageName, java.util.concurrent.Executor executor, android.app.admin.DevicePolicyManager.OnClearApplicationUserDataListener listener)
+    clearCrossProfileIntentFilters(android.content.ComponentName admin)
+    clearDeviceOwnerApp(java.lang.String packageName)
+    clearPackagePersistentPreferredActivities(android.content.ComponentName admin, java.lang.String packageName)
+    clearProfileOwner(android.content.ComponentName admin)
+    clearResetPasswordToken(android.content.ComponentName admin)
+    clearUserRestriction(android.content.ComponentName admin, java.lang.String key)
+    createAdminSupportIntent(java.lang.String restriction)
+    createAndManageUser(android.content.ComponentName admin, java.lang.String name, android.content.ComponentName profileOwner, android.os.PersistableBundle adminExtras, int flags)
+    enableSystemApp(android.content.ComponentName admin, android.content.Intent intent)
+    enableSystemApp(android.content.ComponentName admin, java.lang.String packageName)
+    generateKeyPair(android.content.ComponentName admin, java.lang.String algorithm, android.security.keystore.KeyGenParameterSpec keySpec, int idAttestationFlags)
+    getAffiliationIds(android.content.ComponentName admin)
+    getAlwaysOnVpnLockdownWhitelist(android.content.ComponentName admin)
+    getAlwaysOnVpnPackage(android.content.ComponentName admin)
+    getApplicationRestrictions(android.content.ComponentName admin, java.lang.String packageName)
+    getApplicationRestrictionsManagingPackage(android.content.ComponentName admin)
+    getAutoTimeEnabled(android.content.ComponentName admin)
+    getAutoTimeZoneEnabled(android.content.ComponentName admin)
+    getBindDeviceAdminTargetUsers(android.content.ComponentName admin)
+    getBluetoothContactSharingDisabled(android.content.ComponentName admin)
+    getCameraDisabled(android.content.ComponentName admin)
+    getCertInstallerPackage(android.content.ComponentName admin)
+    getCrossProfileCalendarPackages(android.content.ComponentName admin)
+    getCrossProfileCallerIdDisabled(android.content.ComponentName admin)
+    getCrossProfileContactsSearchDisabled(android.content.ComponentName admin)
+    getCrossProfilePackages(android.content.ComponentName admin)
+    getCrossProfileWidgetProviders(android.content.ComponentName admin)
+    getDelegatedScopes(android.content.ComponentName admin, java.lang.String delegatedPackage)
+    getDelegatePackages(android.content.ComponentName admin, java.lang.String delegationScope)
+    getEndUserSessionMessage(android.content.ComponentName admin)
+    getFactoryResetProtectionPolicy(android.content.ComponentName admin)
+    getGlobalPrivateDnsHost(android.content.ComponentName admin)
+    getGlobalPrivateDnsMode(android.content.ComponentName admin)
+    getInstalledCaCerts(android.content.ComponentName admin)
+    getKeepUninstalledPackages(android.content.ComponentName admin)
+    getKeyguardDisabledFeatures(android.content.ComponentName admin)
+    getKeyPairGrants(java.lang.String alias)
+    getLockTaskFeatures(android.content.ComponentName admin)
+    getLockTaskPackages(android.content.ComponentName admin)
+    getLongSupportMessage(android.content.ComponentName admin)
+    getManagedProfileMaximumTimeOff(android.content.ComponentName admin)
+    getMaximumFailedPasswordsForWipe(android.content.ComponentName admin)
+    getMaximumTimeToLock(android.content.ComponentName admin)
+    getMeteredDataDisabledPackages(android.content.ComponentName admin)
+    getOrganizationColor(android.content.ComponentName admin)
+    getOrganizationName(android.content.ComponentName admin)
+    getOverrideApns(android.content.ComponentName admin)
+    getParentProfileInstance(android.content.ComponentName admin)
+    getPasswordExpiration(android.content.ComponentName admin)
+    getPasswordExpirationTimeout(android.content.ComponentName admin)
+    getPasswordHistoryLength(android.content.ComponentName admin)
+    getPasswordMaximumLength(int quality)
+    getPasswordMinimumLength(android.content.ComponentName admin)
+    getPasswordMinimumLetters(android.content.ComponentName admin)
+    getPasswordMinimumLowerCase(android.content.ComponentName admin)
+    getPasswordMinimumNonLetter(android.content.ComponentName admin)
+    getPasswordMinimumNumeric(android.content.ComponentName admin)
+    getPasswordMinimumSymbols(android.content.ComponentName admin)
+    getPasswordMinimumUpperCase(android.content.ComponentName admin)
+    getPasswordQuality(android.content.ComponentName admin)
+    getPendingSystemUpdate(android.content.ComponentName admin)
+    getPermissionGrantState(android.content.ComponentName admin, java.lang.String packageName, java.lang.String permission)
+    getPermissionPolicy(android.content.ComponentName admin)
+    getPermittedAccessibilityServices(android.content.ComponentName admin)
+    getPermittedCrossProfileNotificationListeners(android.content.ComponentName admin)
+    getPermittedInputMethods(android.content.ComponentName admin)
+    getPersonalAppsSuspendedReasons(android.content.ComponentName admin)
+    getRequiredStrongAuthTimeout(android.content.ComponentName admin)
+    getScreenCaptureDisabled(android.content.ComponentName admin)
+    getSecondaryUsers(android.content.ComponentName admin)
+    getShortSupportMessage(android.content.ComponentName admin)
+    getStartUserSessionMessage(android.content.ComponentName admin)
+    getStorageEncryption(android.content.ComponentName admin)
+    getTrustAgentConfiguration(android.content.ComponentName admin, android.content.ComponentName agent)
+    getUserControlDisabledPackages(android.content.ComponentName admin)
+    getUserRestrictions(android.content.ComponentName admin)
+    getWifiMacAddress(android.content.ComponentName admin)
+    grantKeyPairToApp(android.content.ComponentName admin, java.lang.String alias, java.lang.String packageName)
+    grantKeyPairToWifiAuth(java.lang.String alias)
+    hasCaCertInstalled(android.content.ComponentName admin, byte[] certBuffer)
+    hasGrantedPolicy(android.content.ComponentName admin, int usesPolicy)
+    hasKeyPair(java.lang.String alias)
+    hasLockdownAdminConfiguredNetworks(android.content.ComponentName admin)
+    installCaCert(android.content.ComponentName admin, byte[] certBuffer)
+    installExistingPackage(android.content.ComponentName admin, java.lang.String packageName)
+    installKeyPair(android.content.ComponentName admin, java.security.PrivateKey privKey, java.security.cert.Certificate cert, java.lang.String alias)
+    installKeyPair(android.content.ComponentName admin, java.security.PrivateKey privKey, java.security.cert.Certificate[] certs, java.lang.String alias, boolean requestAccess)
+    installKeyPair(android.content.ComponentName admin, java.security.PrivateKey privKey, java.security.cert.Certificate[] certs, java.lang.String alias, int flags)
+    installSystemUpdate(android.content.ComponentName admin, android.net.Uri updateFilePath, java.util.concurrent.Executor executor, android.app.admin.DevicePolicyManager.InstallSystemUpdateCallback callback)
+    isAdminActive(android.content.ComponentName admin)
+    isAlwaysOnVpnLockdownEnabled(android.content.ComponentName admin)
+    isApplicationHidden(android.content.ComponentName admin, java.lang.String packageName)
+    isBackupServiceEnabled(android.content.ComponentName admin)
+    isCommonCriteriaModeEnabled(android.content.ComponentName admin)
+    isDeviceOwnerApp(java.lang.String packageName)
+    isEphemeralUser(android.content.ComponentName admin)
+    isKeyPairGrantedToWifiAuth(java.lang.String alias)
+    isLockTaskPermitted(java.lang.String pkg)
+    isManagedProfile(android.content.ComponentName admin)
+    isMasterVolumeMuted(android.content.ComponentName admin)
+    isNetworkLoggingEnabled(android.content.ComponentName admin)
+    isOverrideApnEnabled(android.content.ComponentName admin)
+    isPackageSuspended(android.content.ComponentName admin, java.lang.String packageName)
+    isProfileOwnerApp(java.lang.String packageName)
+    isProvisioningAllowed(java.lang.String action)
+    isResetPasswordTokenActive(android.content.ComponentName admin)
+    isSafeOperation(int reason)
+    isSecurityLoggingEnabled(android.content.ComponentName admin)
+    isUninstallBlocked(android.content.ComponentName admin, java.lang.String packageName)
+    isUsingUnifiedPassword(android.content.ComponentName admin)
+    lockNow(int flags)
+    logoutUser(android.content.ComponentName admin)
+    reboot(android.content.ComponentName admin)
+    removeActiveAdmin(android.content.ComponentName admin)
+    removeCrossProfileWidgetProvider(android.content.ComponentName admin, java.lang.String packageName)
+    removeKeyPair(android.content.ComponentName admin, java.lang.String alias)
+    removeOverrideApn(android.content.ComponentName admin, int apnId)
+    removeUser(android.content.ComponentName admin, android.os.UserHandle userHandle)
+    requestBugreport(android.content.ComponentName admin)
+    resetPassword(java.lang.String password, int flags)
+    resetPasswordWithToken(android.content.ComponentName admin, java.lang.String password, byte[] token, int flags)
+    retrieveNetworkLogs(android.content.ComponentName admin, long batchToken)
+    retrievePreRebootSecurityLogs(android.content.ComponentName admin)
+    retrieveSecurityLogs(android.content.ComponentName admin)
+    revokeKeyPairFromApp(android.content.ComponentName admin, java.lang.String alias, java.lang.String packageName)
+    revokeKeyPairFromWifiAuth(java.lang.String alias)
+    setAccountManagementDisabled(android.content.ComponentName admin, java.lang.String accountType, boolean disabled)
+    setAffiliationIds(android.content.ComponentName admin, java.util.Set<java.lang.String> ids)
+    setAlwaysOnVpnPackage(android.content.ComponentName admin, java.lang.String vpnPackage, boolean lockdownEnabled)
+    setAlwaysOnVpnPackage(android.content.ComponentName admin, java.lang.String vpnPackage, boolean lockdownEnabled, java.util.Set<java.lang.String> lockdownAllowlist)
+    setApplicationHidden(android.content.ComponentName admin, java.lang.String packageName, boolean hidden)
+    setApplicationRestrictions(android.content.ComponentName admin, java.lang.String packageName, android.os.Bundle settings)
+    setApplicationRestrictionsManagingPackage(android.content.ComponentName admin, java.lang.String packageName)
+    setAutoTimeEnabled(android.content.ComponentName admin, boolean enabled)
+    setAutoTimeRequired(android.content.ComponentName admin, boolean required)
+    setAutoTimeZoneEnabled(android.content.ComponentName admin, boolean enabled)
+    setBackupServiceEnabled(android.content.ComponentName admin, boolean enabled)
+    setBluetoothContactSharingDisabled(android.content.ComponentName admin, boolean disabled)
+    setCameraDisabled(android.content.ComponentName admin, boolean disabled)
+    setCertInstallerPackage(android.content.ComponentName admin, java.lang.String installerPackage)
+    setCommonCriteriaModeEnabled(android.content.ComponentName admin, boolean enabled)
+    setConfiguredNetworksLockdownState(android.content.ComponentName admin, boolean lockdown)
+    setCrossProfileCalendarPackages(android.content.ComponentName admin, java.util.Set<java.lang.String> packageNames)
+    setCrossProfileCallerIdDisabled(android.content.ComponentName admin, boolean disabled)
+    setCrossProfileContactsSearchDisabled(android.content.ComponentName admin, boolean disabled)
+    setCrossProfilePackages(android.content.ComponentName admin, java.util.Set<java.lang.String> packageNames)
+    setDefaultSmsApplication(android.content.ComponentName admin, java.lang.String packageName)
+    setDelegatedScopes(android.content.ComponentName admin, java.lang.String delegatePackage, java.util.List<java.lang.String> scopes)
+    setDeviceOwnerLockScreenInfo(android.content.ComponentName admin, java.lang.CharSequence info)
+    setEndUserSessionMessage(android.content.ComponentName admin, java.lang.CharSequence endUserSessionMessage)
+    setFactoryResetProtectionPolicy(android.content.ComponentName admin, android.app.admin.FactoryResetProtectionPolicy policy)
+    setGlobalPrivateDnsModeOpportunistic(android.content.ComponentName admin)
+    setGlobalPrivateDnsModeSpecifiedHost(android.content.ComponentName admin, java.lang.String privateDnsHost)
+    setGlobalSetting(android.content.ComponentName admin, java.lang.String setting, java.lang.String value)
+    setKeepUninstalledPackages(android.content.ComponentName admin, java.util.List<java.lang.String> packageNames)
+    setKeyguardDisabled(android.content.ComponentName admin, boolean disabled)
+    setKeyguardDisabledFeatures(android.content.ComponentName admin, int which)
+    setKeyPairCertificate(android.content.ComponentName admin, java.lang.String alias, java.util.List<java.security.cert.Certificate> certs, boolean isUserSelectable)
+    setLocationEnabled(android.content.ComponentName admin, boolean locationEnabled)
+    setLockTaskFeatures(android.content.ComponentName admin, int flags)
+    setLockTaskPackages(android.content.ComponentName admin, java.lang.String[] packages)
+    setLogoutEnabled(android.content.ComponentName admin, boolean enabled)
+    setLongSupportMessage(android.content.ComponentName admin, java.lang.CharSequence message)
+    setManagedProfileCallerIdAccessPolicy(android.app.admin.PackagePolicy policy)
+    setManagedProfileContactsAccessPolicy(android.app.admin.PackagePolicy policy)
+    setManagedProfileMaximumTimeOff(android.content.ComponentName admin, long timeoutMillis)
+    setManagedSubscriptionsPolicy(android.app.admin.ManagedSubscriptionsPolicy policy)
+    setMasterVolumeMuted(android.content.ComponentName admin, boolean on)
+    setMaximumFailedPasswordsForWipe(android.content.ComponentName admin, int num)
+    setMaximumTimeToLock(android.content.ComponentName admin, long timeMs)
+    setMeteredDataDisabledPackages(android.content.ComponentName admin, java.util.List<java.lang.String> packageNames)
+    setMinimumRequiredWifiSecurityLevel(int level)
+    setMtePolicy(int policy)
+    setNearbyAppStreamingPolicy(int policy)
+    setNearbyNotificationStreamingPolicy(int policy)
+    setNetworkLoggingEnabled(android.content.ComponentName admin, boolean enabled)
+    setOrganizationColor(android.content.ComponentName admin, int color)
+    setOrganizationId(java.lang.String enterpriseId)
+    setOrganizationName(android.content.ComponentName admin, java.lang.CharSequence title)
+    setOverrideApnsEnabled(android.content.ComponentName admin, boolean enabled)
+    setPackagesSuspended(android.content.ComponentName admin, java.lang.String[] packageNames, boolean suspended)
+    setPasswordExpirationTimeout(android.content.ComponentName admin, long timeout)
+    setPasswordHistoryLength(android.content.ComponentName admin, int length)
+    setPasswordMinimumLength(android.content.ComponentName admin, int length)
+    setPasswordMinimumLetters(android.content.ComponentName admin, int length)
+    setPasswordMinimumLowerCase(android.content.ComponentName admin, int length)
+    setPasswordMinimumNonLetter(android.content.ComponentName admin, int length)
+    setPasswordMinimumNumeric(android.content.ComponentName admin, int length)
+    setPasswordMinimumSymbols(android.content.ComponentName admin, int length)
+    setPasswordMinimumUpperCase(android.content.ComponentName admin, int length)
+    setPasswordQuality(android.content.ComponentName admin, int quality)
+    setPermissionGrantState(android.content.ComponentName admin, java.lang.String packageName, java.lang.String permission, int grantState)
+    setPermissionPolicy(android.content.ComponentName admin, int policy)
+    setPermittedAccessibilityServices(android.content.ComponentName admin, java.util.List<java.lang.String> packageNames)
+    setPermittedCrossProfileNotificationListeners(android.content.ComponentName admin, java.util.List<java.lang.String> packageList)
+    setPermittedInputMethods(android.content.ComponentName admin, java.util.List<java.lang.String> packageNames)
+    setPersonalAppsSuspended(android.content.ComponentName admin, boolean suspended)
+    setPreferentialNetworkServiceConfigs(java.util.List<android.app.admin.PreferentialNetworkServiceConfig> preferentialNetworkServiceConfigs)
+    setPreferentialNetworkServiceEnabled(boolean enabled)
+    setProfileEnabled(android.content.ComponentName admin)
+    setProfileName(android.content.ComponentName admin, java.lang.String profileName)
+    setRecommendedGlobalProxy(android.content.ComponentName admin, android.net.ProxyInfo proxyInfo)
+    setRequiredPasswordComplexity(int passwordComplexity)
+    setRequiredStrongAuthTimeout(android.content.ComponentName admin, long timeoutMs)
+    setResetPasswordToken(android.content.ComponentName admin, byte[] token)
+    setRestrictionsProvider(android.content.ComponentName admin, android.content.ComponentName provider)
+    setScreenCaptureDisabled(android.content.ComponentName admin, boolean disabled)
+    setSecureSetting(android.content.ComponentName admin, java.lang.String setting, java.lang.String value)
+    setSecurityLoggingEnabled(android.content.ComponentName admin, boolean enabled)
+    setShortSupportMessage(android.content.ComponentName admin, java.lang.CharSequence message)
+    setStartUserSessionMessage(android.content.ComponentName admin, java.lang.CharSequence startUserSessionMessage)
+    setStatusBarDisabled(android.content.ComponentName admin, boolean disabled)
+    setStorageEncryption(android.content.ComponentName admin, boolean encrypt)
+    setSystemSetting(android.content.ComponentName admin, java.lang.String setting, java.lang.String value)
+    setSystemUpdatePolicy(android.content.ComponentName admin, android.app.admin.SystemUpdatePolicy policy)
+    setTime(android.content.ComponentName admin, long millis)
+    setTimeZone(android.content.ComponentName admin, java.lang.String timeZone)
+    setTrustAgentConfiguration(android.content.ComponentName admin, android.content.ComponentName target, android.os.PersistableBundle configuration)
+    setUninstallBlocked(android.content.ComponentName admin, java.lang.String packageName, boolean uninstallBlocked)
+    setUsbDataSignalingEnabled(boolean enabled)
+    setUserControlDisabledPackages(android.content.ComponentName admin, java.util.List<java.lang.String> packages)
+    setUserIcon(android.content.ComponentName admin, android.graphics.Bitmap icon)
+    setWifiSsidPolicy(android.app.admin.WifiSsidPolicy policy)
+    startUserInBackground(android.content.ComponentName admin, android.os.UserHandle userHandle)
+    stopUser(android.content.ComponentName admin, android.os.UserHandle userHandle)
+    switchUser(android.content.ComponentName admin, android.os.UserHandle userHandle)
+    transferOwnership(android.content.ComponentName admin, android.content.ComponentName target, android.os.PersistableBundle bundle)
+    uninstallAllUserCaCerts(android.content.ComponentName admin)
+    uninstallCaCert(android.content.ComponentName admin, byte[] certBuffer)
+    updateOverrideApn(android.content.ComponentName admin, int apnId, android.telephony.data.ApnSetting apnSetting)
+    wipeData(int flags)
+    wipeData(int flags, java.lang.CharSequence reason)
+    wipeDevice(int flags)
+  class DevicePolicyManager.InstallSystemUpdateCallback
+    onInstallUpdateError(int errorCode, java.lang.String errorMessage)
+  interface DevicePolicyManager.OnClearApplicationUserDataListener
+    onApplicationUserDataCleared(java.lang.String packageName, boolean succeeded)
+  class DevicePolicyResourcesManager
+    getDrawable(java.lang.String drawableId, java.lang.String drawableStyle, java.lang.String drawableSource, java.util.function.Supplier<android.graphics.drawable.Drawable> defaultDrawableLoader)
+    getDrawable(java.lang.String drawableId, java.lang.String drawableStyle, java.util.function.Supplier<android.graphics.drawable.Drawable> defaultDrawableLoader)
+    getDrawableAsIcon(java.lang.String drawableId, java.lang.String drawableStyle, android.graphics.drawable.Icon defaultIcon)
+    getDrawableAsIcon(java.lang.String drawableId, java.lang.String drawableStyle, java.lang.String drawableSource, android.graphics.drawable.Icon defaultIcon)
+    getDrawableForDensity(java.lang.String drawableId, java.lang.String drawableStyle, int density, java.util.function.Supplier<android.graphics.drawable.Drawable> defaultDrawableLoader)
+    getDrawableForDensity(java.lang.String drawableId, java.lang.String drawableStyle, java.lang.String drawableSource, int density, java.util.function.Supplier<android.graphics.drawable.Drawable> defaultDrawableLoader)
+    getString(java.lang.String stringId, java.util.function.Supplier<java.lang.String> defaultStringLoader)
+    getString(java.lang.String stringId, java.util.function.Supplier<java.lang.String> defaultStringLoader, java.lang.Object... formatArgs)
+  class DnsEvent
+    writeToParcel(android.os.Parcel out, int flags)
+  class FactoryResetProtectionPolicy
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FactoryResetProtectionPolicy.Builder
+    setFactoryResetProtectionAccounts(java.util.List<java.lang.String> factoryResetProtectionAccounts)
+    setFactoryResetProtectionEnabled(boolean factoryResetProtectionEnabled)
+  class FreezePeriod
+    #ctor(java.time.MonthDay start, java.time.MonthDay end)
+  class ManagedSubscriptionsPolicy
+    equals(java.lang.Object thatObject)
+    #ctor(int policyType)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkEvent
+    writeToParcel(android.os.Parcel out, int flags)
+  class PackagePolicy
+    equals(java.lang.Object thatObject)
+    #ctor(int policyType)
+    #ctor(int policyType, java.util.Set<java.lang.String> packageNames)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PolicyUpdateReason
+    #ctor(int reasonCode)
+  class PolicyUpdatesReceiver
+    onPolicyChanged(android.content.Context context, java.lang.String policyKey, android.os.Bundle additionalPolicyParams, android.app.admin.TargetUser targetUser, android.app.admin.PolicyUpdateReason reason)
+    onPolicySetResult(android.content.Context context, java.lang.String policyKey, android.os.Bundle additionalPolicyParams, android.app.admin.TargetUser targetUser, int result, android.app.admin.PolicyUpdateReason reason)
+    onReceive(android.content.Context context, android.content.Intent intent)
+  class PreferentialNetworkServiceConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PreferentialNetworkServiceConfig.Builder
+    setEnabled(boolean isEnabled)
+    setExcludedUids(int[] uids)
+    setFallbackToDefaultConnectionAllowed(boolean allowFallbackToDefaultConnection)
+    setIncludedUids(int[] uids)
+    setNetworkId(int preferenceId)
+  class SecurityLog.SecurityEvent
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SystemUpdateInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SystemUpdatePolicy
+    createWindowedInstallPolicy(int startTime, int endTime)
+    setFreezePeriods(java.util.List<android.app.admin.FreezePeriod> freezePeriods)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SystemUpdatePolicy.ValidationFailedException
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TargetUser
+    equals(java.lang.Object o)
+  class UnsafeStateException
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiSsidPolicy
+    equals(java.lang.Object thatObject)
+    #ctor(int policyType, java.util.Set<android.net.wifi.WifiSsid> ssids)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.app.appsearch
+;---------------------------------------
+  class AppSearchBatchResult.Builder<KeyType,ValueType>
+    setFailure(KeyType key, int resultCode, java.lang.String errorMessage)
+    setResult(KeyType key, android.app.appsearch.AppSearchResult<ValueType> result)
+    setSuccess(KeyType key, ValueType value)
+  class AppSearchManager
+    createGlobalSearchSession(java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GlobalSearchSession>> callback)
+    createSearchSession(android.app.appsearch.AppSearchManager.SearchContext searchContext, java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.AppSearchSession>> callback)
+  class AppSearchManager.SearchContext.Builder
+    #ctor(java.lang.String databaseName)
+  class AppSearchResult<ValueType>
+    equals(java.lang.Object other)
+    <ValueType> newFailedResult(int resultCode, java.lang.String errorMessage)
+    <ValueType> newSuccessfulResult(ValueType value)
+  class AppSearchSchema
+    equals(java.lang.Object other)
+  class AppSearchSchema.BooleanPropertyConfig.Builder
+    #ctor(java.lang.String propertyName)
+    setCardinality(int cardinality)
+  class AppSearchSchema.Builder
+    addProperty(android.app.appsearch.AppSearchSchema.PropertyConfig propertyConfig)
+    #ctor(java.lang.String schemaType)
+  class AppSearchSchema.BytesPropertyConfig.Builder
+    #ctor(java.lang.String propertyName)
+    setCardinality(int cardinality)
+  class AppSearchSchema.DocumentPropertyConfig.Builder
+    #ctor(java.lang.String propertyName, java.lang.String schemaType)
+    setCardinality(int cardinality)
+    setShouldIndexNestedProperties(boolean indexNestedProperties)
+  class AppSearchSchema.DoublePropertyConfig.Builder
+    #ctor(java.lang.String propertyName)
+    setCardinality(int cardinality)
+  class AppSearchSchema.LongPropertyConfig.Builder
+    #ctor(java.lang.String propertyName)
+    setCardinality(int cardinality)
+    setIndexingType(int indexingType)
+  class AppSearchSchema.PropertyConfig
+    equals(java.lang.Object other)
+  class AppSearchSchema.StringPropertyConfig.Builder
+    #ctor(java.lang.String propertyName)
+    setCardinality(int cardinality)
+    setIndexingType(int indexingType)
+    setJoinableValueType(int joinableValueType)
+    setTokenizerType(int tokenizerType)
+  class AppSearchSession
+    getByDocumentId(android.app.appsearch.GetByDocumentIdRequest request, java.util.concurrent.Executor executor, android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument> callback)
+    getNamespaces(java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.Set<java.lang.String>>> callback)
+    getSchema(java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>> callback)
+    getStorageInfo(java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.StorageInfo>> callback)
+    put(android.app.appsearch.PutDocumentsRequest request, java.util.concurrent.Executor executor, android.app.appsearch.BatchResultCallback<java.lang.String,java.lang.Void> callback)
+    remove(android.app.appsearch.RemoveByDocumentIdRequest request, java.util.concurrent.Executor executor, android.app.appsearch.BatchResultCallback<java.lang.String,java.lang.Void> callback)
+    remove(java.lang.String queryExpression, android.app.appsearch.SearchSpec searchSpec, java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>> callback)
+    reportUsage(android.app.appsearch.ReportUsageRequest request, java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>> callback)
+    search(java.lang.String queryExpression, android.app.appsearch.SearchSpec searchSpec)
+    searchSuggestion(java.lang.String suggestionQueryExpression, android.app.appsearch.SearchSuggestionSpec searchSuggestionSpec, java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.List<android.app.appsearch.SearchSuggestionResult>>> callback)
+    setSchema(android.app.appsearch.SetSchemaRequest request, java.util.concurrent.Executor workExecutor, java.util.concurrent.Executor callbackExecutor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.SetSchemaResponse>> callback)
+  interface BatchResultCallback<KeyType,ValueType>
+    onResult(android.app.appsearch.AppSearchBatchResult<KeyType,ValueType> result)
+    onSystemError(java.lang.Throwable throwable)
+  class GenericDocument
+    equals(java.lang.Object other)
+    #ctor(android.app.appsearch.GenericDocument document)
+    getProperty(java.lang.String path)
+    getPropertyBoolean(java.lang.String path)
+    getPropertyBooleanArray(java.lang.String path)
+    getPropertyBytes(java.lang.String path)
+    getPropertyBytesArray(java.lang.String path)
+    getPropertyDocument(java.lang.String path)
+    getPropertyDocumentArray(java.lang.String path)
+    getPropertyDouble(java.lang.String path)
+    getPropertyDoubleArray(java.lang.String path)
+    getPropertyLong(java.lang.String path)
+    getPropertyLongArray(java.lang.String path)
+    getPropertyString(java.lang.String path)
+    getPropertyStringArray(java.lang.String path)
+  class GenericDocument.Builder<BuilderType>
+    #ctor(java.lang.String namespace, java.lang.String id, java.lang.String schemaType)
+    setCreationTimestampMillis(long creationTimestampMillis)
+    setPropertyBoolean(java.lang.String name, boolean... values)
+    setPropertyBytes(java.lang.String name, byte[]... values)
+    setPropertyDocument(java.lang.String name, android.app.appsearch.GenericDocument... values)
+    setPropertyDouble(java.lang.String name, double... values)
+    setPropertyLong(java.lang.String name, long... values)
+    setPropertyString(java.lang.String name, java.lang.String... values)
+    setScore(int score)
+    setTtlMillis(long ttlMillis)
+  class GetByDocumentIdRequest.Builder
+    addIds(java.lang.String... ids)
+    addIds(java.util.Collection<java.lang.String> ids)
+    addProjection(java.lang.String schemaType, java.util.Collection<java.lang.String> propertyPaths)
+    addProjectionPaths(java.lang.String schemaType, java.util.Collection<android.app.appsearch.PropertyPath> propertyPaths)
+    #ctor(java.lang.String namespace)
+  class GetSchemaResponse.Builder
+    addSchema(android.app.appsearch.AppSearchSchema schema)
+    addSchemaTypeNotDisplayedBySystem(java.lang.String schemaType)
+    setRequiredPermissionsForSchemaTypeVisibility(java.lang.String schemaType, java.util.Set<java.util.Set<java.lang.Integer>> visibleToPermissions)
+    setSchemaTypeVisibleToPackages(java.lang.String schemaType, java.util.Set<android.app.appsearch.PackageIdentifier> packageIdentifiers)
+    setVersion(int version)
+  class GlobalSearchSession
+    getByDocumentId(java.lang.String packageName, java.lang.String databaseName, android.app.appsearch.GetByDocumentIdRequest request, java.util.concurrent.Executor executor, android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument> callback)
+    getSchema(java.lang.String packageName, java.lang.String databaseName, java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>> callback)
+    registerObserverCallback(java.lang.String targetPackageName, android.app.appsearch.observer.ObserverSpec spec, java.util.concurrent.Executor executor, android.app.appsearch.observer.ObserverCallback observer)
+    reportSystemUsage(android.app.appsearch.ReportSystemUsageRequest request, java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>> callback)
+    search(java.lang.String queryExpression, android.app.appsearch.SearchSpec searchSpec)
+    unregisterObserverCallback(java.lang.String targetPackageName, android.app.appsearch.observer.ObserverCallback observer)
+  class JoinSpec.Builder
+    #ctor(java.lang.String childPropertyExpression)
+    setAggregationScoringStrategy(int aggregationScoringStrategy)
+    setMaxJoinedResultCount(int maxJoinedResultCount)
+    setNestedSearch(java.lang.String nestedQuery, android.app.appsearch.SearchSpec nestedSearchSpec)
+  class Migrator
+    onDowngrade(int currentVersion, int finalVersion, android.app.appsearch.GenericDocument document)
+    onUpgrade(int currentVersion, int finalVersion, android.app.appsearch.GenericDocument document)
+    shouldMigrate(int currentVersion, int finalVersion)
+  class PackageIdentifier
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String packageName, byte[] sha256Certificate)
+  class PropertyPath
+    equals(java.lang.Object o)
+    get(int index)
+    #ctor(java.lang.String path)
+    #ctor(java.util.List<android.app.appsearch.PropertyPath.PathSegment> pathList)
+  class PropertyPath.PathSegment
+    create(java.lang.String propertyName)
+    create(java.lang.String propertyName, int propertyIndex)
+    equals(java.lang.Object o)
+  class PutDocumentsRequest.Builder
+    addGenericDocuments(android.app.appsearch.GenericDocument... documents)
+    addGenericDocuments(java.util.Collection<? extends android.app.appsearch.GenericDocument> documents)
+  class RemoveByDocumentIdRequest.Builder
+    addIds(java.lang.String... ids)
+    addIds(java.util.Collection<java.lang.String> ids)
+    #ctor(java.lang.String namespace)
+  class ReportSystemUsageRequest.Builder
+    #ctor(java.lang.String packageName, java.lang.String databaseName, java.lang.String namespace, java.lang.String documentId)
+    setUsageTimestampMillis(long usageTimestampMillis)
+  class ReportUsageRequest.Builder
+    #ctor(java.lang.String namespace, java.lang.String documentId)
+    setUsageTimestampMillis(long usageTimestampMillis)
+  class SearchResult.Builder
+    addJoinedResult(android.app.appsearch.SearchResult joinedResult)
+    addMatchInfo(android.app.appsearch.SearchResult.MatchInfo matchInfo)
+    #ctor(java.lang.String packageName, java.lang.String databaseName)
+    setGenericDocument(android.app.appsearch.GenericDocument document)
+    setRankingSignal(double rankingSignal)
+  class SearchResult.MatchInfo.Builder
+    #ctor(java.lang.String propertyPath)
+    setExactMatchRange(android.app.appsearch.SearchResult.MatchRange matchRange)
+    setSnippetRange(android.app.appsearch.SearchResult.MatchRange matchRange)
+    setSubmatchRange(android.app.appsearch.SearchResult.MatchRange matchRange)
+  class SearchResult.MatchRange
+    equals(java.lang.Object other)
+    #ctor(int start, int end)
+  class SearchResults
+    getNextPage(java.util.concurrent.Executor executor, java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.List<android.app.appsearch.SearchResult>>> callback)
+  class SearchSpec.Builder
+    addFilterNamespaces(java.lang.String... namespaces)
+    addFilterNamespaces(java.util.Collection<java.lang.String> namespaces)
+    addFilterPackageNames(java.lang.String... packageNames)
+    addFilterPackageNames(java.util.Collection<java.lang.String> packageNames)
+    addFilterSchemas(java.lang.String... schemas)
+    addFilterSchemas(java.util.Collection<java.lang.String> schemas)
+    addProjection(java.lang.String schema, java.util.Collection<java.lang.String> propertyPaths)
+    addProjectionPaths(java.lang.String schema, java.util.Collection<android.app.appsearch.PropertyPath> propertyPaths)
+    setJoinSpec(android.app.appsearch.JoinSpec joinSpec)
+    setMaxSnippetSize(int maxSnippetSize)
+    setOrder(int order)
+    setPropertyWeightPaths(java.lang.String schemaType, java.util.Map<android.app.appsearch.PropertyPath,java.lang.Double> propertyPathWeights)
+    setPropertyWeights(java.lang.String schemaType, java.util.Map<java.lang.String,java.lang.Double> propertyPathWeights)
+    setRankingStrategy(int rankingStrategy)
+    setRankingStrategy(java.lang.String advancedRankingExpression)
+    setResultCountPerPage(int resultCountPerPage)
+    setResultGrouping(int groupingTypeFlags, int limit)
+    setSnippetCount(int snippetCount)
+    setSnippetCountPerProperty(int snippetCountPerProperty)
+    setTermMatch(int termMatchType)
+  class SearchSuggestionResult
+    equals(java.lang.Object other)
+  class SearchSuggestionResult.Builder
+    setSuggestedResult(java.lang.String suggestedResult)
+  class SearchSuggestionSpec.Builder
+    addFilterDocumentIds(java.lang.String namespace, java.lang.String... documentIds)
+    addFilterDocumentIds(java.lang.String namespace, java.util.Collection<java.lang.String> documentIds)
+    addFilterNamespaces(java.lang.String... namespaces)
+    addFilterNamespaces(java.util.Collection<java.lang.String> namespaces)
+    addFilterSchemas(java.lang.String... schemaTypes)
+    addFilterSchemas(java.util.Collection<java.lang.String> schemaTypes)
+    #ctor(int maximumResultCount)
+    setRankingStrategy(int rankingStrategy)
+  class SetSchemaRequest.Builder
+    addRequiredPermissionsForSchemaTypeVisibility(java.lang.String schemaType, java.util.Set<java.lang.Integer> permissions)
+    addSchemas(android.app.appsearch.AppSearchSchema... schemas)
+    addSchemas(java.util.Collection<android.app.appsearch.AppSearchSchema> schemas)
+    clearRequiredPermissionsForSchemaTypeVisibility(java.lang.String schemaType)
+    setForceOverride(boolean forceOverride)
+    setMigrator(java.lang.String schemaType, android.app.appsearch.Migrator migrator)
+    setMigrators(java.util.Map<java.lang.String,android.app.appsearch.Migrator> migrators)
+    setSchemaTypeDisplayedBySystem(java.lang.String schemaType, boolean displayed)
+    setSchemaTypeVisibilityForPackage(java.lang.String schemaType, boolean visible, android.app.appsearch.PackageIdentifier packageIdentifier)
+    setVersion(int version)
+  class SetSchemaResponse.Builder
+    addDeletedType(java.lang.String deletedType)
+    addDeletedTypes(java.util.Collection<java.lang.String> deletedTypes)
+    addIncompatibleType(java.lang.String incompatibleType)
+    addIncompatibleTypes(java.util.Collection<java.lang.String> incompatibleTypes)
+    addMigratedType(java.lang.String migratedType)
+    addMigratedTypes(java.util.Collection<java.lang.String> migratedTypes)
+    addMigrationFailure(android.app.appsearch.SetSchemaResponse.MigrationFailure migrationFailure)
+    addMigrationFailures(java.util.Collection<android.app.appsearch.SetSchemaResponse.MigrationFailure> migrationFailures)
+  class SetSchemaResponse.MigrationFailure
+    #ctor(java.lang.String namespace, java.lang.String documentId, java.lang.String schemaType, android.app.appsearch.AppSearchResult<?> failedResult)
+  class StorageInfo.Builder
+    setAliveDocumentsCount(int aliveDocumentsCount)
+    setAliveNamespacesCount(int aliveNamespacesCount)
+    setSizeBytes(long sizeBytes)
+
+package android.app.appsearch.exceptions
+;---------------------------------------
+  class AppSearchException
+    #ctor(int resultCode)
+    #ctor(int resultCode, java.lang.String message)
+    #ctor(int resultCode, java.lang.String message, java.lang.Throwable cause)
+
+package android.app.appsearch.observer
+;---------------------------------------
+  class DocumentChangeInfo
+    #ctor(java.lang.String packageName, java.lang.String database, java.lang.String namespace, java.lang.String schemaName, java.util.Set<java.lang.String> changedDocumentIds)
+    equals(java.lang.Object o)
+  interface ObserverCallback
+    onDocumentChanged(android.app.appsearch.observer.DocumentChangeInfo changeInfo)
+    onSchemaChanged(android.app.appsearch.observer.SchemaChangeInfo changeInfo)
+  class ObserverSpec.Builder
+    addFilterSchemas(java.lang.String... schemas)
+    addFilterSchemas(java.util.Collection<java.lang.String> schemas)
+  class SchemaChangeInfo
+    equals(java.lang.Object o)
+    #ctor(java.lang.String packageName, java.lang.String databaseName, java.util.Set<java.lang.String> changedSchemaNames)
+
+package android.app.appsearch.util
+;---------------------------------------
+  class DocumentIdUtil
+    createQualifiedId(java.lang.String packageName, java.lang.String databaseName, android.app.appsearch.GenericDocument document)
+    createQualifiedId(java.lang.String packageName, java.lang.String databaseName, java.lang.String namespace, java.lang.String id)
+
+package android.app.assist
+;---------------------------------------
+  class AssistContent
+    setClipData(android.content.ClipData clip)
+    setIntent(android.content.Intent intent)
+    setStructuredData(java.lang.String structuredData)
+    setWebUri(android.net.Uri uri)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AssistStructure
+    getWindowNodeAt(int index)
+    writeToParcel(android.os.Parcel out, int flags)
+  class AssistStructure.ViewNode
+    getChildAt(int index)
+
+package android.app.backup
+;---------------------------------------
+  class BackupAgent
+    fullBackupFile(java.io.File file, android.app.backup.FullBackupDataOutput output)
+    onBackup(android.os.ParcelFileDescriptor oldState, android.app.backup.BackupDataOutput data, android.os.ParcelFileDescriptor newState)
+    onFullBackup(android.app.backup.FullBackupDataOutput data)
+    onQuotaExceeded(long backupDataBytes, long quotaBytes)
+    onRestore(android.app.backup.BackupDataInput data, int appVersionCode, android.os.ParcelFileDescriptor newState)
+    onRestore(android.app.backup.BackupDataInput data, long appVersionCode, android.os.ParcelFileDescriptor newState)
+    onRestoreFile(android.os.ParcelFileDescriptor data, long size, java.io.File destination, int type, long mode, long mtime)
+  class BackupAgentHelper
+    addHelper(java.lang.String keyPrefix, android.app.backup.BackupHelper helper)
+    onBackup(android.os.ParcelFileDescriptor oldState, android.app.backup.BackupDataOutput data, android.os.ParcelFileDescriptor newState)
+    onRestore(android.app.backup.BackupDataInput data, int appVersionCode, android.os.ParcelFileDescriptor newState)
+  class BackupDataInput
+    readEntityData(byte[] data, int offset, int size)
+  class BackupDataInputStream
+    read(byte[] b)
+    read(byte[] b, int offset, int size)
+  class BackupDataOutput
+    writeEntityData(byte[] data, int size)
+    writeEntityHeader(java.lang.String key, int dataSize)
+  interface BackupHelper
+    performBackup(android.os.ParcelFileDescriptor oldState, android.app.backup.BackupDataOutput data, android.os.ParcelFileDescriptor newState)
+    restoreEntity(android.app.backup.BackupDataInputStream data)
+    writeNewStateDescription(android.os.ParcelFileDescriptor newState)
+  class BackupManager
+    #ctor(android.content.Context context)
+    dataChanged(java.lang.String packageName)
+    getUserForAncestralSerialNumber(long ancestralSerialNumber)
+    requestRestore(android.app.backup.RestoreObserver observer)
+  class FileBackupHelper
+    #ctor(android.content.Context context, java.lang.String... files)
+    performBackup(android.os.ParcelFileDescriptor oldState, android.app.backup.BackupDataOutput data, android.os.ParcelFileDescriptor newState)
+    restoreEntity(android.app.backup.BackupDataInputStream data)
+    writeNewStateDescription(android.os.ParcelFileDescriptor fd)
+  class RestoreObserver
+    onUpdate(int nowBeingRestored, java.lang.String currentPackage)
+    restoreFinished(int error)
+    restoreStarting(int numPackages)
+  class SharedPreferencesBackupHelper
+    performBackup(android.os.ParcelFileDescriptor oldState, android.app.backup.BackupDataOutput data, android.os.ParcelFileDescriptor newState)
+    restoreEntity(android.app.backup.BackupDataInputStream data)
+    #ctor(android.content.Context context, java.lang.String... prefGroups)
+    writeNewStateDescription(android.os.ParcelFileDescriptor fd)
+
+package android.app.blob
+;---------------------------------------
+  class BlobHandle
+    createWithSha256(byte[] digest, java.lang.CharSequence label, long expiryTimeMillis, java.lang.String tag)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BlobStoreManager
+    abandonSession(long sessionId)
+    acquireLease(android.app.blob.BlobHandle blobHandle, int descriptionResId)
+    acquireLease(android.app.blob.BlobHandle blobHandle, int descriptionResId, long leaseExpiryTimeMillis)
+    acquireLease(android.app.blob.BlobHandle blobHandle, java.lang.CharSequence description)
+    acquireLease(android.app.blob.BlobHandle blobHandle, java.lang.CharSequence description, long leaseExpiryTimeMillis)
+    createSession(android.app.blob.BlobHandle blobHandle)
+    openBlob(android.app.blob.BlobHandle blobHandle)
+    openSession(long sessionId)
+    releaseLease(android.app.blob.BlobHandle blobHandle)
+  class BlobStoreManager.Session
+    allowPackageAccess(java.lang.String packageName, byte[] certificate)
+    commit(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> resultCallback)
+    isPackageAccessAllowed(java.lang.String packageName, byte[] certificate)
+    openWrite(long offsetBytes, long lengthBytes)
+
+package android.app.job
+;---------------------------------------
+  class JobInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class JobInfo.Builder
+    addTriggerContentUri(android.app.job.JobInfo.TriggerContentUri uri)
+    #ctor(int jobId, android.content.ComponentName jobService)
+    setBackoffCriteria(long initialBackoffMillis, int backoffPolicy)
+    setClipData(android.content.ClipData clip, int grantFlags)
+    setDataTransfer(boolean dataTransfer)
+    setEstimatedNetworkBytes(long downloadBytes, long uploadBytes)
+    setExpedited(boolean expedited)
+    setExtras(android.os.PersistableBundle extras)
+    setImportantWhileForeground(boolean importantWhileForeground)
+    setMinimumLatency(long minLatencyMillis)
+    setMinimumNetworkChunkBytes(long chunkSizeBytes)
+    setOverrideDeadline(long maxExecutionDelayMillis)
+    setPeriodic(long intervalMillis)
+    setPeriodic(long intervalMillis, long flexMillis)
+    setPersisted(boolean isPersisted)
+    setPrefetch(boolean prefetch)
+    setPriority(int priority)
+    setRequiredNetwork(android.net.NetworkRequest networkRequest)
+    setRequiredNetworkType(int networkType)
+    setRequiresBatteryNotLow(boolean batteryNotLow)
+    setRequiresCharging(boolean requiresCharging)
+    setRequiresDeviceIdle(boolean requiresDeviceIdle)
+    setRequiresStorageNotLow(boolean storageNotLow)
+    setTransientExtras(android.os.Bundle extras)
+    setTriggerContentMaxDelay(long durationMs)
+    setTriggerContentUpdateDelay(long durationMs)
+    setUserInitiated(boolean userInitiated)
+  class JobInfo.TriggerContentUri
+    equals(java.lang.Object o)
+    #ctor(android.net.Uri uri, int flags)
+    writeToParcel(android.os.Parcel out, int flags)
+  class JobParameters
+    completeWork(android.app.job.JobWorkItem work)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class JobScheduler
+    cancel(int jobId)
+    enqueue(android.app.job.JobInfo job, android.app.job.JobWorkItem work)
+    getPendingJob(int jobId)
+    getPendingJobReason(int jobId)
+    schedule(android.app.job.JobInfo job)
+  class JobService
+    jobFinished(android.app.job.JobParameters params, boolean wantsReschedule)
+    onBind(android.content.Intent intent)
+    onStartJob(android.app.job.JobParameters params)
+    onStopJob(android.app.job.JobParameters params)
+    setNotification(android.app.job.JobParameters params, int notificationId, android.app.Notification notification, int jobEndNotificationPolicy)
+    updateEstimatedNetworkBytes(android.app.job.JobParameters params, android.app.job.JobWorkItem jobWorkItem, long downloadBytes, long uploadBytes)
+    updateEstimatedNetworkBytes(android.app.job.JobParameters params, long downloadBytes, long uploadBytes)
+    updateTransferredNetworkBytes(android.app.job.JobParameters params, android.app.job.JobWorkItem item, long transferredDownloadBytes, long transferredUploadBytes)
+    updateTransferredNetworkBytes(android.app.job.JobParameters params, long transferredDownloadBytes, long transferredUploadBytes)
+  class JobServiceEngine
+    jobFinished(android.app.job.JobParameters params, boolean needsReschedule)
+    #ctor(android.app.Service service)
+    onStartJob(android.app.job.JobParameters params)
+    onStopJob(android.app.job.JobParameters params)
+    setNotification(android.app.job.JobParameters params, int notificationId, android.app.Notification notification, int jobEndNotificationPolicy)
+    updateEstimatedNetworkBytes(android.app.job.JobParameters params, android.app.job.JobWorkItem item, long downloadBytes, long uploadBytes)
+    updateTransferredNetworkBytes(android.app.job.JobParameters params, android.app.job.JobWorkItem item, long downloadBytes, long uploadBytes)
+  class JobWorkItem
+    #ctor(android.content.Intent intent)
+    #ctor(android.content.Intent intent, long downloadBytes, long uploadBytes)
+    #ctor(android.content.Intent intent, long downloadBytes, long uploadBytes, long minimumChunkBytes)
+    writeToParcel(android.os.Parcel out, int flags)
+  class JobWorkItem.Builder
+    setEstimatedNetworkBytes(long downloadBytes, long uploadBytes)
+    setExtras(android.os.PersistableBundle extras)
+    setIntent(android.content.Intent intent)
+    setMinimumNetworkChunkBytes(long chunkSizeBytes)
+
+package android.app.people
+;---------------------------------------
+  class ConversationStatus
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ConversationStatus.Builder
+    #ctor(java.lang.String id, int activity)
+    setAvailability(int availability)
+    setDescription(java.lang.CharSequence description)
+    setEndTimeMillis(long endTimeMs)
+    setIcon(android.graphics.drawable.Icon icon)
+    setStartTimeMillis(long startTimeMs)
+  class PeopleManager
+    addOrUpdateStatus(java.lang.String conversationId, android.app.people.ConversationStatus status)
+    clearStatus(java.lang.String conversationId, java.lang.String statusId)
+    clearStatuses(java.lang.String conversationId)
+    getStatuses(java.lang.String conversationId)
+
+package android.app.role
+;---------------------------------------
+  class RoleManager
+    createRequestRoleIntent(java.lang.String roleName)
+    isRoleAvailable(java.lang.String roleName)
+    isRoleHeld(java.lang.String roleName)
+
+package android.app.sdksandbox
+;---------------------------------------
+  class LoadSdkException
+    #ctor(java.lang.Throwable cause, android.os.Bundle extraInfo)
+    writeToParcel(android.os.Parcel destination, int flags)
+  class RequestSurfacePackageException
+    #ctor(int requestSurfacePackageErrorCode, java.lang.String message)
+    #ctor(int requestSurfacePackageErrorCode, java.lang.String message, java.lang.Throwable cause)
+    #ctor(int requestSurfacePackageErrorCode, java.lang.String message, java.lang.Throwable cause, android.os.Bundle extraInfo)
+  class SandboxedSdk
+    #ctor(android.os.IBinder sdkInterface)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SandboxedSdkProvider
+    attachContext(android.content.Context context)
+    getView(android.content.Context windowContext, android.os.Bundle params, int width, int height)
+    onLoadSdk(android.os.Bundle params)
+  class SdkSandboxManager
+    addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor callbackExecutor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback callback)
+    addSyncedSharedPreferencesKeys(java.util.Set<java.lang.String> keys)
+    loadSdk(java.lang.String sdkName, android.os.Bundle params, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.app.sdksandbox.SandboxedSdk,android.app.sdksandbox.LoadSdkException> receiver)
+    removeSdkSandboxProcessDeathCallback(android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback callback)
+    removeSyncedSharedPreferencesKeys(java.util.Set<java.lang.String> keys)
+    requestSurfacePackage(java.lang.String sdkName, android.os.Bundle params, java.util.concurrent.Executor callbackExecutor, android.os.OutcomeReceiver<android.os.Bundle,android.app.sdksandbox.RequestSurfacePackageException> receiver)
+    unloadSdk(java.lang.String sdkName)
+
+package android.app.sdksandbox.sdkprovider
+;---------------------------------------
+
+package android.app.slice
+;---------------------------------------
+  class Slice
+    #ctor(android.os.Parcel in)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Slice.Builder
+    addAction(android.app.PendingIntent action, android.app.slice.Slice s, java.lang.String subType)
+    addBundle(android.os.Bundle bundle, java.lang.String subType, java.util.List<java.lang.String> hints)
+    addHints(java.util.List<java.lang.String> hints)
+    addIcon(android.graphics.drawable.Icon icon, java.lang.String subType, java.util.List<java.lang.String> hints)
+    addInt(int value, java.lang.String subType, java.util.List<java.lang.String> hints)
+    addLong(long value, java.lang.String subType, java.util.List<java.lang.String> hints)
+    addRemoteInput(android.app.RemoteInput remoteInput, java.lang.String subType, java.util.List<java.lang.String> hints)
+    addSubSlice(android.app.slice.Slice slice, java.lang.String subType)
+    addText(java.lang.CharSequence text, java.lang.String subType, java.util.List<java.lang.String> hints)
+    setCallerNeeded(boolean callerNeeded)
+    #ctor(android.app.slice.Slice.Builder parent)
+    #ctor(android.net.Uri uri, android.app.slice.SliceSpec spec)
+  class SliceItem
+    hasHint(java.lang.String hint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SliceManager
+    bindSlice(android.content.Intent intent, java.util.Set<android.app.slice.SliceSpec> supportedSpecs)
+    bindSlice(android.net.Uri uri, java.util.Set<android.app.slice.SliceSpec> supportedSpecs)
+    checkSlicePermission(android.net.Uri uri, int pid, int uid)
+    getPinnedSpecs(android.net.Uri uri)
+    getSliceDescendants(android.net.Uri uri)
+    grantSlicePermission(java.lang.String toPackage, android.net.Uri uri)
+    mapIntentToUri(android.content.Intent intent)
+    pinSlice(android.net.Uri uri, java.util.Set<android.app.slice.SliceSpec> specs)
+    revokeSlicePermission(java.lang.String toPackage, android.net.Uri uri)
+    unpinSlice(android.net.Uri uri)
+  class SliceMetrics
+    logTouch(int actionType, android.net.Uri subSlice)
+    #ctor(android.content.Context context, android.net.Uri uri)
+  class SliceProvider
+    attachInfo(android.content.Context context, android.content.pm.ProviderInfo info)
+    call(java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    delete(android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs)
+    getType(android.net.Uri uri)
+    insert(android.net.Uri uri, android.content.ContentValues values)
+    onBindSlice(android.net.Uri sliceUri, java.util.Set<android.app.slice.SliceSpec> supportedSpecs)
+    onCreatePermissionRequest(android.net.Uri sliceUri)
+    onGetSliceDescendants(android.net.Uri uri)
+    onMapIntentToUri(android.content.Intent intent)
+    onSlicePinned(android.net.Uri sliceUri)
+    onSliceUnpinned(android.net.Uri sliceUri)
+    query(android.net.Uri uri, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder, android.os.CancellationSignal cancellationSignal)
+    #ctor(java.lang.String... autoGrantPermissions)
+    update(android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  class SliceSpec
+    canRender(android.app.slice.SliceSpec candidate)
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String type, int revision)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.app.usage
+;---------------------------------------
+  class ConfigurationStats
+    #ctor(android.app.usage.ConfigurationStats stats)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class EventStats
+    add(android.app.usage.EventStats right)
+    #ctor(android.app.usage.EventStats stats)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ExternalStorageStats
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkStats
+    getNextBucket(android.app.usage.NetworkStats.Bucket bucketOut)
+  class NetworkStatsManager
+    queryDetails(int networkType, java.lang.String subscriberId, long startTime, long endTime)
+    queryDetailsForUid(int networkType, java.lang.String subscriberId, long startTime, long endTime, int uid)
+    queryDetailsForUidTag(int networkType, java.lang.String subscriberId, long startTime, long endTime, int uid, int tag)
+    queryDetailsForUidTagState(int networkType, java.lang.String subscriberId, long startTime, long endTime, int uid, int tag, int state)
+    querySummary(int networkType, java.lang.String subscriberId, long startTime, long endTime)
+    querySummaryForDevice(int networkType, java.lang.String subscriberId, long startTime, long endTime)
+    querySummaryForUser(int networkType, java.lang.String subscriberId, long startTime, long endTime)
+    registerUsageCallback(int networkType, java.lang.String subscriberId, long thresholdBytes, android.app.usage.NetworkStatsManager.UsageCallback callback)
+    registerUsageCallback(int networkType, java.lang.String subscriberId, long thresholdBytes, android.app.usage.NetworkStatsManager.UsageCallback callback, android.os.Handler handler)
+    unregisterUsageCallback(android.app.usage.NetworkStatsManager.UsageCallback callback)
+  class NetworkStatsManager.UsageCallback
+    onThresholdReached(int networkType, java.lang.String subscriberId)
+  class StorageStats
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StorageStatsManager
+    getFreeBytes(java.util.UUID storageUuid)
+    getTotalBytes(java.util.UUID storageUuid)
+    queryExternalStatsForUser(java.util.UUID storageUuid, android.os.UserHandle user)
+    queryStatsForPackage(java.util.UUID storageUuid, java.lang.String packageName, android.os.UserHandle user)
+    queryStatsForUid(java.util.UUID storageUuid, int uid)
+    queryStatsForUser(java.util.UUID storageUuid, android.os.UserHandle user)
+  class UsageEvents
+    getNextEvent(android.app.usage.UsageEvents.Event eventOut)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class UsageStats
+    add(android.app.usage.UsageStats right)
+    #ctor(android.app.usage.UsageStats stats)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class UsageStatsManager
+    isAppInactive(java.lang.String packageName)
+    queryAndAggregateUsageStats(long beginTime, long endTime)
+    queryConfigurations(int intervalType, long beginTime, long endTime)
+    queryEvents(long beginTime, long endTime)
+    queryEventsForSelf(long beginTime, long endTime)
+    queryEventStats(int intervalType, long beginTime, long endTime)
+    queryUsageStats(int intervalType, long beginTime, long endTime)
+
+package android.appwidget
+;---------------------------------------
+  class AppWidgetHost
+    #ctor(android.content.Context context, int hostId)
+    createView(android.content.Context context, int appWidgetId, android.appwidget.AppWidgetProviderInfo appWidget)
+    deleteAppWidgetId(int appWidgetId)
+    onAppWidgetRemoved(int appWidgetId)
+    onCreateView(android.content.Context context, int appWidgetId, android.appwidget.AppWidgetProviderInfo appWidget)
+    onProviderChanged(int appWidgetId, android.appwidget.AppWidgetProviderInfo appWidget)
+    startAppWidgetConfigureActivityForResult(android.app.Activity activity, int appWidgetId, int intentFlags, int requestCode, android.os.Bundle options)
+  class AppWidgetHostView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, int animationIn, int animationOut)
+    dispatchRestoreInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchSaveInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    getDefaultPaddingForWidget(android.content.Context context, android.content.ComponentName component, android.graphics.Rect padding)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    prepareView(android.view.View view)
+    setAppWidget(int appWidgetId, android.appwidget.AppWidgetProviderInfo info)
+    setColorResources(android.util.SparseIntArray colorMapping)
+    setExecutor(java.util.concurrent.Executor executor)
+    setOnLightBackground(boolean onLightBackground)
+    updateAppWidget(android.widget.RemoteViews remoteViews)
+    updateAppWidgetOptions(android.os.Bundle options)
+    updateAppWidgetSize(android.os.Bundle newOptions, int minWidth, int minHeight, int maxWidth, int maxHeight)
+    updateAppWidgetSize(android.os.Bundle newOptions, java.util.List<android.util.SizeF> sizes)
+  class AppWidgetManager
+    bindAppWidgetIdIfAllowed(int appWidgetId, android.content.ComponentName provider)
+    bindAppWidgetIdIfAllowed(int appWidgetId, android.content.ComponentName provider, android.os.Bundle options)
+    bindAppWidgetIdIfAllowed(int appWidgetId, android.os.UserHandle user, android.content.ComponentName provider, android.os.Bundle options)
+    getAppWidgetIds(android.content.ComponentName provider)
+    getAppWidgetInfo(int appWidgetId)
+    getAppWidgetOptions(int appWidgetId)
+    getInstalledProvidersForPackage(java.lang.String packageName, android.os.UserHandle profile)
+    getInstalledProvidersForProfile(android.os.UserHandle profile)
+    getInstance(android.content.Context context)
+    notifyAppWidgetViewDataChanged(int appWidgetId, int viewId)
+    notifyAppWidgetViewDataChanged(int[] appWidgetIds, int viewId)
+    partiallyUpdateAppWidget(int appWidgetId, android.widget.RemoteViews views)
+    partiallyUpdateAppWidget(int[] appWidgetIds, android.widget.RemoteViews views)
+    requestPinAppWidget(android.content.ComponentName provider, android.os.Bundle extras, android.app.PendingIntent successCallback)
+    updateAppWidget(android.content.ComponentName provider, android.widget.RemoteViews views)
+    updateAppWidget(int appWidgetId, android.widget.RemoteViews views)
+    updateAppWidget(int[] appWidgetIds, android.widget.RemoteViews views)
+    updateAppWidgetOptions(int appWidgetId, android.os.Bundle options)
+    updateAppWidgetProviderInfo(android.content.ComponentName provider, java.lang.String metaDataKey)
+  class AppWidgetProvider
+    onAppWidgetOptionsChanged(android.content.Context context, android.appwidget.AppWidgetManager appWidgetManager, int appWidgetId, android.os.Bundle newOptions)
+    onDeleted(android.content.Context context, int[] appWidgetIds)
+    onDisabled(android.content.Context context)
+    onEnabled(android.content.Context context)
+    onReceive(android.content.Context context, android.content.Intent intent)
+    onRestored(android.content.Context context, int[] oldWidgetIds, int[] newWidgetIds)
+    onUpdate(android.content.Context context, android.appwidget.AppWidgetManager appWidgetManager, int[] appWidgetIds)
+  class AppWidgetProviderInfo
+    #ctor(android.os.Parcel in)
+    loadDescription(android.content.Context context)
+    loadIcon(android.content.Context context, int density)
+    loadLabel(android.content.pm.PackageManager packageManager)
+    loadPreviewImage(android.content.Context context, int density)
+    writeToParcel(android.os.Parcel out, int flags)
+
+package android.bluetooth
+;---------------------------------------
+  class BluetoothA2dp
+    getCodecStatus(android.bluetooth.BluetoothDevice device)
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    isA2dpPlaying(android.bluetooth.BluetoothDevice device)
+    setCodecConfigPreference(android.bluetooth.BluetoothDevice device, android.bluetooth.BluetoothCodecConfig codecConfig)
+  class BluetoothAdapter
+    checkBluetoothAddress(java.lang.String address)
+    closeProfileProxy(int profile, android.bluetooth.BluetoothProfile proxy)
+    getProfileConnectionState(int profile)
+    getProfileProxy(android.content.Context context, android.bluetooth.BluetoothProfile.ServiceListener listener, int profile)
+    getRemoteDevice(byte[] address)
+    getRemoteDevice(java.lang.String address)
+    getRemoteLeDevice(java.lang.String address, int addressType)
+    listenUsingInsecureRfcommWithServiceRecord(java.lang.String name, java.util.UUID uuid)
+    listenUsingRfcommWithServiceRecord(java.lang.String name, java.util.UUID uuid)
+    setName(java.lang.String name)
+    startLeScan(android.bluetooth.BluetoothAdapter.LeScanCallback callback)
+    startLeScan(java.util.UUID[] serviceUuids, android.bluetooth.BluetoothAdapter.LeScanCallback callback)
+    stopLeScan(android.bluetooth.BluetoothAdapter.LeScanCallback callback)
+  interface BluetoothAdapter.LeScanCallback
+    onLeScan(android.bluetooth.BluetoothDevice device, int rssi, byte[] scanRecord)
+  class BluetoothClass
+    doesClassMatch(int profile)
+    equals(java.lang.Object o)
+    hasService(int service)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothCodecConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothCodecConfig.Builder
+    setBitsPerSample(int bitsPerSample)
+    setChannelMode(int channelMode)
+    setCodecPriority(int codecPriority)
+    setCodecSpecific1(long codecSpecific1)
+    setCodecSpecific2(long codecSpecific2)
+    setCodecSpecific3(long codecSpecific3)
+    setCodecSpecific4(long codecSpecific4)
+    setCodecType(int codecType)
+    setSampleRate(int sampleRate)
+  class BluetoothCodecStatus
+    equals(java.lang.Object o)
+    isCodecConfigSelectable(android.bluetooth.BluetoothCodecConfig codecConfig)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothCodecStatus.Builder
+    setCodecConfig(android.bluetooth.BluetoothCodecConfig codecConfig)
+    setCodecsLocalCapabilities(java.util.List<android.bluetooth.BluetoothCodecConfig> codecsLocalCapabilities)
+    setCodecsSelectableCapabilities(java.util.List<android.bluetooth.BluetoothCodecConfig> codecsSelectableCapabilities)
+  class BluetoothCsipSetCoordinator
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+  class BluetoothDevice
+    connectGatt(android.content.Context context, boolean autoConnect, android.bluetooth.BluetoothGattCallback callback)
+    connectGatt(android.content.Context context, boolean autoConnect, android.bluetooth.BluetoothGattCallback callback, int transport)
+    connectGatt(android.content.Context context, boolean autoConnect, android.bluetooth.BluetoothGattCallback callback, int transport, int phy)
+    connectGatt(android.content.Context context, boolean autoConnect, android.bluetooth.BluetoothGattCallback callback, int transport, int phy, android.os.Handler handler)
+    createInsecureL2capChannel(int psm)
+    createInsecureRfcommSocketToServiceRecord(java.util.UUID uuid)
+    createL2capChannel(int psm)
+    createRfcommSocketToServiceRecord(java.util.UUID uuid)
+    equals(java.lang.Object o)
+    setAlias(java.lang.String alias)
+    setPairingConfirmation(boolean confirm)
+    setPin(byte[] pin)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothGatt
+    abortReliableWrite(android.bluetooth.BluetoothDevice mDevice)
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    getService(java.util.UUID uuid)
+    readCharacteristic(android.bluetooth.BluetoothGattCharacteristic characteristic)
+    readDescriptor(android.bluetooth.BluetoothGattDescriptor descriptor)
+    requestConnectionPriority(int connectionPriority)
+    requestMtu(int mtu)
+    setCharacteristicNotification(android.bluetooth.BluetoothGattCharacteristic characteristic, boolean enable)
+    setPreferredPhy(int txPhy, int rxPhy, int phyOptions)
+    writeCharacteristic(android.bluetooth.BluetoothGattCharacteristic characteristic)
+    writeCharacteristic(android.bluetooth.BluetoothGattCharacteristic characteristic, byte[] value, int writeType)
+    writeDescriptor(android.bluetooth.BluetoothGattDescriptor descriptor)
+    writeDescriptor(android.bluetooth.BluetoothGattDescriptor descriptor, byte[] value)
+  class BluetoothGattCallback
+    onCharacteristicChanged(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattCharacteristic characteristic)
+    onCharacteristicChanged(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattCharacteristic characteristic, byte[] value)
+    onCharacteristicRead(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattCharacteristic characteristic, byte[] value, int status)
+    onCharacteristicRead(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattCharacteristic characteristic, int status)
+    onCharacteristicWrite(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattCharacteristic characteristic, int status)
+    onConnectionStateChange(android.bluetooth.BluetoothGatt gatt, int status, int newState)
+    onDescriptorRead(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattDescriptor descriptor, int status)
+    onDescriptorRead(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattDescriptor descriptor, int status, byte[] value)
+    onDescriptorWrite(android.bluetooth.BluetoothGatt gatt, android.bluetooth.BluetoothGattDescriptor descriptor, int status)
+    onMtuChanged(android.bluetooth.BluetoothGatt gatt, int mtu, int status)
+    onPhyRead(android.bluetooth.BluetoothGatt gatt, int txPhy, int rxPhy, int status)
+    onPhyUpdate(android.bluetooth.BluetoothGatt gatt, int txPhy, int rxPhy, int status)
+    onReadRemoteRssi(android.bluetooth.BluetoothGatt gatt, int rssi, int status)
+    onReliableWriteCompleted(android.bluetooth.BluetoothGatt gatt, int status)
+    onServiceChanged(android.bluetooth.BluetoothGatt gatt)
+    onServicesDiscovered(android.bluetooth.BluetoothGatt gatt, int status)
+  class BluetoothGattCharacteristic
+    addDescriptor(android.bluetooth.BluetoothGattDescriptor descriptor)
+    #ctor(java.util.UUID uuid, int properties, int permissions)
+    getDescriptor(java.util.UUID uuid)
+    getFloatValue(int formatType, int offset)
+    getIntValue(int formatType, int offset)
+    getStringValue(int offset)
+    setValue(byte[] value)
+    setValue(int value, int formatType, int offset)
+    setValue(int mantissa, int exponent, int formatType, int offset)
+    setValue(java.lang.String value)
+    setWriteType(int writeType)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothGattDescriptor
+    #ctor(java.util.UUID uuid, int permissions)
+    setValue(byte[] value)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothGattServer
+    addService(android.bluetooth.BluetoothGattService service)
+    cancelConnection(android.bluetooth.BluetoothDevice device)
+    connect(android.bluetooth.BluetoothDevice device, boolean autoConnect)
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    getService(java.util.UUID uuid)
+    notifyCharacteristicChanged(android.bluetooth.BluetoothDevice device, android.bluetooth.BluetoothGattCharacteristic characteristic, boolean confirm)
+    notifyCharacteristicChanged(android.bluetooth.BluetoothDevice device, android.bluetooth.BluetoothGattCharacteristic characteristic, boolean confirm, byte[] value)
+    readPhy(android.bluetooth.BluetoothDevice device)
+    removeService(android.bluetooth.BluetoothGattService service)
+    sendResponse(android.bluetooth.BluetoothDevice device, int requestId, int status, int offset, byte[] value)
+    setPreferredPhy(android.bluetooth.BluetoothDevice device, int txPhy, int rxPhy, int phyOptions)
+  class BluetoothGattServerCallback
+    onCharacteristicReadRequest(android.bluetooth.BluetoothDevice device, int requestId, int offset, android.bluetooth.BluetoothGattCharacteristic characteristic)
+    onCharacteristicWriteRequest(android.bluetooth.BluetoothDevice device, int requestId, android.bluetooth.BluetoothGattCharacteristic characteristic, boolean preparedWrite, boolean responseNeeded, int offset, byte[] value)
+    onConnectionStateChange(android.bluetooth.BluetoothDevice device, int status, int newState)
+    onDescriptorReadRequest(android.bluetooth.BluetoothDevice device, int requestId, int offset, android.bluetooth.BluetoothGattDescriptor descriptor)
+    onDescriptorWriteRequest(android.bluetooth.BluetoothDevice device, int requestId, android.bluetooth.BluetoothGattDescriptor descriptor, boolean preparedWrite, boolean responseNeeded, int offset, byte[] value)
+    onExecuteWrite(android.bluetooth.BluetoothDevice device, int requestId, boolean execute)
+    onMtuChanged(android.bluetooth.BluetoothDevice device, int mtu)
+    onNotificationSent(android.bluetooth.BluetoothDevice device, int status)
+    onPhyRead(android.bluetooth.BluetoothDevice device, int txPhy, int rxPhy, int status)
+    onPhyUpdate(android.bluetooth.BluetoothDevice device, int txPhy, int rxPhy, int status)
+    onServiceAdded(int status, android.bluetooth.BluetoothGattService service)
+  class BluetoothGattService
+    addCharacteristic(android.bluetooth.BluetoothGattCharacteristic characteristic)
+    addService(android.bluetooth.BluetoothGattService service)
+    #ctor(java.util.UUID uuid, int serviceType)
+    getCharacteristic(java.util.UUID uuid)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothHeadset
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    isAudioConnected(android.bluetooth.BluetoothDevice device)
+    isNoiseReductionSupported(android.bluetooth.BluetoothDevice device)
+    isVoiceRecognitionSupported(android.bluetooth.BluetoothDevice device)
+    sendVendorSpecificResultCode(android.bluetooth.BluetoothDevice device, java.lang.String command, java.lang.String arg)
+    startVoiceRecognition(android.bluetooth.BluetoothDevice device)
+    stopVoiceRecognition(android.bluetooth.BluetoothDevice device)
+  class BluetoothHealth
+    connectChannelToSource(android.bluetooth.BluetoothDevice device, android.bluetooth.BluetoothHealthAppConfiguration config)
+    disconnectChannel(android.bluetooth.BluetoothDevice device, android.bluetooth.BluetoothHealthAppConfiguration config, int channelId)
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    getMainChannelFd(android.bluetooth.BluetoothDevice device, android.bluetooth.BluetoothHealthAppConfiguration config)
+    registerSinkAppConfiguration(java.lang.String name, int dataType, android.bluetooth.BluetoothHealthCallback callback)
+    unregisterAppConfiguration(android.bluetooth.BluetoothHealthAppConfiguration config)
+  class BluetoothHealthAppConfiguration
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothHealthCallback
+    onHealthAppConfigurationStatusChange(android.bluetooth.BluetoothHealthAppConfiguration config, int status)
+    onHealthChannelStateChange(android.bluetooth.BluetoothHealthAppConfiguration config, android.bluetooth.BluetoothDevice device, int prevState, int newState, android.os.ParcelFileDescriptor fd, int channelId)
+  class BluetoothHearingAid
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+  class BluetoothHidDevice
+    connect(android.bluetooth.BluetoothDevice device)
+    disconnect(android.bluetooth.BluetoothDevice device)
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    registerApp(android.bluetooth.BluetoothHidDeviceAppSdpSettings sdp, android.bluetooth.BluetoothHidDeviceAppQosSettings inQos, android.bluetooth.BluetoothHidDeviceAppQosSettings outQos, java.util.concurrent.Executor executor, android.bluetooth.BluetoothHidDevice.Callback callback)
+    replyReport(android.bluetooth.BluetoothDevice device, byte type, byte id, byte[] data)
+    reportError(android.bluetooth.BluetoothDevice device, byte error)
+    sendReport(android.bluetooth.BluetoothDevice device, int id, byte[] data)
+  class BluetoothHidDevice.Callback
+    onAppStatusChanged(android.bluetooth.BluetoothDevice pluggedDevice, boolean registered)
+    onConnectionStateChanged(android.bluetooth.BluetoothDevice device, int state)
+    onGetReport(android.bluetooth.BluetoothDevice device, byte type, byte id, int bufferSize)
+    onInterruptData(android.bluetooth.BluetoothDevice device, byte reportId, byte[] data)
+    onSetProtocol(android.bluetooth.BluetoothDevice device, byte protocol)
+    onSetReport(android.bluetooth.BluetoothDevice device, byte type, byte id, byte[] data)
+    onVirtualCableUnplug(android.bluetooth.BluetoothDevice device)
+  class BluetoothHidDeviceAppQosSettings
+    #ctor(int serviceType, int tokenRate, int tokenBucketSize, int peakBandwidth, int latency, int delayVariation)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothHidDeviceAppSdpSettings
+    #ctor(java.lang.String name, java.lang.String description, java.lang.String provider, byte subclass, byte[] descriptors)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothLeAudio
+    getConnectedGroupLeadDevice(int groupId)
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+    getGroupId(android.bluetooth.BluetoothDevice device)
+  class BluetoothLeAudioCodecConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothLeAudioCodecConfig.Builder
+    #ctor(android.bluetooth.BluetoothLeAudioCodecConfig config)
+    setBitsPerSample(int bitsPerSample)
+    setChannelCount(int channelCount)
+    setCodecPriority(int codecPriority)
+    setCodecType(int codecType)
+    setFrameDuration(int frameDuration)
+    setMaxOctetsPerFrame(int maxOctetsPerFrame)
+    setMinOctetsPerFrame(int minOctetsPerFrame)
+    setOctetsPerFrame(int octetsPerFrame)
+    setSampleRate(int sampleRate)
+  class BluetoothLeAudioCodecStatus
+    #ctor(android.bluetooth.BluetoothLeAudioCodecConfig inputCodecConfig, android.bluetooth.BluetoothLeAudioCodecConfig outputCodecConfig, java.util.List<android.bluetooth.BluetoothLeAudioCodecConfig> inputCodecsLocalCapabilities, java.util.List<android.bluetooth.BluetoothLeAudioCodecConfig> outputCodecsLocalCapabilities, java.util.List<android.bluetooth.BluetoothLeAudioCodecConfig> inputCodecsSelectableCapabilities, java.util.List<android.bluetooth.BluetoothLeAudioCodecConfig> outputCodecsSelectableCapabilities)
+    equals(java.lang.Object o)
+    isInputCodecConfigSelectable(android.bluetooth.BluetoothLeAudioCodecConfig codecConfig)
+    isOutputCodecConfigSelectable(android.bluetooth.BluetoothLeAudioCodecConfig codecConfig)
+    writeToParcel(android.os.Parcel out, int flags)
+  class BluetoothManager
+    getConnectedDevices(int profile)
+    getConnectionState(android.bluetooth.BluetoothDevice device, int profile)
+    getDevicesMatchingConnectionStates(int profile, int[] states)
+    openGattServer(android.content.Context context, android.bluetooth.BluetoothGattServerCallback callback)
+  interface BluetoothProfile
+    getConnectionState(android.bluetooth.BluetoothDevice device)
+    getDevicesMatchingConnectionStates(int[] states)
+  interface BluetoothProfile.ServiceListener
+    onServiceConnected(int profile, android.bluetooth.BluetoothProfile proxy)
+    onServiceDisconnected(int profile)
+  class BluetoothServerSocket
+    accept(int timeout)
+
+package android.bluetooth.le
+;---------------------------------------
+  class AdvertiseCallback
+    onStartFailure(int errorCode)
+    onStartSuccess(android.bluetooth.le.AdvertiseSettings settingsInEffect)
+  class AdvertiseData
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdvertiseData.Builder
+    addManufacturerData(int manufacturerId, byte[] manufacturerSpecificData)
+    addServiceData(android.os.ParcelUuid serviceDataUuid, byte[] serviceData)
+    addServiceSolicitationUuid(android.os.ParcelUuid serviceSolicitationUuid)
+    addServiceUuid(android.os.ParcelUuid serviceUuid)
+    addTransportDiscoveryData(android.bluetooth.le.TransportDiscoveryData transportDiscoveryData)
+    setIncludeDeviceName(boolean includeDeviceName)
+    setIncludeTxPowerLevel(boolean includeTxPowerLevel)
+  class AdvertiseSettings
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdvertiseSettings.Builder
+    setAdvertiseMode(int advertiseMode)
+    setConnectable(boolean connectable)
+    setTimeout(int timeoutMillis)
+    setTxPowerLevel(int txPowerLevel)
+  class AdvertisingSet
+    enableAdvertising(boolean enable, int duration, int maxExtendedAdvertisingEvents)
+    setAdvertisingData(android.bluetooth.le.AdvertiseData advertiseData)
+    setAdvertisingParameters(android.bluetooth.le.AdvertisingSetParameters parameters)
+    setPeriodicAdvertisingData(android.bluetooth.le.AdvertiseData periodicData)
+    setPeriodicAdvertisingEnabled(boolean enable)
+    setPeriodicAdvertisingParameters(android.bluetooth.le.PeriodicAdvertisingParameters parameters)
+    setScanResponseData(android.bluetooth.le.AdvertiseData scanResponse)
+  class AdvertisingSetCallback
+    onAdvertisingDataSet(android.bluetooth.le.AdvertisingSet advertisingSet, int status)
+    onAdvertisingEnabled(android.bluetooth.le.AdvertisingSet advertisingSet, boolean enable, int status)
+    onAdvertisingParametersUpdated(android.bluetooth.le.AdvertisingSet advertisingSet, int txPower, int status)
+    onAdvertisingSetStarted(android.bluetooth.le.AdvertisingSet advertisingSet, int txPower, int status)
+    onAdvertisingSetStopped(android.bluetooth.le.AdvertisingSet advertisingSet)
+    onPeriodicAdvertisingDataSet(android.bluetooth.le.AdvertisingSet advertisingSet, int status)
+    onPeriodicAdvertisingEnabled(android.bluetooth.le.AdvertisingSet advertisingSet, boolean enable, int status)
+    onPeriodicAdvertisingParametersUpdated(android.bluetooth.le.AdvertisingSet advertisingSet, int status)
+    onScanResponseDataSet(android.bluetooth.le.AdvertisingSet advertisingSet, int status)
+  class AdvertisingSetParameters
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdvertisingSetParameters.Builder
+    setAnonymous(boolean isAnonymous)
+    setConnectable(boolean connectable)
+    setIncludeTxPower(boolean includeTxPower)
+    setInterval(int interval)
+    setLegacyMode(boolean isLegacy)
+    setPrimaryPhy(int primaryPhy)
+    setScannable(boolean scannable)
+    setSecondaryPhy(int secondaryPhy)
+    setTxPowerLevel(int txPowerLevel)
+  class BluetoothLeAdvertiser
+    startAdvertising(android.bluetooth.le.AdvertiseSettings settings, android.bluetooth.le.AdvertiseData advertiseData, android.bluetooth.le.AdvertiseCallback callback)
+    startAdvertising(android.bluetooth.le.AdvertiseSettings settings, android.bluetooth.le.AdvertiseData advertiseData, android.bluetooth.le.AdvertiseData scanResponse, android.bluetooth.le.AdvertiseCallback callback)
+    startAdvertisingSet(android.bluetooth.le.AdvertisingSetParameters parameters, android.bluetooth.le.AdvertiseData advertiseData, android.bluetooth.le.AdvertiseData scanResponse, android.bluetooth.le.PeriodicAdvertisingParameters periodicParameters, android.bluetooth.le.AdvertiseData periodicData, android.bluetooth.le.AdvertisingSetCallback callback)
+    startAdvertisingSet(android.bluetooth.le.AdvertisingSetParameters parameters, android.bluetooth.le.AdvertiseData advertiseData, android.bluetooth.le.AdvertiseData scanResponse, android.bluetooth.le.PeriodicAdvertisingParameters periodicParameters, android.bluetooth.le.AdvertiseData periodicData, android.bluetooth.le.AdvertisingSetCallback callback, android.os.Handler handler)
+    startAdvertisingSet(android.bluetooth.le.AdvertisingSetParameters parameters, android.bluetooth.le.AdvertiseData advertiseData, android.bluetooth.le.AdvertiseData scanResponse, android.bluetooth.le.PeriodicAdvertisingParameters periodicParameters, android.bluetooth.le.AdvertiseData periodicData, int duration, int maxExtendedAdvertisingEvents, android.bluetooth.le.AdvertisingSetCallback callback)
+    startAdvertisingSet(android.bluetooth.le.AdvertisingSetParameters parameters, android.bluetooth.le.AdvertiseData advertiseData, android.bluetooth.le.AdvertiseData scanResponse, android.bluetooth.le.PeriodicAdvertisingParameters periodicParameters, android.bluetooth.le.AdvertiseData periodicData, int duration, int maxExtendedAdvertisingEvents, android.bluetooth.le.AdvertisingSetCallback callback, android.os.Handler handler)
+    stopAdvertising(android.bluetooth.le.AdvertiseCallback callback)
+    stopAdvertisingSet(android.bluetooth.le.AdvertisingSetCallback callback)
+  class BluetoothLeScanner
+    flushPendingScanResults(android.bluetooth.le.ScanCallback callback)
+    startScan(android.bluetooth.le.ScanCallback callback)
+    startScan(java.util.List<android.bluetooth.le.ScanFilter> filters, android.bluetooth.le.ScanSettings settings, android.app.PendingIntent callbackIntent)
+    startScan(java.util.List<android.bluetooth.le.ScanFilter> filters, android.bluetooth.le.ScanSettings settings, android.bluetooth.le.ScanCallback callback)
+    stopScan(android.app.PendingIntent callbackIntent)
+    stopScan(android.bluetooth.le.ScanCallback callback)
+  class PeriodicAdvertisingParameters
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PeriodicAdvertisingParameters.Builder
+    setIncludeTxPower(boolean includeTxPower)
+    setInterval(int interval)
+  class ScanCallback
+    onBatchScanResults(java.util.List<android.bluetooth.le.ScanResult> results)
+    onScanFailed(int errorCode)
+    onScanResult(int callbackType, android.bluetooth.le.ScanResult result)
+  class ScanFilter
+    equals(java.lang.Object obj)
+    matches(android.bluetooth.le.ScanResult scanResult)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ScanFilter.Builder
+    setAdvertisingDataType(int advertisingDataType)
+    setAdvertisingDataTypeWithData(int advertisingDataType, byte[] advertisingData, byte[] advertisingDataMask)
+    setDeviceAddress(java.lang.String deviceAddress)
+    setDeviceName(java.lang.String deviceName)
+    setManufacturerData(int manufacturerId, byte[] manufacturerData)
+    setManufacturerData(int manufacturerId, byte[] manufacturerData, byte[] manufacturerDataMask)
+    setServiceData(android.os.ParcelUuid serviceDataUuid, byte[] serviceData)
+    setServiceData(android.os.ParcelUuid serviceDataUuid, byte[] serviceData, byte[] serviceDataMask)
+    setServiceSolicitationUuid(android.os.ParcelUuid serviceSolicitationUuid)
+    setServiceSolicitationUuid(android.os.ParcelUuid serviceSolicitationUuid, android.os.ParcelUuid solicitationUuidMask)
+    setServiceUuid(android.os.ParcelUuid serviceUuid)
+    setServiceUuid(android.os.ParcelUuid serviceUuid, android.os.ParcelUuid uuidMask)
+  class ScanRecord
+    getManufacturerSpecificData(int manufacturerId)
+    getServiceData(android.os.ParcelUuid serviceDataUuid)
+  class ScanResult
+    equals(java.lang.Object obj)
+    #ctor(android.bluetooth.BluetoothDevice device, android.bluetooth.le.ScanRecord scanRecord, int rssi, long timestampNanos)
+    #ctor(android.bluetooth.BluetoothDevice device, int eventType, int primaryPhy, int secondaryPhy, int advertisingSid, int txPower, int rssi, int periodicAdvertisingInterval, android.bluetooth.le.ScanRecord scanRecord, long timestampNanos)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ScanSettings
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ScanSettings.Builder
+    setCallbackType(int callbackType)
+    setLegacy(boolean legacy)
+    setMatchMode(int matchMode)
+    setNumOfMatches(int numOfMatches)
+    setPhy(int phy)
+    setReportDelay(long reportDelayMillis)
+    setScanMode(int scanMode)
+  class TransportBlock
+    equals(java.lang.Object obj)
+    #ctor(int orgId, int tdsFlags, int transportDataLength, byte[] transportData)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TransportDiscoveryData
+    equals(java.lang.Object obj)
+    #ctor(byte[] transportDiscoveryData)
+    #ctor(int transportDataType, java.util.List<android.bluetooth.le.TransportBlock> transportBlocks)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.companion
+;---------------------------------------
+  class AssociatedDevice
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AssociationInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AssociationRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AssociationRequest.Builder
+    addDeviceFilter(android.companion.DeviceFilter<?> deviceFilter)
+    setDeviceProfile(java.lang.String deviceProfile)
+    setDisplayName(java.lang.CharSequence displayName)
+    setForceConfirmation(boolean forceConfirmation)
+    setSelfManaged(boolean selfManaged)
+    setSingleDevice(boolean singleDevice)
+  class BluetoothDeviceFilter
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BluetoothDeviceFilter.Builder
+    addServiceUuid(android.os.ParcelUuid serviceUuid, android.os.ParcelUuid serviceUuidMask)
+    setAddress(java.lang.String address)
+    setNamePattern(java.util.regex.Pattern regex)
+  class BluetoothLeDeviceFilter
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BluetoothLeDeviceFilter.Builder
+    setNamePattern(java.util.regex.Pattern regex)
+    setRawDataFilter(byte[] rawDataFilter, byte[] rawDataFilterMask)
+    setRenameFromBytes(java.lang.String prefix, java.lang.String suffix, int bytesFrom, int bytesLength, java.nio.ByteOrder byteOrder)
+    setRenameFromName(java.lang.String prefix, java.lang.String suffix, int nameFrom, int nameLength)
+    setScanFilter(android.bluetooth.le.ScanFilter scanFilter)
+  class CompanionDeviceManager
+    addOnAssociationsChangedListener(java.util.concurrent.Executor executor, android.companion.CompanionDeviceManager.OnAssociationsChangedListener listener)
+    associate(android.companion.AssociationRequest request, android.companion.CompanionDeviceManager.Callback callback, android.os.Handler handler)
+    associate(android.companion.AssociationRequest request, java.util.concurrent.Executor executor, android.companion.CompanionDeviceManager.Callback callback)
+    buildPermissionTransferUserConsentIntent(int associationId)
+    disassociate(int associationId)
+    disassociate(java.lang.String deviceMacAddress)
+    hasNotificationAccess(android.content.ComponentName component)
+    removeOnAssociationsChangedListener(android.companion.CompanionDeviceManager.OnAssociationsChangedListener listener)
+    requestNotificationAccess(android.content.ComponentName component)
+    startObservingDevicePresence(java.lang.String deviceAddress)
+    stopObservingDevicePresence(java.lang.String deviceAddress)
+  class CompanionDeviceManager.Callback
+    onAssociationCreated(android.companion.AssociationInfo associationInfo)
+    onAssociationPending(android.content.IntentSender intentSender)
+    onDeviceFound(android.content.IntentSender intentSender)
+    onFailure(java.lang.CharSequence error)
+  interface CompanionDeviceManager.OnAssociationsChangedListener
+    onAssociationsChanged(java.util.List<android.companion.AssociationInfo> associations)
+  class CompanionDeviceService
+    onBind(android.content.Intent intent)
+    onDeviceAppeared(android.companion.AssociationInfo associationInfo)
+    onDeviceAppeared(java.lang.String address)
+    onDeviceDisappeared(android.companion.AssociationInfo associationInfo)
+    onDeviceDisappeared(java.lang.String address)
+  class WifiDeviceFilter
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiDeviceFilter.Builder
+    setBssid(android.net.MacAddress value)
+    setBssidMask(android.net.MacAddress value)
+    setNamePattern(java.util.regex.Pattern value)
+
+package android.companion.virtual
+;---------------------------------------
+  class VirtualDevice
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.content
+;---------------------------------------
+  class AbstractThreadedSyncAdapter
+    #ctor(android.content.Context context, boolean autoInitialize)
+    #ctor(android.content.Context context, boolean autoInitialize, boolean allowParallelSyncs)
+    onPerformSync(android.accounts.Account account, android.os.Bundle extras, java.lang.String authority, android.content.ContentProviderClient provider, android.content.SyncResult syncResult)
+    onSecurityException(android.accounts.Account account, android.os.Bundle extras, java.lang.String authority, android.content.SyncResult syncResult)
+    onSyncCanceled(java.lang.Thread thread)
+  class ActivityNotFoundException
+    #ctor(java.lang.String name)
+  class AsyncQueryHandler
+    #ctor(android.content.ContentResolver cr)
+    cancelOperation(int token)
+    createHandler(android.os.Looper looper)
+    handleMessage(android.os.Message msg)
+    onDeleteComplete(int token, java.lang.Object cookie, int result)
+    onInsertComplete(int token, java.lang.Object cookie, android.net.Uri uri)
+    onQueryComplete(int token, java.lang.Object cookie, android.database.Cursor cursor)
+    onUpdateComplete(int token, java.lang.Object cookie, int result)
+    startDelete(int token, java.lang.Object cookie, android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs)
+    startInsert(int token, java.lang.Object cookie, android.net.Uri uri, android.content.ContentValues initialValues)
+    startQuery(int token, java.lang.Object cookie, android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String orderBy)
+    startUpdate(int token, java.lang.Object cookie, android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  class AsyncQueryHandler.WorkerHandler
+    #ctor(android.os.Looper looper)
+    handleMessage(android.os.Message msg)
+  class AsyncTaskLoader<D>
+    #ctor(android.content.Context context)
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    onCanceled(D data)
+    setUpdateThrottle(long delayMS)
+  class AttributionSource
+    equals(java.lang.Object o)
+    isTrusted(android.content.Context context)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AttributionSource.Builder
+    #ctor(android.content.AttributionSource current)
+    #ctor(int uid)
+    setAttributionTag(java.lang.String value)
+    setNext(android.content.AttributionSource value)
+    setPackageName(java.lang.String value)
+  class BroadcastReceiver
+    getResultExtras(boolean makeMap)
+    onReceive(android.content.Context context, android.content.Intent intent)
+    peekService(android.content.Context myContext, android.content.Intent service)
+    setDebugUnregister(boolean debug)
+    setOrderedHint(boolean isOrdered)
+    setResult(int code, java.lang.String data, android.os.Bundle extras)
+    setResultCode(int code)
+    setResultData(java.lang.String data)
+    setResultExtras(android.os.Bundle extras)
+  class BroadcastReceiver.PendingResult
+    getResultExtras(boolean makeMap)
+    setResult(int code, java.lang.String data, android.os.Bundle extras)
+    setResultCode(int code)
+    setResultData(java.lang.String data)
+    setResultExtras(android.os.Bundle extras)
+  class ClipboardManager
+    addPrimaryClipChangedListener(android.content.ClipboardManager.OnPrimaryClipChangedListener what)
+    removePrimaryClipChangedListener(android.content.ClipboardManager.OnPrimaryClipChangedListener what)
+    setPrimaryClip(android.content.ClipData clip)
+    setText(java.lang.CharSequence text)
+  class ClipData
+    addItem(android.content.ClipData.Item item)
+    addItem(android.content.ContentResolver resolver, android.content.ClipData.Item item)
+    #ctor(android.content.ClipData other)
+    #ctor(android.content.ClipDescription description, android.content.ClipData.Item item)
+    #ctor(java.lang.CharSequence label, java.lang.String[] mimeTypes, android.content.ClipData.Item item)
+    getItemAt(int index)
+    newHtmlText(java.lang.CharSequence label, java.lang.CharSequence text, java.lang.String htmlText)
+    newIntent(java.lang.CharSequence label, android.content.Intent intent)
+    newPlainText(java.lang.CharSequence label, java.lang.CharSequence text)
+    newRawUri(java.lang.CharSequence label, android.net.Uri uri)
+    newUri(android.content.ContentResolver resolver, java.lang.CharSequence label, android.net.Uri uri)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ClipData.Item
+    #ctor(android.content.Intent intent)
+    #ctor(android.net.Uri uri)
+    #ctor(java.lang.CharSequence text)
+    #ctor(java.lang.CharSequence text, android.content.Intent intent, android.net.Uri uri)
+    #ctor(java.lang.CharSequence text, java.lang.String htmlText)
+    #ctor(java.lang.CharSequence text, java.lang.String htmlText, android.content.Intent intent, android.net.Uri uri)
+    coerceToHtmlText(android.content.Context context)
+    coerceToStyledText(android.content.Context context)
+    coerceToText(android.content.Context context)
+  class ClipDescription
+    #ctor(android.content.ClipDescription o)
+    #ctor(java.lang.CharSequence label, java.lang.String[] mimeTypes)
+    compareMimeTypes(java.lang.String concreteType, java.lang.String desiredType)
+    filterMimeTypes(java.lang.String mimeType)
+    getConfidenceScore(java.lang.String entity)
+    getMimeType(int index)
+    hasMimeType(java.lang.String mimeType)
+    setExtras(android.os.PersistableBundle extras)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface ComponentCallbacks
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+  interface ComponentCallbacks2
+    onTrimMemory(int level)
+  class ComponentName
+    compareTo(android.content.ComponentName that)
+    #ctor(android.content.Context pkg, java.lang.Class<?> cls)
+    #ctor(android.content.Context pkg, java.lang.String cls)
+    #ctor(android.os.Parcel in)
+    #ctor(java.lang.String pkg, java.lang.String cls)
+    createRelative(android.content.Context pkg, java.lang.String cls)
+    createRelative(java.lang.String pkg, java.lang.String cls)
+    equals(java.lang.Object obj)
+    readFromParcel(android.os.Parcel in)
+    unflattenFromString(java.lang.String str)
+    writeToParcel(android.content.ComponentName c, android.os.Parcel out)
+    writeToParcel(android.os.Parcel out, int flags)
+  class ContentProvider
+    applyBatch(java.lang.String authority, java.util.ArrayList<android.content.ContentProviderOperation> operations)
+    applyBatch(java.util.ArrayList<android.content.ContentProviderOperation> operations)
+    attachInfo(android.content.Context context, android.content.pm.ProviderInfo info)
+    bulkInsert(android.net.Uri uri, android.content.ContentValues[] values)
+    call(java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    call(java.lang.String authority, java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    canonicalize(android.net.Uri url)
+    delete(android.net.Uri uri, android.os.Bundle extras)
+    delete(android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs)
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    getStreamTypes(android.net.Uri uri, java.lang.String mimeTypeFilter)
+    getType(android.net.Uri uri)
+    insert(android.net.Uri uri, android.content.ContentValues values)
+    insert(android.net.Uri uri, android.content.ContentValues values, android.os.Bundle extras)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onTrimMemory(int level)
+    openAssetFile(android.net.Uri uri, java.lang.String mode)
+    openAssetFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openFile(android.net.Uri uri, java.lang.String mode)
+    openFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openFileHelper(android.net.Uri uri, java.lang.String mode)
+    <T> openPipeHelper(android.net.Uri uri, java.lang.String mimeType, android.os.Bundle opts, T args, android.content.ContentProvider.PipeDataWriter<T> func)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts, android.os.CancellationSignal signal)
+    query(android.net.Uri uri, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder, android.os.CancellationSignal cancellationSignal)
+    refresh(android.net.Uri uri, android.os.Bundle extras, android.os.CancellationSignal cancellationSignal)
+    restoreCallingIdentity(android.content.ContentProvider.CallingIdentity identity)
+    setPathPermissions(android.content.pm.PathPermission[] permissions)
+    setReadPermission(java.lang.String permission)
+    setWritePermission(java.lang.String permission)
+    uncanonicalize(android.net.Uri url)
+    update(android.net.Uri uri, android.content.ContentValues values, android.os.Bundle extras)
+    update(android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  interface ContentProvider.PipeDataWriter<T>
+    writeDataToPipe(android.os.ParcelFileDescriptor output, android.net.Uri uri, java.lang.String mimeType, android.os.Bundle opts, T args)
+  class ContentProviderClient
+    applyBatch(java.lang.String authority, java.util.ArrayList<android.content.ContentProviderOperation> operations)
+    applyBatch(java.util.ArrayList<android.content.ContentProviderOperation> operations)
+    bulkInsert(android.net.Uri url, android.content.ContentValues[] initialValues)
+    call(java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    call(java.lang.String authority, java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    canonicalize(android.net.Uri url)
+    delete(android.net.Uri url, android.os.Bundle extras)
+    delete(android.net.Uri url, java.lang.String selection, java.lang.String[] selectionArgs)
+    getStreamTypes(android.net.Uri url, java.lang.String mimeTypeFilter)
+    getType(android.net.Uri url)
+    insert(android.net.Uri url, android.content.ContentValues initialValues)
+    insert(android.net.Uri url, android.content.ContentValues initialValues, android.os.Bundle extras)
+    openAssetFile(android.net.Uri url, java.lang.String mode)
+    openAssetFile(android.net.Uri url, java.lang.String mode, android.os.CancellationSignal signal)
+    openFile(android.net.Uri url, java.lang.String mode)
+    openFile(android.net.Uri url, java.lang.String mode, android.os.CancellationSignal signal)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts, android.os.CancellationSignal signal)
+    openTypedAssetFileDescriptor(android.net.Uri uri, java.lang.String mimeType, android.os.Bundle opts)
+    openTypedAssetFileDescriptor(android.net.Uri uri, java.lang.String mimeType, android.os.Bundle opts, android.os.CancellationSignal signal)
+    query(android.net.Uri uri, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri url, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder, android.os.CancellationSignal cancellationSignal)
+    refresh(android.net.Uri url, android.os.Bundle extras, android.os.CancellationSignal cancellationSignal)
+    uncanonicalize(android.net.Uri url)
+    update(android.net.Uri url, android.content.ContentValues values, android.os.Bundle extras)
+    update(android.net.Uri url, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  class ContentProviderOperation
+    apply(android.content.ContentProvider provider, android.content.ContentProviderResult[] backRefs, int numBackRefs)
+    newAssertQuery(android.net.Uri uri)
+    newCall(android.net.Uri uri, java.lang.String method, java.lang.String arg)
+    newDelete(android.net.Uri uri)
+    newInsert(android.net.Uri uri)
+    newUpdate(android.net.Uri uri)
+    resolveExtrasBackReferences(android.content.ContentProviderResult[] backRefs, int numBackRefs)
+    resolveSelectionArgsBackReferences(android.content.ContentProviderResult[] backRefs, int numBackRefs)
+    resolveValueBackReferences(android.content.ContentProviderResult[] backRefs, int numBackRefs)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ContentProviderOperation.Builder
+    withExceptionAllowed(boolean exceptionAllowed)
+    withExpectedCount(int count)
+    withExtra(java.lang.String key, java.lang.Object value)
+    withExtraBackReference(java.lang.String key, int fromIndex)
+    withExtraBackReference(java.lang.String key, int fromIndex, java.lang.String fromKey)
+    withExtras(android.os.Bundle extras)
+    withSelection(java.lang.String selection, java.lang.String[] selectionArgs)
+    withSelectionBackReference(int index, int fromIndex)
+    withSelectionBackReference(int index, int fromIndex, java.lang.String fromKey)
+    withValue(java.lang.String key, java.lang.Object value)
+    withValueBackReference(java.lang.String key, int fromIndex)
+    withValueBackReference(java.lang.String key, int fromIndex, java.lang.String fromKey)
+    withValueBackReferences(android.content.ContentValues backReferences)
+    withValues(android.content.ContentValues values)
+    withYieldAllowed(boolean yieldAllowed)
+  class ContentProviderResult
+    #ctor(android.net.Uri uri)
+    #ctor(android.os.Bundle extras)
+    #ctor(android.os.Parcel source)
+    #ctor(int count)
+    #ctor(java.lang.Throwable exception)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ContentQueryMap
+    #ctor(android.database.Cursor cursor, java.lang.String columnNameOfKey, boolean keepUpdated, android.os.Handler handlerForUpdateNotifications)
+    getValues(java.lang.String rowName)
+    setKeepUpdated(boolean keepUpdated)
+  class ContentResolver
+    acquireContentProviderClient(android.net.Uri uri)
+    acquireContentProviderClient(java.lang.String name)
+    acquireUnstableContentProviderClient(android.net.Uri uri)
+    acquireUnstableContentProviderClient(java.lang.String name)
+    addPeriodicSync(android.accounts.Account account, java.lang.String authority, android.os.Bundle extras, long pollFrequency)
+    addStatusChangeListener(int mask, android.content.SyncStatusObserver callback)
+    applyBatch(java.lang.String authority, java.util.ArrayList<android.content.ContentProviderOperation> operations)
+    bulkInsert(android.net.Uri url, android.content.ContentValues[] values)
+    call(android.net.Uri uri, java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    call(java.lang.String authority, java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    cancelSync(android.accounts.Account account, java.lang.String authority)
+    cancelSync(android.content.SyncRequest request)
+    cancelSync(android.net.Uri uri)
+    canonicalize(android.net.Uri url)
+    #ctor(android.content.Context context)
+    delete(android.net.Uri url, android.os.Bundle extras)
+    delete(android.net.Uri url, java.lang.String where, java.lang.String[] selectionArgs)
+    getIsSyncable(android.accounts.Account account, java.lang.String authority)
+    getPeriodicSyncs(android.accounts.Account account, java.lang.String authority)
+    getStreamTypes(android.net.Uri url, java.lang.String mimeTypeFilter)
+    getSyncAutomatically(android.accounts.Account account, java.lang.String authority)
+    getType(android.net.Uri url)
+    getTypeInfo(java.lang.String mimeType)
+    insert(android.net.Uri url, android.content.ContentValues values)
+    insert(android.net.Uri url, android.content.ContentValues values, android.os.Bundle extras)
+    isSyncActive(android.accounts.Account account, java.lang.String authority)
+    isSyncPending(android.accounts.Account account, java.lang.String authority)
+    loadThumbnail(android.net.Uri uri, android.util.Size size, android.os.CancellationSignal signal)
+    notifyChange(android.net.Uri uri, android.database.ContentObserver observer)
+    notifyChange(android.net.Uri uri, android.database.ContentObserver observer, boolean syncToNetwork)
+    notifyChange(android.net.Uri uri, android.database.ContentObserver observer, int flags)
+    notifyChange(java.util.Collection<android.net.Uri> uris, android.database.ContentObserver observer, int flags)
+    openAssetFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openAssetFileDescriptor(android.net.Uri uri, java.lang.String mode)
+    openAssetFileDescriptor(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal cancellationSignal)
+    openFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openFileDescriptor(android.net.Uri uri, java.lang.String mode)
+    openFileDescriptor(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal cancellationSignal)
+    openInputStream(android.net.Uri uri)
+    openOutputStream(android.net.Uri uri)
+    openOutputStream(android.net.Uri uri, java.lang.String mode)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts, android.os.CancellationSignal signal)
+    openTypedAssetFileDescriptor(android.net.Uri uri, java.lang.String mimeType, android.os.Bundle opts)
+    openTypedAssetFileDescriptor(android.net.Uri uri, java.lang.String mimeType, android.os.Bundle opts, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri uri, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder, android.os.CancellationSignal cancellationSignal)
+    refresh(android.net.Uri url, android.os.Bundle extras, android.os.CancellationSignal cancellationSignal)
+    registerContentObserver(android.net.Uri uri, boolean notifyForDescendants, android.database.ContentObserver observer)
+    releasePersistableUriPermission(android.net.Uri uri, int modeFlags)
+    removePeriodicSync(android.accounts.Account account, java.lang.String authority, android.os.Bundle extras)
+    removeStatusChangeListener(java.lang.Object handle)
+    requestSync(android.accounts.Account account, java.lang.String authority, android.os.Bundle extras)
+    requestSync(android.content.SyncRequest request)
+    setIsSyncable(android.accounts.Account account, java.lang.String authority, int syncable)
+    setMasterSyncAutomatically(boolean sync)
+    setSyncAutomatically(android.accounts.Account account, java.lang.String authority, boolean sync)
+    startSync(android.net.Uri uri, android.os.Bundle extras)
+    takePersistableUriPermission(android.net.Uri uri, int modeFlags)
+    uncanonicalize(android.net.Uri url)
+    unregisterContentObserver(android.database.ContentObserver observer)
+    update(android.net.Uri uri, android.content.ContentValues values, android.os.Bundle extras)
+    update(android.net.Uri uri, android.content.ContentValues values, java.lang.String where, java.lang.String[] selectionArgs)
+    validateSyncExtrasBundle(android.os.Bundle extras)
+    wrap(android.content.ContentProvider wrapped)
+    wrap(android.content.ContentProviderClient wrapped)
+  class ContentUris
+    appendId(android.net.Uri.Builder builder, long id)
+    parseId(android.net.Uri contentUri)
+    removeId(android.net.Uri contentUri)
+    withAppendedId(android.net.Uri contentUri, long id)
+  class ContentValues
+    containsKey(java.lang.String key)
+    #ctor(android.content.ContentValues from)
+    #ctor(int size)
+    equals(java.lang.Object object)
+    get(java.lang.String key)
+    getAsBoolean(java.lang.String key)
+    getAsByte(java.lang.String key)
+    getAsByteArray(java.lang.String key)
+    getAsDouble(java.lang.String key)
+    getAsFloat(java.lang.String key)
+    getAsInteger(java.lang.String key)
+    getAsLong(java.lang.String key)
+    getAsShort(java.lang.String key)
+    getAsString(java.lang.String key)
+    put(java.lang.String key, byte[] value)
+    put(java.lang.String key, java.lang.Boolean value)
+    put(java.lang.String key, java.lang.Byte value)
+    put(java.lang.String key, java.lang.Double value)
+    put(java.lang.String key, java.lang.Float value)
+    put(java.lang.String key, java.lang.Integer value)
+    put(java.lang.String key, java.lang.Long value)
+    put(java.lang.String key, java.lang.Short value)
+    put(java.lang.String key, java.lang.String value)
+    putAll(android.content.ContentValues other)
+    putNull(java.lang.String key)
+    remove(java.lang.String key)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Context
+    bindIsolatedService(android.content.Intent service, int flags, java.lang.String instanceName, java.util.concurrent.Executor executor, android.content.ServiceConnection conn)
+    bindService(android.content.Intent service, android.content.ServiceConnection conn, int flags)
+    bindService(android.content.Intent service, int flags, java.util.concurrent.Executor executor, android.content.ServiceConnection conn)
+    bindServiceAsUser(android.content.Intent service, android.content.ServiceConnection conn, int flags, android.os.UserHandle user)
+    checkCallingOrSelfPermission(java.lang.String permission)
+    checkCallingOrSelfUriPermission(android.net.Uri uri, int modeFlags)
+    checkCallingOrSelfUriPermissions(java.util.List<android.net.Uri> uris, int modeFlags)
+    checkCallingPermission(java.lang.String permission)
+    checkCallingUriPermission(android.net.Uri uri, int modeFlags)
+    checkCallingUriPermissions(java.util.List<android.net.Uri> uris, int modeFlags)
+    checkPermission(java.lang.String permission, int pid, int uid)
+    checkSelfPermission(java.lang.String permission)
+    checkUriPermission(android.net.Uri uri, int pid, int uid, int modeFlags)
+    checkUriPermission(android.net.Uri uri, java.lang.String readPermission, java.lang.String writePermission, int pid, int uid, int modeFlags)
+    checkUriPermissions(java.util.List<android.net.Uri> uris, int pid, int uid, int modeFlags)
+    createAttributionContext(java.lang.String attributionTag)
+    createConfigurationContext(android.content.res.Configuration overrideConfiguration)
+    createContext(android.content.ContextParams contextParams)
+    createContextForSplit(java.lang.String splitName)
+    createDeviceContext(int deviceId)
+    createDisplayContext(android.view.Display display)
+    createPackageContext(java.lang.String packageName, int flags)
+    createWindowContext(android.view.Display display, int type, android.os.Bundle options)
+    createWindowContext(int type, android.os.Bundle options)
+    deleteDatabase(java.lang.String name)
+    deleteFile(java.lang.String name)
+    deleteSharedPreferences(java.lang.String name)
+    enforceCallingOrSelfPermission(java.lang.String permission, java.lang.String message)
+    enforceCallingOrSelfUriPermission(android.net.Uri uri, int modeFlags, java.lang.String message)
+    enforceCallingPermission(java.lang.String permission, java.lang.String message)
+    enforceCallingUriPermission(android.net.Uri uri, int modeFlags, java.lang.String message)
+    enforcePermission(java.lang.String permission, int pid, int uid, java.lang.String message)
+    enforceUriPermission(android.net.Uri uri, int pid, int uid, int modeFlags, java.lang.String message)
+    enforceUriPermission(android.net.Uri uri, java.lang.String readPermission, java.lang.String writePermission, int pid, int uid, int modeFlags, java.lang.String message)
+    getColor(int id)
+    getColorStateList(int id)
+    getDatabasePath(java.lang.String name)
+    getDir(java.lang.String name, int mode)
+    getDrawable(int id)
+    getExternalFilesDir(java.lang.String type)
+    getExternalFilesDirs(java.lang.String type)
+    getFileStreamPath(java.lang.String name)
+    getSharedPreferences(java.lang.String name, int mode)
+    getString(int resId)
+    getString(int resId, java.lang.Object... formatArgs)
+    <T> getSystemService(java.lang.Class<T> serviceClass)
+    getSystemService(java.lang.String name)
+    getSystemServiceName(java.lang.Class<?> serviceClass)
+    getText(int resId)
+    grantUriPermission(java.lang.String toPackage, android.net.Uri uri, int modeFlags)
+    moveDatabaseFrom(android.content.Context sourceContext, java.lang.String name)
+    moveSharedPreferencesFrom(android.content.Context sourceContext, java.lang.String name)
+    obtainStyledAttributes(android.util.AttributeSet set, int[] attrs)
+    obtainStyledAttributes(android.util.AttributeSet set, int[] attrs, int defStyleAttr, int defStyleRes)
+    obtainStyledAttributes(int resid, int[] attrs)
+    obtainStyledAttributes(int[] attrs)
+    openFileInput(java.lang.String name)
+    openFileOutput(java.lang.String name, int mode)
+    openOrCreateDatabase(java.lang.String name, int mode, android.database.sqlite.SQLiteDatabase.CursorFactory factory)
+    openOrCreateDatabase(java.lang.String name, int mode, android.database.sqlite.SQLiteDatabase.CursorFactory factory, android.database.DatabaseErrorHandler errorHandler)
+    registerComponentCallbacks(android.content.ComponentCallbacks callback)
+    registerDeviceIdChangeListener(java.util.concurrent.Executor executor, java.util.function.IntConsumer listener)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter, int flags)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter, java.lang.String broadcastPermission, android.os.Handler scheduler)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter, java.lang.String broadcastPermission, android.os.Handler scheduler, int flags)
+    removeStickyBroadcast(android.content.Intent intent)
+    removeStickyBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user)
+    revokeSelfPermissionOnKill(java.lang.String permName)
+    revokeSelfPermissionsOnKill(java.util.Collection<java.lang.String> permissions)
+    revokeUriPermission(android.net.Uri uri, int modeFlags)
+    revokeUriPermission(java.lang.String toPackage, android.net.Uri uri, int modeFlags)
+    sendBroadcast(android.content.Intent intent)
+    sendBroadcast(android.content.Intent intent, java.lang.String receiverPermission)
+    sendBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user)
+    sendBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user, java.lang.String receiverPermission)
+    sendBroadcastWithMultiplePermissions(android.content.Intent intent, java.lang.String[] receiverPermissions)
+    sendOrderedBroadcast(android.content.Intent intent, java.lang.String receiverPermission)
+    sendOrderedBroadcast(android.content.Intent intent, java.lang.String receiverPermission, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendOrderedBroadcast(android.content.Intent intent, java.lang.String receiverPermission, java.lang.String receiverAppOp, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendOrderedBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user, java.lang.String receiverPermission, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendStickyBroadcast(android.content.Intent intent)
+    sendStickyBroadcast(android.content.Intent intent, android.os.Bundle options)
+    sendStickyBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user)
+    sendStickyOrderedBroadcast(android.content.Intent intent, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendStickyOrderedBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    setTheme(int resid)
+    setWallpaper(android.graphics.Bitmap bitmap)
+    setWallpaper(java.io.InputStream data)
+    startActivities(android.content.Intent[] intents)
+    startActivities(android.content.Intent[] intents, android.os.Bundle options)
+    startActivity(android.content.Intent intent)
+    startActivity(android.content.Intent intent, android.os.Bundle options)
+    startForegroundService(android.content.Intent service)
+    startInstrumentation(android.content.ComponentName className, java.lang.String profileFile, android.os.Bundle arguments)
+    startIntentSender(android.content.IntentSender intent, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
+    startIntentSender(android.content.IntentSender intent, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+    startService(android.content.Intent service)
+    stopService(android.content.Intent service)
+    unbindService(android.content.ServiceConnection conn)
+    unregisterComponentCallbacks(android.content.ComponentCallbacks callback)
+    unregisterDeviceIdChangeListener(java.util.function.IntConsumer listener)
+    unregisterReceiver(android.content.BroadcastReceiver receiver)
+    updateServiceGroup(android.content.ServiceConnection conn, int group, int importance)
+  class ContextParams.Builder
+    #ctor(android.content.ContextParams params)
+    setAttributionTag(java.lang.String attributionTag)
+    setNextAttributionSource(android.content.AttributionSource next)
+  class ContextWrapper
+    attachBaseContext(android.content.Context base)
+    bindIsolatedService(android.content.Intent service, int flags, java.lang.String instanceName, java.util.concurrent.Executor executor, android.content.ServiceConnection conn)
+    bindService(android.content.Intent service, android.content.ServiceConnection conn, int flags)
+    bindService(android.content.Intent service, int flags, java.util.concurrent.Executor executor, android.content.ServiceConnection conn)
+    bindServiceAsUser(android.content.Intent service, android.content.ServiceConnection conn, int flags, android.os.UserHandle user)
+    checkCallingOrSelfPermission(java.lang.String permission)
+    checkCallingOrSelfUriPermission(android.net.Uri uri, int modeFlags)
+    checkCallingOrSelfUriPermissions(java.util.List<android.net.Uri> uris, int modeFlags)
+    checkCallingPermission(java.lang.String permission)
+    checkCallingUriPermission(android.net.Uri uri, int modeFlags)
+    checkCallingUriPermissions(java.util.List<android.net.Uri> uris, int modeFlags)
+    checkPermission(java.lang.String permission, int pid, int uid)
+    checkSelfPermission(java.lang.String permission)
+    checkUriPermission(android.net.Uri uri, int pid, int uid, int modeFlags)
+    checkUriPermission(android.net.Uri uri, java.lang.String readPermission, java.lang.String writePermission, int pid, int uid, int modeFlags)
+    checkUriPermissions(java.util.List<android.net.Uri> uris, int pid, int uid, int modeFlags)
+    #ctor(android.content.Context base)
+    createAttributionContext(java.lang.String attributionTag)
+    createConfigurationContext(android.content.res.Configuration overrideConfiguration)
+    createContext(android.content.ContextParams contextParams)
+    createContextForSplit(java.lang.String splitName)
+    createDeviceContext(int deviceId)
+    createDisplayContext(android.view.Display display)
+    createPackageContext(java.lang.String packageName, int flags)
+    createWindowContext(android.view.Display display, int type, android.os.Bundle options)
+    createWindowContext(int type, android.os.Bundle options)
+    deleteDatabase(java.lang.String name)
+    deleteFile(java.lang.String name)
+    deleteSharedPreferences(java.lang.String name)
+    enforceCallingOrSelfPermission(java.lang.String permission, java.lang.String message)
+    enforceCallingOrSelfUriPermission(android.net.Uri uri, int modeFlags, java.lang.String message)
+    enforceCallingPermission(java.lang.String permission, java.lang.String message)
+    enforceCallingUriPermission(android.net.Uri uri, int modeFlags, java.lang.String message)
+    enforcePermission(java.lang.String permission, int pid, int uid, java.lang.String message)
+    enforceUriPermission(android.net.Uri uri, int pid, int uid, int modeFlags, java.lang.String message)
+    enforceUriPermission(android.net.Uri uri, java.lang.String readPermission, java.lang.String writePermission, int pid, int uid, int modeFlags, java.lang.String message)
+    getDatabasePath(java.lang.String name)
+    getDir(java.lang.String name, int mode)
+    getExternalFilesDir(java.lang.String type)
+    getExternalFilesDirs(java.lang.String type)
+    getFileStreamPath(java.lang.String name)
+    getSharedPreferences(java.lang.String name, int mode)
+    getSystemService(java.lang.String name)
+    getSystemServiceName(java.lang.Class<?> serviceClass)
+    grantUriPermission(java.lang.String toPackage, android.net.Uri uri, int modeFlags)
+    moveDatabaseFrom(android.content.Context sourceContext, java.lang.String name)
+    moveSharedPreferencesFrom(android.content.Context sourceContext, java.lang.String name)
+    openFileInput(java.lang.String name)
+    openFileOutput(java.lang.String name, int mode)
+    openOrCreateDatabase(java.lang.String name, int mode, android.database.sqlite.SQLiteDatabase.CursorFactory factory)
+    openOrCreateDatabase(java.lang.String name, int mode, android.database.sqlite.SQLiteDatabase.CursorFactory factory, android.database.DatabaseErrorHandler errorHandler)
+    registerComponentCallbacks(android.content.ComponentCallbacks callback)
+    registerDeviceIdChangeListener(java.util.concurrent.Executor executor, java.util.function.IntConsumer listener)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter, int flags)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter, java.lang.String broadcastPermission, android.os.Handler scheduler)
+    registerReceiver(android.content.BroadcastReceiver receiver, android.content.IntentFilter filter, java.lang.String broadcastPermission, android.os.Handler scheduler, int flags)
+    removeStickyBroadcast(android.content.Intent intent)
+    removeStickyBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user)
+    revokeSelfPermissionsOnKill(java.util.Collection<java.lang.String> permissions)
+    revokeUriPermission(android.net.Uri uri, int modeFlags)
+    revokeUriPermission(java.lang.String targetPackage, android.net.Uri uri, int modeFlags)
+    sendBroadcast(android.content.Intent intent)
+    sendBroadcast(android.content.Intent intent, java.lang.String receiverPermission)
+    sendBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user)
+    sendBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user, java.lang.String receiverPermission)
+    sendOrderedBroadcast(android.content.Intent intent, int initialCode, java.lang.String receiverPermission, java.lang.String receiverAppOp, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, java.lang.String initialData, android.os.Bundle initialExtras, android.os.Bundle options)
+    sendOrderedBroadcast(android.content.Intent intent, java.lang.String receiverPermission)
+    sendOrderedBroadcast(android.content.Intent intent, java.lang.String receiverPermission, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendOrderedBroadcast(android.content.Intent intent, java.lang.String receiverPermission, java.lang.String receiverAppOp, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendOrderedBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user, java.lang.String receiverPermission, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendStickyBroadcast(android.content.Intent intent)
+    sendStickyBroadcast(android.content.Intent intent, android.os.Bundle options)
+    sendStickyBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user)
+    sendStickyOrderedBroadcast(android.content.Intent intent, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    sendStickyOrderedBroadcastAsUser(android.content.Intent intent, android.os.UserHandle user, android.content.BroadcastReceiver resultReceiver, android.os.Handler scheduler, int initialCode, java.lang.String initialData, android.os.Bundle initialExtras)
+    setTheme(int resid)
+    setWallpaper(android.graphics.Bitmap bitmap)
+    setWallpaper(java.io.InputStream data)
+    startActivities(android.content.Intent[] intents)
+    startActivities(android.content.Intent[] intents, android.os.Bundle options)
+    startActivity(android.content.Intent intent)
+    startActivity(android.content.Intent intent, android.os.Bundle options)
+    startForegroundService(android.content.Intent service)
+    startInstrumentation(android.content.ComponentName className, java.lang.String profileFile, android.os.Bundle arguments)
+    startIntentSender(android.content.IntentSender intent, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
+    startIntentSender(android.content.IntentSender intent, android.content.Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, android.os.Bundle options)
+    startService(android.content.Intent service)
+    stopService(android.content.Intent name)
+    unbindService(android.content.ServiceConnection conn)
+    unregisterComponentCallbacks(android.content.ComponentCallbacks callback)
+    unregisterDeviceIdChangeListener(java.util.function.IntConsumer listener)
+    unregisterReceiver(android.content.BroadcastReceiver receiver)
+    updateServiceGroup(android.content.ServiceConnection conn, int group, int importance)
+  class CursorLoader
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    deliverResult(android.database.Cursor cursor)
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    onCanceled(android.database.Cursor cursor)
+    setProjection(java.lang.String[] projection)
+    setSelection(java.lang.String selection)
+    setSelectionArgs(java.lang.String[] selectionArgs)
+    setSortOrder(java.lang.String sortOrder)
+    setUri(android.net.Uri uri)
+  interface DialogInterface.OnCancelListener
+    onCancel(android.content.DialogInterface dialog)
+  interface DialogInterface.OnClickListener
+    onClick(android.content.DialogInterface dialog, int which)
+  interface DialogInterface.OnDismissListener
+    onDismiss(android.content.DialogInterface dialog)
+  interface DialogInterface.OnKeyListener
+    onKey(android.content.DialogInterface dialog, int keyCode, android.view.KeyEvent event)
+  interface DialogInterface.OnMultiChoiceClickListener
+    onClick(android.content.DialogInterface dialog, int which, boolean isChecked)
+  interface DialogInterface.OnShowListener
+    onShow(android.content.DialogInterface dialog)
+  class Entity
+    addSubValue(android.net.Uri uri, android.content.ContentValues values)
+    #ctor(android.content.ContentValues values)
+  class Entity.NamedContentValues
+    #ctor(android.net.Uri uri, android.content.ContentValues values)
+  class Intent
+    addCategory(java.lang.String category)
+    addFlags(int flags)
+    createChooser(android.content.Intent target, java.lang.CharSequence title)
+    createChooser(android.content.Intent target, java.lang.CharSequence title, android.content.IntentSender sender)
+    fillIn(android.content.Intent other, int flags)
+    filterEquals(android.content.Intent other)
+    getBooleanArrayExtra(java.lang.String name)
+    getBooleanExtra(java.lang.String name, boolean defaultValue)
+    getBundleExtra(java.lang.String name)
+    getByteArrayExtra(java.lang.String name)
+    getByteExtra(java.lang.String name, byte defaultValue)
+    getCharArrayExtra(java.lang.String name)
+    getCharExtra(java.lang.String name, char defaultValue)
+    getCharSequenceArrayExtra(java.lang.String name)
+    getCharSequenceArrayListExtra(java.lang.String name)
+    getCharSequenceExtra(java.lang.String name)
+    getDoubleArrayExtra(java.lang.String name)
+    getDoubleExtra(java.lang.String name, double defaultValue)
+    getFloatArrayExtra(java.lang.String name)
+    getFloatExtra(java.lang.String name, float defaultValue)
+    getIntArrayExtra(java.lang.String name)
+    getIntegerArrayListExtra(java.lang.String name)
+    getIntent(java.lang.String uri)
+    getIntentOld(java.lang.String uri)
+    getIntExtra(java.lang.String name, int defaultValue)
+    getLongArrayExtra(java.lang.String name)
+    getLongExtra(java.lang.String name, long defaultValue)
+    getParcelableArrayExtra(java.lang.String name)
+    <T> getParcelableArrayExtra(java.lang.String name, java.lang.Class<T> clazz)
+    <T> getParcelableArrayListExtra(java.lang.String name)
+    <T> getParcelableArrayListExtra(java.lang.String name, java.lang.Class<? extends T> clazz)
+    <T> getParcelableExtra(java.lang.String name)
+    <T> getParcelableExtra(java.lang.String name, java.lang.Class<T> clazz)
+    getSerializableExtra(java.lang.String name)
+    <T> getSerializableExtra(java.lang.String name, java.lang.Class<T> clazz)
+    getShortArrayExtra(java.lang.String name)
+    getShortExtra(java.lang.String name, short defaultValue)
+    getStringArrayExtra(java.lang.String name)
+    getStringArrayListExtra(java.lang.String name)
+    getStringExtra(java.lang.String name)
+    hasCategory(java.lang.String category)
+    hasExtra(java.lang.String name)
+    #ctor(android.content.Context packageContext, java.lang.Class<?> cls)
+    #ctor(android.content.Intent o)
+    #ctor(java.lang.String action)
+    #ctor(java.lang.String action, android.net.Uri uri)
+    #ctor(java.lang.String action, android.net.Uri uri, android.content.Context packageContext, java.lang.Class<?> cls)
+    makeMainActivity(android.content.ComponentName mainActivity)
+    makeMainSelectorActivity(java.lang.String selectorAction, java.lang.String selectorCategory)
+    makeRestartActivityTask(android.content.ComponentName mainActivity)
+    normalizeMimeType(java.lang.String type)
+    parseIntent(android.content.res.Resources resources, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs)
+    parseUri(java.lang.String uri, int flags)
+    putCharSequenceArrayListExtra(java.lang.String name, java.util.ArrayList<java.lang.CharSequence> value)
+    putExtra(java.lang.String name, android.os.Bundle value)
+    putExtra(java.lang.String name, android.os.Parcelable value)
+    putExtra(java.lang.String name, android.os.Parcelable[] value)
+    putExtra(java.lang.String name, boolean value)
+    putExtra(java.lang.String name, boolean[] value)
+    putExtra(java.lang.String name, byte value)
+    putExtra(java.lang.String name, byte[] value)
+    putExtra(java.lang.String name, char value)
+    putExtra(java.lang.String name, char[] value)
+    putExtra(java.lang.String name, double value)
+    putExtra(java.lang.String name, double[] value)
+    putExtra(java.lang.String name, float value)
+    putExtra(java.lang.String name, float[] value)
+    putExtra(java.lang.String name, int value)
+    putExtra(java.lang.String name, int[] value)
+    putExtra(java.lang.String name, java.io.Serializable value)
+    putExtra(java.lang.String name, java.lang.CharSequence value)
+    putExtra(java.lang.String name, java.lang.CharSequence[] value)
+    putExtra(java.lang.String name, java.lang.String value)
+    putExtra(java.lang.String name, java.lang.String[] value)
+    putExtra(java.lang.String name, long value)
+    putExtra(java.lang.String name, long[] value)
+    putExtra(java.lang.String name, short value)
+    putExtra(java.lang.String name, short[] value)
+    putExtras(android.content.Intent src)
+    putExtras(android.os.Bundle extras)
+    putIntegerArrayListExtra(java.lang.String name, java.util.ArrayList<java.lang.Integer> value)
+    putParcelableArrayListExtra(java.lang.String name, java.util.ArrayList<? extends android.os.Parcelable> value)
+    putStringArrayListExtra(java.lang.String name, java.util.ArrayList<java.lang.String> value)
+    readFromParcel(android.os.Parcel in)
+    removeCategory(java.lang.String category)
+    removeExtra(java.lang.String name)
+    removeFlags(int flags)
+    replaceExtras(android.content.Intent src)
+    replaceExtras(android.os.Bundle extras)
+    resolveActivity(android.content.pm.PackageManager pm)
+    resolveActivityInfo(android.content.pm.PackageManager pm, int flags)
+    resolveType(android.content.ContentResolver resolver)
+    resolveType(android.content.Context context)
+    resolveTypeIfNeeded(android.content.ContentResolver resolver)
+    setAction(java.lang.String action)
+    setClass(android.content.Context packageContext, java.lang.Class<?> cls)
+    setClassName(android.content.Context packageContext, java.lang.String className)
+    setClassName(java.lang.String packageName, java.lang.String className)
+    setClipData(android.content.ClipData clip)
+    setComponent(android.content.ComponentName component)
+    setData(android.net.Uri data)
+    setDataAndNormalize(android.net.Uri data)
+    setDataAndType(android.net.Uri data, java.lang.String type)
+    setDataAndTypeAndNormalize(android.net.Uri data, java.lang.String type)
+    setExtrasClassLoader(java.lang.ClassLoader loader)
+    setFlags(int flags)
+    setIdentifier(java.lang.String identifier)
+    setPackage(java.lang.String packageName)
+    setSelector(android.content.Intent selector)
+    setSourceBounds(android.graphics.Rect r)
+    setType(java.lang.String type)
+    setTypeAndNormalize(java.lang.String type)
+    toUri(int flags)
+    writeToParcel(android.os.Parcel out, int flags)
+  class Intent.FilterComparison
+    equals(java.lang.Object obj)
+    #ctor(android.content.Intent intent)
+  class Intent.ShortcutIconResource
+    fromContext(android.content.Context context, int resourceId)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class IntentFilter
+    addAction(java.lang.String action)
+    addCategory(java.lang.String category)
+    addDataAuthority(java.lang.String host, java.lang.String port)
+    addDataPath(java.lang.String path, int type)
+    addDataScheme(java.lang.String scheme)
+    addDataSchemeSpecificPart(java.lang.String ssp, int type)
+    addDataType(java.lang.String type)
+    asPredicateWithTypeResolution(android.content.ContentResolver resolver)
+    create(java.lang.String action, java.lang.String dataType)
+    dump(android.util.Printer du, java.lang.String prefix)
+    getAction(int index)
+    getCategory(int index)
+    getDataAuthority(int index)
+    getDataPath(int index)
+    getDataScheme(int index)
+    getDataSchemeSpecificPart(int index)
+    getDataType(int index)
+    hasAction(java.lang.String action)
+    hasCategory(java.lang.String category)
+    hasDataAuthority(android.net.Uri data)
+    hasDataPath(java.lang.String data)
+    hasDataScheme(java.lang.String scheme)
+    hasDataSchemeSpecificPart(java.lang.String data)
+    hasDataType(java.lang.String type)
+    #ctor(android.content.IntentFilter o)
+    #ctor(java.lang.String action)
+    #ctor(java.lang.String action, java.lang.String dataType)
+    match(android.content.ContentResolver resolver, android.content.Intent intent, boolean resolve, java.lang.String logTag)
+    match(java.lang.String action, java.lang.String type, java.lang.String scheme, android.net.Uri data, java.util.Set<java.lang.String> categories, java.lang.String logTag)
+    matchAction(java.lang.String action)
+    matchCategories(java.util.Set<java.lang.String> categories)
+    matchData(java.lang.String type, java.lang.String scheme, android.net.Uri data)
+    matchDataAuthority(android.net.Uri data)
+    readFromXml(org.xmlpull.v1.XmlPullParser parser)
+    setPriority(int priority)
+    writeToParcel(android.os.Parcel dest, int flags)
+    writeToXml(org.xmlpull.v1.XmlSerializer serializer)
+  class IntentFilter.AuthorityEntry
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String host, java.lang.String port)
+    match(android.net.Uri data)
+  class IntentFilter.MalformedMimeTypeException
+    #ctor(java.lang.String name)
+  class IntentSender
+    equals(java.lang.Object otherObj)
+    readIntentSenderOrNullFromParcel(android.os.Parcel in)
+    sendIntent(android.content.Context context, int code, android.content.Intent intent, android.content.IntentSender.OnFinished onFinished, android.os.Handler handler)
+    sendIntent(android.content.Context context, int code, android.content.Intent intent, android.content.IntentSender.OnFinished onFinished, android.os.Handler handler, java.lang.String requiredPermission)
+    writeIntentSenderOrNullToParcel(android.content.IntentSender sender, android.os.Parcel out)
+    writeToParcel(android.os.Parcel out, int flags)
+  interface IntentSender.OnFinished
+    onSendFinished(android.content.IntentSender IntentSender, android.content.Intent intent, int resultCode, java.lang.String resultData, android.os.Bundle resultExtras)
+  class IntentSender.SendIntentException
+    #ctor(java.lang.Exception cause)
+    #ctor(java.lang.String name)
+  class Loader<D>
+    dataToString(D data)
+    deliverResult(D data)
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    #ctor(android.content.Context context)
+    registerListener(int id, android.content.Loader.OnLoadCompleteListener<D> listener)
+    registerOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener<D> listener)
+    unregisterListener(android.content.Loader.OnLoadCompleteListener<D> listener)
+    unregisterOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener<D> listener)
+  class Loader.ForceLoadContentObserver
+    onChange(boolean selfChange)
+  interface Loader.OnLoadCanceledListener<D>
+    onLoadCanceled(android.content.Loader<D> loader)
+  interface Loader.OnLoadCompleteListener<D>
+    onLoadComplete(android.content.Loader<D> loader, D data)
+  class LocusId
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String id)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class MutableContextWrapper
+    #ctor(android.content.Context base)
+    setBaseContext(android.content.Context base)
+  class OperationApplicationException
+    #ctor(int numSuccessfulYieldPoints)
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, int numSuccessfulYieldPoints)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class PeriodicSync
+    equals(java.lang.Object o)
+    #ctor(android.accounts.Account account, java.lang.String authority, android.os.Bundle extras, long periodInSeconds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ReceiverCallNotAllowedException
+    #ctor(java.lang.String msg)
+  class RestrictionEntry
+    createBundleArrayEntry(java.lang.String key, android.content.RestrictionEntry[] restrictionEntries)
+    createBundleEntry(java.lang.String key, android.content.RestrictionEntry[] restrictionEntries)
+    equals(java.lang.Object o)
+    #ctor(android.os.Parcel in)
+    #ctor(int type, java.lang.String key)
+    #ctor(java.lang.String key, boolean selectedState)
+    #ctor(java.lang.String key, int selectedInt)
+    #ctor(java.lang.String key, java.lang.String selectedString)
+    #ctor(java.lang.String key, java.lang.String[] selectedStrings)
+    setAllSelectedStrings(java.lang.String[] allSelectedStrings)
+    setChoiceEntries(android.content.Context context, int stringArrayResId)
+    setChoiceEntries(java.lang.String[] choiceEntries)
+    setChoiceValues(android.content.Context context, int stringArrayResId)
+    setChoiceValues(java.lang.String[] choiceValues)
+    setDescription(java.lang.String description)
+    setIntValue(int value)
+    setRestrictions(android.content.RestrictionEntry[] restrictions)
+    setSelectedState(boolean state)
+    setSelectedString(java.lang.String selectedString)
+    setTitle(java.lang.String title)
+    setType(int type)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RestrictionsManager
+    convertRestrictionsToBundle(java.util.List<android.content.RestrictionEntry> entries)
+    getManifestRestrictions(java.lang.String packageName)
+    notifyPermissionResponse(java.lang.String packageName, android.os.PersistableBundle response)
+    requestPermission(java.lang.String requestType, java.lang.String requestId, android.os.PersistableBundle request)
+  class SearchRecentSuggestionsProvider
+    delete(android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs)
+    getType(android.net.Uri uri)
+    insert(android.net.Uri uri, android.content.ContentValues values)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    setupSuggestions(java.lang.String authority, int mode)
+    update(android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  interface ServiceConnection
+    onBindingDied(android.content.ComponentName name)
+    onNullBinding(android.content.ComponentName name)
+    onServiceConnected(android.content.ComponentName name, android.os.IBinder service)
+    onServiceDisconnected(android.content.ComponentName name)
+  interface SharedPreferences
+    contains(java.lang.String key)
+    getBoolean(java.lang.String key, boolean defValue)
+    getFloat(java.lang.String key, float defValue)
+    getInt(java.lang.String key, int defValue)
+    getLong(java.lang.String key, long defValue)
+    getString(java.lang.String key, java.lang.String defValue)
+    getStringSet(java.lang.String key, java.util.Set<java.lang.String> defValues)
+    registerOnSharedPreferenceChangeListener(android.content.SharedPreferences.OnSharedPreferenceChangeListener listener)
+    unregisterOnSharedPreferenceChangeListener(android.content.SharedPreferences.OnSharedPreferenceChangeListener listener)
+  interface SharedPreferences.Editor
+    putBoolean(java.lang.String key, boolean value)
+    putFloat(java.lang.String key, float value)
+    putInt(java.lang.String key, int value)
+    putLong(java.lang.String key, long value)
+    putString(java.lang.String key, java.lang.String value)
+    putStringSet(java.lang.String key, java.util.Set<java.lang.String> values)
+    remove(java.lang.String key)
+  interface SharedPreferences.OnSharedPreferenceChangeListener
+    onSharedPreferenceChanged(android.content.SharedPreferences sharedPreferences, java.lang.String key)
+  class SyncAdapterType
+    equals(java.lang.Object o)
+    newKey(java.lang.String authority, java.lang.String accountType)
+    #ctor(android.os.Parcel source)
+    #ctor(java.lang.String authority, java.lang.String accountType, boolean userVisible, boolean supportsUploading)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SyncContext
+    onFinished(android.content.SyncResult result)
+  class SyncInfo
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class SyncRequest
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class SyncRequest.Builder
+    setDisallowMetered(boolean disallow)
+    setExpedited(boolean expedited)
+    setExtras(android.os.Bundle bundle)
+    setIgnoreBackoff(boolean ignoreBackoff)
+    setIgnoreSettings(boolean ignoreSettings)
+    setManual(boolean isManual)
+    setNoRetry(boolean noRetry)
+    setRequiresCharging(boolean requiresCharging)
+    setScheduleAsExpeditedJob(boolean scheduleAsExpeditedJob)
+    setSyncAdapter(android.accounts.Account account, java.lang.String authority)
+    syncPeriodic(long pollFrequency, long beforeSeconds)
+  class SyncResult
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class SyncStats
+    #ctor(android.os.Parcel in)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface SyncStatusObserver
+    onStatusChanged(int which)
+  class UriMatcher
+    addURI(java.lang.String authority, java.lang.String path, int code)
+    match(android.net.Uri uri)
+    #ctor(int code)
+  class UriPermission
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.content.om
+;---------------------------------------
+  class FabricatedOverlay
+    #ctor(java.lang.String overlayName, java.lang.String targetPackage)
+    setResourceValue(java.lang.String resourceName, android.os.ParcelFileDescriptor value, java.lang.String configuration)
+    setResourceValue(java.lang.String resourceName, int dataType, int value, java.lang.String configuration)
+    setResourceValue(java.lang.String resourceName, int dataType, java.lang.String value, java.lang.String configuration)
+    setTargetOverlayable(java.lang.String targetOverlayable)
+  class OverlayIdentifier
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class OverlayInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class OverlayManager
+    getOverlayInfosForTarget(java.lang.String targetPackageName)
+  class OverlayManagerTransaction
+    #ctor(android.content.om.OverlayManager overlayManager)
+    registerFabricatedOverlay(android.content.om.FabricatedOverlay overlay)
+    unregisterFabricatedOverlay(android.content.om.OverlayIdentifier overlay)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.content.pm
+;---------------------------------------
+  class ActivityInfo
+    #ctor(android.content.pm.ActivityInfo orig)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class ActivityInfo.WindowLayout
+    #ctor(int width, float widthFraction, int height, float heightFraction, int gravity, int minWidth, int minHeight)
+  class ApkChecksum
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationInfo
+    #ctor(android.content.pm.ApplicationInfo orig)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    getCategoryTitle(android.content.Context context, int category)
+    loadDescription(android.content.pm.PackageManager pm)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class ApplicationInfo.DisplayNameComparator
+    #ctor(android.content.pm.PackageManager pm)
+    compare(android.content.pm.ApplicationInfo aa, android.content.pm.ApplicationInfo ab)
+  class Attribution
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Capability
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Capability.Builder
+    #ctor(java.lang.String name)
+  class CapabilityParams
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CapabilityParams.Builder
+    addAlias(java.lang.String alias)
+    #ctor(java.lang.String key, java.lang.String value)
+  class ChangedPackages
+    #ctor(int sequenceNumber, java.util.List<java.lang.String> packageNames)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Checksum
+    #ctor(int type, byte[] value)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ComponentInfo
+    #ctor(android.content.pm.ComponentInfo orig)
+    #ctor(android.os.Parcel source)
+    dumpBack(android.util.Printer pw, java.lang.String prefix)
+    dumpFront(android.util.Printer pw, java.lang.String prefix)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class ConfigurationInfo
+    #ctor(android.content.pm.ConfigurationInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class CrossProfileApps
+    getProfileSwitchingIconDrawable(android.os.UserHandle userHandle)
+    getProfileSwitchingLabel(android.os.UserHandle userHandle)
+    startActivity(android.content.Intent intent, android.os.UserHandle targetUser, android.app.Activity callingActivity)
+    startActivity(android.content.Intent intent, android.os.UserHandle targetUser, android.app.Activity callingActivity, android.os.Bundle options)
+    startMainActivity(android.content.ComponentName component, android.os.UserHandle targetUser)
+    startMainActivity(android.content.ComponentName component, android.os.UserHandle targetUser, android.app.Activity callingActivity, android.os.Bundle options)
+  class FeatureGroupInfo
+    #ctor(android.content.pm.FeatureGroupInfo other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FeatureInfo
+    #ctor(android.content.pm.FeatureInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class InstallSourceInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InstrumentationInfo
+    #ctor(android.content.pm.InstrumentationInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class LabeledIntent
+    #ctor(android.content.Intent origIntent, java.lang.String sourcePackage, int labelRes, int icon)
+    #ctor(android.content.Intent origIntent, java.lang.String sourcePackage, java.lang.CharSequence nonLocalizedLabel, int icon)
+    #ctor(java.lang.String sourcePackage, int labelRes, int icon)
+    #ctor(java.lang.String sourcePackage, java.lang.CharSequence nonLocalizedLabel, int icon)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    readFromParcel(android.os.Parcel in)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class LauncherActivityInfo
+    getBadgedIcon(int density)
+    getIcon(int density)
+  class LauncherApps
+    getActivityList(java.lang.String packageName, android.os.UserHandle user)
+    getApplicationInfo(java.lang.String packageName, int flags, android.os.UserHandle user)
+    getPinItemRequest(android.content.Intent intent)
+    getShortcutBadgedIconDrawable(android.content.pm.ShortcutInfo shortcut, int density)
+    getShortcutConfigActivityIntent(android.content.pm.LauncherActivityInfo info)
+    getShortcutConfigActivityList(java.lang.String packageName, android.os.UserHandle user)
+    getShortcutIconDrawable(android.content.pm.ShortcutInfo shortcut, int density)
+    getShortcutIntent(java.lang.String packageName, java.lang.String shortcutId, android.os.Bundle opts, android.os.UserHandle user)
+    getShortcuts(android.content.pm.LauncherApps.ShortcutQuery query, android.os.UserHandle user)
+    getSuspendedPackageLauncherExtras(java.lang.String packageName, android.os.UserHandle user)
+    isActivityEnabled(android.content.ComponentName component, android.os.UserHandle user)
+    isPackageEnabled(java.lang.String packageName, android.os.UserHandle user)
+    pinShortcuts(java.lang.String packageName, java.util.List<java.lang.String> shortcutIds, android.os.UserHandle user)
+    registerCallback(android.content.pm.LauncherApps.Callback callback)
+    registerCallback(android.content.pm.LauncherApps.Callback callback, android.os.Handler handler)
+    registerPackageInstallerSessionCallback(java.util.concurrent.Executor executor, android.content.pm.PackageInstaller.SessionCallback callback)
+    resolveActivity(android.content.Intent intent, android.os.UserHandle user)
+    shouldHideFromSuggestions(java.lang.String packageName, android.os.UserHandle user)
+    startAppDetailsActivity(android.content.ComponentName component, android.os.UserHandle user, android.graphics.Rect sourceBounds, android.os.Bundle opts)
+    startMainActivity(android.content.ComponentName component, android.os.UserHandle user, android.graphics.Rect sourceBounds, android.os.Bundle opts)
+    startPackageInstallerSessionDetailsActivity(android.content.pm.PackageInstaller.SessionInfo sessionInfo, android.graphics.Rect sourceBounds, android.os.Bundle opts)
+    startShortcut(android.content.pm.ShortcutInfo shortcut, android.graphics.Rect sourceBounds, android.os.Bundle startActivityOptions)
+    startShortcut(java.lang.String packageName, java.lang.String shortcutId, android.graphics.Rect sourceBounds, android.os.Bundle startActivityOptions, android.os.UserHandle user)
+    unregisterCallback(android.content.pm.LauncherApps.Callback callback)
+    unregisterPackageInstallerSessionCallback(android.content.pm.PackageInstaller.SessionCallback callback)
+  class LauncherApps.Callback
+    onPackageAdded(java.lang.String packageName, android.os.UserHandle user)
+    onPackageChanged(java.lang.String packageName, android.os.UserHandle user)
+    onPackageLoadingProgressChanged(java.lang.String packageName, android.os.UserHandle user, float progress)
+    onPackageRemoved(java.lang.String packageName, android.os.UserHandle user)
+    onPackagesAvailable(java.lang.String[] packageNames, android.os.UserHandle user, boolean replacing)
+    onPackagesSuspended(java.lang.String[] packageNames, android.os.UserHandle user)
+    onPackagesSuspended(java.lang.String[] packageNames, android.os.UserHandle user, android.os.Bundle launcherExtras)
+    onPackagesUnavailable(java.lang.String[] packageNames, android.os.UserHandle user, boolean replacing)
+    onPackagesUnsuspended(java.lang.String[] packageNames, android.os.UserHandle user)
+    onShortcutsChanged(java.lang.String packageName, java.util.List<android.content.pm.ShortcutInfo> shortcuts, android.os.UserHandle user)
+  class LauncherApps.PinItemRequest
+    accept(android.os.Bundle options)
+    getAppWidgetProviderInfo(android.content.Context context)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LauncherApps.ShortcutQuery
+    setActivity(android.content.ComponentName activity)
+    setChangedSince(long changedSince)
+    setLocusIds(java.util.List<android.content.LocusId> locusIds)
+    setPackage(java.lang.String packageName)
+    setQueryFlags(int queryFlags)
+    setShortcutIds(java.util.List<java.lang.String> shortcutIds)
+  class ModuleInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class PackageInfo
+    setLongVersionCode(long longVersionCode)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class PackageInstaller
+    abandonSession(int sessionId)
+    checkInstallConstraints(java.util.List<java.lang.String> packageNames, android.content.pm.PackageInstaller.InstallConstraints constraints, java.util.concurrent.Executor executor, java.util.function.Consumer<android.content.pm.PackageInstaller.InstallConstraintsResult> callback)
+    commitSessionAfterInstallConstraintsAreMet(int sessionId, android.content.IntentSender statusReceiver, android.content.pm.PackageInstaller.InstallConstraints constraints, long timeoutMillis)
+    createSession(android.content.pm.PackageInstaller.SessionParams params)
+    getSessionInfo(int sessionId)
+    installExistingPackage(java.lang.String packageName, int installReason, android.content.IntentSender statusReceiver)
+    openSession(int sessionId)
+    registerSessionCallback(android.content.pm.PackageInstaller.SessionCallback callback)
+    registerSessionCallback(android.content.pm.PackageInstaller.SessionCallback callback, android.os.Handler handler)
+    uninstall(android.content.pm.VersionedPackage versionedPackage, android.content.IntentSender statusReceiver)
+    uninstall(android.content.pm.VersionedPackage versionedPackage, int flags, android.content.IntentSender statusReceiver)
+    uninstall(java.lang.String packageName, android.content.IntentSender statusReceiver)
+    uninstallExistingPackage(java.lang.String packageName, android.content.IntentSender statusReceiver)
+    unregisterSessionCallback(android.content.pm.PackageInstaller.SessionCallback callback)
+    updateSessionAppIcon(int sessionId, android.graphics.Bitmap appIcon)
+    updateSessionAppLabel(int sessionId, java.lang.CharSequence appLabel)
+    waitForInstallConstraints(java.util.List<java.lang.String> packageNames, android.content.pm.PackageInstaller.InstallConstraints constraints, android.content.IntentSender callback, long timeoutMillis)
+  class PackageInstaller.InstallConstraints
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageInstaller.InstallConstraintsResult
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageInstaller.PreapprovalDetails
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageInstaller.PreapprovalDetails.Builder
+    setIcon(android.graphics.Bitmap value)
+    setLabel(java.lang.CharSequence value)
+    setLocale(android.icu.util.ULocale value)
+    setPackageName(java.lang.String value)
+  class PackageInstaller.Session
+    addChildSessionId(int sessionId)
+    commit(android.content.IntentSender statusReceiver)
+    fsync(java.io.OutputStream out)
+    openRead(java.lang.String name)
+    openWrite(java.lang.String name, long offsetBytes, long lengthBytes)
+    removeChildSessionId(int sessionId)
+    removeSplit(java.lang.String splitName)
+    requestChecksums(java.lang.String name, int required, java.util.List<java.security.cert.Certificate> trustedInstallers, java.util.concurrent.Executor executor, android.content.pm.PackageManager.OnChecksumsReadyListener onChecksumsReadyListener)
+    requestUserPreapproval(android.content.pm.PackageInstaller.PreapprovalDetails details, android.content.IntentSender statusReceiver)
+    setAppMetadata(android.os.PersistableBundle data)
+    setChecksums(java.lang.String name, java.util.List<android.content.pm.Checksum> checksums, byte[] signature)
+    setStagingProgress(float progress)
+    transfer(java.lang.String packageName)
+  class PackageInstaller.SessionCallback
+    onActiveChanged(int sessionId, boolean active)
+    onBadgingChanged(int sessionId)
+    onCreated(int sessionId)
+    onFinished(int sessionId, boolean success)
+    onProgressChanged(int sessionId, float progress)
+  class PackageInstaller.SessionInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageInstaller.SessionParams
+    #ctor(int mode)
+    setAppIcon(android.graphics.Bitmap appIcon)
+    setAppLabel(java.lang.CharSequence appLabel)
+    setAppPackageName(java.lang.String appPackageName)
+    setAutoRevokePermissionsMode(boolean shouldAutoRevoke)
+    setInstallerPackageName(java.lang.String installerPackageName)
+    setInstallLocation(int installLocation)
+    setInstallReason(int installReason)
+    setInstallScenario(int installScenario)
+    setOriginatingUid(int originatingUid)
+    setOriginatingUri(android.net.Uri originatingUri)
+    setPackageSource(int packageSource)
+    setReferrerUri(android.net.Uri referrerUri)
+    setRequestUpdateOwnership(boolean enable)
+    setRequireUserAction(int requireUserAction)
+    setSize(long sizeBytes)
+    setWhitelistedRestrictedPermissions(java.util.Set<java.lang.String> permissions)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageItemInfo
+    dumpBack(android.util.Printer pw, java.lang.String prefix)
+    dumpFront(android.util.Printer pw, java.lang.String prefix)
+    loadBanner(android.content.pm.PackageManager pm)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    loadLogo(android.content.pm.PackageManager pm)
+    loadUnbadgedIcon(android.content.pm.PackageManager pm)
+    loadXmlMetaData(android.content.pm.PackageManager pm, java.lang.String name)
+    #ctor(android.content.pm.PackageItemInfo orig)
+    #ctor(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class PackageItemInfo.DisplayNameComparator
+    compare(android.content.pm.PackageItemInfo aa, android.content.pm.PackageItemInfo ab)
+    #ctor(android.content.pm.PackageManager pm)
+  class PackageManager
+    addPackageToPreferred(java.lang.String packageName)
+    addPermission(android.content.pm.PermissionInfo info)
+    addPermissionAsync(android.content.pm.PermissionInfo info)
+    addPreferredActivity(android.content.IntentFilter filter, int match, android.content.ComponentName[] set, android.content.ComponentName activity)
+    addWhitelistedRestrictedPermission(java.lang.String packageName, java.lang.String permName, int whitelistFlags)
+    canonicalToCurrentPackageNames(java.lang.String[] packageNames)
+    canPackageQuery(java.lang.String sourcePackageName, java.lang.String targetPackageName)
+    canPackageQuery(java.lang.String sourcePackageName, java.lang.String[] targetPackageNames)
+    checkPermission(java.lang.String permName, java.lang.String packageName)
+    checkSignatures(int uid1, int uid2)
+    checkSignatures(java.lang.String packageName1, java.lang.String packageName2)
+    clearPackagePreferredActivities(java.lang.String packageName)
+    currentToCanonicalPackageNames(java.lang.String[] packageNames)
+    extendVerificationTimeout(int id, int verificationCodeAtTimeout, long millisecondsToDelay)
+    getActivityBanner(android.content.ComponentName activityName)
+    getActivityBanner(android.content.Intent intent)
+    getActivityIcon(android.content.ComponentName activityName)
+    getActivityIcon(android.content.Intent intent)
+    getActivityInfo(android.content.ComponentName component, android.content.pm.PackageManager.ComponentInfoFlags flags)
+    getActivityInfo(android.content.ComponentName component, int flags)
+    getActivityLogo(android.content.ComponentName activityName)
+    getActivityLogo(android.content.Intent intent)
+    getAllPermissionGroups(int flags)
+    getApplicationBanner(android.content.pm.ApplicationInfo info)
+    getApplicationBanner(java.lang.String packageName)
+    getApplicationEnabledSetting(java.lang.String packageName)
+    getApplicationIcon(android.content.pm.ApplicationInfo info)
+    getApplicationIcon(java.lang.String packageName)
+    getApplicationInfo(java.lang.String packageName, android.content.pm.PackageManager.ApplicationInfoFlags flags)
+    getApplicationInfo(java.lang.String packageName, int flags)
+    getApplicationLabel(android.content.pm.ApplicationInfo info)
+    getApplicationLogo(android.content.pm.ApplicationInfo info)
+    getApplicationLogo(java.lang.String packageName)
+    getChangedPackages(int sequenceNumber)
+    getComponentEnabledSetting(android.content.ComponentName componentName)
+    getDrawable(java.lang.String packageName, int resid, android.content.pm.ApplicationInfo appInfo)
+    getGroupOfPlatformPermission(java.lang.String permissionName, java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.String> callback)
+    getInstalledApplications(android.content.pm.PackageManager.ApplicationInfoFlags flags)
+    getInstalledApplications(int flags)
+    getInstalledModules(int flags)
+    getInstalledPackages(android.content.pm.PackageManager.PackageInfoFlags flags)
+    getInstalledPackages(int flags)
+    getInstallerPackageName(java.lang.String packageName)
+    getInstallSourceInfo(java.lang.String packageName)
+    getInstrumentationInfo(android.content.ComponentName className, int flags)
+    getLaunchIntentForPackage(java.lang.String packageName)
+    getLaunchIntentSenderForPackage(java.lang.String packageName)
+    getLeanbackLaunchIntentForPackage(java.lang.String packageName)
+    getMimeGroup(java.lang.String mimeGroup)
+    getModuleInfo(java.lang.String packageName, int flags)
+    getNameForUid(int uid)
+    getPackageArchiveInfo(java.lang.String archiveFilePath, android.content.pm.PackageManager.PackageInfoFlags flags)
+    getPackageArchiveInfo(java.lang.String archiveFilePath, int flags)
+    getPackageGids(java.lang.String packageName)
+    getPackageGids(java.lang.String packageName, android.content.pm.PackageManager.PackageInfoFlags flags)
+    getPackageGids(java.lang.String packageName, int flags)
+    getPackageInfo(android.content.pm.VersionedPackage versionedPackage, android.content.pm.PackageManager.PackageInfoFlags flags)
+    getPackageInfo(android.content.pm.VersionedPackage versionedPackage, int flags)
+    getPackageInfo(java.lang.String packageName, android.content.pm.PackageManager.PackageInfoFlags flags)
+    getPackageInfo(java.lang.String packageName, int flags)
+    getPackagesForUid(int uid)
+    getPackagesHoldingPermissions(java.lang.String[] permissions, android.content.pm.PackageManager.PackageInfoFlags flags)
+    getPackagesHoldingPermissions(java.lang.String[] permissions, int flags)
+    getPackageUid(java.lang.String packageName, android.content.pm.PackageManager.PackageInfoFlags flags)
+    getPackageUid(java.lang.String packageName, int flags)
+    getPermissionGroupInfo(java.lang.String groupName, int flags)
+    getPermissionInfo(java.lang.String permName, int flags)
+    getPlatformPermissionsForGroup(java.lang.String permissionGroupName, java.util.concurrent.Executor executor, java.util.function.Consumer<java.util.List<java.lang.String>> callback)
+    getPreferredActivities(java.util.List<android.content.IntentFilter> outFilters, java.util.List<android.content.ComponentName> outActivities, java.lang.String packageName)
+    getPreferredPackages(int flags)
+    getProperty(java.lang.String propertyName, android.content.ComponentName component)
+    getProperty(java.lang.String propertyName, java.lang.String packageName)
+    getProviderInfo(android.content.ComponentName component, android.content.pm.PackageManager.ComponentInfoFlags flags)
+    getProviderInfo(android.content.ComponentName component, int flags)
+    getReceiverInfo(android.content.ComponentName component, android.content.pm.PackageManager.ComponentInfoFlags flags)
+    getReceiverInfo(android.content.ComponentName component, int flags)
+    getResourcesForActivity(android.content.ComponentName activityName)
+    getResourcesForApplication(android.content.pm.ApplicationInfo app)
+    getResourcesForApplication(android.content.pm.ApplicationInfo app, android.content.res.Configuration configuration)
+    getResourcesForApplication(java.lang.String packageName)
+    getServiceInfo(android.content.ComponentName component, android.content.pm.PackageManager.ComponentInfoFlags flags)
+    getServiceInfo(android.content.ComponentName component, int flags)
+    getSharedLibraries(android.content.pm.PackageManager.PackageInfoFlags flags)
+    getSharedLibraries(int flags)
+    getSyntheticAppDetailsActivityEnabled(java.lang.String packageName)
+    getTargetSdkVersion(java.lang.String packageName)
+    getText(java.lang.String packageName, int resid, android.content.pm.ApplicationInfo appInfo)
+    getUserBadgedDrawableForDensity(android.graphics.drawable.Drawable drawable, android.os.UserHandle user, android.graphics.Rect badgeLocation, int badgeDensity)
+    getUserBadgedIcon(android.graphics.drawable.Drawable drawable, android.os.UserHandle user)
+    getUserBadgedLabel(java.lang.CharSequence label, android.os.UserHandle user)
+    getWhitelistedRestrictedPermissions(java.lang.String packageName, int whitelistFlag)
+    getXml(java.lang.String packageName, int resid, android.content.pm.ApplicationInfo appInfo)
+    hasSigningCertificate(int uid, byte[] certificate, int type)
+    hasSigningCertificate(java.lang.String packageName, byte[] certificate, int type)
+    hasSystemFeature(java.lang.String featureName)
+    hasSystemFeature(java.lang.String featureName, int version)
+    isAutoRevokeWhitelisted(java.lang.String packageName)
+    isDefaultApplicationIcon(android.graphics.drawable.Drawable drawable)
+    isInstantApp(java.lang.String packageName)
+    isPackageSuspended(java.lang.String packageName)
+    isPermissionRevokedByPolicy(java.lang.String permName, java.lang.String packageName)
+    queryActivityProperty(java.lang.String propertyName)
+    queryApplicationProperty(java.lang.String propertyName)
+    queryBroadcastReceivers(android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    queryBroadcastReceivers(android.content.Intent intent, int flags)
+    queryContentProviders(java.lang.String processName, int uid, android.content.pm.PackageManager.ComponentInfoFlags flags)
+    queryContentProviders(java.lang.String processName, int uid, int flags)
+    queryInstrumentation(java.lang.String targetPackage, int flags)
+    queryIntentActivities(android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    queryIntentActivities(android.content.Intent intent, int flags)
+    queryIntentActivityOptions(android.content.ComponentName caller, android.content.Intent[] specifics, android.content.Intent intent, int flags)
+    queryIntentActivityOptions(android.content.ComponentName caller, java.util.List<android.content.Intent> specifics, android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    queryIntentContentProviders(android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    queryIntentContentProviders(android.content.Intent intent, int flags)
+    queryIntentServices(android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    queryIntentServices(android.content.Intent intent, int flags)
+    queryPermissionsByGroup(java.lang.String permissionGroup, int flags)
+    queryProviderProperty(java.lang.String propertyName)
+    queryReceiverProperty(java.lang.String propertyName)
+    queryServiceProperty(java.lang.String propertyName)
+    relinquishUpdateOwnership(java.lang.String targetPackage)
+    removePackageFromPreferred(java.lang.String packageName)
+    removePermission(java.lang.String permName)
+    removeWhitelistedRestrictedPermission(java.lang.String packageName, java.lang.String permName, int whitelistFlags)
+    requestChecksums(java.lang.String packageName, boolean includeSplits, int required, java.util.List<java.security.cert.Certificate> trustedInstallers, android.content.pm.PackageManager.OnChecksumsReadyListener onChecksumsReadyListener)
+    resolveActivity(android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    resolveActivity(android.content.Intent intent, int flags)
+    resolveContentProvider(java.lang.String authority, android.content.pm.PackageManager.ComponentInfoFlags flags)
+    resolveContentProvider(java.lang.String authority, int flags)
+    resolveService(android.content.Intent intent, android.content.pm.PackageManager.ResolveInfoFlags flags)
+    resolveService(android.content.Intent intent, int flags)
+    setApplicationCategoryHint(java.lang.String packageName, int categoryHint)
+    setApplicationEnabledSetting(java.lang.String packageName, int newState, int flags)
+    setAutoRevokeWhitelisted(java.lang.String packageName, boolean whitelisted)
+    setComponentEnabledSetting(android.content.ComponentName componentName, int newState, int flags)
+    setComponentEnabledSettings(java.util.List<android.content.pm.PackageManager.ComponentEnabledSetting> settings)
+    setInstallerPackageName(java.lang.String targetPackage, java.lang.String installerPackageName)
+    setMimeGroup(java.lang.String mimeGroup, java.util.Set<java.lang.String> mimeTypes)
+    updateInstantAppCookie(byte[] cookie)
+    verifyPendingInstall(int id, int verificationCode)
+  class PackageManager.ApplicationInfoFlags
+    of(long value)
+  class PackageManager.ComponentEnabledSetting
+    #ctor(android.content.ComponentName componentName, int newState, int flags)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageManager.ComponentInfoFlags
+    of(long value)
+  class PackageManager.NameNotFoundException
+    #ctor(java.lang.String name)
+  interface PackageManager.OnChecksumsReadyListener
+    onChecksumsReady(java.util.List<android.content.pm.ApkChecksum> checksums)
+  class PackageManager.PackageInfoFlags
+    of(long value)
+  class PackageManager.Property
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PackageManager.ResolveInfoFlags
+    of(long value)
+  class PackageStats
+    equals(java.lang.Object obj)
+    #ctor(android.content.pm.PackageStats pStats)
+    #ctor(android.os.Parcel source)
+    #ctor(java.lang.String pkgName)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class PathPermission
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String pattern, int type, java.lang.String readPermission, java.lang.String writePermission)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PermissionGroupInfo
+    loadDescription(android.content.pm.PackageManager pm)
+    #ctor(android.content.pm.PermissionGroupInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class PermissionInfo
+    loadDescription(android.content.pm.PackageManager pm)
+    #ctor(android.content.pm.PermissionInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class ProviderInfo
+    dump(android.util.Printer pw, java.lang.String prefix)
+    #ctor(android.content.pm.ProviderInfo orig)
+    writeToParcel(android.os.Parcel out, int parcelableFlags)
+  class ResolveInfo
+    dump(android.util.Printer pw, java.lang.String prefix)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    #ctor(android.content.pm.ResolveInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class ResolveInfo.DisplayNameComparator
+    compare(android.content.pm.ResolveInfo a, android.content.pm.ResolveInfo b)
+    #ctor(android.content.pm.PackageManager pm)
+  class ServiceInfo
+    dump(android.util.Printer pw, java.lang.String prefix)
+    #ctor(android.content.pm.ServiceInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class SharedLibraryInfo
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ShortcutInfo
+    createFromGenericDocument(android.content.Context context, android.app.appsearch.GenericDocument document)
+    getCapabilityParams(android.content.pm.Capability capability)
+    isExcludedFromSurfaces(int surface)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ShortcutInfo.Builder
+    addCapabilityBinding(android.content.pm.Capability capability, android.content.pm.CapabilityParams capabilityParams)
+    setActivity(android.content.ComponentName activity)
+    setCategories(java.util.Set<java.lang.String> categories)
+    setDisabledMessage(java.lang.CharSequence disabledMessage)
+    setExcludedFromSurfaces(int surfaces)
+    setExtras(android.os.PersistableBundle extras)
+    setIcon(android.graphics.drawable.Icon icon)
+    setIntent(android.content.Intent intent)
+    setIntents(android.content.Intent[] intents)
+    setLocusId(android.content.LocusId locusId)
+    setLongLabel(java.lang.CharSequence longLabel)
+    setLongLived(boolean longLived)
+    setPerson(android.app.Person person)
+    setPersons(android.app.Person[] persons)
+    setRank(int rank)
+    setShortLabel(java.lang.CharSequence shortLabel)
+    setStartingTheme(int themeResId)
+    #ctor(android.content.Context context, java.lang.String id)
+  class ShortcutManager
+    addDynamicShortcuts(java.util.List<android.content.pm.ShortcutInfo> shortcutInfoList)
+    createShortcutResultIntent(android.content.pm.ShortcutInfo shortcut)
+    disableShortcuts(java.util.List<java.lang.String> shortcutIds)
+    disableShortcuts(java.util.List<java.lang.String> shortcutIds, java.lang.CharSequence disabledMessage)
+    enableShortcuts(java.util.List<java.lang.String> shortcutIds)
+    getShortcuts(int matchFlags)
+    pushDynamicShortcut(android.content.pm.ShortcutInfo shortcut)
+    removeDynamicShortcuts(java.util.List<java.lang.String> shortcutIds)
+    removeLongLivedShortcuts(java.util.List<java.lang.String> shortcutIds)
+    reportShortcutUsed(java.lang.String shortcutId)
+    requestPinShortcut(android.content.pm.ShortcutInfo shortcut, android.content.IntentSender resultIntent)
+    setDynamicShortcuts(java.util.List<android.content.pm.ShortcutInfo> shortcutInfoList)
+    updateShortcuts(java.util.List<android.content.pm.ShortcutInfo> shortcutInfoList)
+  class Signature
+    equals(java.lang.Object obj)
+    #ctor(byte[] signature)
+    #ctor(java.lang.String text)
+    toChars(char[] existingArray, int[] outLen)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class SigningInfo
+    #ctor(android.content.pm.SigningInfo orig)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class UserProperties
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class VersionedPackage
+    equals(java.lang.Object o)
+    #ctor(java.lang.String packageName, int versionCode)
+    #ctor(java.lang.String packageName, long versionCode)
+    writeToParcel(android.os.Parcel parcel, int flags)
+
+package android.content.pm.verify.domain
+;---------------------------------------
+  class DomainVerificationManager
+    getDomainVerificationUserState(java.lang.String packageName)
+  class DomainVerificationUserState
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.content.res
+;---------------------------------------
+  class AssetFileDescriptor
+    #ctor(android.os.ParcelFileDescriptor fd, long startOffset, long length)
+    #ctor(android.os.ParcelFileDescriptor fd, long startOffset, long length, android.os.Bundle extras)
+    writeToParcel(android.os.Parcel out, int flags)
+  class AssetFileDescriptor.AutoCloseInputStream
+    #ctor(android.content.res.AssetFileDescriptor fd)
+    mark(int readlimit)
+    read(byte[] buffer)
+    read(byte[] buffer, int offset, int count)
+    skip(long count)
+  class AssetFileDescriptor.AutoCloseOutputStream
+    #ctor(android.content.res.AssetFileDescriptor fd)
+    write(byte[] buffer)
+    write(byte[] buffer, int offset, int count)
+    write(int oneByte)
+  class AssetManager
+    list(java.lang.String path)
+    open(java.lang.String fileName)
+    open(java.lang.String fileName, int accessMode)
+    openFd(java.lang.String fileName)
+    openNonAssetFd(int cookie, java.lang.String fileName)
+    openNonAssetFd(java.lang.String fileName)
+    openXmlResourceParser(int cookie, java.lang.String fileName)
+    openXmlResourceParser(java.lang.String fileName)
+  class AssetManager.AssetInputStream
+    mark(int readlimit)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class ColorStateList
+    #ctor(int[][] states, int[] colors)
+    createFromXml(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser)
+    createFromXml(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.content.res.Resources.Theme theme)
+    getColorForState(int[] stateSet, int defaultColor)
+    valueOf(int color)
+    withAlpha(int alpha)
+    withLStar(float lStar)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Configuration
+    compareTo(android.content.res.Configuration that)
+    #ctor(android.content.res.Configuration o)
+    diff(android.content.res.Configuration delta)
+    equals(android.content.res.Configuration that)
+    equals(java.lang.Object that)
+    generateDelta(android.content.res.Configuration base, android.content.res.Configuration change)
+    isLayoutSizeAtLeast(int size)
+    needNewResources(int configChanges, int interestingChanges)
+    readFromParcel(android.os.Parcel source)
+    setLayoutDirection(java.util.Locale loc)
+    setLocale(java.util.Locale loc)
+    setLocales(android.os.LocaleList locales)
+    setTo(android.content.res.Configuration o)
+    updateFrom(android.content.res.Configuration delta)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ObbInfo
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class ObbScanner
+    getObbInfo(java.lang.String filePath)
+  class Resources
+    addLoaders(android.content.res.loader.ResourcesLoader... loaders)
+    getAnimation(int id)
+    getAttributeSetSourceResId(android.util.AttributeSet set)
+    getBoolean(int id)
+    getColor(int id)
+    getColor(int id, android.content.res.Resources.Theme theme)
+    getColorStateList(int id)
+    getColorStateList(int id, android.content.res.Resources.Theme theme)
+    getDimension(int id)
+    getDimensionPixelOffset(int id)
+    getDimensionPixelSize(int id)
+    getDrawable(int id)
+    getDrawable(int id, android.content.res.Resources.Theme theme)
+    getDrawableForDensity(int id, int density)
+    getDrawableForDensity(int id, int density, android.content.res.Resources.Theme theme)
+    getFloat(int id)
+    getFont(int id)
+    getFraction(int id, int base, int pbase)
+    getIdentifier(java.lang.String name, java.lang.String defType, java.lang.String defPackage)
+    getIntArray(int id)
+    getInteger(int id)
+    getLayout(int id)
+    getMovie(int id)
+    getQuantityString(int id, int quantity)
+    getQuantityString(int id, int quantity, java.lang.Object... formatArgs)
+    getQuantityText(int id, int quantity)
+    getResourceEntryName(int resid)
+    getResourceName(int resid)
+    getResourcePackageName(int resid)
+    getResourceTypeName(int resid)
+    getString(int id)
+    getString(int id, java.lang.Object... formatArgs)
+    getStringArray(int id)
+    getText(int id)
+    getText(int id, java.lang.CharSequence def)
+    getTextArray(int id)
+    getValue(int id, android.util.TypedValue outValue, boolean resolveRefs)
+    getValue(java.lang.String name, android.util.TypedValue outValue, boolean resolveRefs)
+    getValueForDensity(int id, int density, android.util.TypedValue outValue, boolean resolveRefs)
+    getXml(int id)
+    obtainAttributes(android.util.AttributeSet set, int[] attrs)
+    obtainTypedArray(int id)
+    openRawResource(int id)
+    openRawResource(int id, android.util.TypedValue value)
+    openRawResourceFd(int id)
+    parseBundleExtra(java.lang.String tagName, android.util.AttributeSet attrs, android.os.Bundle outBundle)
+    parseBundleExtras(android.content.res.XmlResourceParser parser, android.os.Bundle outBundle)
+    removeLoaders(android.content.res.loader.ResourcesLoader... loaders)
+    #ctor(android.content.res.AssetManager assets, android.util.DisplayMetrics metrics, android.content.res.Configuration config)
+    updateConfiguration(android.content.res.Configuration config, android.util.DisplayMetrics metrics)
+  class Resources.NotFoundException
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.Exception cause)
+  class Resources.Theme
+    applyStyle(int resId, boolean force)
+    dump(int priority, java.lang.String tag, java.lang.String prefix)
+    equals(java.lang.Object o)
+    getAttributeResolutionStack(int defStyleAttr, int defStyleRes, int explicitStyleRes)
+    getDrawable(int id)
+    getExplicitStyle(android.util.AttributeSet set)
+    obtainStyledAttributes(android.util.AttributeSet set, int[] attrs, int defStyleAttr, int defStyleRes)
+    obtainStyledAttributes(int resId, int[] attrs)
+    obtainStyledAttributes(int[] attrs)
+    resolveAttribute(int resid, android.util.TypedValue outValue, boolean resolveRefs)
+    setTo(android.content.res.Resources.Theme other)
+  class TypedArray
+    getBoolean(int index, boolean defValue)
+    getColor(int index, int defValue)
+    getColorStateList(int index)
+    getDimension(int index, float defValue)
+    getDimensionPixelOffset(int index, int defValue)
+    getDimensionPixelSize(int index, int defValue)
+    getDrawable(int index)
+    getFloat(int index, float defValue)
+    getFont(int index)
+    getFraction(int index, int base, int pbase, float defValue)
+    getIndex(int at)
+    getInt(int index, int defValue)
+    getInteger(int index, int defValue)
+    getLayoutDimension(int index, int defValue)
+    getLayoutDimension(int index, java.lang.String name)
+    getNonResourceString(int index)
+    getResourceId(int index, int defValue)
+    getSourceResourceId(int index, int defaultValue)
+    getString(int index)
+    getText(int index)
+    getTextArray(int index)
+    getType(int index)
+    getValue(int index, android.util.TypedValue outValue)
+    hasValue(int index)
+    hasValueOrEmpty(int index)
+    peekValue(int index)
+  interface XmlResourceParser
+    getAttributeNamespace(int index)
+
+package android.content.res.loader
+;---------------------------------------
+  interface AssetsProvider
+    loadAssetFd(java.lang.String path, int accessMode)
+  class ResourcesLoader
+    addProvider(android.content.res.loader.ResourcesProvider resourcesProvider)
+    removeProvider(android.content.res.loader.ResourcesProvider resourcesProvider)
+    setProviders(java.util.List<android.content.res.loader.ResourcesProvider> resourcesProviders)
+  class ResourcesProvider
+    empty(android.content.res.loader.AssetsProvider assetsProvider)
+    loadFromApk(android.os.ParcelFileDescriptor fileDescriptor)
+    loadFromApk(android.os.ParcelFileDescriptor fileDescriptor, android.content.res.loader.AssetsProvider assetsProvider)
+    loadFromDirectory(java.lang.String path, android.content.res.loader.AssetsProvider assetsProvider)
+    loadFromSplit(android.content.Context context, java.lang.String splitName)
+    loadFromTable(android.os.ParcelFileDescriptor fileDescriptor, android.content.res.loader.AssetsProvider assetsProvider)
+    loadOverlay(android.content.om.OverlayInfo overlayInfo)
+
+package android.credentials
+;---------------------------------------
+  class ClearCredentialStateException
+    #ctor(java.lang.String type)
+    #ctor(java.lang.String type, java.lang.String message)
+    #ctor(java.lang.String type, java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String type, java.lang.Throwable cause)
+  class ClearCredentialStateRequest
+    #ctor(android.os.Bundle data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CreateCredentialException
+    #ctor(java.lang.String type)
+    #ctor(java.lang.String type, java.lang.String message)
+    #ctor(java.lang.String type, java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String type, java.lang.Throwable cause)
+  class CreateCredentialRequest
+    #ctor(java.lang.String type, android.os.Bundle credentialData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CreateCredentialResponse
+    #ctor(android.os.Bundle data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Credential
+    #ctor(java.lang.String type, android.os.Bundle data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CredentialManager
+    clearCredentialState(android.credentials.ClearCredentialStateRequest request, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.credentials.ClearCredentialStateException> callback)
+    createCredential(android.credentials.CreateCredentialRequest request, android.app.Activity activity, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.credentials.CreateCredentialResponse,android.credentials.CreateCredentialException> callback)
+    getCredential(android.credentials.GetCredentialRequest request, android.app.Activity activity, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.credentials.GetCredentialResponse,android.credentials.GetCredentialException> callback)
+  class GetCredentialException
+    #ctor(java.lang.String type)
+    #ctor(java.lang.String type, java.lang.String message)
+    #ctor(java.lang.String type, java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String type, java.lang.Throwable cause)
+  class GetCredentialOption
+    #ctor(java.lang.String type, android.os.Bundle credentialRetrievalData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GetCredentialRequest
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GetCredentialRequest.Builder
+    addGetCredentialOption(android.credentials.GetCredentialOption getCredentialOption)
+    #ctor(android.os.Bundle data)
+    setGetCredentialOptions(java.util.List<android.credentials.GetCredentialOption> getCredentialOptions)
+  class GetCredentialResponse
+    #ctor(android.credentials.Credential credential)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.database
+;---------------------------------------
+  class AbstractCursor
+    copyStringToBuffer(int columnIndex, android.database.CharArrayBuffer buffer)
+    fillWindow(int position, android.database.CursorWindow window)
+    getBlob(int column)
+    getColumnIndex(java.lang.String columnName)
+    getColumnIndexOrThrow(java.lang.String columnName)
+    getColumnName(int columnIndex)
+    getDouble(int column)
+    getFloat(int column)
+    getInt(int column)
+    getLong(int column)
+    getShort(int column)
+    getString(int column)
+    getType(int column)
+    getUpdatedField(int columnIndex)
+    isFieldUpdated(int columnIndex)
+    isNull(int column)
+    move(int offset)
+    moveToPosition(int position)
+    onChange(boolean selfChange)
+    onMove(int oldPosition, int newPosition)
+    registerContentObserver(android.database.ContentObserver observer)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    respond(android.os.Bundle extras)
+    setExtras(android.os.Bundle extras)
+    setNotificationUri(android.content.ContentResolver cr, android.net.Uri notifyUri)
+    setNotificationUris(android.content.ContentResolver cr, java.util.List<android.net.Uri> notifyUris)
+    unregisterContentObserver(android.database.ContentObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class AbstractCursor.SelfContentObserver
+    #ctor(android.database.AbstractCursor cursor)
+    onChange(boolean selfChange)
+  class AbstractWindowedCursor
+    copyStringToBuffer(int columnIndex, android.database.CharArrayBuffer buffer)
+    getBlob(int columnIndex)
+    getDouble(int columnIndex)
+    getFloat(int columnIndex)
+    getInt(int columnIndex)
+    getLong(int columnIndex)
+    getShort(int columnIndex)
+    getString(int columnIndex)
+    getType(int columnIndex)
+    isBlob(int columnIndex)
+    isFloat(int columnIndex)
+    isLong(int columnIndex)
+    isNull(int columnIndex)
+    isString(int columnIndex)
+    setWindow(android.database.CursorWindow window)
+  class CharArrayBuffer
+    #ctor(char[] buf)
+    #ctor(int size)
+  class ContentObservable
+    dispatchChange(boolean selfChange)
+    dispatchChange(boolean selfChange, android.net.Uri uri)
+    notifyChange(boolean selfChange)
+    registerObserver(android.database.ContentObserver observer)
+  class ContentObserver
+    #ctor(android.os.Handler handler)
+    dispatchChange(boolean selfChange)
+    dispatchChange(boolean selfChange, android.net.Uri uri)
+    dispatchChange(boolean selfChange, android.net.Uri uri, int flags)
+    dispatchChange(boolean selfChange, java.util.Collection<android.net.Uri> uris, int flags)
+    onChange(boolean selfChange)
+    onChange(boolean selfChange, android.net.Uri uri)
+    onChange(boolean selfChange, android.net.Uri uri, int flags)
+    onChange(boolean selfChange, java.util.Collection<android.net.Uri> uris, int flags)
+  interface CrossProcessCursor
+    fillWindow(int position, android.database.CursorWindow window)
+    onMove(int oldPosition, int newPosition)
+  class CrossProcessCursorWrapper
+    #ctor(android.database.Cursor cursor)
+    fillWindow(int position, android.database.CursorWindow window)
+    onMove(int oldPosition, int newPosition)
+  interface Cursor
+    copyStringToBuffer(int columnIndex, android.database.CharArrayBuffer buffer)
+    getBlob(int columnIndex)
+    getColumnIndex(java.lang.String columnName)
+    getColumnIndexOrThrow(java.lang.String columnName)
+    getColumnName(int columnIndex)
+    getDouble(int columnIndex)
+    getFloat(int columnIndex)
+    getInt(int columnIndex)
+    getLong(int columnIndex)
+    getShort(int columnIndex)
+    getString(int columnIndex)
+    getType(int columnIndex)
+    isNull(int columnIndex)
+    move(int offset)
+    moveToPosition(int position)
+    registerContentObserver(android.database.ContentObserver observer)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    respond(android.os.Bundle extras)
+    setExtras(android.os.Bundle extras)
+    setNotificationUri(android.content.ContentResolver cr, android.net.Uri uri)
+    setNotificationUris(android.content.ContentResolver cr, java.util.List<android.net.Uri> uris)
+    unregisterContentObserver(android.database.ContentObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class CursorIndexOutOfBoundsException
+    #ctor(int index, int size)
+    #ctor(java.lang.String message)
+  class CursorJoiner
+    #ctor(android.database.Cursor cursorLeft, java.lang.String[] columnNamesLeft, android.database.Cursor cursorRight, java.lang.String[] columnNamesRight)
+  class CursorWindow
+    copyStringToBuffer(int row, int column, android.database.CharArrayBuffer buffer)
+    #ctor(boolean localWindow)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, long windowSizeBytes)
+    getBlob(int row, int column)
+    getDouble(int row, int column)
+    getFloat(int row, int column)
+    getInt(int row, int column)
+    getLong(int row, int column)
+    getShort(int row, int column)
+    getString(int row, int column)
+    getType(int row, int column)
+    isBlob(int row, int column)
+    isFloat(int row, int column)
+    isLong(int row, int column)
+    isNull(int row, int column)
+    isString(int row, int column)
+    newFromParcel(android.os.Parcel p)
+    putBlob(byte[] value, int row, int column)
+    putDouble(double value, int row, int column)
+    putLong(long value, int row, int column)
+    putNull(int row, int column)
+    putString(java.lang.String value, int row, int column)
+    setNumColumns(int columnNum)
+    setStartPosition(int pos)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CursorWindowAllocationException
+    #ctor(java.lang.String description)
+  class CursorWrapper
+    copyStringToBuffer(int columnIndex, android.database.CharArrayBuffer buffer)
+    #ctor(android.database.Cursor cursor)
+    getBlob(int columnIndex)
+    getColumnIndex(java.lang.String columnName)
+    getColumnIndexOrThrow(java.lang.String columnName)
+    getColumnName(int columnIndex)
+    getDouble(int columnIndex)
+    getFloat(int columnIndex)
+    getInt(int columnIndex)
+    getLong(int columnIndex)
+    getShort(int columnIndex)
+    getString(int columnIndex)
+    getType(int columnIndex)
+    isNull(int columnIndex)
+    move(int offset)
+    moveToPosition(int position)
+    registerContentObserver(android.database.ContentObserver observer)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    respond(android.os.Bundle extras)
+    setExtras(android.os.Bundle extras)
+    setNotificationUri(android.content.ContentResolver cr, android.net.Uri uri)
+    setNotificationUris(android.content.ContentResolver cr, java.util.List<android.net.Uri> uris)
+    unregisterContentObserver(android.database.ContentObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  interface DatabaseErrorHandler
+    onCorruption(android.database.sqlite.SQLiteDatabase dbObj)
+  class DatabaseUtils
+    appendEscapedSQLString(java.lang.StringBuilder sb, java.lang.String sqlString)
+    appendSelectionArgs(java.lang.String[] originalValues, java.lang.String[] newValues)
+    appendValueToSql(java.lang.StringBuilder sql, java.lang.Object value)
+    bindObjectToProgram(android.database.sqlite.SQLiteProgram prog, int index, java.lang.Object value)
+    blobFileDescriptorForQuery(android.database.sqlite.SQLiteDatabase db, java.lang.String query, java.lang.String[] selectionArgs)
+    blobFileDescriptorForQuery(android.database.sqlite.SQLiteStatement prog, java.lang.String[] selectionArgs)
+    concatenateWhere(java.lang.String a, java.lang.String b)
+    createDbFromSqlStatements(android.content.Context context, java.lang.String dbName, int dbVersion, java.lang.String sqlStatements)
+    cursorDoubleToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values, java.lang.String key)
+    cursorDoubleToContentValuesIfPresent(android.database.Cursor cursor, android.content.ContentValues values, java.lang.String column)
+    cursorDoubleToCursorValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values)
+    cursorFloatToContentValuesIfPresent(android.database.Cursor cursor, android.content.ContentValues values, java.lang.String column)
+    cursorIntToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values)
+    cursorIntToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values, java.lang.String key)
+    cursorIntToContentValuesIfPresent(android.database.Cursor cursor, android.content.ContentValues values, java.lang.String column)
+    cursorLongToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values)
+    cursorLongToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values, java.lang.String key)
+    cursorLongToContentValuesIfPresent(android.database.Cursor cursor, android.content.ContentValues values, java.lang.String column)
+    cursorRowToContentValues(android.database.Cursor cursor, android.content.ContentValues values)
+    cursorShortToContentValuesIfPresent(android.database.Cursor cursor, android.content.ContentValues values, java.lang.String column)
+    cursorStringToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values)
+    cursorStringToContentValues(android.database.Cursor cursor, java.lang.String field, android.content.ContentValues values, java.lang.String key)
+    cursorStringToContentValuesIfPresent(android.database.Cursor cursor, android.content.ContentValues values, java.lang.String column)
+    cursorStringToInsertHelper(android.database.Cursor cursor, java.lang.String field, android.database.DatabaseUtils.InsertHelper inserter, int index)
+    dumpCurrentRow(android.database.Cursor cursor)
+    dumpCurrentRow(android.database.Cursor cursor, java.io.PrintStream stream)
+    dumpCurrentRow(android.database.Cursor cursor, java.lang.StringBuilder sb)
+    dumpCurrentRowToString(android.database.Cursor cursor)
+    dumpCursor(android.database.Cursor cursor)
+    dumpCursor(android.database.Cursor cursor, java.io.PrintStream stream)
+    dumpCursor(android.database.Cursor cursor, java.lang.StringBuilder sb)
+    dumpCursorToString(android.database.Cursor cursor)
+    getCollationKey(java.lang.String name)
+    getHexCollationKey(java.lang.String name)
+    getSqlStatementType(java.lang.String sql)
+    longForQuery(android.database.sqlite.SQLiteDatabase db, java.lang.String query, java.lang.String[] selectionArgs)
+    longForQuery(android.database.sqlite.SQLiteStatement prog, java.lang.String[] selectionArgs)
+    queryNumEntries(android.database.sqlite.SQLiteDatabase db, java.lang.String table)
+    queryNumEntries(android.database.sqlite.SQLiteDatabase db, java.lang.String table, java.lang.String selection)
+    queryNumEntries(android.database.sqlite.SQLiteDatabase db, java.lang.String table, java.lang.String selection, java.lang.String[] selectionArgs)
+    readExceptionFromParcel(android.os.Parcel reply)
+    readExceptionWithFileNotFoundExceptionFromParcel(android.os.Parcel reply)
+    readExceptionWithOperationApplicationExceptionFromParcel(android.os.Parcel reply)
+    sqlEscapeString(java.lang.String value)
+    stringForQuery(android.database.sqlite.SQLiteDatabase db, java.lang.String query, java.lang.String[] selectionArgs)
+    stringForQuery(android.database.sqlite.SQLiteStatement prog, java.lang.String[] selectionArgs)
+    writeExceptionToParcel(android.os.Parcel reply, java.lang.Exception e)
+  class DatabaseUtils.InsertHelper
+    bind(int index, boolean value)
+    bind(int index, byte[] value)
+    bind(int index, double value)
+    bind(int index, float value)
+    bind(int index, int value)
+    bind(int index, java.lang.String value)
+    bind(int index, long value)
+    bindNull(int index)
+    #ctor(android.database.sqlite.SQLiteDatabase db, java.lang.String tableName)
+    getColumnIndex(java.lang.String key)
+    insert(android.content.ContentValues values)
+    replace(android.content.ContentValues values)
+  class DefaultDatabaseErrorHandler
+    onCorruption(android.database.sqlite.SQLiteDatabase dbObj)
+  class MatrixCursor
+    addRow(java.lang.Iterable<?> columnValues)
+    addRow(java.lang.Object[] columnValues)
+    getBlob(int column)
+    getDouble(int column)
+    getFloat(int column)
+    getInt(int column)
+    getLong(int column)
+    getShort(int column)
+    getString(int column)
+    getType(int column)
+    isNull(int column)
+    #ctor(java.lang.String[] columnNames)
+    #ctor(java.lang.String[] columnNames, int initialCapacity)
+  class MatrixCursor.RowBuilder
+    add(java.lang.Object columnValue)
+    add(java.lang.String columnName, java.lang.Object value)
+  class MergeCursor
+    getBlob(int column)
+    getDouble(int column)
+    getFloat(int column)
+    getInt(int column)
+    getLong(int column)
+    getShort(int column)
+    getString(int column)
+    getType(int column)
+    isNull(int column)
+    #ctor(android.database.Cursor[] cursors)
+    onMove(int oldPosition, int newPosition)
+    registerContentObserver(android.database.ContentObserver observer)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    unregisterContentObserver(android.database.ContentObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class Observable<T>
+    registerObserver(T observer)
+    unregisterObserver(T observer)
+  class SQLException
+    #ctor(java.lang.String error)
+    #ctor(java.lang.String error, java.lang.Throwable cause)
+  class StaleDataException
+    #ctor(java.lang.String description)
+
+package android.database.sqlite
+;---------------------------------------
+  class SQLiteAbortException
+    #ctor(java.lang.String error)
+  class SQLiteAccessPermException
+    #ctor(java.lang.String error)
+  class SQLiteBindOrColumnIndexOutOfRangeException
+    #ctor(java.lang.String error)
+  class SQLiteBlobTooBigException
+    #ctor(java.lang.String error)
+  class SQLiteCantOpenDatabaseException
+    #ctor(java.lang.String error)
+  class SQLiteConstraintException
+    #ctor(java.lang.String error)
+  class SQLiteCursor
+    getColumnIndex(java.lang.String columnName)
+    onMove(int oldPosition, int newPosition)
+    setFillWindowForwardOnly(boolean fillWindowForwardOnly)
+    setSelectionArguments(java.lang.String[] selectionArgs)
+    setWindow(android.database.CursorWindow window)
+    #ctor(android.database.sqlite.SQLiteCursorDriver driver, java.lang.String editTable, android.database.sqlite.SQLiteQuery query)
+    #ctor(android.database.sqlite.SQLiteDatabase db, android.database.sqlite.SQLiteCursorDriver driver, java.lang.String editTable, android.database.sqlite.SQLiteQuery query)
+  interface SQLiteCursorDriver
+    cursorRequeried(android.database.Cursor cursor)
+    query(android.database.sqlite.SQLiteDatabase.CursorFactory factory, java.lang.String[] bindArgs)
+    setBindArguments(java.lang.String[] bindArgs)
+  class SQLiteDatabase
+    beginTransactionWithListener(android.database.sqlite.SQLiteTransactionListener transactionListener)
+    beginTransactionWithListenerNonExclusive(android.database.sqlite.SQLiteTransactionListener transactionListener)
+    compileStatement(java.lang.String sql)
+    create(android.database.sqlite.SQLiteDatabase.CursorFactory factory)
+    createInMemory(android.database.sqlite.SQLiteDatabase.OpenParams openParams)
+    delete(java.lang.String table, java.lang.String whereClause, java.lang.String[] whereArgs)
+    deleteDatabase(java.io.File file)
+    execPerConnectionSQL(java.lang.String sql, java.lang.Object[] bindArgs)
+    execSQL(java.lang.String sql)
+    execSQL(java.lang.String sql, java.lang.Object[] bindArgs)
+    findEditTable(java.lang.String tables)
+    insert(java.lang.String table, java.lang.String nullColumnHack, android.content.ContentValues values)
+    insertOrThrow(java.lang.String table, java.lang.String nullColumnHack, android.content.ContentValues values)
+    insertWithOnConflict(java.lang.String table, java.lang.String nullColumnHack, android.content.ContentValues initialValues, int conflictAlgorithm)
+    markTableSyncable(java.lang.String table, java.lang.String deletedTable)
+    markTableSyncable(java.lang.String table, java.lang.String foreignKey, java.lang.String updateTable)
+    needUpgrade(int newVersion)
+    openDatabase(java.io.File path, android.database.sqlite.SQLiteDatabase.OpenParams openParams)
+    openDatabase(java.lang.String path, android.database.sqlite.SQLiteDatabase.CursorFactory factory, int flags)
+    openDatabase(java.lang.String path, android.database.sqlite.SQLiteDatabase.CursorFactory factory, int flags, android.database.DatabaseErrorHandler errorHandler)
+    openOrCreateDatabase(java.io.File file, android.database.sqlite.SQLiteDatabase.CursorFactory factory)
+    openOrCreateDatabase(java.lang.String path, android.database.sqlite.SQLiteDatabase.CursorFactory factory)
+    openOrCreateDatabase(java.lang.String path, android.database.sqlite.SQLiteDatabase.CursorFactory factory, android.database.DatabaseErrorHandler errorHandler)
+    query(boolean distinct, java.lang.String table, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit)
+    query(boolean distinct, java.lang.String table, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit, android.os.CancellationSignal cancellationSignal)
+    query(java.lang.String table, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy)
+    query(java.lang.String table, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit)
+    queryWithFactory(android.database.sqlite.SQLiteDatabase.CursorFactory cursorFactory, boolean distinct, java.lang.String table, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit)
+    queryWithFactory(android.database.sqlite.SQLiteDatabase.CursorFactory cursorFactory, boolean distinct, java.lang.String table, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit, android.os.CancellationSignal cancellationSignal)
+    rawQuery(java.lang.String sql, java.lang.String[] selectionArgs)
+    rawQuery(java.lang.String sql, java.lang.String[] selectionArgs, android.os.CancellationSignal cancellationSignal)
+    rawQueryWithFactory(android.database.sqlite.SQLiteDatabase.CursorFactory cursorFactory, java.lang.String sql, java.lang.String[] selectionArgs, java.lang.String editTable)
+    rawQueryWithFactory(android.database.sqlite.SQLiteDatabase.CursorFactory cursorFactory, java.lang.String sql, java.lang.String[] selectionArgs, java.lang.String editTable, android.os.CancellationSignal cancellationSignal)
+    replace(java.lang.String table, java.lang.String nullColumnHack, android.content.ContentValues initialValues)
+    replaceOrThrow(java.lang.String table, java.lang.String nullColumnHack, android.content.ContentValues initialValues)
+    setCustomAggregateFunction(java.lang.String functionName, java.util.function.BinaryOperator<java.lang.String> aggregateFunction)
+    setCustomScalarFunction(java.lang.String functionName, java.util.function.UnaryOperator<java.lang.String> scalarFunction)
+    setForeignKeyConstraintsEnabled(boolean enable)
+    setLocale(java.util.Locale locale)
+    setLockingEnabled(boolean lockingEnabled)
+    setMaximumSize(long numBytes)
+    setMaxSqlCacheSize(int cacheSize)
+    setPageSize(long numBytes)
+    setVersion(int version)
+    update(java.lang.String table, android.content.ContentValues values, java.lang.String whereClause, java.lang.String[] whereArgs)
+    updateWithOnConflict(java.lang.String table, android.content.ContentValues values, java.lang.String whereClause, java.lang.String[] whereArgs, int conflictAlgorithm)
+    validateSql(java.lang.String sql, android.os.CancellationSignal cancellationSignal)
+    yieldIfContendedSafely(long sleepAfterYieldDelay)
+  interface SQLiteDatabase.CursorFactory
+    newCursor(android.database.sqlite.SQLiteDatabase db, android.database.sqlite.SQLiteCursorDriver masterQuery, java.lang.String editTable, android.database.sqlite.SQLiteQuery query)
+  class SQLiteDatabase.OpenParams.Builder
+    addOpenFlags(int openFlags)
+    removeOpenFlags(int openFlags)
+    setCursorFactory(android.database.sqlite.SQLiteDatabase.CursorFactory cursorFactory)
+    setErrorHandler(android.database.DatabaseErrorHandler errorHandler)
+    setIdleConnectionTimeout(long idleConnectionTimeoutMs)
+    setJournalMode(java.lang.String journalMode)
+    setLookasideConfig(int slotSize, int slotCount)
+    setOpenFlags(int openFlags)
+    setSynchronousMode(java.lang.String syncMode)
+    #ctor(android.database.sqlite.SQLiteDatabase.OpenParams params)
+  class SQLiteDatabaseCorruptException
+    #ctor(java.lang.String error)
+  class SQLiteDatabaseLockedException
+    #ctor(java.lang.String error)
+  class SQLiteDatatypeMismatchException
+    #ctor(java.lang.String error)
+  class SQLiteDiskIOException
+    #ctor(java.lang.String error)
+  class SQLiteDoneException
+    #ctor(java.lang.String error)
+  class SQLiteException
+    #ctor(java.lang.String error)
+    #ctor(java.lang.String error, java.lang.Throwable cause)
+  class SQLiteFullException
+    #ctor(java.lang.String error)
+  class SQLiteMisuseException
+    #ctor(java.lang.String error)
+  class SQLiteOpenHelper
+    onConfigure(android.database.sqlite.SQLiteDatabase db)
+    onCreate(android.database.sqlite.SQLiteDatabase db)
+    onDowngrade(android.database.sqlite.SQLiteDatabase db, int oldVersion, int newVersion)
+    onOpen(android.database.sqlite.SQLiteDatabase db)
+    onUpgrade(android.database.sqlite.SQLiteDatabase db, int oldVersion, int newVersion)
+    setIdleConnectionTimeout(long idleConnectionTimeoutMs)
+    setLookasideConfig(int slotSize, int slotCount)
+    setOpenParams(android.database.sqlite.SQLiteDatabase.OpenParams openParams)
+    setWriteAheadLoggingEnabled(boolean enabled)
+    #ctor(android.content.Context context, java.lang.String name, android.database.sqlite.SQLiteDatabase.CursorFactory factory, int version)
+    #ctor(android.content.Context context, java.lang.String name, android.database.sqlite.SQLiteDatabase.CursorFactory factory, int version, android.database.DatabaseErrorHandler errorHandler)
+    #ctor(android.content.Context context, java.lang.String name, int version, android.database.sqlite.SQLiteDatabase.OpenParams openParams)
+  class SQLiteOutOfMemoryException
+    #ctor(java.lang.String error)
+  class SQLiteProgram
+    bindAllArgsAsStrings(java.lang.String[] bindArgs)
+    bindBlob(int index, byte[] value)
+    bindDouble(int index, double value)
+    bindLong(int index, long value)
+    bindNull(int index)
+    bindString(int index, java.lang.String value)
+  class SQLiteQueryBuilder
+    appendColumns(java.lang.StringBuilder s, java.lang.String[] columns)
+    appendWhere(java.lang.CharSequence inWhere)
+    appendWhereEscapeString(java.lang.String inWhere)
+    appendWhereStandalone(java.lang.CharSequence inWhere)
+    buildQuery(java.lang.String[] projectionIn, java.lang.String selection, java.lang.String groupBy, java.lang.String having, java.lang.String sortOrder, java.lang.String limit)
+    buildQuery(java.lang.String[] projectionIn, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String sortOrder, java.lang.String limit)
+    buildQueryString(boolean distinct, java.lang.String tables, java.lang.String[] columns, java.lang.String where, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit)
+    buildUnionQuery(java.lang.String[] subQueries, java.lang.String sortOrder, java.lang.String limit)
+    buildUnionSubQuery(java.lang.String typeDiscriminatorColumn, java.lang.String[] unionColumns, java.util.Set<java.lang.String> columnsPresentInTable, int computedColumnsOffset, java.lang.String typeDiscriminatorValue, java.lang.String selection, java.lang.String groupBy, java.lang.String having)
+    buildUnionSubQuery(java.lang.String typeDiscriminatorColumn, java.lang.String[] unionColumns, java.util.Set<java.lang.String> columnsPresentInTable, int computedColumnsOffset, java.lang.String typeDiscriminatorValue, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having)
+    delete(android.database.sqlite.SQLiteDatabase db, java.lang.String selection, java.lang.String[] selectionArgs)
+    insert(android.database.sqlite.SQLiteDatabase db, android.content.ContentValues values)
+    query(android.database.sqlite.SQLiteDatabase db, java.lang.String[] projectionIn, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String sortOrder)
+    query(android.database.sqlite.SQLiteDatabase db, java.lang.String[] projectionIn, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String sortOrder, java.lang.String limit)
+    query(android.database.sqlite.SQLiteDatabase db, java.lang.String[] projectionIn, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String sortOrder, java.lang.String limit, android.os.CancellationSignal cancellationSignal)
+    setCursorFactory(android.database.sqlite.SQLiteDatabase.CursorFactory factory)
+    setDistinct(boolean distinct)
+    setProjectionGreylist(java.util.Collection<java.util.regex.Pattern> projectionGreylist)
+    setProjectionMap(java.util.Map<java.lang.String,java.lang.String> columnMap)
+    setStrict(boolean strict)
+    setStrictColumns(boolean strictColumns)
+    setStrictGrammar(boolean strictGrammar)
+    setTables(java.lang.String inTables)
+    update(android.database.sqlite.SQLiteDatabase db, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  class SQLiteReadOnlyDatabaseException
+    #ctor(java.lang.String error)
+  class SQLiteTableLockedException
+    #ctor(java.lang.String error)
+
+package android.devicelock
+;---------------------------------------
+  class DeviceLockManager
+    getDeviceId(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.devicelock.DeviceId,java.lang.Exception> callback)
+    getKioskApps(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.util.Map<java.lang.Integer,java.lang.String>,java.lang.Exception> callback)
+    isDeviceLocked(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Boolean,java.lang.Exception> callback)
+    lockDevice(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,java.lang.Exception> callback)
+    unlockDevice(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,java.lang.Exception> callback)
+
+package android.drm
+;---------------------------------------
+  class DrmConvertedStatus
+    #ctor(int statusCode, byte[] convertedData, int offset)
+  class DrmErrorEvent
+    #ctor(int uniqueId, int type, java.lang.String message)
+    #ctor(int uniqueId, int type, java.lang.String message, java.util.HashMap<java.lang.String,java.lang.Object> attributes)
+  class DrmEvent
+    #ctor(int uniqueId, int type, java.lang.String message)
+    #ctor(int uniqueId, int type, java.lang.String message, java.util.HashMap<java.lang.String,java.lang.Object> attributes)
+    getAttribute(java.lang.String key)
+  class DrmInfo
+    #ctor(int infoType, byte[] data, java.lang.String mimeType)
+    #ctor(int infoType, java.lang.String path, java.lang.String mimeType)
+    get(java.lang.String key)
+    put(java.lang.String key, java.lang.Object value)
+  class DrmInfoEvent
+    #ctor(int uniqueId, int type, java.lang.String message)
+    #ctor(int uniqueId, int type, java.lang.String message, java.util.HashMap<java.lang.String,java.lang.Object> attributes)
+  class DrmInfoRequest
+    #ctor(int infoType, java.lang.String mimeType)
+    get(java.lang.String key)
+    put(java.lang.String key, java.lang.Object value)
+  class DrmInfoStatus
+    #ctor(int statusCode, int infoType, android.drm.ProcessedData data, java.lang.String mimeType)
+  class DrmManagerClient
+    acquireDrmInfo(android.drm.DrmInfoRequest drmInfoRequest)
+    acquireRights(android.drm.DrmInfoRequest drmInfoRequest)
+    canHandle(android.net.Uri uri, java.lang.String mimeType)
+    canHandle(java.lang.String path, java.lang.String mimeType)
+    checkRightsStatus(android.net.Uri uri)
+    checkRightsStatus(android.net.Uri uri, int action)
+    checkRightsStatus(java.lang.String path)
+    checkRightsStatus(java.lang.String path, int action)
+    closeConvertSession(int convertId)
+    convertData(int convertId, byte[] inputData)
+    #ctor(android.content.Context context)
+    getConstraints(android.net.Uri uri, int action)
+    getConstraints(java.lang.String path, int action)
+    getDrmObjectType(android.net.Uri uri, java.lang.String mimeType)
+    getDrmObjectType(java.lang.String path, java.lang.String mimeType)
+    getMetadata(android.net.Uri uri)
+    getMetadata(java.lang.String path)
+    getOriginalMimeType(android.net.Uri uri)
+    getOriginalMimeType(java.lang.String path)
+    openConvertSession(java.lang.String mimeType)
+    processDrmInfo(android.drm.DrmInfo drmInfo)
+    removeRights(android.net.Uri uri)
+    removeRights(java.lang.String path)
+    saveRights(android.drm.DrmRights drmRights, java.lang.String rightsPath, java.lang.String contentPath)
+    setOnErrorListener(android.drm.DrmManagerClient.OnErrorListener errorListener)
+    setOnEventListener(android.drm.DrmManagerClient.OnEventListener eventListener)
+    setOnInfoListener(android.drm.DrmManagerClient.OnInfoListener infoListener)
+  interface DrmManagerClient.OnErrorListener
+    onError(android.drm.DrmManagerClient client, android.drm.DrmErrorEvent event)
+  interface DrmManagerClient.OnEventListener
+    onEvent(android.drm.DrmManagerClient client, android.drm.DrmEvent event)
+  interface DrmManagerClient.OnInfoListener
+    onInfo(android.drm.DrmManagerClient client, android.drm.DrmInfoEvent event)
+  class DrmRights
+    #ctor(android.drm.ProcessedData data, java.lang.String mimeType)
+    #ctor(java.io.File rightsFile, java.lang.String mimeType)
+    #ctor(java.lang.String rightsFilePath, java.lang.String mimeType)
+    #ctor(java.lang.String rightsFilePath, java.lang.String mimeType, java.lang.String accountId)
+    #ctor(java.lang.String rightsFilePath, java.lang.String mimeType, java.lang.String accountId, java.lang.String subscriptionId)
+  class DrmSupportInfo
+    addFileSuffix(java.lang.String fileSuffix)
+    addMimeType(java.lang.String mimeType)
+    equals(java.lang.Object object)
+    setDescription(java.lang.String description)
+  class DrmUtils
+    getExtendedMetadataParser(byte[] extendedMetadata)
+  class DrmUtils.ExtendedMetadataParser
+    get(java.lang.String key)
+
+package android.gesture
+;---------------------------------------
+  class Gesture
+    addStroke(android.gesture.GestureStroke stroke)
+    toBitmap(int width, int height, int inset, int color)
+    toBitmap(int width, int height, int edge, int numSample, int color)
+    toPath(android.graphics.Path path)
+    toPath(android.graphics.Path path, int width, int height, int edge, int numSample)
+    toPath(int width, int height, int edge, int numSample)
+    writeToParcel(android.os.Parcel out, int flags)
+  class GestureLibraries
+    fromFile(java.io.File path)
+    fromFile(java.lang.String path)
+    fromFileDescriptor(android.os.ParcelFileDescriptor pfd)
+    fromPrivateFile(android.content.Context context, java.lang.String name)
+    fromRawResource(android.content.Context context, int resourceId)
+  class GestureLibrary
+    addGesture(java.lang.String entryName, android.gesture.Gesture gesture)
+    getGestures(java.lang.String entryName)
+    recognize(android.gesture.Gesture gesture)
+    removeEntry(java.lang.String entryName)
+    removeGesture(java.lang.String entryName, android.gesture.Gesture gesture)
+    setOrientationStyle(int style)
+    setSequenceType(int type)
+  class GestureOverlayView
+    addOnGestureListener(android.gesture.GestureOverlayView.OnGestureListener listener)
+    addOnGesturePerformedListener(android.gesture.GestureOverlayView.OnGesturePerformedListener listener)
+    addOnGesturingListener(android.gesture.GestureOverlayView.OnGesturingListener listener)
+    clear(boolean animated)
+    dispatchTouchEvent(android.view.MotionEvent event)
+    draw(android.graphics.Canvas canvas)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    getGesturePath(android.graphics.Path path)
+    removeOnGestureListener(android.gesture.GestureOverlayView.OnGestureListener listener)
+    removeOnGesturePerformedListener(android.gesture.GestureOverlayView.OnGesturePerformedListener listener)
+    removeOnGesturingListener(android.gesture.GestureOverlayView.OnGesturingListener listener)
+    setEventsInterceptionEnabled(boolean enabled)
+    setFadeEnabled(boolean fadeEnabled)
+    setFadeOffset(long fadeOffset)
+    setGesture(android.gesture.Gesture gesture)
+    setGestureColor(int color)
+    setGestureStrokeAngleThreshold(float gestureStrokeAngleThreshold)
+    setGestureStrokeLengthThreshold(float gestureStrokeLengthThreshold)
+    setGestureStrokeSquarenessTreshold(float gestureStrokeSquarenessTreshold)
+    setGestureStrokeType(int gestureStrokeType)
+    setGestureStrokeWidth(float gestureStrokeWidth)
+    setGestureVisible(boolean visible)
+    setOrientation(int orientation)
+    setUncertainGestureColor(int color)
+  interface GestureOverlayView.OnGestureListener
+    onGesture(android.gesture.GestureOverlayView overlay, android.view.MotionEvent event)
+    onGestureCancelled(android.gesture.GestureOverlayView overlay, android.view.MotionEvent event)
+    onGestureEnded(android.gesture.GestureOverlayView overlay, android.view.MotionEvent event)
+    onGestureStarted(android.gesture.GestureOverlayView overlay, android.view.MotionEvent event)
+  interface GestureOverlayView.OnGesturePerformedListener
+    onGesturePerformed(android.gesture.GestureOverlayView overlay, android.gesture.Gesture gesture)
+  interface GestureOverlayView.OnGesturingListener
+    onGesturingEnded(android.gesture.GestureOverlayView overlay)
+    onGesturingStarted(android.gesture.GestureOverlayView overlay)
+  class GesturePoint
+    #ctor(float x, float y, long t)
+  class GestureStore
+    addGesture(java.lang.String entryName, android.gesture.Gesture gesture)
+    getGestures(java.lang.String entryName)
+    load(java.io.InputStream stream)
+    load(java.io.InputStream stream, boolean closeStream)
+    recognize(android.gesture.Gesture gesture)
+    removeEntry(java.lang.String entryName)
+    removeGesture(java.lang.String entryName, android.gesture.Gesture gesture)
+    save(java.io.OutputStream stream)
+    save(java.io.OutputStream stream, boolean closeStream)
+    setOrientationStyle(int style)
+    setSequenceType(int type)
+  class GestureStroke
+    #ctor(java.util.ArrayList<android.gesture.GesturePoint> points)
+    toPath(float width, float height, int numSample)
+  class GestureUtils
+    computeOrientedBoundingBox(float[] originalPoints)
+    computeOrientedBoundingBox(java.util.ArrayList<android.gesture.GesturePoint> originalPoints)
+    spatialSampling(android.gesture.Gesture gesture, int bitmapSize)
+    spatialSampling(android.gesture.Gesture gesture, int bitmapSize, boolean keepAspectRatio)
+    temporalSampling(android.gesture.GestureStroke stroke, int numPoints)
+
+package android.graphics
+;---------------------------------------
+  class Bitmap
+    compress(android.graphics.Bitmap.CompressFormat format, int quality, java.io.OutputStream stream)
+    copy(android.graphics.Bitmap.Config config, boolean isMutable)
+    copyPixelsFromBuffer(java.nio.Buffer src)
+    copyPixelsToBuffer(java.nio.Buffer dst)
+    createBitmap(android.graphics.Bitmap src)
+    createBitmap(android.graphics.Bitmap source, int x, int y, int width, int height)
+    createBitmap(android.graphics.Bitmap source, int x, int y, int width, int height, android.graphics.Matrix m, boolean filter)
+    createBitmap(android.graphics.Picture source)
+    createBitmap(android.graphics.Picture source, int width, int height, android.graphics.Bitmap.Config config)
+    createBitmap(android.util.DisplayMetrics display, int width, int height, android.graphics.Bitmap.Config config)
+    createBitmap(android.util.DisplayMetrics display, int width, int height, android.graphics.Bitmap.Config config, boolean hasAlpha)
+    createBitmap(android.util.DisplayMetrics display, int width, int height, android.graphics.Bitmap.Config config, boolean hasAlpha, android.graphics.ColorSpace colorSpace)
+    createBitmap(android.util.DisplayMetrics display, int[] colors, int width, int height, android.graphics.Bitmap.Config config)
+    createBitmap(android.util.DisplayMetrics display, int[] colors, int offset, int stride, int width, int height, android.graphics.Bitmap.Config config)
+    createBitmap(int width, int height, android.graphics.Bitmap.Config config)
+    createBitmap(int width, int height, android.graphics.Bitmap.Config config, boolean hasAlpha)
+    createBitmap(int width, int height, android.graphics.Bitmap.Config config, boolean hasAlpha, android.graphics.ColorSpace colorSpace)
+    createBitmap(int[] colors, int width, int height, android.graphics.Bitmap.Config config)
+    createBitmap(int[] colors, int offset, int stride, int width, int height, android.graphics.Bitmap.Config config)
+    createScaledBitmap(android.graphics.Bitmap src, int dstWidth, int dstHeight, boolean filter)
+    eraseColor(int c)
+    eraseColor(long color)
+    extractAlpha(android.graphics.Paint paint, int[] offsetXY)
+    getColor(int x, int y)
+    getPixel(int x, int y)
+    getPixels(int[] pixels, int offset, int stride, int x, int y, int width, int height)
+    getScaledHeight(android.graphics.Canvas canvas)
+    getScaledHeight(android.util.DisplayMetrics metrics)
+    getScaledHeight(int targetDensity)
+    getScaledWidth(android.graphics.Canvas canvas)
+    getScaledWidth(android.util.DisplayMetrics metrics)
+    getScaledWidth(int targetDensity)
+    reconfigure(int width, int height, android.graphics.Bitmap.Config config)
+    sameAs(android.graphics.Bitmap other)
+    setColorSpace(android.graphics.ColorSpace colorSpace)
+    setConfig(android.graphics.Bitmap.Config config)
+    setDensity(int density)
+    setHasAlpha(boolean hasAlpha)
+    setHasMipMap(boolean hasMipMap)
+    setHeight(int height)
+    setPixel(int x, int y, int color)
+    setPixels(int[] pixels, int offset, int stride, int x, int y, int width, int height)
+    setPremultiplied(boolean premultiplied)
+    setWidth(int width)
+    wrapHardwareBuffer(android.hardware.HardwareBuffer hardwareBuffer, android.graphics.ColorSpace colorSpace)
+    writeToParcel(android.os.Parcel p, int flags)
+  class BitmapFactory
+    decodeByteArray(byte[] data, int offset, int length)
+    decodeByteArray(byte[] data, int offset, int length, android.graphics.BitmapFactory.Options opts)
+    decodeFile(java.lang.String pathName)
+    decodeFile(java.lang.String pathName, android.graphics.BitmapFactory.Options opts)
+    decodeFileDescriptor(java.io.FileDescriptor fd)
+    decodeFileDescriptor(java.io.FileDescriptor fd, android.graphics.Rect outPadding, android.graphics.BitmapFactory.Options opts)
+    decodeResource(android.content.res.Resources res, int id)
+    decodeResource(android.content.res.Resources res, int id, android.graphics.BitmapFactory.Options opts)
+    decodeResourceStream(android.content.res.Resources res, android.util.TypedValue value, java.io.InputStream is, android.graphics.Rect pad, android.graphics.BitmapFactory.Options opts)
+    decodeStream(java.io.InputStream is)
+    decodeStream(java.io.InputStream is, android.graphics.Rect outPadding, android.graphics.BitmapFactory.Options opts)
+  class BitmapRegionDecoder
+    decodeRegion(android.graphics.Rect rect, android.graphics.BitmapFactory.Options options)
+    newInstance(android.os.ParcelFileDescriptor pfd)
+    newInstance(byte[] data, int offset, int length)
+    newInstance(byte[] data, int offset, int length, boolean isShareable)
+    newInstance(java.io.FileDescriptor fd, boolean isShareable)
+    newInstance(java.io.InputStream is)
+    newInstance(java.io.InputStream is, boolean isShareable)
+    newInstance(java.lang.String pathName)
+    newInstance(java.lang.String pathName, boolean isShareable)
+  class BitmapShader
+    #ctor(android.graphics.Bitmap bitmap, android.graphics.Shader.TileMode tileX, android.graphics.Shader.TileMode tileY)
+    setFilterMode(int mode)
+  class BlendModeColorFilter
+    #ctor(int color, android.graphics.BlendMode mode)
+    equals(java.lang.Object object)
+  class BlurMaskFilter
+    #ctor(float radius, android.graphics.BlurMaskFilter.Blur style)
+  class Camera
+    applyToCanvas(android.graphics.Canvas canvas)
+    dotWithNormal(float dx, float dy, float dz)
+    getMatrix(android.graphics.Matrix matrix)
+    rotate(float x, float y, float z)
+    rotateX(float deg)
+    rotateY(float deg)
+    rotateZ(float deg)
+    setLocation(float x, float y, float z)
+    translate(float x, float y, float z)
+  class Canvas
+    #ctor(android.graphics.Bitmap bitmap)
+    clipOutPath(android.graphics.Path path)
+    clipOutRect(android.graphics.Rect rect)
+    clipOutRect(android.graphics.RectF rect)
+    clipOutRect(float left, float top, float right, float bottom)
+    clipOutRect(int left, int top, int right, int bottom)
+    clipPath(android.graphics.Path path)
+    clipPath(android.graphics.Path path, android.graphics.Region.Op op)
+    clipRect(android.graphics.Rect rect)
+    clipRect(android.graphics.Rect rect, android.graphics.Region.Op op)
+    clipRect(android.graphics.RectF rect)
+    clipRect(android.graphics.RectF rect, android.graphics.Region.Op op)
+    clipRect(float left, float top, float right, float bottom)
+    clipRect(float left, float top, float right, float bottom, android.graphics.Region.Op op)
+    clipRect(int left, int top, int right, int bottom)
+    concat(android.graphics.Matrix matrix)
+    drawArc(android.graphics.RectF oval, float startAngle, float sweepAngle, boolean useCenter, android.graphics.Paint paint)
+    drawArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle, boolean useCenter, android.graphics.Paint paint)
+    drawARGB(int a, int r, int g, int b)
+    drawBitmap(android.graphics.Bitmap bitmap, android.graphics.Matrix matrix, android.graphics.Paint paint)
+    drawBitmap(android.graphics.Bitmap bitmap, android.graphics.Rect src, android.graphics.Rect dst, android.graphics.Paint paint)
+    drawBitmap(android.graphics.Bitmap bitmap, android.graphics.Rect src, android.graphics.RectF dst, android.graphics.Paint paint)
+    drawBitmap(android.graphics.Bitmap bitmap, float left, float top, android.graphics.Paint paint)
+    drawBitmap(int[] colors, int offset, int stride, float x, float y, int width, int height, boolean hasAlpha, android.graphics.Paint paint)
+    drawBitmap(int[] colors, int offset, int stride, int x, int y, int width, int height, boolean hasAlpha, android.graphics.Paint paint)
+    drawBitmapMesh(android.graphics.Bitmap bitmap, int meshWidth, int meshHeight, float[] verts, int vertOffset, int[] colors, int colorOffset, android.graphics.Paint paint)
+    drawCircle(float cx, float cy, float radius, android.graphics.Paint paint)
+    drawColor(int color)
+    drawColor(int color, android.graphics.BlendMode mode)
+    drawColor(int color, android.graphics.PorterDuff.Mode mode)
+    drawColor(long color)
+    drawColor(long color, android.graphics.BlendMode mode)
+    drawDoubleRoundRect(android.graphics.RectF outer, float outerRx, float outerRy, android.graphics.RectF inner, float innerRx, float innerRy, android.graphics.Paint paint)
+    drawDoubleRoundRect(android.graphics.RectF outer, float[] outerRadii, android.graphics.RectF inner, float[] innerRadii, android.graphics.Paint paint)
+    drawGlyphs(int[] glyphIds, int glyphIdOffset, float[] positions, int positionOffset, int glyphCount, android.graphics.fonts.Font font, android.graphics.Paint paint)
+    drawLine(float startX, float startY, float stopX, float stopY, android.graphics.Paint paint)
+    drawLines(float[] pts, android.graphics.Paint paint)
+    drawLines(float[] pts, int offset, int count, android.graphics.Paint paint)
+    drawMesh(android.graphics.Mesh mesh, android.graphics.BlendMode blendMode, android.graphics.Paint paint)
+    drawOval(android.graphics.RectF oval, android.graphics.Paint paint)
+    drawOval(float left, float top, float right, float bottom, android.graphics.Paint paint)
+    drawPaint(android.graphics.Paint paint)
+    drawPatch(android.graphics.NinePatch patch, android.graphics.Rect dst, android.graphics.Paint paint)
+    drawPatch(android.graphics.NinePatch patch, android.graphics.RectF dst, android.graphics.Paint paint)
+    drawPath(android.graphics.Path path, android.graphics.Paint paint)
+    drawPicture(android.graphics.Picture picture)
+    drawPicture(android.graphics.Picture picture, android.graphics.Rect dst)
+    drawPicture(android.graphics.Picture picture, android.graphics.RectF dst)
+    drawPoint(float x, float y, android.graphics.Paint paint)
+    drawPoints(float[] pts, android.graphics.Paint paint)
+    drawPoints(float[] pts, int offset, int count, android.graphics.Paint paint)
+    drawPosText(char[] text, int index, int count, float[] pos, android.graphics.Paint paint)
+    drawPosText(java.lang.String text, float[] pos, android.graphics.Paint paint)
+    drawRect(android.graphics.Rect r, android.graphics.Paint paint)
+    drawRect(android.graphics.RectF rect, android.graphics.Paint paint)
+    drawRect(float left, float top, float right, float bottom, android.graphics.Paint paint)
+    drawRenderNode(android.graphics.RenderNode renderNode)
+    drawRGB(int r, int g, int b)
+    drawRoundRect(android.graphics.RectF rect, float rx, float ry, android.graphics.Paint paint)
+    drawRoundRect(float left, float top, float right, float bottom, float rx, float ry, android.graphics.Paint paint)
+    drawText(char[] text, int index, int count, float x, float y, android.graphics.Paint paint)
+    drawText(java.lang.CharSequence text, int start, int end, float x, float y, android.graphics.Paint paint)
+    drawText(java.lang.String text, float x, float y, android.graphics.Paint paint)
+    drawText(java.lang.String text, int start, int end, float x, float y, android.graphics.Paint paint)
+    drawTextOnPath(char[] text, int index, int count, android.graphics.Path path, float hOffset, float vOffset, android.graphics.Paint paint)
+    drawTextOnPath(java.lang.String text, android.graphics.Path path, float hOffset, float vOffset, android.graphics.Paint paint)
+    drawTextRun(android.graphics.text.MeasuredText text, int start, int end, int contextStart, int contextEnd, float x, float y, boolean isRtl, android.graphics.Paint paint)
+    drawTextRun(char[] text, int index, int count, int contextIndex, int contextCount, float x, float y, boolean isRtl, android.graphics.Paint paint)
+    drawTextRun(java.lang.CharSequence text, int start, int end, int contextStart, int contextEnd, float x, float y, boolean isRtl, android.graphics.Paint paint)
+    drawVertices(android.graphics.Canvas.VertexMode mode, int vertexCount, float[] verts, int vertOffset, float[] texs, int texOffset, int[] colors, int colorOffset, short[] indices, int indexOffset, int indexCount, android.graphics.Paint paint)
+    getClipBounds(android.graphics.Rect bounds)
+    getMatrix(android.graphics.Matrix ctm)
+    quickReject(android.graphics.Path path)
+    quickReject(android.graphics.Path path, android.graphics.Canvas.EdgeType type)
+    quickReject(android.graphics.RectF rect)
+    quickReject(android.graphics.RectF rect, android.graphics.Canvas.EdgeType type)
+    quickReject(float left, float top, float right, float bottom)
+    quickReject(float left, float top, float right, float bottom, android.graphics.Canvas.EdgeType type)
+    restoreToCount(int saveCount)
+    rotate(float degrees)
+    rotate(float degrees, float px, float py)
+    saveLayer(android.graphics.RectF bounds, android.graphics.Paint paint)
+    saveLayer(android.graphics.RectF bounds, android.graphics.Paint paint, int saveFlags)
+    saveLayer(float left, float top, float right, float bottom, android.graphics.Paint paint)
+    saveLayer(float left, float top, float right, float bottom, android.graphics.Paint paint, int saveFlags)
+    saveLayerAlpha(android.graphics.RectF bounds, int alpha)
+    saveLayerAlpha(android.graphics.RectF bounds, int alpha, int saveFlags)
+    saveLayerAlpha(float left, float top, float right, float bottom, int alpha)
+    saveLayerAlpha(float left, float top, float right, float bottom, int alpha, int saveFlags)
+    scale(float sx, float sy)
+    scale(float sx, float sy, float px, float py)
+    setBitmap(android.graphics.Bitmap bitmap)
+    setDensity(int density)
+    setDrawFilter(android.graphics.DrawFilter filter)
+    setMatrix(android.graphics.Matrix matrix)
+    skew(float sx, float sy)
+    translate(float dx, float dy)
+  class Color
+    alpha(int color)
+    alpha(long color)
+    argb(float alpha, float red, float green, float blue)
+    argb(int alpha, int red, int green, int blue)
+    blue(int color)
+    blue(long color)
+    colorSpace(long color)
+    colorToHSV(int color, float[] hsv)
+    convert(android.graphics.ColorSpace colorSpace)
+    convert(float r, float g, float b, float a, android.graphics.ColorSpace source, android.graphics.ColorSpace destination)
+    convert(float r, float g, float b, float a, android.graphics.ColorSpace.Connector connector)
+    convert(int color, android.graphics.ColorSpace colorSpace)
+    convert(long color, android.graphics.ColorSpace colorSpace)
+    convert(long color, android.graphics.ColorSpace.Connector connector)
+    equals(java.lang.Object o)
+    getComponent(int component)
+    getComponents(float[] components)
+    green(int color)
+    green(long color)
+    HSVToColor(float[] hsv)
+    HSVToColor(int alpha, float[] hsv)
+    isInColorSpace(long color, android.graphics.ColorSpace colorSpace)
+    isSrgb(long color)
+    isWideGamut(long color)
+    luminance(int color)
+    luminance(long color)
+    pack(float red, float green, float blue)
+    pack(float red, float green, float blue, float alpha)
+    pack(float red, float green, float blue, float alpha, android.graphics.ColorSpace colorSpace)
+    pack(int color)
+    parseColor(java.lang.String colorString)
+    red(int color)
+    red(long color)
+    rgb(float red, float green, float blue)
+    rgb(int red, int green, int blue)
+    RGBToHSV(int red, int green, int blue, float[] hsv)
+    toArgb(long color)
+    valueOf(float r, float g, float b)
+    valueOf(float r, float g, float b, float a)
+    valueOf(float r, float g, float b, float a, android.graphics.ColorSpace colorSpace)
+    valueOf(float[] components, android.graphics.ColorSpace colorSpace)
+    valueOf(int color)
+    valueOf(long color)
+  class ColorMatrix
+    #ctor(android.graphics.ColorMatrix src)
+    #ctor(float[] src)
+    equals(java.lang.Object obj)
+    postConcat(android.graphics.ColorMatrix postmatrix)
+    preConcat(android.graphics.ColorMatrix prematrix)
+    set(android.graphics.ColorMatrix src)
+    set(float[] src)
+    setConcat(android.graphics.ColorMatrix matA, android.graphics.ColorMatrix matB)
+    setRotate(int axis, float degrees)
+    setSaturation(float sat)
+    setScale(float rScale, float gScale, float bScale, float aScale)
+  class ColorMatrixColorFilter
+    #ctor(android.graphics.ColorMatrix matrix)
+    #ctor(float[] array)
+    getColorMatrix(android.graphics.ColorMatrix colorMatrix)
+  class ColorSpace
+    adapt(android.graphics.ColorSpace colorSpace, float[] whitePoint)
+    adapt(android.graphics.ColorSpace colorSpace, float[] whitePoint, android.graphics.ColorSpace.Adaptation adaptation)
+    cctToXyz(int cct)
+    chromaticAdaptation(android.graphics.ColorSpace.Adaptation adaptation, float[] srcWhitePoint, float[] dstWhitePoint)
+    connect(android.graphics.ColorSpace source)
+    connect(android.graphics.ColorSpace source, android.graphics.ColorSpace destination)
+    connect(android.graphics.ColorSpace source, android.graphics.ColorSpace destination, android.graphics.ColorSpace.RenderIntent intent)
+    connect(android.graphics.ColorSpace source, android.graphics.ColorSpace.RenderIntent intent)
+    equals(java.lang.Object o)
+    fromXyz(float x, float y, float z)
+    fromXyz(float[] v)
+    get(android.graphics.ColorSpace.Named name)
+    getFromDataSpace(int dataSpace)
+    getMaxValue(int component)
+    getMinValue(int component)
+    match(float[] toXYZD50, android.graphics.ColorSpace.Rgb.TransferParameters function)
+    toXyz(float r, float g, float b)
+    toXyz(float[] v)
+  class ColorSpace.Connector
+    transform(float r, float g, float b)
+    transform(float[] v)
+  class ColorSpace.Rgb
+    #ctor(java.lang.String name, float[] toXYZ, android.graphics.ColorSpace.Rgb.TransferParameters function)
+    #ctor(java.lang.String name, float[] toXYZ, double gamma)
+    #ctor(java.lang.String name, float[] primaries, float[] whitePoint, android.graphics.ColorSpace.Rgb.TransferParameters function)
+    #ctor(java.lang.String name, float[] primaries, float[] whitePoint, double gamma)
+    #ctor(java.lang.String name, float[] primaries, float[] whitePoint, java.util.function.DoubleUnaryOperator oetf, java.util.function.DoubleUnaryOperator eotf, float min, float max)
+    #ctor(java.lang.String name, float[] toXYZ, java.util.function.DoubleUnaryOperator oetf, java.util.function.DoubleUnaryOperator eotf)
+    equals(java.lang.Object o)
+    fromLinear(float r, float g, float b)
+    fromLinear(float[] v)
+    fromXyz(float[] v)
+    getInverseTransform(float[] inverseTransform)
+    getMaxValue(int component)
+    getMinValue(int component)
+    getPrimaries(float[] primaries)
+    getTransform(float[] transform)
+    getWhitePoint(float[] whitePoint)
+    toLinear(float r, float g, float b)
+    toLinear(float[] v)
+    toXyz(float[] v)
+  class ColorSpace.Rgb.TransferParameters
+    #ctor(double a, double b, double c, double d, double g)
+    #ctor(double a, double b, double c, double d, double e, double f, double g)
+    equals(java.lang.Object o)
+  class ComposePathEffect
+    #ctor(android.graphics.PathEffect outerpe, android.graphics.PathEffect innerpe)
+  class ComposeShader
+    #ctor(android.graphics.Shader shaderA, android.graphics.Shader shaderB, android.graphics.BlendMode blendMode)
+    #ctor(android.graphics.Shader shaderA, android.graphics.Shader shaderB, android.graphics.PorterDuff.Mode mode)
+    #ctor(android.graphics.Shader shaderA, android.graphics.Shader shaderB, android.graphics.Xfermode mode)
+  class CornerPathEffect
+    #ctor(float radius)
+  class DashPathEffect
+    #ctor(float[] intervals, float phase)
+  class DiscretePathEffect
+    #ctor(float segmentLength, float deviation)
+  class EmbossMaskFilter
+    #ctor(float[] direction, float ambient, float specular, float blurRadius)
+  class HardwareBufferRenderer
+    #ctor(android.hardware.HardwareBuffer buffer)
+    setContentRoot(android.graphics.RenderNode content)
+    setLightSourceAlpha(float ambientShadowAlpha, float spotShadowAlpha)
+    setLightSourceGeometry(float lightX, float lightY, float lightZ, float lightRadius)
+  class HardwareBufferRenderer.RenderRequest
+    draw(java.util.concurrent.Executor executor, java.util.function.Consumer<android.graphics.HardwareBufferRenderer.RenderResult> renderCallback)
+    setBufferTransform(int bufferTransform)
+    setColorSpace(android.graphics.ColorSpace colorSpace)
+  class HardwareRenderer
+    setContentRoot(android.graphics.RenderNode content)
+    setDrawingEnabled(boolean drawingEnabled)
+    setLightSourceAlpha(float ambientShadowAlpha, float spotShadowAlpha)
+    setLightSourceGeometry(float lightX, float lightY, float lightZ, float lightRadius)
+    setName(java.lang.String name)
+    setOpaque(boolean opaque)
+    setSurface(android.view.Surface surface)
+  class HardwareRenderer.FrameRenderRequest
+    setFrameCommitCallback(java.util.concurrent.Executor executor, java.lang.Runnable frameCommitCallback)
+    setVsyncTime(long vsyncTime)
+    setWaitForPresent(boolean shouldWait)
+  class ImageDecoder
+    createSource(android.content.ContentResolver cr, android.net.Uri uri)
+    createSource(android.content.res.AssetManager assets, java.lang.String fileName)
+    createSource(android.content.res.Resources res, int resId)
+    createSource(byte[] data)
+    createSource(byte[] data, int offset, int length)
+    createSource(java.io.File file)
+    createSource(java.nio.ByteBuffer buffer)
+    createSource(java.util.concurrent.Callable<android.content.res.AssetFileDescriptor> callable)
+    decodeBitmap(android.graphics.ImageDecoder.Source src)
+    decodeBitmap(android.graphics.ImageDecoder.Source src, android.graphics.ImageDecoder.OnHeaderDecodedListener listener)
+    decodeDrawable(android.graphics.ImageDecoder.Source src)
+    decodeDrawable(android.graphics.ImageDecoder.Source src, android.graphics.ImageDecoder.OnHeaderDecodedListener listener)
+    isMimeTypeSupported(java.lang.String mimeType)
+    setAllocator(int allocator)
+    setCrop(android.graphics.Rect subset)
+    setDecodeAsAlphaMaskEnabled(boolean enabled)
+    setMemorySizePolicy(int policy)
+    setMutableRequired(boolean mutable)
+    setOnPartialImageListener(android.graphics.ImageDecoder.OnPartialImageListener listener)
+    setPostProcessor(android.graphics.PostProcessor postProcessor)
+    setTargetColorSpace(android.graphics.ColorSpace colorSpace)
+    setTargetSampleSize(int sampleSize)
+    setTargetSize(int width, int height)
+    setUnpremultipliedRequired(boolean unpremultipliedRequired)
+  interface ImageDecoder.OnHeaderDecodedListener
+    onHeaderDecoded(android.graphics.ImageDecoder decoder, android.graphics.ImageDecoder.ImageInfo info, android.graphics.ImageDecoder.Source source)
+  interface ImageDecoder.OnPartialImageListener
+    onPartialImage(android.graphics.ImageDecoder.DecodeException exception)
+  class ImageFormat
+    getBitsPerPixel(int format)
+  class Insets
+    add(android.graphics.Insets a, android.graphics.Insets b)
+    equals(java.lang.Object o)
+    max(android.graphics.Insets a, android.graphics.Insets b)
+    min(android.graphics.Insets a, android.graphics.Insets b)
+    of(android.graphics.Rect r)
+    of(int left, int top, int right, int bottom)
+    subtract(android.graphics.Insets a, android.graphics.Insets b)
+    writeToParcel(android.os.Parcel out, int flags)
+  class Interpolator
+    #ctor(int valueCount)
+    #ctor(int valueCount, int frameCount)
+    reset(int valueCount)
+    reset(int valueCount, int frameCount)
+    setKeyFrame(int index, int msec, float[] values)
+    setKeyFrame(int index, int msec, float[] values, float[] blend)
+    setRepeatMirror(float repeatCount, boolean mirror)
+    timeToValues(float[] values)
+    timeToValues(int msec, float[] values)
+  class LightingColorFilter
+    #ctor(int mul, int add)
+  class LinearGradient
+    #ctor(float x0, float y0, float x1, float y1, int color0, int color1, android.graphics.Shader.TileMode tile)
+    #ctor(float x0, float y0, float x1, float y1, int[] colors, float[] positions, android.graphics.Shader.TileMode tile)
+    #ctor(float x0, float y0, float x1, float y1, long color0, long color1, android.graphics.Shader.TileMode tile)
+    #ctor(float x0, float y0, float x1, float y1, long[] colors, float[] positions, android.graphics.Shader.TileMode tile)
+  class Matrix
+    dump(java.io.PrintWriter pw)
+    equals(java.lang.Object obj)
+    getValues(float[] values)
+    invert(android.graphics.Matrix inverse)
+    mapPoints(float[] pts)
+    mapPoints(float[] dst, float[] src)
+    mapPoints(float[] dst, int dstIndex, float[] src, int srcIndex, int pointCount)
+    mapRadius(float radius)
+    mapRect(android.graphics.RectF rect)
+    mapRect(android.graphics.RectF dst, android.graphics.RectF src)
+    mapVectors(float[] vecs)
+    mapVectors(float[] dst, float[] src)
+    mapVectors(float[] dst, int dstIndex, float[] src, int srcIndex, int vectorCount)
+    #ctor(android.graphics.Matrix src)
+    postConcat(android.graphics.Matrix other)
+    postRotate(float degrees)
+    postRotate(float degrees, float px, float py)
+    postScale(float sx, float sy)
+    postScale(float sx, float sy, float px, float py)
+    postSkew(float kx, float ky)
+    postSkew(float kx, float ky, float px, float py)
+    postTranslate(float dx, float dy)
+    preConcat(android.graphics.Matrix other)
+    preRotate(float degrees)
+    preRotate(float degrees, float px, float py)
+    preScale(float sx, float sy)
+    preScale(float sx, float sy, float px, float py)
+    preSkew(float kx, float ky)
+    preSkew(float kx, float ky, float px, float py)
+    preTranslate(float dx, float dy)
+    set(android.graphics.Matrix src)
+    setConcat(android.graphics.Matrix a, android.graphics.Matrix b)
+    setPolyToPoly(float[] src, int srcIndex, float[] dst, int dstIndex, int pointCount)
+    setRectToRect(android.graphics.RectF src, android.graphics.RectF dst, android.graphics.Matrix.ScaleToFit stf)
+    setRotate(float degrees)
+    setRotate(float degrees, float px, float py)
+    setScale(float sx, float sy)
+    setScale(float sx, float sy, float px, float py)
+    setSinCos(float sinValue, float cosValue)
+    setSinCos(float sinValue, float cosValue, float px, float py)
+    setSkew(float kx, float ky)
+    setSkew(float kx, float ky, float px, float py)
+    setTranslate(float dx, float dy)
+    setValues(float[] values)
+  class Mesh
+    make(android.graphics.MeshSpecification meshSpec, int mode, java.nio.Buffer vertexBuffer, int vertexCount, android.graphics.Rect bounds)
+    makeIndexed(android.graphics.MeshSpecification meshSpec, int mode, java.nio.Buffer vertexBuffer, int vertexCount, java.nio.ShortBuffer indexBuffer, android.graphics.Rect bounds)
+    setColorUniform(java.lang.String uniformName, android.graphics.Color color)
+    setColorUniform(java.lang.String uniformName, int color)
+    setColorUniform(java.lang.String uniformName, long color)
+    setFloatUniform(java.lang.String uniformName, float value)
+    setFloatUniform(java.lang.String uniformName, float value1, float value2)
+    setFloatUniform(java.lang.String uniformName, float value1, float value2, float value3)
+    setFloatUniform(java.lang.String uniformName, float value1, float value2, float value3, float value4)
+    setFloatUniform(java.lang.String uniformName, float[] values)
+    setIntUniform(java.lang.String uniformName, int value)
+    setIntUniform(java.lang.String uniformName, int value1, int value2)
+    setIntUniform(java.lang.String uniformName, int value1, int value2, int value3)
+    setIntUniform(java.lang.String uniformName, int value1, int value2, int value3, int value4)
+    setIntUniform(java.lang.String uniformName, int[] values)
+  class MeshSpecification
+    make(java.util.List<android.graphics.MeshSpecification.Attribute> attributes, int vertexStride, java.util.List<android.graphics.MeshSpecification.Varying> varyings, java.lang.String vertexShader, java.lang.String fragmentShader)
+    make(java.util.List<android.graphics.MeshSpecification.Attribute> attributes, int vertexStride, java.util.List<android.graphics.MeshSpecification.Varying> varyings, java.lang.String vertexShader, java.lang.String fragmentShader, android.graphics.ColorSpace colorSpace)
+    make(java.util.List<android.graphics.MeshSpecification.Attribute> attributes, int vertexStride, java.util.List<android.graphics.MeshSpecification.Varying> varyings, java.lang.String vertexShader, java.lang.String fragmentShader, android.graphics.ColorSpace colorSpace, int alphaType)
+  class MeshSpecification.Attribute
+    #ctor(int type, int offset, java.lang.String name)
+  class MeshSpecification.Varying
+    #ctor(int type, java.lang.String name)
+  class Movie
+    decodeByteArray(byte[] data, int offset, int length)
+    decodeFile(java.lang.String pathName)
+    decodeStream(java.io.InputStream is)
+    draw(android.graphics.Canvas canvas, float x, float y)
+    draw(android.graphics.Canvas canvas, float x, float y, android.graphics.Paint paint)
+    setTime(int relativeMilliseconds)
+  class NinePatch
+    draw(android.graphics.Canvas canvas, android.graphics.Rect location)
+    draw(android.graphics.Canvas canvas, android.graphics.Rect location, android.graphics.Paint paint)
+    draw(android.graphics.Canvas canvas, android.graphics.RectF location)
+    getTransparentRegion(android.graphics.Rect bounds)
+    isNinePatchChunk(byte[] chunk)
+    #ctor(android.graphics.Bitmap bitmap, byte[] chunk)
+    #ctor(android.graphics.Bitmap bitmap, byte[] chunk, java.lang.String srcName)
+    setPaint(android.graphics.Paint p)
+  class Outline
+    getRect(android.graphics.Rect outRect)
+    offset(int dx, int dy)
+    #ctor(android.graphics.Outline src)
+    set(android.graphics.Outline src)
+    setAlpha(float alpha)
+    setConvexPath(android.graphics.Path convexPath)
+    setOval(android.graphics.Rect rect)
+    setOval(int left, int top, int right, int bottom)
+    setPath(android.graphics.Path path)
+    setRect(android.graphics.Rect rect)
+    setRect(int left, int top, int right, int bottom)
+    setRoundRect(android.graphics.Rect rect, float radius)
+    setRoundRect(int left, int top, int right, int bottom, float radius)
+  class Paint
+    breakText(char[] text, int index, int count, float maxWidth, float[] measuredWidth)
+    breakText(java.lang.CharSequence text, int start, int end, boolean measureForwards, float maxWidth, float[] measuredWidth)
+    breakText(java.lang.String text, boolean measureForwards, float maxWidth, float[] measuredWidth)
+    equalsForTextMeasurement(android.graphics.Paint other)
+    getFillPath(android.graphics.Path src, android.graphics.Path dst)
+    getFontMetrics(android.graphics.Paint.FontMetrics metrics)
+    getFontMetricsInt(android.graphics.Paint.FontMetricsInt fmi)
+    getFontMetricsInt(char[] text, int start, int count, int contextStart, int contextCount, boolean isRtl, android.graphics.Paint.FontMetricsInt outMetrics)
+    getFontMetricsInt(java.lang.CharSequence text, int start, int count, int contextStart, int contextCount, boolean isRtl, android.graphics.Paint.FontMetricsInt outMetrics)
+    getOffsetForAdvance(char[] text, int start, int end, int contextStart, int contextEnd, boolean isRtl, float advance)
+    getOffsetForAdvance(java.lang.CharSequence text, int start, int end, int contextStart, int contextEnd, boolean isRtl, float advance)
+    getRunAdvance(char[] text, int start, int end, int contextStart, int contextEnd, boolean isRtl, int offset)
+    getRunAdvance(java.lang.CharSequence text, int start, int end, int contextStart, int contextEnd, boolean isRtl, int offset)
+    getRunCharacterAdvance(char[] text, int start, int end, int contextStart, int contextEnd, boolean isRtl, int offset, float[] advances, int advancesIndex)
+    getRunCharacterAdvance(java.lang.CharSequence text, int start, int end, int contextStart, int contextEnd, boolean isRtl, int offset, float[] advances, int advancesIndex)
+    getTextBounds(char[] text, int index, int count, android.graphics.Rect bounds)
+    getTextBounds(java.lang.CharSequence text, int start, int end, android.graphics.Rect bounds)
+    getTextBounds(java.lang.String text, int start, int end, android.graphics.Rect bounds)
+    getTextPath(char[] text, int index, int count, float x, float y, android.graphics.Path path)
+    getTextPath(java.lang.String text, int start, int end, float x, float y, android.graphics.Path path)
+    getTextRunAdvances(char[] chars, int index, int count, int contextIndex, int contextCount, boolean isRtl, float[] advances, int advancesIndex)
+    getTextRunCursor(char[] text, int contextStart, int contextLength, boolean isRtl, int offset, int cursorOpt)
+    getTextRunCursor(java.lang.CharSequence text, int contextStart, int contextEnd, boolean isRtl, int offset, int cursorOpt)
+    getTextWidths(char[] text, int index, int count, float[] widths)
+    getTextWidths(java.lang.CharSequence text, int start, int end, float[] widths)
+    getTextWidths(java.lang.String text, float[] widths)
+    getTextWidths(java.lang.String text, int start, int end, float[] widths)
+    hasGlyph(java.lang.String string)
+    measureText(char[] text, int index, int count)
+    measureText(java.lang.CharSequence text, int start, int end)
+    measureText(java.lang.String text)
+    measureText(java.lang.String text, int start, int end)
+    #ctor(android.graphics.Paint paint)
+    #ctor(int flags)
+    set(android.graphics.Paint src)
+    setAlpha(int a)
+    setAntiAlias(boolean aa)
+    setARGB(int a, int r, int g, int b)
+    setBlendMode(android.graphics.BlendMode blendmode)
+    setColor(int color)
+    setColor(long color)
+    setColorFilter(android.graphics.ColorFilter filter)
+    setDither(boolean dither)
+    setElegantTextHeight(boolean elegant)
+    setEndHyphenEdit(int endHyphen)
+    setFakeBoldText(boolean fakeBoldText)
+    setFilterBitmap(boolean filter)
+    setFlags(int flags)
+    setFontFeatureSettings(java.lang.String settings)
+    setFontVariationSettings(java.lang.String fontVariationSettings)
+    setHinting(int mode)
+    setLetterSpacing(float letterSpacing)
+    setLinearText(boolean linearText)
+    setMaskFilter(android.graphics.MaskFilter maskfilter)
+    setPathEffect(android.graphics.PathEffect effect)
+    setShader(android.graphics.Shader shader)
+    setShadowLayer(float radius, float dx, float dy, int shadowColor)
+    setShadowLayer(float radius, float dx, float dy, long shadowColor)
+    setStartHyphenEdit(int startHyphen)
+    setStrikeThruText(boolean strikeThruText)
+    setStrokeCap(android.graphics.Paint.Cap cap)
+    setStrokeJoin(android.graphics.Paint.Join join)
+    setStrokeMiter(float miter)
+    setStrokeWidth(float width)
+    setStyle(android.graphics.Paint.Style style)
+    setSubpixelText(boolean subpixelText)
+    setTextAlign(android.graphics.Paint.Align align)
+    setTextLocale(java.util.Locale locale)
+    setTextLocales(android.os.LocaleList locales)
+    setTextScaleX(float scaleX)
+    setTextSize(float textSize)
+    setTextSkewX(float skewX)
+    setTypeface(android.graphics.Typeface typeface)
+    setUnderlineText(boolean underlineText)
+    setWordSpacing(float wordSpacing)
+    setXfermode(android.graphics.Xfermode xfermode)
+  class Paint.FontMetricsInt
+    equals(java.lang.Object o)
+  class PaintFlagsDrawFilter
+    #ctor(int clearBits, int setBits)
+  class ParcelableColorSpace
+    equals(java.lang.Object o)
+    isParcelable(android.graphics.ColorSpace colorSpace)
+    #ctor(android.graphics.ColorSpace colorSpace)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Path
+    addArc(android.graphics.RectF oval, float startAngle, float sweepAngle)
+    addArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle)
+    addCircle(float x, float y, float radius, android.graphics.Path.Direction dir)
+    addOval(android.graphics.RectF oval, android.graphics.Path.Direction dir)
+    addOval(float left, float top, float right, float bottom, android.graphics.Path.Direction dir)
+    addPath(android.graphics.Path src)
+    addPath(android.graphics.Path src, android.graphics.Matrix matrix)
+    addPath(android.graphics.Path src, float dx, float dy)
+    addRect(android.graphics.RectF rect, android.graphics.Path.Direction dir)
+    addRect(float left, float top, float right, float bottom, android.graphics.Path.Direction dir)
+    addRoundRect(android.graphics.RectF rect, float rx, float ry, android.graphics.Path.Direction dir)
+    addRoundRect(android.graphics.RectF rect, float[] radii, android.graphics.Path.Direction dir)
+    addRoundRect(float left, float top, float right, float bottom, float rx, float ry, android.graphics.Path.Direction dir)
+    addRoundRect(float left, float top, float right, float bottom, float[] radii, android.graphics.Path.Direction dir)
+    approximate(float acceptableError)
+    arcTo(android.graphics.RectF oval, float startAngle, float sweepAngle)
+    arcTo(android.graphics.RectF oval, float startAngle, float sweepAngle, boolean forceMoveTo)
+    arcTo(float left, float top, float right, float bottom, float startAngle, float sweepAngle, boolean forceMoveTo)
+    computeBounds(android.graphics.RectF bounds, boolean exact)
+    conicTo(float x1, float y1, float x2, float y2, float weight)
+    cubicTo(float x1, float y1, float x2, float y2, float x3, float y3)
+    incReserve(int extraPtCount)
+    interpolate(android.graphics.Path otherPath, float t, android.graphics.Path interpolatedPath)
+    isInterpolatable(android.graphics.Path otherPath)
+    isRect(android.graphics.RectF rect)
+    lineTo(float x, float y)
+    moveTo(float x, float y)
+    offset(float dx, float dy)
+    offset(float dx, float dy, android.graphics.Path dst)
+    op(android.graphics.Path path1, android.graphics.Path path2, android.graphics.Path.Op op)
+    op(android.graphics.Path path, android.graphics.Path.Op op)
+    #ctor(android.graphics.Path src)
+    quadTo(float x1, float y1, float x2, float y2)
+    rConicTo(float dx1, float dy1, float dx2, float dy2, float weight)
+    rCubicTo(float x1, float y1, float x2, float y2, float x3, float y3)
+    rLineTo(float dx, float dy)
+    rMoveTo(float dx, float dy)
+    rQuadTo(float dx1, float dy1, float dx2, float dy2)
+    set(android.graphics.Path src)
+    setFillType(android.graphics.Path.FillType ft)
+    setLastPoint(float dx, float dy)
+    transform(android.graphics.Matrix matrix)
+    transform(android.graphics.Matrix matrix, android.graphics.Path dst)
+  class PathDashPathEffect
+    #ctor(android.graphics.Path shape, float advance, float phase, android.graphics.PathDashPathEffect.Style style)
+  class PathIterator
+    next(float[] points, int offset)
+  class PathMeasure
+    getMatrix(float distance, android.graphics.Matrix matrix, int flags)
+    getPosTan(float distance, float[] pos, float[] tan)
+    getSegment(float startD, float stopD, android.graphics.Path dst, boolean startWithMoveTo)
+    #ctor(android.graphics.Path path, boolean forceClosed)
+    setPath(android.graphics.Path path, boolean forceClosed)
+  class Picture
+    beginRecording(int width, int height)
+    draw(android.graphics.Canvas canvas)
+    #ctor(android.graphics.Picture src)
+  class PixelFormat
+    formatHasAlpha(int format)
+    getPixelFormatInfo(int format, android.graphics.PixelFormat info)
+  class Point
+    equals(int x, int y)
+    equals(java.lang.Object o)
+    offset(int dx, int dy)
+    #ctor(android.graphics.Point src)
+    #ctor(int x, int y)
+    readFromParcel(android.os.Parcel in)
+    set(int x, int y)
+    writeToParcel(android.os.Parcel out, int flags)
+  class PointF
+    equals(float x, float y)
+    equals(java.lang.Object o)
+    length(float x, float y)
+    offset(float dx, float dy)
+    #ctor(android.graphics.Point p)
+    #ctor(android.graphics.PointF p)
+    #ctor(float x, float y)
+    readFromParcel(android.os.Parcel in)
+    set(android.graphics.PointF p)
+    set(float x, float y)
+    writeToParcel(android.os.Parcel out, int flags)
+  class PorterDuffColorFilter
+    equals(java.lang.Object object)
+    #ctor(int color, android.graphics.PorterDuff.Mode mode)
+  class PorterDuffXfermode
+    #ctor(android.graphics.PorterDuff.Mode mode)
+  interface PostProcessor
+    onPostProcess(android.graphics.Canvas canvas)
+  class RadialGradient
+    #ctor(float startX, float startY, float startRadius, float endX, float endY, float endRadius, long[] colors, float[] stops, android.graphics.Shader.TileMode tileMode)
+    #ctor(float centerX, float centerY, float radius, int centerColor, int edgeColor, android.graphics.Shader.TileMode tileMode)
+    #ctor(float centerX, float centerY, float radius, int[] colors, float[] stops, android.graphics.Shader.TileMode tileMode)
+    #ctor(float centerX, float centerY, float radius, long centerColor, long edgeColor, android.graphics.Shader.TileMode tileMode)
+    #ctor(float centerX, float centerY, float radius, long[] colors, float[] stops, android.graphics.Shader.TileMode tileMode)
+  class RecordingCanvas
+    drawArc(android.graphics.RectF oval, float startAngle, float sweepAngle, boolean useCenter, android.graphics.Paint paint)
+    drawArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle, boolean useCenter, android.graphics.Paint paint)
+    drawARGB(int a, int r, int g, int b)
+    drawBitmap(android.graphics.Bitmap bitmap, android.graphics.Matrix matrix, android.graphics.Paint paint)
+    drawBitmap(android.graphics.Bitmap bitmap, android.graphics.Rect src, android.graphics.Rect dst, android.graphics.Paint paint)
+    drawBitmap(android.graphics.Bitmap bitmap, android.graphics.Rect src, android.graphics.RectF dst, android.graphics.Paint paint)
+    drawBitmap(android.graphics.Bitmap bitmap, float left, float top, android.graphics.Paint paint)
+    drawBitmap(int[] colors, int offset, int stride, float x, float y, int width, int height, boolean hasAlpha, android.graphics.Paint paint)
+    drawBitmap(int[] colors, int offset, int stride, int x, int y, int width, int height, boolean hasAlpha, android.graphics.Paint paint)
+    drawBitmapMesh(android.graphics.Bitmap bitmap, int meshWidth, int meshHeight, float[] verts, int vertOffset, int[] colors, int colorOffset, android.graphics.Paint paint)
+    drawCircle(float cx, float cy, float radius, android.graphics.Paint paint)
+    drawColor(int color)
+    drawColor(int color, android.graphics.BlendMode mode)
+    drawColor(int color, android.graphics.PorterDuff.Mode mode)
+    drawColor(long color, android.graphics.BlendMode mode)
+    drawDoubleRoundRect(android.graphics.RectF outer, float outerRx, float outerRy, android.graphics.RectF inner, float innerRx, float innerRy, android.graphics.Paint paint)
+    drawDoubleRoundRect(android.graphics.RectF outer, float[] outerRadii, android.graphics.RectF inner, float[] innerRadii, android.graphics.Paint paint)
+    drawGlyphs(int[] glyphIds, int glyphIdOffset, float[] positions, int positionOffset, int glyphCount, android.graphics.fonts.Font font, android.graphics.Paint paint)
+    drawLine(float startX, float startY, float stopX, float stopY, android.graphics.Paint paint)
+    drawLines(float[] pts, android.graphics.Paint paint)
+    drawLines(float[] pts, int offset, int count, android.graphics.Paint paint)
+    drawMesh(android.graphics.Mesh mesh, android.graphics.BlendMode blendMode, android.graphics.Paint paint)
+    drawOval(android.graphics.RectF oval, android.graphics.Paint paint)
+    drawOval(float left, float top, float right, float bottom, android.graphics.Paint paint)
+    drawPaint(android.graphics.Paint paint)
+    drawPatch(android.graphics.NinePatch patch, android.graphics.Rect dst, android.graphics.Paint paint)
+    drawPatch(android.graphics.NinePatch patch, android.graphics.RectF dst, android.graphics.Paint paint)
+    drawPath(android.graphics.Path path, android.graphics.Paint paint)
+    drawPicture(android.graphics.Picture picture)
+    drawPicture(android.graphics.Picture picture, android.graphics.Rect dst)
+    drawPicture(android.graphics.Picture picture, android.graphics.RectF dst)
+    drawPoint(float x, float y, android.graphics.Paint paint)
+    drawPoints(float[] pts, android.graphics.Paint paint)
+    drawPoints(float[] pts, int offset, int count, android.graphics.Paint paint)
+    drawPosText(char[] text, int index, int count, float[] pos, android.graphics.Paint paint)
+    drawPosText(java.lang.String text, float[] pos, android.graphics.Paint paint)
+    drawRect(android.graphics.Rect r, android.graphics.Paint paint)
+    drawRect(android.graphics.RectF rect, android.graphics.Paint paint)
+    drawRect(float left, float top, float right, float bottom, android.graphics.Paint paint)
+    drawRenderNode(android.graphics.RenderNode renderNode)
+    drawRGB(int r, int g, int b)
+    drawRoundRect(android.graphics.RectF rect, float rx, float ry, android.graphics.Paint paint)
+    drawRoundRect(float left, float top, float right, float bottom, float rx, float ry, android.graphics.Paint paint)
+    drawText(char[] text, int index, int count, float x, float y, android.graphics.Paint paint)
+    drawText(java.lang.CharSequence text, int start, int end, float x, float y, android.graphics.Paint paint)
+    drawText(java.lang.String text, float x, float y, android.graphics.Paint paint)
+    drawText(java.lang.String text, int start, int end, float x, float y, android.graphics.Paint paint)
+    drawTextOnPath(char[] text, int index, int count, android.graphics.Path path, float hOffset, float vOffset, android.graphics.Paint paint)
+    drawTextOnPath(java.lang.String text, android.graphics.Path path, float hOffset, float vOffset, android.graphics.Paint paint)
+    drawTextRun(android.graphics.text.MeasuredText measuredText, int start, int end, int contextStart, int contextEnd, float x, float y, boolean isRtl, android.graphics.Paint paint)
+    drawTextRun(char[] text, int index, int count, int contextIndex, int contextCount, float x, float y, boolean isRtl, android.graphics.Paint paint)
+    drawTextRun(java.lang.CharSequence text, int start, int end, int contextStart, int contextEnd, float x, float y, boolean isRtl, android.graphics.Paint paint)
+    drawVertices(android.graphics.Canvas.VertexMode mode, int vertexCount, float[] verts, int vertOffset, float[] texs, int texOffset, int[] colors, int colorOffset, short[] indices, int indexOffset, int indexCount, android.graphics.Paint paint)
+    setBitmap(android.graphics.Bitmap bitmap)
+    setDensity(int density)
+  class Rect
+    contains(android.graphics.Rect r)
+    contains(int x, int y)
+    contains(int left, int top, int right, int bottom)
+    equals(java.lang.Object o)
+    inset(android.graphics.Insets insets)
+    inset(int dx, int dy)
+    inset(int left, int top, int right, int bottom)
+    intersect(android.graphics.Rect r)
+    intersect(int left, int top, int right, int bottom)
+    intersects(android.graphics.Rect a, android.graphics.Rect b)
+    intersects(int left, int top, int right, int bottom)
+    offset(int dx, int dy)
+    offsetTo(int newLeft, int newTop)
+    readFromParcel(android.os.Parcel in)
+    #ctor(android.graphics.Rect r)
+    #ctor(int left, int top, int right, int bottom)
+    set(android.graphics.Rect src)
+    set(int left, int top, int right, int bottom)
+    setIntersect(android.graphics.Rect a, android.graphics.Rect b)
+    unflattenFromString(java.lang.String str)
+    union(android.graphics.Rect r)
+    union(int x, int y)
+    union(int left, int top, int right, int bottom)
+    writeToParcel(android.os.Parcel out, int flags)
+  class RectF
+    contains(android.graphics.RectF r)
+    contains(float x, float y)
+    contains(float left, float top, float right, float bottom)
+    equals(java.lang.Object o)
+    inset(float dx, float dy)
+    intersect(android.graphics.RectF r)
+    intersect(float left, float top, float right, float bottom)
+    intersects(android.graphics.RectF a, android.graphics.RectF b)
+    intersects(float left, float top, float right, float bottom)
+    offset(float dx, float dy)
+    offsetTo(float newLeft, float newTop)
+    readFromParcel(android.os.Parcel in)
+    #ctor(android.graphics.Rect r)
+    #ctor(android.graphics.RectF r)
+    #ctor(float left, float top, float right, float bottom)
+    round(android.graphics.Rect dst)
+    roundOut(android.graphics.Rect dst)
+    set(android.graphics.Rect src)
+    set(android.graphics.RectF src)
+    set(float left, float top, float right, float bottom)
+    setIntersect(android.graphics.RectF a, android.graphics.RectF b)
+    union(android.graphics.RectF r)
+    union(float x, float y)
+    union(float left, float top, float right, float bottom)
+    writeToParcel(android.os.Parcel out, int flags)
+  class Region
+    contains(int x, int y)
+    equals(java.lang.Object obj)
+    getBoundaryPath(android.graphics.Path path)
+    getBounds(android.graphics.Rect r)
+    op(android.graphics.Rect rect, android.graphics.Region region, android.graphics.Region.Op op)
+    op(android.graphics.Rect r, android.graphics.Region.Op op)
+    op(android.graphics.Region region1, android.graphics.Region region2, android.graphics.Region.Op op)
+    op(android.graphics.Region region, android.graphics.Region.Op op)
+    op(int left, int top, int right, int bottom, android.graphics.Region.Op op)
+    quickContains(android.graphics.Rect r)
+    quickContains(int left, int top, int right, int bottom)
+    quickReject(android.graphics.Rect r)
+    quickReject(android.graphics.Region rgn)
+    quickReject(int left, int top, int right, int bottom)
+    #ctor(android.graphics.Rect r)
+    #ctor(android.graphics.Region region)
+    #ctor(int left, int top, int right, int bottom)
+    set(android.graphics.Rect r)
+    set(android.graphics.Region region)
+    set(int left, int top, int right, int bottom)
+    setPath(android.graphics.Path path, android.graphics.Region clip)
+    translate(int dx, int dy)
+    translate(int dx, int dy, android.graphics.Region dst)
+    union(android.graphics.Rect r)
+    writeToParcel(android.os.Parcel p, int flags)
+  class RegionIterator
+    next(android.graphics.Rect r)
+    #ctor(android.graphics.Region region)
+  class RenderEffect
+    createBitmapEffect(android.graphics.Bitmap bitmap)
+    createBitmapEffect(android.graphics.Bitmap bitmap, android.graphics.Rect src, android.graphics.Rect dst)
+    createBlendModeEffect(android.graphics.RenderEffect dst, android.graphics.RenderEffect src, android.graphics.BlendMode blendMode)
+    createBlurEffect(float radiusX, float radiusY, android.graphics.RenderEffect inputEffect, android.graphics.Shader.TileMode edgeTreatment)
+    createBlurEffect(float radiusX, float radiusY, android.graphics.Shader.TileMode edgeTreatment)
+    createChainEffect(android.graphics.RenderEffect outer, android.graphics.RenderEffect inner)
+    createColorFilterEffect(android.graphics.ColorFilter colorFilter)
+    createColorFilterEffect(android.graphics.ColorFilter colorFilter, android.graphics.RenderEffect renderEffect)
+    createOffsetEffect(float offsetX, float offsetY)
+    createOffsetEffect(float offsetX, float offsetY, android.graphics.RenderEffect input)
+    createRuntimeShaderEffect(android.graphics.RuntimeShader shader, java.lang.String uniformShaderName)
+    createShaderEffect(android.graphics.Shader shader)
+  class RenderNode
+    beginRecording(int width, int height)
+    getInverseMatrix(android.graphics.Matrix outMatrix)
+    getMatrix(android.graphics.Matrix outMatrix)
+    offsetLeftAndRight(int offset)
+    offsetTopAndBottom(int offset)
+    #ctor(java.lang.String name)
+    setAlpha(float alpha)
+    setAmbientShadowColor(int color)
+    setCameraDistance(float distance)
+    setClipRect(android.graphics.Rect rect)
+    setClipToBounds(boolean clipToBounds)
+    setClipToOutline(boolean clipToOutline)
+    setElevation(float lift)
+    setForceDarkAllowed(boolean allow)
+    setHasOverlappingRendering(boolean hasOverlappingRendering)
+    setOutline(android.graphics.Outline outline)
+    setPivotX(float pivotX)
+    setPivotY(float pivotY)
+    setPosition(android.graphics.Rect position)
+    setPosition(int left, int top, int right, int bottom)
+    setProjectBackwards(boolean shouldProject)
+    setProjectionReceiver(boolean shouldRecieve)
+    setRenderEffect(android.graphics.RenderEffect renderEffect)
+    setRotationX(float rotationX)
+    setRotationY(float rotationY)
+    setRotationZ(float rotation)
+    setScaleX(float scaleX)
+    setScaleY(float scaleY)
+    setSpotShadowColor(int color)
+    setTranslationX(float translationX)
+    setTranslationY(float translationY)
+    setTranslationZ(float translationZ)
+    setUseCompositingLayer(boolean forceToLayer, android.graphics.Paint paint)
+  class RuntimeShader
+    #ctor(java.lang.String shader)
+    setColorUniform(java.lang.String uniformName, android.graphics.Color color)
+    setColorUniform(java.lang.String uniformName, int color)
+    setColorUniform(java.lang.String uniformName, long color)
+    setFloatUniform(java.lang.String uniformName, float value)
+    setFloatUniform(java.lang.String uniformName, float value1, float value2)
+    setFloatUniform(java.lang.String uniformName, float value1, float value2, float value3)
+    setFloatUniform(java.lang.String uniformName, float value1, float value2, float value3, float value4)
+    setFloatUniform(java.lang.String uniformName, float[] values)
+    setInputBuffer(java.lang.String shaderName, android.graphics.BitmapShader shader)
+    setInputShader(java.lang.String shaderName, android.graphics.Shader shader)
+    setIntUniform(java.lang.String uniformName, int value)
+    setIntUniform(java.lang.String uniformName, int value1, int value2)
+    setIntUniform(java.lang.String uniformName, int value1, int value2, int value3)
+    setIntUniform(java.lang.String uniformName, int value1, int value2, int value3, int value4)
+    setIntUniform(java.lang.String uniformName, int[] values)
+  class Shader
+    getLocalMatrix(android.graphics.Matrix localM)
+    setLocalMatrix(android.graphics.Matrix localM)
+  class SumPathEffect
+    #ctor(android.graphics.PathEffect first, android.graphics.PathEffect second)
+  class SurfaceTexture
+    attachToGLContext(int texName)
+    getTransformMatrix(float[] mtx)
+    setDefaultBufferSize(int width, int height)
+    setOnFrameAvailableListener(android.graphics.SurfaceTexture.OnFrameAvailableListener listener)
+    setOnFrameAvailableListener(android.graphics.SurfaceTexture.OnFrameAvailableListener listener, android.os.Handler handler)
+    #ctor(boolean singleBufferMode)
+    #ctor(int texName)
+    #ctor(int texName, boolean singleBufferMode)
+  interface SurfaceTexture.OnFrameAvailableListener
+    onFrameAvailable(android.graphics.SurfaceTexture surfaceTexture)
+  class SurfaceTexture.OutOfResourcesException
+    #ctor(java.lang.String name)
+  class SweepGradient
+    #ctor(float cx, float cy, int color0, int color1)
+    #ctor(float cx, float cy, int[] colors, float[] positions)
+    #ctor(float cx, float cy, long color0, long color1)
+    #ctor(float cx, float cy, long[] colors, float[] positions)
+  class Typeface
+    create(android.graphics.Typeface family, int style)
+    create(android.graphics.Typeface family, int weight, boolean italic)
+    create(java.lang.String familyName, int style)
+    createFromAsset(android.content.res.AssetManager mgr, java.lang.String path)
+    createFromFile(java.io.File file)
+    createFromFile(java.lang.String path)
+    defaultFromStyle(int style)
+    equals(java.lang.Object o)
+  class Typeface.Builder
+    setFallback(java.lang.String familyName)
+    setFontVariationSettings(android.graphics.fonts.FontVariationAxis[] axes)
+    setFontVariationSettings(java.lang.String variationSettings)
+    setItalic(boolean italic)
+    setTtcIndex(int ttcIndex)
+    setWeight(int weight)
+    #ctor(android.content.res.AssetManager assetManager, java.lang.String path)
+    #ctor(java.io.File path)
+    #ctor(java.io.FileDescriptor fd)
+    #ctor(java.lang.String path)
+  class Typeface.CustomFallbackBuilder
+    addCustomFallback(android.graphics.fonts.FontFamily family)
+    setStyle(android.graphics.fonts.FontStyle style)
+    setSystemFallback(java.lang.String familyName)
+    #ctor(android.graphics.fonts.FontFamily family)
+  class YuvImage
+    compressToJpeg(android.graphics.Rect rectangle, int quality, java.io.OutputStream stream)
+    #ctor(byte[] yuv, int format, int width, int height, int[] strides)
+
+package android.graphics.drawable
+;---------------------------------------
+  class AdaptiveIconDrawable
+    #ctor(android.graphics.drawable.Drawable backgroundDrawable, android.graphics.drawable.Drawable foregroundDrawable)
+    #ctor(android.graphics.drawable.Drawable backgroundDrawable, android.graphics.drawable.Drawable foregroundDrawable, android.graphics.drawable.Drawable monochromeDrawable)
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    getHotspotBounds(android.graphics.Rect outRect)
+    getOutline(android.graphics.Outline outline)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    invalidateDrawable(android.graphics.drawable.Drawable who)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLevelChange(int level)
+    onStateChange(int[] state)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setDither(boolean dither)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setOpacity(int opacity)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setVisible(boolean visible, boolean restart)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+  interface Animatable2
+    registerAnimationCallback(android.graphics.drawable.Animatable2.AnimationCallback callback)
+    unregisterAnimationCallback(android.graphics.drawable.Animatable2.AnimationCallback callback)
+  class Animatable2.AnimationCallback
+    onAnimationEnd(android.graphics.drawable.Drawable drawable)
+    onAnimationStart(android.graphics.drawable.Drawable drawable)
+  class AnimatedImageDrawable
+    draw(android.graphics.Canvas canvas)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLayoutDirectionChanged(int layoutDirection)
+    registerAnimationCallback(android.graphics.drawable.Animatable2.AnimationCallback callback)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setRepeatCount(int repeatCount)
+    unregisterAnimationCallback(android.graphics.drawable.Animatable2.AnimationCallback callback)
+  class AnimatedStateListDrawable
+    addState(int[] stateSet, android.graphics.drawable.Drawable drawable, int id)
+    <T> addTransition(int fromId, int toId, T transition, boolean reversible)
+    applyTheme(android.content.res.Resources.Theme theme)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onStateChange(int[] stateSet)
+    setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState state)
+    setVisible(boolean visible, boolean restart)
+  class AnimatedVectorDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    getOutline(android.graphics.Outline outline)
+    inflate(android.content.res.Resources res, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLayoutDirectionChanged(int layoutDirection)
+    onLevelChange(int level)
+    onStateChange(int[] state)
+    registerAnimationCallback(android.graphics.drawable.Animatable2.AnimationCallback callback)
+    setAlpha(int alpha)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setVisible(boolean visible, boolean restart)
+    unregisterAnimationCallback(android.graphics.drawable.Animatable2.AnimationCallback callback)
+  class AnimationDrawable
+    addFrame(android.graphics.drawable.Drawable frame, int duration)
+    getDuration(int i)
+    getFrame(int index)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState state)
+    setOneShot(boolean oneShot)
+    setVisible(boolean visible, boolean restart)
+    unscheduleSelf(java.lang.Runnable what)
+  class BitmapDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    #ctor(android.content.res.Resources res)
+    #ctor(android.content.res.Resources res, android.graphics.Bitmap bitmap)
+    #ctor(android.content.res.Resources res, java.io.InputStream is)
+    #ctor(android.content.res.Resources res, java.lang.String filepath)
+    #ctor(android.graphics.Bitmap bitmap)
+    #ctor(java.io.InputStream is)
+    #ctor(java.lang.String filepath)
+    draw(android.graphics.Canvas canvas)
+    getOutline(android.graphics.Outline outline)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect bounds)
+    onStateChange(int[] stateSet)
+    setAlpha(int alpha)
+    setAntiAlias(boolean aa)
+    setAutoMirrored(boolean mirrored)
+    setBitmap(android.graphics.Bitmap bitmap)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setDither(boolean dither)
+    setFilterBitmap(boolean filter)
+    setGravity(int gravity)
+    setMipMap(boolean mipMap)
+    setTargetDensity(android.graphics.Canvas canvas)
+    setTargetDensity(android.util.DisplayMetrics metrics)
+    setTargetDensity(int density)
+    setTileModeX(android.graphics.Shader.TileMode mode)
+    setTileModeXY(android.graphics.Shader.TileMode xmode, android.graphics.Shader.TileMode ymode)
+    setTileModeY(android.graphics.Shader.TileMode mode)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+  class ClipDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    #ctor(android.graphics.drawable.Drawable drawable, int gravity, int orientation)
+    draw(android.graphics.Canvas canvas)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onLevelChange(int level)
+  class ColorDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    #ctor(int color)
+    draw(android.graphics.Canvas canvas)
+    getOutline(android.graphics.Outline outline)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onStateChange(int[] stateSet)
+    setAlpha(int alpha)
+    setColor(int color)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+  class ColorStateListDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    #ctor(android.content.res.ColorStateList colorStateList)
+    draw(android.graphics.Canvas canvas)
+    invalidateDrawable(android.graphics.drawable.Drawable who)
+    onBoundsChange(android.graphics.Rect bounds)
+    onStateChange(int[] state)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    setAlpha(int alpha)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setColorStateList(android.content.res.ColorStateList colorStateList)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+  class Drawable
+    applyTheme(android.content.res.Resources.Theme t)
+    copyBounds(android.graphics.Rect bounds)
+    createFromPath(java.lang.String pathName)
+    createFromResourceStream(android.content.res.Resources res, android.util.TypedValue value, java.io.InputStream is, java.lang.String srcName)
+    createFromResourceStream(android.content.res.Resources res, android.util.TypedValue value, java.io.InputStream is, java.lang.String srcName, android.graphics.BitmapFactory.Options opts)
+    createFromStream(java.io.InputStream is, java.lang.String srcName)
+    createFromXml(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser)
+    createFromXml(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.content.res.Resources.Theme theme)
+    createFromXmlInner(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs)
+    createFromXmlInner(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    draw(android.graphics.Canvas canvas)
+    getHotspotBounds(android.graphics.Rect outRect)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLayoutDirectionChanged(int layoutDirection)
+    onLevelChange(int level)
+    onStateChange(int[] state)
+    resolveOpacity(int op1, int op2)
+    scheduleSelf(java.lang.Runnable what, long when)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setBounds(android.graphics.Rect bounds)
+    setBounds(int left, int top, int right, int bottom)
+    setCallback(android.graphics.drawable.Drawable.Callback cb)
+    setChangingConfigurations(int configs)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setColorFilter(int color, android.graphics.PorterDuff.Mode mode)
+    setDither(boolean dither)
+    setFilterBitmap(boolean filter)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setLayoutDirection(int layoutDirection)
+    setLevel(int level)
+    setState(int[] stateSet)
+    setTint(int tintColor)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setVisible(boolean visible, boolean restart)
+    unscheduleSelf(java.lang.Runnable what)
+  interface Drawable.Callback
+    invalidateDrawable(android.graphics.drawable.Drawable who)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+  class Drawable.ConstantState
+    newDrawable(android.content.res.Resources res)
+    newDrawable(android.content.res.Resources res, android.content.res.Resources.Theme theme)
+  class DrawableContainer
+    applyTheme(android.content.res.Resources.Theme theme)
+    draw(android.graphics.Canvas canvas)
+    getHotspotBounds(android.graphics.Rect outRect)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    invalidateDrawable(android.graphics.drawable.Drawable who)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLayoutDirectionChanged(int layoutDirection)
+    onLevelChange(int level)
+    onStateChange(int[] state)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    selectDrawable(int index)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState state)
+    setDither(boolean dither)
+    setEnterFadeDuration(int ms)
+    setExitFadeDuration(int ms)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setVisible(boolean visible, boolean restart)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+  class DrawableContainer.DrawableContainerState
+    addChild(android.graphics.drawable.Drawable dr)
+    getChild(int index)
+    growArray(int oldSize, int newSize)
+    setConstantSize(boolean constant)
+    setEnterFadeDuration(int duration)
+    setExitFadeDuration(int duration)
+    setVariablePadding(boolean variable)
+  class DrawableWrapper
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    #ctor(android.graphics.drawable.Drawable dr)
+    getHotspotBounds(android.graphics.Rect outRect)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    invalidateDrawable(android.graphics.drawable.Drawable who)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLayoutDirectionChanged(int layoutDirection)
+    onLevelChange(int level)
+    onStateChange(int[] state)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    setAlpha(int alpha)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setDrawable(android.graphics.drawable.Drawable dr)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setVisible(boolean visible, boolean restart)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+  class GradientDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    #ctor(android.graphics.drawable.GradientDrawable.Orientation orientation, int[] colors)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect r)
+    onLevelChange(int level)
+    onStateChange(int[] stateSet)
+    setAlpha(int alpha)
+    setColor(android.content.res.ColorStateList colorStateList)
+    setColor(int argb)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setColors(int[] colors)
+    setColors(int[] colors, float[] offsets)
+    setCornerRadii(float[] radii)
+    setCornerRadius(float radius)
+    setDither(boolean dither)
+    setGradientCenter(float x, float y)
+    setGradientRadius(float gradientRadius)
+    setGradientType(int gradient)
+    setInnerRadius(int innerRadius)
+    setInnerRadiusRatio(float innerRadiusRatio)
+    setOrientation(android.graphics.drawable.GradientDrawable.Orientation orientation)
+    setPadding(int left, int top, int right, int bottom)
+    setShape(int shape)
+    setSize(int width, int height)
+    setStroke(int width, android.content.res.ColorStateList colorStateList)
+    setStroke(int width, android.content.res.ColorStateList colorStateList, float dashWidth, float dashGap)
+    setStroke(int width, int color)
+    setStroke(int width, int color, float dashWidth, float dashGap)
+    setThickness(int thickness)
+    setThicknessRatio(float thicknessRatio)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setUseLevel(boolean useLevel)
+  class Icon
+    createWithAdaptiveBitmap(android.graphics.Bitmap bits)
+    createWithAdaptiveBitmapContentUri(android.net.Uri uri)
+    createWithAdaptiveBitmapContentUri(java.lang.String uri)
+    createWithBitmap(android.graphics.Bitmap bits)
+    createWithContentUri(android.net.Uri uri)
+    createWithContentUri(java.lang.String uri)
+    createWithData(byte[] data, int offset, int length)
+    createWithFilePath(java.lang.String path)
+    createWithResource(android.content.Context context, int resId)
+    createWithResource(java.lang.String resPackage, int resId)
+    loadDrawable(android.content.Context context)
+    loadDrawableAsync(android.content.Context context, android.graphics.drawable.Icon.OnDrawableLoadedListener listener, android.os.Handler handler)
+    loadDrawableAsync(android.content.Context context, android.os.Message andThen)
+    setTint(int tint)
+    setTintBlendMode(android.graphics.BlendMode mode)
+    setTintList(android.content.res.ColorStateList tintList)
+    setTintMode(android.graphics.PorterDuff.Mode mode)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface Icon.OnDrawableLoadedListener
+    onDrawableLoaded(android.graphics.drawable.Drawable d)
+  class InsetDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    #ctor(android.graphics.drawable.Drawable drawable, float inset)
+    #ctor(android.graphics.drawable.Drawable drawable, float insetLeftFraction, float insetTopFraction, float insetRightFraction, float insetBottomFraction)
+    #ctor(android.graphics.drawable.Drawable drawable, int inset)
+    #ctor(android.graphics.drawable.Drawable drawable, int insetLeft, int insetTop, int insetRight, int insetBottom)
+    onBoundsChange(android.graphics.Rect bounds)
+  class LayerDrawable
+    addLayer(android.graphics.drawable.Drawable dr)
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    findDrawableByLayerId(int id)
+    findIndexByLayerId(int id)
+    getDrawable(int index)
+    getHotspotBounds(android.graphics.Rect outRect)
+    getId(int index)
+    getLayerGravity(int index)
+    getLayerHeight(int index)
+    getLayerInsetBottom(int index)
+    getLayerInsetEnd(int index)
+    getLayerInsetLeft(int index)
+    getLayerInsetRight(int index)
+    getLayerInsetStart(int index)
+    getLayerInsetTop(int index)
+    getLayerWidth(int index)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    invalidateDrawable(android.graphics.drawable.Drawable who)
+    #ctor(android.graphics.drawable.Drawable[] layers)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLayoutDirectionChanged(int layoutDirection)
+    onLevelChange(int level)
+    onStateChange(int[] state)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setDither(boolean dither)
+    setDrawable(int index, android.graphics.drawable.Drawable drawable)
+    setDrawableByLayerId(int id, android.graphics.drawable.Drawable drawable)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setId(int index, int id)
+    setLayerGravity(int index, int gravity)
+    setLayerHeight(int index, int h)
+    setLayerInset(int index, int l, int t, int r, int b)
+    setLayerInsetBottom(int index, int b)
+    setLayerInsetEnd(int index, int e)
+    setLayerInsetLeft(int index, int l)
+    setLayerInsetRelative(int index, int s, int t, int e, int b)
+    setLayerInsetRight(int index, int r)
+    setLayerInsetStart(int index, int s)
+    setLayerInsetTop(int index, int t)
+    setLayerSize(int index, int w, int h)
+    setLayerWidth(int index, int w)
+    setOpacity(int opacity)
+    setPadding(int left, int top, int right, int bottom)
+    setPaddingMode(int mode)
+    setPaddingRelative(int start, int top, int end, int bottom)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    setVisible(boolean visible, boolean restart)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+  class LevelListDrawable
+    addLevel(int low, int high, android.graphics.drawable.Drawable drawable)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onLevelChange(int level)
+    setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState state)
+  class NinePatchDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    #ctor(android.content.res.Resources res, android.graphics.Bitmap bitmap, byte[] chunk, android.graphics.Rect padding, java.lang.String srcName)
+    #ctor(android.content.res.Resources res, android.graphics.NinePatch patch)
+    #ctor(android.graphics.Bitmap bitmap, byte[] chunk, android.graphics.Rect padding, java.lang.String srcName)
+    #ctor(android.graphics.NinePatch patch)
+    onStateChange(int[] stateSet)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setDither(boolean dither)
+    setFilterBitmap(boolean filter)
+    setTargetDensity(android.graphics.Canvas canvas)
+    setTargetDensity(android.util.DisplayMetrics metrics)
+    setTargetDensity(int density)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+  class PaintDrawable
+    inflateTag(java.lang.String name, android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs)
+    #ctor(int color)
+    setCornerRadii(float[] radii)
+    setCornerRadius(float radius)
+  class PictureDrawable
+    draw(android.graphics.Canvas canvas)
+    #ctor(android.graphics.Picture picture)
+    setAlpha(int alpha)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setPicture(android.graphics.Picture picture)
+  class RippleDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    getHotspotBounds(android.graphics.Rect outRect)
+    getOutline(android.graphics.Outline outline)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect bounds)
+    onStateChange(int[] stateSet)
+    #ctor(android.content.res.ColorStateList color, android.graphics.drawable.Drawable content, android.graphics.drawable.Drawable mask)
+    setColor(android.content.res.ColorStateList color)
+    setDrawableByLayerId(int id, android.graphics.drawable.Drawable drawable)
+    setEffectColor(android.content.res.ColorStateList color)
+    setHotspot(float x, float y)
+    setHotspotBounds(int left, int top, int right, int bottom)
+    setPaddingMode(int mode)
+    setRadius(int radius)
+    setVisible(boolean visible, boolean restart)
+  class RotateDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onLevelChange(int level)
+    setFromDegrees(float fromDegrees)
+    setPivotX(float pivotX)
+    setPivotXRelative(boolean relative)
+    setPivotY(float pivotY)
+    setPivotYRelative(boolean relative)
+    setToDegrees(float toDegrees)
+  class ScaleDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onBoundsChange(android.graphics.Rect bounds)
+    onLevelChange(int level)
+    #ctor(android.graphics.drawable.Drawable drawable, int gravity, float scaleWidth, float scaleHeight)
+  class ShapeDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    getOutline(android.graphics.Outline outline)
+    getPadding(android.graphics.Rect padding)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    inflateTag(java.lang.String name, android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs)
+    onBoundsChange(android.graphics.Rect bounds)
+    onDraw(android.graphics.drawable.shapes.Shape shape, android.graphics.Canvas canvas, android.graphics.Paint paint)
+    onStateChange(int[] stateSet)
+    setAlpha(int alpha)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setDither(boolean dither)
+    setIntrinsicHeight(int height)
+    setIntrinsicWidth(int width)
+    setPadding(android.graphics.Rect padding)
+    setPadding(int left, int top, int right, int bottom)
+    setShaderFactory(android.graphics.drawable.ShapeDrawable.ShaderFactory fact)
+    setShape(android.graphics.drawable.shapes.Shape s)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+    #ctor(android.graphics.drawable.shapes.Shape s)
+  class ShapeDrawable.ShaderFactory
+    resize(int width, int height)
+  class StateListDrawable
+    addState(int[] stateSet, android.graphics.drawable.Drawable drawable)
+    applyTheme(android.content.res.Resources.Theme theme)
+    findStateDrawableIndex(int[] stateSet)
+    getStateDrawable(int index)
+    getStateSet(int index)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onStateChange(int[] stateSet)
+    setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState state)
+  class TransitionDrawable
+    draw(android.graphics.Canvas canvas)
+    reverseTransition(int duration)
+    setCrossFadeEnabled(boolean enabled)
+    startTransition(int durationMillis)
+    #ctor(android.graphics.drawable.Drawable[] layers)
+  class VectorDrawable
+    applyTheme(android.content.res.Resources.Theme t)
+    draw(android.graphics.Canvas canvas)
+    inflate(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs, android.content.res.Resources.Theme theme)
+    onStateChange(int[] stateSet)
+    setAlpha(int alpha)
+    setAutoMirrored(boolean mirrored)
+    setColorFilter(android.graphics.ColorFilter colorFilter)
+    setTintBlendMode(android.graphics.BlendMode blendMode)
+    setTintList(android.content.res.ColorStateList tint)
+
+package android.graphics.drawable.shapes
+;---------------------------------------
+  class ArcShape
+    #ctor(float startAngle, float sweepAngle)
+    draw(android.graphics.Canvas canvas, android.graphics.Paint paint)
+    equals(java.lang.Object o)
+    getOutline(android.graphics.Outline outline)
+  class OvalShape
+    draw(android.graphics.Canvas canvas, android.graphics.Paint paint)
+    getOutline(android.graphics.Outline outline)
+  class PathShape
+    draw(android.graphics.Canvas canvas, android.graphics.Paint paint)
+    equals(java.lang.Object o)
+    onResize(float width, float height)
+    #ctor(android.graphics.Path path, float stdWidth, float stdHeight)
+  class RectShape
+    draw(android.graphics.Canvas canvas, android.graphics.Paint paint)
+    equals(java.lang.Object o)
+    getOutline(android.graphics.Outline outline)
+    onResize(float width, float height)
+  class RoundRectShape
+    draw(android.graphics.Canvas canvas, android.graphics.Paint paint)
+    equals(java.lang.Object o)
+    getOutline(android.graphics.Outline outline)
+    onResize(float w, float h)
+    #ctor(float[] outerRadii, android.graphics.RectF inset, float[] innerRadii)
+  class Shape
+    draw(android.graphics.Canvas canvas, android.graphics.Paint paint)
+    equals(java.lang.Object o)
+    getOutline(android.graphics.Outline outline)
+    onResize(float width, float height)
+    resize(float width, float height)
+
+package android.graphics.fonts
+;---------------------------------------
+  class Font
+    equals(java.lang.Object o)
+    getGlyphBounds(int glyphId, android.graphics.Paint paint, android.graphics.RectF outBoundingBox)
+    getMetrics(android.graphics.Paint paint, android.graphics.Paint.FontMetrics outMetrics)
+  class Font.Builder
+    #ctor(android.content.res.AssetManager am, java.lang.String path)
+    #ctor(android.content.res.Resources res, int resId)
+    #ctor(android.graphics.fonts.Font font)
+    #ctor(android.os.ParcelFileDescriptor fd)
+    #ctor(android.os.ParcelFileDescriptor fd, long offset, long size)
+    #ctor(java.io.File path)
+    #ctor(java.nio.ByteBuffer buffer)
+    setFontVariationSettings(android.graphics.fonts.FontVariationAxis[] axes)
+    setFontVariationSettings(java.lang.String variationSettings)
+    setSlant(int slant)
+    setTtcIndex(int ttcIndex)
+    setWeight(int weight)
+  class FontFamily
+    getFont(int index)
+  class FontFamily.Builder
+    addFont(android.graphics.fonts.Font font)
+    #ctor(android.graphics.fonts.Font font)
+  class FontStyle
+    equals(java.lang.Object o)
+    #ctor(int weight, int slant)
+  class FontVariationAxis
+    equals(java.lang.Object o)
+    #ctor(java.lang.String tagString, float styleValue)
+    fromFontVariationSettings(java.lang.String settings)
+    toFontVariationSettings(android.graphics.fonts.FontVariationAxis[] axes)
+
+package android.graphics.pdf
+;---------------------------------------
+  class PdfDocument
+    finishPage(android.graphics.pdf.PdfDocument.Page page)
+    startPage(android.graphics.pdf.PdfDocument.PageInfo pageInfo)
+    writeTo(java.io.OutputStream out)
+  class PdfDocument.PageInfo.Builder
+    #ctor(int pageWidth, int pageHeight, int pageNumber)
+    setContentRect(android.graphics.Rect contentRect)
+  class PdfRenderer
+    openPage(int index)
+    #ctor(android.os.ParcelFileDescriptor input)
+  class PdfRenderer.Page
+    render(android.graphics.Bitmap destination, android.graphics.Rect destClip, android.graphics.Matrix transform, int renderMode)
+
+package android.graphics.text
+;---------------------------------------
+  class LineBreakConfig
+    equals(java.lang.Object o)
+  class LineBreakConfig.Builder
+    setLineBreakStyle(int lineBreakStyle)
+    setLineBreakWordStyle(int lineBreakWordStyle)
+  class LineBreaker
+    computeLineBreaks(android.graphics.text.MeasuredText measuredPara, android.graphics.text.LineBreaker.ParagraphConstraints constraints, int lineNumber)
+  class LineBreaker.Builder
+    setBreakStrategy(int breakStrategy)
+    setHyphenationFrequency(int hyphenationFrequency)
+    setIndents(int[] indents)
+    setJustificationMode(int justificationMode)
+  class LineBreaker.ParagraphConstraints
+    setIndent(float firstWidth, int firstWidthLineCount)
+    setTabStops(float[] tabStops, float defaultTabStop)
+    setWidth(float width)
+  class LineBreaker.Result
+    getEndLineHyphenEdit(int lineIndex)
+    getLineAscent(int lineIndex)
+    getLineBreakOffset(int lineIndex)
+    getLineDescent(int lineIndex)
+    getLineWidth(int lineIndex)
+    getStartLineHyphenEdit(int lineIndex)
+    hasLineTab(int lineIndex)
+  class MeasuredText
+    getBounds(int start, int end, android.graphics.Rect rect)
+    getCharWidthAt(int offset)
+    getFontMetricsInt(int start, int end, android.graphics.Paint.FontMetricsInt outMetrics)
+    getWidth(int start, int end)
+  class MeasuredText.Builder
+    appendReplacementRun(android.graphics.Paint paint, int length, float width)
+    appendStyleRun(android.graphics.Paint paint, android.graphics.text.LineBreakConfig lineBreakConfig, int length, boolean isRtl)
+    appendStyleRun(android.graphics.Paint paint, int length, boolean isRtl)
+    #ctor(android.graphics.text.MeasuredText text)
+    #ctor(char[] text)
+    setComputeHyphenation(boolean computeHyphenation)
+    setComputeHyphenation(int mode)
+    setComputeLayout(boolean computeLayout)
+  class PositionedGlyphs
+    equals(java.lang.Object o)
+    getFont(int index)
+    getGlyphId(int index)
+    getGlyphX(int index)
+    getGlyphY(int index)
+  class TextRunShaper
+    shapeTextRun(char[] text, int start, int count, int contextStart, int contextCount, float xOffset, float yOffset, boolean isRtl, android.graphics.Paint paint)
+    shapeTextRun(java.lang.CharSequence text, int start, int count, int contextStart, int contextCount, float xOffset, float yOffset, boolean isRtl, android.graphics.Paint paint)
+
+package android.hardware
+;---------------------------------------
+  class Camera
+    addCallbackBuffer(byte[] callbackBuffer)
+    autoFocus(android.hardware.Camera.AutoFocusCallback cb)
+    enableShutterSound(boolean enabled)
+    getCameraInfo(int cameraId, android.hardware.Camera.CameraInfo cameraInfo)
+    open(int cameraId)
+    setAutoFocusMoveCallback(android.hardware.Camera.AutoFocusMoveCallback cb)
+    setDisplayOrientation(int degrees)
+    setErrorCallback(android.hardware.Camera.ErrorCallback cb)
+    setFaceDetectionListener(android.hardware.Camera.FaceDetectionListener listener)
+    setOneShotPreviewCallback(android.hardware.Camera.PreviewCallback cb)
+    setParameters(android.hardware.Camera.Parameters params)
+    setPreviewCallback(android.hardware.Camera.PreviewCallback cb)
+    setPreviewCallbackWithBuffer(android.hardware.Camera.PreviewCallback cb)
+    setPreviewDisplay(android.view.SurfaceHolder holder)
+    setPreviewTexture(android.graphics.SurfaceTexture surfaceTexture)
+    setZoomChangeListener(android.hardware.Camera.OnZoomChangeListener listener)
+    startSmoothZoom(int value)
+    takePicture(android.hardware.Camera.ShutterCallback shutter, android.hardware.Camera.PictureCallback raw, android.hardware.Camera.PictureCallback jpeg)
+    takePicture(android.hardware.Camera.ShutterCallback shutter, android.hardware.Camera.PictureCallback raw, android.hardware.Camera.PictureCallback postview, android.hardware.Camera.PictureCallback jpeg)
+  class Camera.Area
+    #ctor(android.graphics.Rect rect, int weight)
+    equals(java.lang.Object obj)
+  interface Camera.AutoFocusCallback
+    onAutoFocus(boolean success, android.hardware.Camera camera)
+  interface Camera.AutoFocusMoveCallback
+    onAutoFocusMoving(boolean start, android.hardware.Camera camera)
+  interface Camera.ErrorCallback
+    onError(int error, android.hardware.Camera camera)
+  interface Camera.FaceDetectionListener
+    onFaceDetection(android.hardware.Camera.Face[] faces, android.hardware.Camera camera)
+  interface Camera.OnZoomChangeListener
+    onZoomChange(int zoomValue, boolean stopped, android.hardware.Camera camera)
+  class Camera.Parameters
+    get(java.lang.String key)
+    getFocusDistances(float[] output)
+    getInt(java.lang.String key)
+    getPreviewFpsRange(int[] range)
+    remove(java.lang.String key)
+    set(java.lang.String key, int value)
+    set(java.lang.String key, java.lang.String value)
+    setAntibanding(java.lang.String antibanding)
+    setAutoExposureLock(boolean toggle)
+    setAutoWhiteBalanceLock(boolean toggle)
+    setColorEffect(java.lang.String value)
+    setExposureCompensation(int value)
+    setFlashMode(java.lang.String value)
+    setFocusAreas(java.util.List<android.hardware.Camera.Area> focusAreas)
+    setFocusMode(java.lang.String value)
+    setGpsAltitude(double altitude)
+    setGpsLatitude(double latitude)
+    setGpsLongitude(double longitude)
+    setGpsProcessingMethod(java.lang.String processing_method)
+    setGpsTimestamp(long timestamp)
+    setJpegQuality(int quality)
+    setJpegThumbnailQuality(int quality)
+    setJpegThumbnailSize(int width, int height)
+    setMeteringAreas(java.util.List<android.hardware.Camera.Area> meteringAreas)
+    setPictureFormat(int pixel_format)
+    setPictureSize(int width, int height)
+    setPreviewFormat(int pixel_format)
+    setPreviewFpsRange(int min, int max)
+    setPreviewFrameRate(int fps)
+    setPreviewSize(int width, int height)
+    setRecordingHint(boolean hint)
+    setRotation(int rotation)
+    setSceneMode(java.lang.String value)
+    setVideoStabilization(boolean toggle)
+    setWhiteBalance(java.lang.String value)
+    setZoom(int value)
+    unflatten(java.lang.String flattened)
+  interface Camera.PictureCallback
+    onPictureTaken(byte[] data, android.hardware.Camera camera)
+  interface Camera.PreviewCallback
+    onPreviewFrame(byte[] data, android.hardware.Camera camera)
+  class Camera.Size
+    #ctor(int w, int h)
+    equals(java.lang.Object obj)
+  class ConsumerIrManager
+    transmit(int carrierFrequency, int[] pattern)
+  class ConsumerIrManager.CarrierFrequencyRange
+    #ctor(int min, int max)
+  class DataSpace
+    getRange(int dataSpace)
+    getStandard(int dataSpace)
+    getTransfer(int dataSpace)
+    pack(int standard, int transfer, int range)
+  class GeomagneticField
+    #ctor(float gdLatitudeDeg, float gdLongitudeDeg, float altitudeMeters, long timeMillis)
+  class HardwareBuffer
+    create(int width, int height, int format, int layers, long usage)
+    isSupported(int width, int height, int format, int layers, long usage)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Sensor
+    isDirectChannelTypeSupported(int sharedMemType)
+  class SensorDirectChannel
+    configure(android.hardware.Sensor sensor, int rateLevel)
+  class SensorEventCallback
+    onAccuracyChanged(android.hardware.Sensor sensor, int accuracy)
+    onFlushCompleted(android.hardware.Sensor sensor)
+    onSensorAdditionalInfo(android.hardware.SensorAdditionalInfo info)
+    onSensorChanged(android.hardware.SensorEvent event)
+  interface SensorEventListener
+    onAccuracyChanged(android.hardware.Sensor sensor, int accuracy)
+    onSensorChanged(android.hardware.SensorEvent event)
+  interface SensorEventListener2
+    onFlushCompleted(android.hardware.Sensor sensor)
+  interface SensorListener
+    onAccuracyChanged(int sensor, int accuracy)
+    onSensorChanged(int sensor, float[] values)
+  class SensorManager
+    cancelTriggerSensor(android.hardware.TriggerEventListener listener, android.hardware.Sensor sensor)
+    createDirectChannel(android.hardware.HardwareBuffer mem)
+    createDirectChannel(android.os.MemoryFile mem)
+    flush(android.hardware.SensorEventListener listener)
+    getAltitude(float p0, float p)
+    getAngleChange(float[] angleChange, float[] R, float[] prevR)
+    getDefaultSensor(int type)
+    getDefaultSensor(int type, boolean wakeUp)
+    getDynamicSensorList(int type)
+    getInclination(float[] I)
+    getOrientation(float[] R, float[] values)
+    getQuaternionFromVector(float[] Q, float[] rv)
+    getRotationMatrix(float[] R, float[] I, float[] gravity, float[] geomagnetic)
+    getRotationMatrixFromVector(float[] R, float[] rotationVector)
+    getSensorList(int type)
+    registerDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback callback)
+    registerDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback callback, android.os.Handler handler)
+    registerListener(android.hardware.SensorEventListener listener, android.hardware.Sensor sensor, int samplingPeriodUs)
+    registerListener(android.hardware.SensorEventListener listener, android.hardware.Sensor sensor, int samplingPeriodUs, android.os.Handler handler)
+    registerListener(android.hardware.SensorEventListener listener, android.hardware.Sensor sensor, int samplingPeriodUs, int maxReportLatencyUs)
+    registerListener(android.hardware.SensorEventListener listener, android.hardware.Sensor sensor, int samplingPeriodUs, int maxReportLatencyUs, android.os.Handler handler)
+    registerListener(android.hardware.SensorListener listener, int sensors)
+    registerListener(android.hardware.SensorListener listener, int sensors, int rate)
+    remapCoordinateSystem(float[] inR, int X, int Y, float[] outR)
+    requestTriggerSensor(android.hardware.TriggerEventListener listener, android.hardware.Sensor sensor)
+    unregisterDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback callback)
+    unregisterListener(android.hardware.SensorEventListener listener)
+    unregisterListener(android.hardware.SensorEventListener listener, android.hardware.Sensor sensor)
+    unregisterListener(android.hardware.SensorListener listener)
+    unregisterListener(android.hardware.SensorListener listener, int sensors)
+  class SensorManager.DynamicSensorCallback
+    onDynamicSensorConnected(android.hardware.Sensor sensor)
+    onDynamicSensorDisconnected(android.hardware.Sensor sensor)
+  class SensorPrivacyManager
+    supportsSensorToggle(int sensor)
+    supportsSensorToggle(int toggleType, int sensor)
+  class SyncFence
+    await(java.time.Duration timeout)
+    writeToParcel(android.os.Parcel out, int flags)
+  class TriggerEventListener
+    onTrigger(android.hardware.TriggerEvent event)
+
+package android.hardware.biometrics
+;---------------------------------------
+  class BiometricManager
+    canAuthenticate(int authenticators)
+    getStrings(int authenticators)
+  class BiometricPrompt
+    authenticate(android.hardware.biometrics.BiometricPrompt.CryptoObject crypto, android.os.CancellationSignal cancel, java.util.concurrent.Executor executor, android.hardware.biometrics.BiometricPrompt.AuthenticationCallback callback)
+    authenticate(android.os.CancellationSignal cancel, java.util.concurrent.Executor executor, android.hardware.biometrics.BiometricPrompt.AuthenticationCallback callback)
+  class BiometricPrompt.AuthenticationCallback
+    onAuthenticationError(int errorCode, java.lang.CharSequence errString)
+    onAuthenticationHelp(int helpCode, java.lang.CharSequence helpString)
+    onAuthenticationSucceeded(android.hardware.biometrics.BiometricPrompt.AuthenticationResult result)
+  class BiometricPrompt.Builder
+    #ctor(android.content.Context context)
+    setAllowedAuthenticators(int authenticators)
+    setConfirmationRequired(boolean requireConfirmation)
+    setDescription(java.lang.CharSequence description)
+    setDeviceCredentialAllowed(boolean allowed)
+    setNegativeButton(java.lang.CharSequence text, java.util.concurrent.Executor executor, android.content.DialogInterface.OnClickListener listener)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTitle(java.lang.CharSequence title)
+  class BiometricPrompt.CryptoObject
+    #ctor(android.security.identity.IdentityCredential credential)
+    #ctor(android.security.identity.PresentationSession session)
+    #ctor(java.security.Signature signature)
+    #ctor(javax.crypto.Cipher cipher)
+    #ctor(javax.crypto.Mac mac)
+
+package android.hardware.camera2
+;---------------------------------------
+  class CameraAccessException
+    #ctor(int problem)
+    #ctor(int problem, java.lang.String message)
+    #ctor(int problem, java.lang.String message, java.lang.Throwable cause)
+    #ctor(int problem, java.lang.Throwable cause)
+  class CameraCaptureSession
+    capture(android.hardware.camera2.CaptureRequest request, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener, android.os.Handler handler)
+    captureBurst(java.util.List<android.hardware.camera2.CaptureRequest> requests, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener, android.os.Handler handler)
+    captureBurstRequests(java.util.List<android.hardware.camera2.CaptureRequest> requests, java.util.concurrent.Executor executor, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener)
+    captureSingleRequest(android.hardware.camera2.CaptureRequest request, java.util.concurrent.Executor executor, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener)
+    finalizeOutputConfigurations(java.util.List<android.hardware.camera2.params.OutputConfiguration> outputConfigs)
+    prepare(android.view.Surface surface)
+    setRepeatingBurst(java.util.List<android.hardware.camera2.CaptureRequest> requests, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener, android.os.Handler handler)
+    setRepeatingBurstRequests(java.util.List<android.hardware.camera2.CaptureRequest> requests, java.util.concurrent.Executor executor, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener)
+    setRepeatingRequest(android.hardware.camera2.CaptureRequest request, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener, android.os.Handler handler)
+    setSingleRepeatingRequest(android.hardware.camera2.CaptureRequest request, java.util.concurrent.Executor executor, android.hardware.camera2.CameraCaptureSession.CaptureCallback listener)
+    supportsOfflineProcessing(android.view.Surface surface)
+    switchToOffline(java.util.Collection<android.view.Surface> offlineSurfaces, java.util.concurrent.Executor executor, android.hardware.camera2.CameraOfflineSession.CameraOfflineSessionCallback listener)
+    updateOutputConfiguration(android.hardware.camera2.params.OutputConfiguration config)
+  class CameraCaptureSession.CaptureCallback
+    onCaptureBufferLost(android.hardware.camera2.CameraCaptureSession session, android.hardware.camera2.CaptureRequest request, android.view.Surface target, long frameNumber)
+    onCaptureCompleted(android.hardware.camera2.CameraCaptureSession session, android.hardware.camera2.CaptureRequest request, android.hardware.camera2.TotalCaptureResult result)
+    onCaptureFailed(android.hardware.camera2.CameraCaptureSession session, android.hardware.camera2.CaptureRequest request, android.hardware.camera2.CaptureFailure failure)
+    onCaptureProgressed(android.hardware.camera2.CameraCaptureSession session, android.hardware.camera2.CaptureRequest request, android.hardware.camera2.CaptureResult partialResult)
+    onCaptureSequenceAborted(android.hardware.camera2.CameraCaptureSession session, int sequenceId)
+    onCaptureSequenceCompleted(android.hardware.camera2.CameraCaptureSession session, int sequenceId, long frameNumber)
+    onCaptureStarted(android.hardware.camera2.CameraCaptureSession session, android.hardware.camera2.CaptureRequest request, long timestamp, long frameNumber)
+    onReadoutStarted(android.hardware.camera2.CameraCaptureSession session, android.hardware.camera2.CaptureRequest request, long timestamp, long frameNumber)
+  class CameraCaptureSession.StateCallback
+    onActive(android.hardware.camera2.CameraCaptureSession session)
+    onCaptureQueueEmpty(android.hardware.camera2.CameraCaptureSession session)
+    onClosed(android.hardware.camera2.CameraCaptureSession session)
+    onConfigured(android.hardware.camera2.CameraCaptureSession session)
+    onConfigureFailed(android.hardware.camera2.CameraCaptureSession session)
+    onReady(android.hardware.camera2.CameraCaptureSession session)
+    onSurfacePrepared(android.hardware.camera2.CameraCaptureSession session, android.view.Surface surface)
+  class CameraCharacteristics
+    <T> get(android.hardware.camera2.CameraCharacteristics.Key<T> key)
+    getRecommendedStreamConfigurationMap(int usecase)
+  class CameraCharacteristics.Key<T>
+    #ctor(java.lang.String name, java.lang.Class<T> type)
+    equals(java.lang.Object o)
+  class CameraConstrainedHighSpeedCaptureSession
+    createHighSpeedRequestList(android.hardware.camera2.CaptureRequest request)
+  class CameraDevice
+    createCaptureRequest(int templateType)
+    createCaptureRequest(int templateType, java.util.Set<java.lang.String> physicalCameraIdSet)
+    createCaptureSession(android.hardware.camera2.params.SessionConfiguration config)
+    createCaptureSession(java.util.List<android.view.Surface> outputs, android.hardware.camera2.CameraCaptureSession.StateCallback callback, android.os.Handler handler)
+    createCaptureSessionByOutputConfigurations(java.util.List<android.hardware.camera2.params.OutputConfiguration> outputConfigurations, android.hardware.camera2.CameraCaptureSession.StateCallback callback, android.os.Handler handler)
+    createConstrainedHighSpeedCaptureSession(java.util.List<android.view.Surface> outputs, android.hardware.camera2.CameraCaptureSession.StateCallback callback, android.os.Handler handler)
+    createExtensionSession(android.hardware.camera2.params.ExtensionSessionConfiguration extensionConfiguration)
+    createReprocessableCaptureSession(android.hardware.camera2.params.InputConfiguration inputConfig, java.util.List<android.view.Surface> outputs, android.hardware.camera2.CameraCaptureSession.StateCallback callback, android.os.Handler handler)
+    createReprocessableCaptureSessionByConfigurations(android.hardware.camera2.params.InputConfiguration inputConfig, java.util.List<android.hardware.camera2.params.OutputConfiguration> outputs, android.hardware.camera2.CameraCaptureSession.StateCallback callback, android.os.Handler handler)
+    createReprocessCaptureRequest(android.hardware.camera2.TotalCaptureResult inputResult)
+    isSessionConfigurationSupported(android.hardware.camera2.params.SessionConfiguration sessionConfig)
+    setCameraAudioRestriction(int mode)
+  class CameraDevice.StateCallback
+    onClosed(android.hardware.camera2.CameraDevice camera)
+    onDisconnected(android.hardware.camera2.CameraDevice camera)
+    onError(android.hardware.camera2.CameraDevice camera, int error)
+    onOpened(android.hardware.camera2.CameraDevice camera)
+  class CameraExtensionCharacteristics
+    getAvailableCaptureRequestKeys(int extension)
+    getAvailableCaptureResultKeys(int extension)
+    getEstimatedCaptureLatencyRangeMillis(int extension, android.util.Size captureOutputSize, int format)
+    getExtensionSupportedSizes(int extension, int format)
+    <T> getExtensionSupportedSizes(int extension, java.lang.Class<T> klass)
+    getPostviewSupportedSizes(int extension, android.util.Size captureSize, int format)
+    isCaptureProcessProgressAvailable(int extension)
+    isPostviewAvailable(int extension)
+  class CameraExtensionSession
+    capture(android.hardware.camera2.CaptureRequest request, java.util.concurrent.Executor executor, android.hardware.camera2.CameraExtensionSession.ExtensionCaptureCallback listener)
+    setRepeatingRequest(android.hardware.camera2.CaptureRequest request, java.util.concurrent.Executor executor, android.hardware.camera2.CameraExtensionSession.ExtensionCaptureCallback listener)
+  class CameraExtensionSession.ExtensionCaptureCallback
+    onCaptureFailed(android.hardware.camera2.CameraExtensionSession session, android.hardware.camera2.CaptureRequest request)
+    onCaptureProcessProgressed(android.hardware.camera2.CameraExtensionSession session, android.hardware.camera2.CaptureRequest request, int progress)
+    onCaptureProcessStarted(android.hardware.camera2.CameraExtensionSession session, android.hardware.camera2.CaptureRequest request)
+    onCaptureResultAvailable(android.hardware.camera2.CameraExtensionSession session, android.hardware.camera2.CaptureRequest request, android.hardware.camera2.TotalCaptureResult result)
+    onCaptureSequenceAborted(android.hardware.camera2.CameraExtensionSession session, int sequenceId)
+    onCaptureSequenceCompleted(android.hardware.camera2.CameraExtensionSession session, int sequenceId)
+    onCaptureStarted(android.hardware.camera2.CameraExtensionSession session, android.hardware.camera2.CaptureRequest request, long timestamp)
+  class CameraExtensionSession.StateCallback
+    onClosed(android.hardware.camera2.CameraExtensionSession session)
+    onConfigured(android.hardware.camera2.CameraExtensionSession session)
+    onConfigureFailed(android.hardware.camera2.CameraExtensionSession session)
+  class CameraExtensionSession.StillCaptureLatency
+    #ctor(long captureLatency, long processingLatency)
+    equals(java.lang.Object o)
+  class CameraManager
+    getCameraCharacteristics(java.lang.String cameraId)
+    getCameraExtensionCharacteristics(java.lang.String cameraId)
+    getTorchStrengthLevel(java.lang.String cameraId)
+    isConcurrentSessionConfigurationSupported(java.util.Map<java.lang.String,android.hardware.camera2.params.SessionConfiguration> cameraIdAndSessionConfig)
+    openCamera(java.lang.String cameraId, android.hardware.camera2.CameraDevice.StateCallback callback, android.os.Handler handler)
+    openCamera(java.lang.String cameraId, java.util.concurrent.Executor executor, android.hardware.camera2.CameraDevice.StateCallback callback)
+    registerAvailabilityCallback(android.hardware.camera2.CameraManager.AvailabilityCallback callback, android.os.Handler handler)
+    registerAvailabilityCallback(java.util.concurrent.Executor executor, android.hardware.camera2.CameraManager.AvailabilityCallback callback)
+    registerTorchCallback(android.hardware.camera2.CameraManager.TorchCallback callback, android.os.Handler handler)
+    registerTorchCallback(java.util.concurrent.Executor executor, android.hardware.camera2.CameraManager.TorchCallback callback)
+    setTorchMode(java.lang.String cameraId, boolean enabled)
+    turnOnTorchWithStrengthLevel(java.lang.String cameraId, int torchStrength)
+    unregisterAvailabilityCallback(android.hardware.camera2.CameraManager.AvailabilityCallback callback)
+    unregisterTorchCallback(android.hardware.camera2.CameraManager.TorchCallback callback)
+  class CameraManager.AvailabilityCallback
+    onCameraAvailable(java.lang.String cameraId)
+    onCameraUnavailable(java.lang.String cameraId)
+    onPhysicalCameraAvailable(java.lang.String cameraId, java.lang.String physicalCameraId)
+    onPhysicalCameraUnavailable(java.lang.String cameraId, java.lang.String physicalCameraId)
+  class CameraManager.TorchCallback
+    onTorchModeChanged(java.lang.String cameraId, boolean enabled)
+    onTorchModeUnavailable(java.lang.String cameraId)
+    onTorchStrengthLevelChanged(java.lang.String cameraId, int newStrengthLevel)
+  class CameraOfflineSession.CameraOfflineSessionCallback
+    onClosed(android.hardware.camera2.CameraOfflineSession session)
+    onError(android.hardware.camera2.CameraOfflineSession session, int status)
+    onIdle(android.hardware.camera2.CameraOfflineSession session)
+    onReady(android.hardware.camera2.CameraOfflineSession session)
+    onSwitchFailed(android.hardware.camera2.CameraOfflineSession session)
+  class CaptureRequest
+    equals(java.lang.Object other)
+    <T> get(android.hardware.camera2.CaptureRequest.Key<T> key)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CaptureRequest.Builder
+    addTarget(android.view.Surface outputTarget)
+    <T> get(android.hardware.camera2.CaptureRequest.Key<T> key)
+    <T> getPhysicalCameraKey(android.hardware.camera2.CaptureRequest.Key<T> key, java.lang.String physicalCameraId)
+    removeTarget(android.view.Surface outputTarget)
+    <T> set(android.hardware.camera2.CaptureRequest.Key<T> key, T value)
+    <T> setPhysicalCameraKey(android.hardware.camera2.CaptureRequest.Key<T> key, T value, java.lang.String physicalCameraId)
+    setTag(java.lang.Object tag)
+  class CaptureRequest.Key<T>
+    #ctor(java.lang.String name, java.lang.Class<T> type)
+    equals(java.lang.Object o)
+  class CaptureResult
+    <T> get(android.hardware.camera2.CaptureResult.Key<T> key)
+  class CaptureResult.Key<T>
+    #ctor(java.lang.String name, java.lang.Class<T> type)
+    equals(java.lang.Object o)
+  class DngCreator
+    #ctor(android.hardware.camera2.CameraCharacteristics characteristics, android.hardware.camera2.CaptureResult metadata)
+    setDescription(java.lang.String description)
+    setLocation(android.location.Location location)
+    setOrientation(int orientation)
+    setThumbnail(android.graphics.Bitmap pixels)
+    setThumbnail(android.media.Image pixels)
+    writeByteBuffer(java.io.OutputStream dngOutput, android.util.Size size, java.nio.ByteBuffer pixels, long offset)
+    writeImage(java.io.OutputStream dngOutput, android.media.Image pixels)
+    writeInputStream(java.io.OutputStream dngOutput, android.util.Size size, java.io.InputStream pixels, long offset)
+  class MultiResolutionImageReader
+    getStreamInfoForImageReader(android.media.ImageReader reader)
+    #ctor(java.util.Collection<android.hardware.camera2.params.MultiResolutionStreamInfo> streams, int format, int maxImages)
+    setOnImageAvailableListener(android.media.ImageReader.OnImageAvailableListener listener, java.util.concurrent.Executor executor)
+
+package android.hardware.camera2.params
+;---------------------------------------
+  class BlackLevelPattern
+    #ctor(int[] offsets)
+    copyTo(int[] destination, int offset)
+    equals(java.lang.Object obj)
+    getOffsetForIndex(int column, int row)
+  class Capability
+    #ctor(int mode, android.util.Size maxStreamingSize, android.util.Range<java.lang.Float> zoomRatioRange)
+    equals(java.lang.Object obj)
+  class ColorSpaceProfiles
+    #ctor(long[] elements)
+    getSupportedColorSpaces(int imageFormat)
+    getSupportedColorSpacesForDynamicRange(int imageFormat, long dynamicRangeProfile)
+    getSupportedDynamicRangeProfiles(android.graphics.ColorSpace.Named colorSpace, int imageFormat)
+    getSupportedImageFormatsForColorSpace(android.graphics.ColorSpace.Named colorSpace)
+  class ColorSpaceTransform
+    #ctor(android.util.Rational[] elements)
+    #ctor(int[] elements)
+    copyElements(android.util.Rational[] destination, int offset)
+    copyElements(int[] destination, int offset)
+    equals(java.lang.Object obj)
+    getElement(int column, int row)
+  class DeviceStateSensorOrientationMap
+    equals(java.lang.Object obj)
+    getSensorOrientation(long deviceState)
+  class DeviceStateSensorOrientationMap.Builder
+    addOrientationForState(long deviceState, long angle)
+  class DynamicRangeProfiles
+    #ctor(long[] elements)
+    getProfileCaptureRequestConstraints(long profile)
+    isExtraLatencyPresent(long profile)
+  class ExtensionSessionConfiguration
+    #ctor(int extension, java.util.List<android.hardware.camera2.params.OutputConfiguration> outputs, java.util.concurrent.Executor executor, android.hardware.camera2.CameraExtensionSession.StateCallback listener)
+    setPostviewOutputConfiguration(android.hardware.camera2.params.OutputConfiguration postviewOutput)
+  class Face.Builder
+    #ctor(android.hardware.camera2.params.Face current)
+    setBounds(android.graphics.Rect bounds)
+    setId(int id)
+    setLeftEyePosition(android.graphics.Point leftEyePosition)
+    setMouthPosition(android.graphics.Point mouthPosition)
+    setRightEyePosition(android.graphics.Point rightEyePosition)
+    setScore(int score)
+  class InputConfiguration
+    equals(java.lang.Object obj)
+    #ctor(int width, int height, int format)
+    #ctor(java.util.Collection<android.hardware.camera2.params.MultiResolutionStreamInfo> multiResolutionInputs, int format)
+  class LensShadingMap
+    copyGainFactors(float[] destination, int offset)
+    equals(java.lang.Object obj)
+    getGainFactor(int colorChannel, int column, int row)
+    getGainFactorVector(int column, int row)
+  class MandatoryStreamCombination
+    equals(java.lang.Object obj)
+  class MandatoryStreamCombination.MandatoryStreamInformation
+    equals(java.lang.Object obj)
+  class MeteringRectangle
+    equals(android.hardware.camera2.params.MeteringRectangle other)
+    equals(java.lang.Object other)
+    #ctor(android.graphics.Point xy, android.util.Size dimensions, int meteringWeight)
+    #ctor(android.graphics.Rect rect, int meteringWeight)
+    #ctor(int x, int y, int width, int height, int meteringWeight)
+  class MultiResolutionStreamConfigurationMap
+    equals(java.lang.Object obj)
+    getInputInfo(int format)
+    getOutputInfo(int format)
+  class MultiResolutionStreamInfo
+    equals(java.lang.Object obj)
+    #ctor(int streamWidth, int streamHeight, java.lang.String physicalCameraId)
+  class OisSample
+    equals(java.lang.Object obj)
+    #ctor(long timestamp, float xShift, float yShift)
+  class OutputConfiguration
+    addSensorPixelModeUsed(int sensorPixelModeUsed)
+    addSurface(android.view.Surface surface)
+    createInstancesForMultiResolutionOutput(android.hardware.camera2.MultiResolutionImageReader multiResolutionImageReader)
+    equals(java.lang.Object obj)
+    <T> #ctor(android.util.Size surfaceSize, java.lang.Class<T> klass)
+    #ctor(android.view.Surface surface)
+    #ctor(int surfaceGroupId, android.view.Surface surface)
+    removeSensorPixelModeUsed(int sensorPixelModeUsed)
+    removeSurface(android.view.Surface surface)
+    setDynamicRangeProfile(long profile)
+    setMirrorMode(int mirrorMode)
+    setPhysicalCameraId(java.lang.String physicalCameraId)
+    setStreamUseCase(long streamUseCase)
+    setTimestampBase(int timestampBase)
+    useReadoutTimestamp(boolean on)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RecommendedStreamConfigurationMap
+    getHighResolutionOutputSizes(int format)
+    getHighSpeedVideoFpsRangesFor(android.util.Size size)
+    getHighSpeedVideoSizesFor(android.util.Range<java.lang.Integer> fpsRange)
+    getInputSizes(int format)
+    getOutputMinFrameDuration(int format, android.util.Size size)
+    <T> getOutputMinFrameDuration(java.lang.Class<T> klass, android.util.Size size)
+    getOutputSizes(int format)
+    <T> getOutputSizes(java.lang.Class<T> klass)
+    getOutputStallDuration(int format, android.util.Size size)
+    <T> getOutputStallDuration(java.lang.Class<T> klass, android.util.Size size)
+    getValidOutputFormatsForInput(int inputFormat)
+    isOutputSupportedFor(android.view.Surface surface)
+    isOutputSupportedFor(int format)
+  class RggbChannelVector
+    copyTo(float[] destination, int offset)
+    equals(java.lang.Object obj)
+    getComponent(int colorChannel)
+    #ctor(float red, float greenEven, float greenOdd, float blue)
+  class SessionConfiguration
+    equals(java.lang.Object obj)
+    #ctor(int sessionType, java.util.List<android.hardware.camera2.params.OutputConfiguration> outputs, java.util.concurrent.Executor executor, android.hardware.camera2.CameraCaptureSession.StateCallback cb)
+    setColorSpace(android.graphics.ColorSpace.Named colorSpace)
+    setInputConfiguration(android.hardware.camera2.params.InputConfiguration input)
+    setSessionParameters(android.hardware.camera2.CaptureRequest params)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StreamConfigurationMap
+    equals(java.lang.Object obj)
+    getHighResolutionOutputSizes(int format)
+    getHighSpeedVideoFpsRangesFor(android.util.Size size)
+    getHighSpeedVideoSizesFor(android.util.Range<java.lang.Integer> fpsRange)
+    getInputSizes(int format)
+    getOutputMinFrameDuration(int format, android.util.Size size)
+    <T> getOutputMinFrameDuration(java.lang.Class<T> klass, android.util.Size size)
+    getOutputSizes(int format)
+    <T> getOutputSizes(java.lang.Class<T> klass)
+    getOutputStallDuration(int format, android.util.Size size)
+    <T> getOutputStallDuration(java.lang.Class<T> klass, android.util.Size size)
+    getValidOutputFormatsForInput(int inputFormat)
+    isOutputSupportedFor(android.view.Surface surface)
+    isOutputSupportedFor(int format)
+    <T> isOutputSupportedFor(java.lang.Class<T> klass)
+  class TonemapCurve
+    copyColorCurve(int colorChannel, float[] destination, int offset)
+    equals(java.lang.Object obj)
+    getPoint(int colorChannel, int index)
+    getPointCount(int colorChannel)
+    #ctor(float[] red, float[] green, float[] blue)
+
+package android.hardware.display
+;---------------------------------------
+  class DeviceProductInfo
+    #ctor(java.lang.String name, java.lang.String manufacturerPnpId, java.lang.String productId, int modelYear, int connectionToSinkType)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DisplayManager
+    createVirtualDisplay(java.lang.String name, int width, int height, int densityDpi, android.view.Surface surface, int flags)
+    createVirtualDisplay(java.lang.String name, int width, int height, int densityDpi, android.view.Surface surface, int flags, android.hardware.display.VirtualDisplay.Callback callback, android.os.Handler handler)
+    getDisplay(int displayId)
+    getDisplays(java.lang.String category)
+    registerDisplayListener(android.hardware.display.DisplayManager.DisplayListener listener, android.os.Handler handler)
+    unregisterDisplayListener(android.hardware.display.DisplayManager.DisplayListener listener)
+  interface DisplayManager.DisplayListener
+    onDisplayAdded(int displayId)
+    onDisplayChanged(int displayId)
+    onDisplayRemoved(int displayId)
+  class VirtualDisplay
+    resize(int width, int height, int densityDpi)
+    setSurface(android.view.Surface surface)
+
+package android.hardware.fingerprint
+;---------------------------------------
+  class FingerprintManager
+    authenticate(android.hardware.fingerprint.FingerprintManager.CryptoObject crypto, android.os.CancellationSignal cancel, int flags, android.hardware.fingerprint.FingerprintManager.AuthenticationCallback callback, android.os.Handler handler)
+  class FingerprintManager.AuthenticationCallback
+    onAuthenticationError(int errorCode, java.lang.CharSequence errString)
+    onAuthenticationHelp(int helpCode, java.lang.CharSequence helpString)
+    onAuthenticationSucceeded(android.hardware.fingerprint.FingerprintManager.AuthenticationResult result)
+  class FingerprintManager.CryptoObject
+    #ctor(java.security.Signature signature)
+    #ctor(javax.crypto.Cipher cipher)
+    #ctor(javax.crypto.Mac mac)
+
+package android.hardware.input
+;---------------------------------------
+  class InputManager
+    getInputDevice(int id)
+    registerInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener listener, android.os.Handler handler)
+    unregisterInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener listener)
+    verifyInputEvent(android.view.InputEvent event)
+  interface InputManager.InputDeviceListener
+    onInputDeviceAdded(int deviceId)
+    onInputDeviceChanged(int deviceId)
+    onInputDeviceRemoved(int deviceId)
+
+package android.hardware.lights
+;---------------------------------------
+  class Light
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LightsManager
+    getLightState(android.hardware.lights.Light light)
+  class LightsManager.LightsSession
+    requestLights(android.hardware.lights.LightsRequest request)
+  class LightsRequest.Builder
+    addLight(android.hardware.lights.Light light, android.hardware.lights.LightState state)
+    clearLight(android.hardware.lights.Light light)
+  class LightState
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LightState.Builder
+    setColor(int color)
+    setPlayerId(int playerId)
+
+package android.hardware.usb
+;---------------------------------------
+  class UsbAccessory
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UsbConfiguration
+    getInterface(int index)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UsbDevice
+    equals(java.lang.Object o)
+    getConfiguration(int index)
+    getDeviceId(java.lang.String name)
+    getDeviceName(int id)
+    getInterface(int index)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UsbDeviceConnection
+    bulkTransfer(android.hardware.usb.UsbEndpoint endpoint, byte[] buffer, int length, int timeout)
+    bulkTransfer(android.hardware.usb.UsbEndpoint endpoint, byte[] buffer, int offset, int length, int timeout)
+    claimInterface(android.hardware.usb.UsbInterface intf, boolean force)
+    controlTransfer(int requestType, int request, int value, int index, byte[] buffer, int length, int timeout)
+    controlTransfer(int requestType, int request, int value, int index, byte[] buffer, int offset, int length, int timeout)
+    releaseInterface(android.hardware.usb.UsbInterface intf)
+    requestWait(long timeout)
+    setConfiguration(android.hardware.usb.UsbConfiguration configuration)
+    setInterface(android.hardware.usb.UsbInterface intf)
+  class UsbEndpoint
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UsbInterface
+    getEndpoint(int index)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UsbManager
+    hasPermission(android.hardware.usb.UsbAccessory accessory)
+    hasPermission(android.hardware.usb.UsbDevice device)
+    openAccessory(android.hardware.usb.UsbAccessory accessory)
+    openDevice(android.hardware.usb.UsbDevice device)
+    requestPermission(android.hardware.usb.UsbAccessory accessory, android.app.PendingIntent pi)
+    requestPermission(android.hardware.usb.UsbDevice device, android.app.PendingIntent pi)
+  class UsbRequest
+    initialize(android.hardware.usb.UsbDeviceConnection connection, android.hardware.usb.UsbEndpoint endpoint)
+    queue(java.nio.ByteBuffer buffer)
+    queue(java.nio.ByteBuffer buffer, int length)
+    setClientData(java.lang.Object data)
+
+package android.healthconnect
+;---------------------------------------
+  class AggregateRecordsGroupedByDurationResponse<T>
+    get(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+    getZoneOffset(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+  class AggregateRecordsGroupedByPeriodResponse<T>
+    get(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+    getZoneOffset(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+  class AggregateRecordsRequest.Builder<T>
+    addAggregationType(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+    addDataOriginsFilter(android.healthconnect.datatypes.DataOrigin dataOriginsFilter)
+    #ctor(android.healthconnect.TimeRangeFilter timeRangeFilter)
+  class AggregateRecordsResponse<T>
+    get(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+    getZoneOffset(android.healthconnect.datatypes.AggregationType<T> aggregationType)
+  class ChangeLogsRequest.Builder
+    #ctor(java.lang.String token)
+    setPageSize(int pageSize)
+  class ChangeLogTokenRequest.Builder
+    addDataOriginFilter(android.healthconnect.datatypes.DataOrigin dataOriginFilter)
+    addRecordType(java.lang.Class<? extends android.healthconnect.datatypes.Record> recordType)
+  class HealthConnectException
+    #ctor(int errorCode)
+    #ctor(int errorCode, java.lang.String message)
+  class HealthConnectManager
+    <T> aggregate(android.healthconnect.AggregateRecordsRequest<T> request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.healthconnect.AggregateRecordsResponse<T>,android.healthconnect.HealthConnectException> callback)
+    <T> aggregateGroupByDuration(android.healthconnect.AggregateRecordsRequest<T> request, java.time.Duration duration, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.util.List<android.healthconnect.AggregateRecordsGroupedByDurationResponse<T>>,android.healthconnect.HealthConnectException> callback)
+    <T> aggregateGroupByPeriod(android.healthconnect.AggregateRecordsRequest<T> request, java.time.Period period, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.util.List<android.healthconnect.AggregateRecordsGroupedByPeriodResponse<T>>,android.healthconnect.HealthConnectException> callback)
+    deleteRecords(java.lang.Class<? extends android.healthconnect.datatypes.Record> recordType, android.healthconnect.TimeRangeFilter timeRangeFilter, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.healthconnect.HealthConnectException> callback)
+    deleteRecords(java.util.List<android.healthconnect.RecordIdFilter> recordIds, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.healthconnect.HealthConnectException> callback)
+    getChangeLogs(android.healthconnect.ChangeLogsRequest changeLogsRequest, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.healthconnect.ChangeLogsResponse,android.healthconnect.HealthConnectException> callback)
+    getChangeLogToken(android.healthconnect.ChangeLogTokenRequest request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.String,android.healthconnect.HealthConnectException> callback)
+    insertRecords(java.util.List<android.healthconnect.datatypes.Record> records, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.healthconnect.InsertRecordsResponse,android.healthconnect.HealthConnectException> callback)
+    <T> readRecords(android.healthconnect.ReadRecordsRequestUsingFilters<T> request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.healthconnect.ReadRecordsResponse<T>,android.healthconnect.HealthConnectException> callback)
+    <T> readRecords(android.healthconnect.ReadRecordsRequestUsingIds<T> request, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.healthconnect.ReadRecordsResponse<T>,android.healthconnect.HealthConnectException> callback)
+    updateRecords(java.util.List<android.healthconnect.datatypes.Record> records, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.healthconnect.HealthConnectException> callback)
+  class InsertRecordsResponse
+    #ctor(java.util.List<android.healthconnect.datatypes.Record> records)
+  class ReadRecordsRequestUsingFilters.Builder<T>
+    addDataOrigins(android.healthconnect.datatypes.DataOrigin dataOrigin)
+    #ctor(java.lang.Class<T> recordType)
+    setTimeRangeFilter(android.healthconnect.TimeRangeFilter timeRangeFilter)
+  class ReadRecordsRequestUsingIds.Builder<T>
+    addClientRecordId(java.lang.String clientRecordId)
+    addId(java.lang.String id)
+    #ctor(java.lang.Class<T> recordType)
+  class RecordIdFilter.Builder
+    #ctor(java.lang.Class<? extends android.healthconnect.datatypes.Record> recordType)
+    setClientRecordId(java.lang.String clientRecordId)
+    setId(java.lang.String id)
+  class TimeRangeFilter.Builder
+    #ctor(java.time.Instant startTime, java.time.Instant endTime)
+
+package android.healthconnect.datatypes
+;---------------------------------------
+  class ActiveCaloriesBurnedRecord
+    equals(java.lang.Object o)
+  class ActiveCaloriesBurnedRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, android.healthconnect.datatypes.units.Energy energy)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class BasalBodyTemperatureRecord
+    equals(java.lang.Object o)
+  class BasalBodyTemperatureRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int measurementLocation, android.healthconnect.datatypes.units.Temperature temperature)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class BasalMetabolicRateRecord
+    equals(java.lang.Object o)
+  class BasalMetabolicRateRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Power basalMetabolicRate)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class BloodGlucoseRecord
+    equals(java.lang.Object o)
+  class BloodGlucoseRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int specimenSource, android.healthconnect.datatypes.units.BloodGlucose level, int relationToMeal, int mealType)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class BloodPressureRecord
+    equals(java.lang.Object o)
+  class BloodPressureRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int measurementLocation, android.healthconnect.datatypes.units.Pressure systolic, android.healthconnect.datatypes.units.Pressure diastolic, int bodyPosition)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class BodyFatRecord
+    equals(java.lang.Object o)
+  class BodyFatRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Percentage percentage)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class BodyTemperatureRecord
+    equals(java.lang.Object o)
+  class BodyTemperatureRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int measurementLocation, android.healthconnect.datatypes.units.Temperature temperature)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class BoneMassRecord
+    equals(java.lang.Object o)
+  class BoneMassRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Mass mass)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class CervicalMucusRecord
+    equals(java.lang.Object o)
+  class CervicalMucusRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int sensation, int appearance)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class CyclingPedalingCadenceRecord
+    equals(java.lang.Object object)
+  class CyclingPedalingCadenceRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, java.util.List<android.healthconnect.datatypes.CyclingPedalingCadenceRecord.CyclingPedalingCadenceRecordSample> cyclingPedalingCadenceRecordSamples)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class CyclingPedalingCadenceRecord.CyclingPedalingCadenceRecordSample
+    #ctor(double revolutionsPerMinute, java.time.Instant time)
+    equals(java.lang.Object object)
+  class DataOrigin
+    equals(java.lang.Object object)
+  class DataOrigin.Builder
+    setPackageName(java.lang.String packageName)
+  class Device
+    equals(java.lang.Object object)
+  class Device.Builder
+    setManufacturer(java.lang.String manufacturer)
+    setModel(java.lang.String model)
+    setType(int type)
+  class DistanceRecord
+    equals(java.lang.Object o)
+  class DistanceRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, android.healthconnect.datatypes.units.Length distance)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class ElevationGainedRecord
+    equals(java.lang.Object o)
+  class ElevationGainedRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, android.healthconnect.datatypes.units.Length elevation)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class ExerciseRoute
+    equals(java.lang.Object o)
+    #ctor(java.util.List<android.healthconnect.datatypes.ExerciseRoute.Location> routeLocations)
+  class ExerciseRoute.Location
+    equals(java.lang.Object o)
+  class ExerciseRoute.Location.Builder
+    #ctor(java.time.Instant time, double latitude, double longitude)
+    setAltitude(android.healthconnect.datatypes.units.Length altitude)
+    setHorizontalAccuracy(android.healthconnect.datatypes.units.Length horizontalAccuracy)
+    setVerticalAccuracy(android.healthconnect.datatypes.units.Length verticalAccuracy)
+  class ExerciseSessionRecord
+    equals(java.lang.Object o)
+  class ExerciseSessionRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, int exerciseType)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setNotes(java.lang.CharSequence notes)
+    setRoute(android.healthconnect.datatypes.ExerciseRoute route)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    setTitle(java.lang.CharSequence title)
+  class FloorsClimbedRecord
+    equals(java.lang.Object o)
+  class FloorsClimbedRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, int floors)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class HeartRateRecord
+    equals(java.lang.Object object)
+  class HeartRateRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, java.util.List<android.healthconnect.datatypes.HeartRateRecord.HeartRateSample> heartRateSamples)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class HeartRateRecord.HeartRateSample
+    equals(java.lang.Object object)
+    #ctor(long beatsPerMinute, java.time.Instant time)
+  class HeightRecord
+    equals(java.lang.Object o)
+  class HeightRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Length height)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class HydrationRecord
+    equals(java.lang.Object o)
+  class HydrationRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, android.healthconnect.datatypes.units.Volume volume)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class InstantRecord
+    equals(java.lang.Object object)
+  class IntervalRecord
+    equals(java.lang.Object object)
+  class LeanBodyMassRecord
+    equals(java.lang.Object o)
+  class LeanBodyMassRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Mass mass)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class MenstruationFlowRecord
+    equals(java.lang.Object o)
+  class MenstruationFlowRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int flow)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class Metadata
+    equals(java.lang.Object object)
+    setId(java.lang.String id)
+  class Metadata.Builder
+    setClientRecordId(java.lang.String clientRecordId)
+    setClientRecordVersion(long clientRecordVersion)
+    setDataOrigin(android.healthconnect.datatypes.DataOrigin dataOrigin)
+    setDevice(android.healthconnect.datatypes.Device device)
+    setId(java.lang.String id)
+    setLastModifiedTime(java.time.Instant lastModifiedTime)
+  class NutritionRecord
+    equals(java.lang.Object o)
+  class NutritionRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime)
+    setBiotin(android.healthconnect.datatypes.units.Mass biotin)
+    setCaffeine(android.healthconnect.datatypes.units.Mass caffeine)
+    setCalcium(android.healthconnect.datatypes.units.Mass calcium)
+    setChloride(android.healthconnect.datatypes.units.Mass chloride)
+    setCholesterol(android.healthconnect.datatypes.units.Mass cholesterol)
+    setChromium(android.healthconnect.datatypes.units.Mass chromium)
+    setCopper(android.healthconnect.datatypes.units.Mass copper)
+    setDietaryFiber(android.healthconnect.datatypes.units.Mass dietaryFiber)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setEnergy(android.healthconnect.datatypes.units.Energy energy)
+    setEnergyFromFat(android.healthconnect.datatypes.units.Energy energyFromFat)
+    setFolate(android.healthconnect.datatypes.units.Mass folate)
+    setFolicAcid(android.healthconnect.datatypes.units.Mass folicAcid)
+    setIodine(android.healthconnect.datatypes.units.Mass iodine)
+    setIron(android.healthconnect.datatypes.units.Mass iron)
+    setMagnesium(android.healthconnect.datatypes.units.Mass magnesium)
+    setManganese(android.healthconnect.datatypes.units.Mass manganese)
+    setMealName(java.lang.String mealName)
+    setMealType(int mealType)
+    setMolybdenum(android.healthconnect.datatypes.units.Mass molybdenum)
+    setMonounsaturatedFat(android.healthconnect.datatypes.units.Mass monounsaturatedFat)
+    setNiacin(android.healthconnect.datatypes.units.Mass niacin)
+    setPantothenicAcid(android.healthconnect.datatypes.units.Mass pantothenicAcid)
+    setPhosphorus(android.healthconnect.datatypes.units.Mass phosphorus)
+    setPolyunsaturatedFat(android.healthconnect.datatypes.units.Mass polyunsaturatedFat)
+    setPotassium(android.healthconnect.datatypes.units.Mass potassium)
+    setProtein(android.healthconnect.datatypes.units.Mass protein)
+    setRiboflavin(android.healthconnect.datatypes.units.Mass riboflavin)
+    setSaturatedFat(android.healthconnect.datatypes.units.Mass saturatedFat)
+    setSelenium(android.healthconnect.datatypes.units.Mass selenium)
+    setSodium(android.healthconnect.datatypes.units.Mass sodium)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    setSugar(android.healthconnect.datatypes.units.Mass sugar)
+    setThiamin(android.healthconnect.datatypes.units.Mass thiamin)
+    setTotalCarbohydrate(android.healthconnect.datatypes.units.Mass totalCarbohydrate)
+    setTotalFat(android.healthconnect.datatypes.units.Mass totalFat)
+    setTransFat(android.healthconnect.datatypes.units.Mass transFat)
+    setUnsaturatedFat(android.healthconnect.datatypes.units.Mass unsaturatedFat)
+    setVitaminA(android.healthconnect.datatypes.units.Mass vitaminA)
+    setVitaminB12(android.healthconnect.datatypes.units.Mass vitaminB12)
+    setVitaminB6(android.healthconnect.datatypes.units.Mass vitaminB6)
+    setVitaminC(android.healthconnect.datatypes.units.Mass vitaminC)
+    setVitaminD(android.healthconnect.datatypes.units.Mass vitaminD)
+    setVitaminE(android.healthconnect.datatypes.units.Mass vitaminE)
+    setVitaminK(android.healthconnect.datatypes.units.Mass vitaminK)
+    setZinc(android.healthconnect.datatypes.units.Mass zinc)
+  class OvulationTestRecord
+    equals(java.lang.Object o)
+  class OvulationTestRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int result)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class OxygenSaturationRecord
+    equals(java.lang.Object o)
+  class OxygenSaturationRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Percentage percentage)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class PowerRecord
+    equals(java.lang.Object object)
+  class PowerRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, java.util.List<android.healthconnect.datatypes.PowerRecord.PowerRecordSample> powerRecordSamples)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+  class PowerRecord.PowerRecordSample
+    equals(java.lang.Object object)
+    #ctor(android.healthconnect.datatypes.units.Power power, java.time.Instant time)
+  class Record
+    equals(java.lang.Object object)
+  class RespiratoryRateRecord
+    equals(java.lang.Object o)
+  class RespiratoryRateRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, double rate)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class RestingHeartRateRecord
+    equals(java.lang.Object o)
+  class RestingHeartRateRecord.Builder
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, long beatsPerMinute)
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+  class SexualActivityRecord
+    equals(java.lang.Object o)
+  class SexualActivityRecord.Builder
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int protectionUsed)
+  class SleepSessionRecord
+    equals(java.lang.Object o)
+  class SleepSessionRecord.Builder
+    addStage(android.healthconnect.datatypes.SleepSessionRecord.Stage stage)
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setNotes(java.lang.CharSequence notes)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    setTitle(java.lang.CharSequence title)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, java.util.List<android.healthconnect.datatypes.SleepSessionRecord.Stage> stages)
+  class SleepSessionRecord.Stage
+    equals(java.lang.Object o)
+    #ctor(java.time.Instant startTime, java.time.Instant endTime, int stageType)
+  class SpeedRecord
+    equals(java.lang.Object object)
+  class SpeedRecord.Builder
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, java.util.List<android.healthconnect.datatypes.SpeedRecord.SpeedRecordSample> speedRecordSamples)
+  class SpeedRecord.SpeedRecordSample
+    equals(java.lang.Object object)
+    #ctor(android.healthconnect.datatypes.units.Velocity speed, java.time.Instant time)
+  class StepsCadenceRecord
+    equals(java.lang.Object object)
+  class StepsCadenceRecord.Builder
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, java.util.List<android.healthconnect.datatypes.StepsCadenceRecord.StepsCadenceRecordSample> stepsCadenceRecordSamples)
+  class StepsCadenceRecord.StepsCadenceRecordSample
+    equals(java.lang.Object object)
+    #ctor(double rate, java.time.Instant time)
+  class StepsRecord
+    equals(java.lang.Object o)
+  class StepsRecord.Builder
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, long count)
+  class TotalCaloriesBurnedRecord
+    equals(java.lang.Object object)
+  class TotalCaloriesBurnedRecord.Builder
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, android.healthconnect.datatypes.units.Energy energy)
+  class Vo2MaxRecord
+    equals(java.lang.Object o)
+  class Vo2MaxRecord.Builder
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, int measurementMethod, double vo2MillilitersPerMinuteKilogram)
+  class WeightRecord
+    equals(java.lang.Object o)
+  class WeightRecord.Builder
+    setZoneOffset(java.time.ZoneOffset zoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant time, android.healthconnect.datatypes.units.Mass weight)
+  class WheelchairPushesRecord
+    equals(java.lang.Object object)
+  class WheelchairPushesRecord.Builder
+    setEndZoneOffset(java.time.ZoneOffset endZoneOffset)
+    setStartZoneOffset(java.time.ZoneOffset startZoneOffset)
+    #ctor(android.healthconnect.datatypes.Metadata metadata, java.time.Instant startTime, java.time.Instant endTime, long count)
+
+package android.healthconnect.datatypes.units
+;---------------------------------------
+  class BloodGlucose
+    compareTo(android.healthconnect.datatypes.units.BloodGlucose other)
+    equals(java.lang.Object object)
+    fromMillimolesPerLiter(double value)
+  class Energy
+    compareTo(android.healthconnect.datatypes.units.Energy other)
+    equals(java.lang.Object object)
+    fromJoules(double value)
+  class Length
+    compareTo(android.healthconnect.datatypes.units.Length other)
+    equals(java.lang.Object object)
+    fromMeters(double value)
+  class Mass
+    compareTo(android.healthconnect.datatypes.units.Mass other)
+    equals(java.lang.Object object)
+    fromKilograms(double value)
+  class Percentage
+    compareTo(android.healthconnect.datatypes.units.Percentage other)
+    equals(java.lang.Object object)
+    fromValue(double value)
+  class Power
+    compareTo(android.healthconnect.datatypes.units.Power other)
+    equals(java.lang.Object object)
+    fromWatts(double value)
+  class Pressure
+    compareTo(android.healthconnect.datatypes.units.Pressure other)
+    equals(java.lang.Object object)
+    fromMillimetersOfMercury(double value)
+  class Temperature
+    compareTo(android.healthconnect.datatypes.units.Temperature other)
+    equals(java.lang.Object object)
+    fromCelsius(double value)
+  class Velocity
+    compareTo(android.healthconnect.datatypes.units.Velocity other)
+    equals(java.lang.Object object)
+    fromMetersPerSecond(double value)
+  class Volume
+    compareTo(android.healthconnect.datatypes.units.Volume other)
+    equals(java.lang.Object object)
+    fromMilliliters(double value)
+
+package android.icu.lang
+;---------------------------------------
+  class UCharacter
+    charCount(int cp)
+    codePointAt(char[] text, int index)
+    codePointAt(char[] text, int index, int limit)
+    codePointAt(java.lang.CharSequence seq, int index)
+    codePointBefore(char[] text, int index)
+    codePointBefore(char[] text, int index, int limit)
+    codePointBefore(java.lang.CharSequence seq, int index)
+    codePointCount(char[] text, int start, int limit)
+    codePointCount(java.lang.CharSequence text, int start, int limit)
+    digit(int ch)
+    digit(int ch, int radix)
+    foldCase(int ch, boolean defaultmapping)
+    foldCase(int ch, int options)
+    foldCase(java.lang.String str, boolean defaultmapping)
+    foldCase(java.lang.String str, int options)
+    forDigit(int digit, int radix)
+    getAge(int ch)
+    getBidiPairedBracket(int c)
+    getCharFromExtendedName(java.lang.String name)
+    getCharFromName(java.lang.String name)
+    getCharFromNameAlias(java.lang.String name)
+    getCodePoint(char char16)
+    getCodePoint(char lead, char trail)
+    getCodePoint(int lead, int trail)
+    getCombiningClass(int ch)
+    getDirection(int ch)
+    getDirectionality(int cp)
+    getExtendedName(int ch)
+    getHanNumericValue(int ch)
+    getIntPropertyMaxValue(int type)
+    getIntPropertyMinValue(int type)
+    getIntPropertyValue(int ch, int type)
+    getMirror(int ch)
+    getName(int ch)
+    getName(java.lang.String s, java.lang.String separator)
+    getNameAlias(int ch)
+    getNumericValue(int ch)
+    getPropertyEnum(java.lang.CharSequence propertyAlias)
+    getPropertyName(int property, int nameChoice)
+    getPropertyValueEnum(int property, java.lang.CharSequence valueAlias)
+    getPropertyValueName(int property, int value, int nameChoice)
+    getType(int ch)
+    getUnicodeNumericValue(int ch)
+    hasBinaryProperty(int ch, int property)
+    hasBinaryProperty(java.lang.CharSequence s, int property)
+    isBaseForm(int ch)
+    isBMP(int ch)
+    isDefined(int ch)
+    isDigit(int ch)
+    isHighSurrogate(char ch)
+    isHighSurrogate(int codePoint)
+    isIdentifierIgnorable(int ch)
+    isISOControl(int ch)
+    isJavaIdentifierPart(int cp)
+    isJavaIdentifierStart(int cp)
+    isLegal(int ch)
+    isLegal(java.lang.String str)
+    isLetter(int ch)
+    isLetterOrDigit(int ch)
+    isLowerCase(int ch)
+    isLowSurrogate(char ch)
+    isLowSurrogate(int codePoint)
+    isMirrored(int ch)
+    isPrintable(int ch)
+    isSpaceChar(int ch)
+    isSupplementary(int ch)
+    isSupplementaryCodePoint(int cp)
+    isSurrogatePair(char high, char low)
+    isSurrogatePair(int high, int low)
+    isTitleCase(int ch)
+    isUAlphabetic(int ch)
+    isULowercase(int ch)
+    isUnicodeIdentifierPart(int ch)
+    isUnicodeIdentifierStart(int ch)
+    isUpperCase(int ch)
+    isUUppercase(int ch)
+    isUWhiteSpace(int ch)
+    isValidCodePoint(int cp)
+    isWhitespace(int ch)
+    offsetByCodePoints(char[] text, int start, int count, int index, int codePointOffset)
+    offsetByCodePoints(java.lang.CharSequence text, int index, int codePointOffset)
+    toChars(int cp)
+    toChars(int cp, char[] dst, int dstIndex)
+    toCodePoint(char high, char low)
+    toCodePoint(int high, int low)
+    toLowerCase(android.icu.util.ULocale locale, java.lang.String str)
+    toLowerCase(int ch)
+    toLowerCase(java.lang.String str)
+    toLowerCase(java.util.Locale locale, java.lang.String str)
+    toString(int ch)
+    toTitleCase(android.icu.util.ULocale locale, java.lang.String str, android.icu.text.BreakIterator titleIter)
+    toTitleCase(android.icu.util.ULocale locale, java.lang.String str, android.icu.text.BreakIterator titleIter, int options)
+    toTitleCase(int ch)
+    toTitleCase(java.lang.String str, android.icu.text.BreakIterator breakiter)
+    toTitleCase(java.util.Locale locale, java.lang.String str, android.icu.text.BreakIterator breakiter)
+    toTitleCase(java.util.Locale locale, java.lang.String str, android.icu.text.BreakIterator titleIter, int options)
+    toUpperCase(android.icu.util.ULocale locale, java.lang.String str)
+    toUpperCase(int ch)
+    toUpperCase(java.lang.String str)
+    toUpperCase(java.util.Locale locale, java.lang.String str)
+  class UCharacter.UnicodeBlock
+    forName(java.lang.String blockName)
+    getInstance(int id)
+    of(int ch)
+  class UCharacterCategory
+    toString(int category)
+  class UCharacterDirection
+    toString(int dir)
+  class UScript
+    breaksBetweenLetters(int script)
+    getCode(android.icu.util.ULocale locale)
+    getCode(java.lang.String nameOrAbbrOrLocale)
+    getCode(java.util.Locale locale)
+    getCodeFromName(java.lang.String nameOrAbbr)
+    getName(int scriptCode)
+    getSampleString(int script)
+    getScript(int codepoint)
+    getScriptExtensions(int c, java.util.BitSet set)
+    getShortName(int scriptCode)
+    getUsage(int script)
+    hasScript(int c, int sc)
+    isCased(int script)
+    isRightToLeft(int script)
+
+package android.icu.math
+;---------------------------------------
+  class BigDecimal
+    abs(android.icu.math.MathContext set)
+    add(android.icu.math.BigDecimal rhs)
+    add(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    #ctor(char[] inchars)
+    #ctor(char[] inchars, int offset, int length)
+    #ctor(double num)
+    #ctor(int num)
+    #ctor(java.lang.String string)
+    #ctor(java.math.BigDecimal bd)
+    #ctor(java.math.BigInteger bi)
+    #ctor(java.math.BigInteger bi, int scale)
+    #ctor(long num)
+    compareTo(android.icu.math.BigDecimal rhs)
+    compareTo(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    divide(android.icu.math.BigDecimal rhs)
+    divide(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    divide(android.icu.math.BigDecimal rhs, int round)
+    divide(android.icu.math.BigDecimal rhs, int scale, int round)
+    divideInteger(android.icu.math.BigDecimal rhs)
+    divideInteger(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    equals(java.lang.Object obj)
+    format(int before, int after)
+    format(int before, int after, int explaces, int exdigits, int exformint, int exround)
+    max(android.icu.math.BigDecimal rhs)
+    max(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    min(android.icu.math.BigDecimal rhs)
+    min(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    movePointLeft(int n)
+    movePointRight(int n)
+    multiply(android.icu.math.BigDecimal rhs)
+    multiply(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    negate(android.icu.math.MathContext set)
+    plus(android.icu.math.MathContext set)
+    pow(android.icu.math.BigDecimal rhs)
+    pow(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    remainder(android.icu.math.BigDecimal rhs)
+    remainder(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    setScale(int scale)
+    setScale(int scale, int round)
+    subtract(android.icu.math.BigDecimal rhs)
+    subtract(android.icu.math.BigDecimal rhs, android.icu.math.MathContext set)
+    valueOf(double dub)
+    valueOf(long lint)
+    valueOf(long lint, int scale)
+  class MathContext
+    #ctor(int setdigits)
+    #ctor(int setdigits, int setform)
+    #ctor(int setdigits, int setform, boolean setlostdigits)
+    #ctor(int setdigits, int setform, boolean setlostdigits, int setroundingmode)
+
+package android.icu.number
+;---------------------------------------
+  class CurrencyPrecision
+    withCurrency(android.icu.util.Currency currency)
+  class FormattedNumber
+    <A> appendTo(A appendable)
+    charAt(int index)
+    nextPosition(android.icu.text.ConstrainedFieldPosition cfpos)
+    subSequence(int start, int end)
+  class FormattedNumberRange
+    <A> appendTo(A appendable)
+    charAt(int index)
+    equals(java.lang.Object other)
+    nextPosition(android.icu.text.ConstrainedFieldPosition cfpos)
+    subSequence(int start, int end)
+  class FractionPrecision
+    withMaxDigits(int maxSignificantDigits)
+    withMinDigits(int minSignificantDigits)
+    withSignificantDigits(int minSignificantDigits, int maxSignificantDigits, android.icu.number.NumberFormatter.RoundingPriority priority)
+  class IntegerWidth
+    truncateAt(int maxInt)
+    zeroFillTo(int minInt)
+  class LocalizedNumberFormatter
+    format(android.icu.util.Measure input)
+    format(double input)
+    format(java.lang.Number input)
+    format(long input)
+  class LocalizedNumberRangeFormatter
+    formatRange(double first, double second)
+    formatRange(int first, int second)
+    formatRange(java.lang.Number first, java.lang.Number second)
+  class NumberFormatter
+    withLocale(android.icu.util.ULocale locale)
+    withLocale(java.util.Locale locale)
+  class NumberFormatterSettings<T>
+    decimal(android.icu.number.NumberFormatter.DecimalSeparatorDisplay style)
+    equals(java.lang.Object other)
+    grouping(android.icu.number.NumberFormatter.GroupingStrategy strategy)
+    integerWidth(android.icu.number.IntegerWidth style)
+    notation(android.icu.number.Notation notation)
+    perUnit(android.icu.util.MeasureUnit perUnit)
+    precision(android.icu.number.Precision precision)
+    roundingMode(java.math.RoundingMode roundingMode)
+    scale(android.icu.number.Scale scale)
+    sign(android.icu.number.NumberFormatter.SignDisplay style)
+    symbols(android.icu.text.DecimalFormatSymbols symbols)
+    symbols(android.icu.text.NumberingSystem ns)
+    unit(android.icu.util.MeasureUnit unit)
+    unitWidth(android.icu.number.NumberFormatter.UnitWidth style)
+    usage(java.lang.String usage)
+  class NumberRangeFormatter
+    withLocale(android.icu.util.ULocale locale)
+    withLocale(java.util.Locale locale)
+  class NumberRangeFormatterSettings<T>
+    collapse(android.icu.number.NumberRangeFormatter.RangeCollapse collapse)
+    equals(java.lang.Object other)
+    identityFallback(android.icu.number.NumberRangeFormatter.RangeIdentityFallback identityFallback)
+    numberFormatterBoth(android.icu.number.UnlocalizedNumberFormatter formatter)
+    numberFormatterFirst(android.icu.number.UnlocalizedNumberFormatter formatterFirst)
+    numberFormatterSecond(android.icu.number.UnlocalizedNumberFormatter formatterSecond)
+  class Precision
+    currency(android.icu.util.Currency.CurrencyUsage currencyUsage)
+    fixedFraction(int minMaxFractionPlaces)
+    fixedSignificantDigits(int minMaxSignificantDigits)
+    increment(java.math.BigDecimal roundingIncrement)
+    maxFraction(int maxFractionPlaces)
+    maxSignificantDigits(int maxSignificantDigits)
+    minFraction(int minFractionPlaces)
+    minMaxFraction(int minFractionPlaces, int maxFractionPlaces)
+    minMaxSignificantDigits(int minSignificantDigits, int maxSignificantDigits)
+    minSignificantDigits(int minSignificantDigits)
+    trailingZeroDisplay(android.icu.number.NumberFormatter.TrailingZeroDisplay trailingZeroDisplay)
+  class Scale
+    byBigDecimal(java.math.BigDecimal multiplicand)
+    byDouble(double multiplicand)
+    byDoubleAndPowerOfTen(double multiplicand, int power)
+    powerOfTen(int power)
+  class ScientificNotation
+    withExponentSignDisplay(android.icu.number.NumberFormatter.SignDisplay exponentSignDisplay)
+    withMinExponentDigits(int minExponentDigits)
+  class UnlocalizedNumberFormatter
+    locale(android.icu.util.ULocale locale)
+    locale(java.util.Locale locale)
+  class UnlocalizedNumberRangeFormatter
+    locale(android.icu.util.ULocale locale)
+    locale(java.util.Locale locale)
+
+package android.icu.text
+;---------------------------------------
+  class AlphabeticIndex<V>
+    addLabels(android.icu.text.UnicodeSet additions)
+    addLabels(android.icu.util.ULocale... additions)
+    addLabels(java.util.Locale... additions)
+    addRecord(java.lang.CharSequence name, V data)
+    #ctor(android.icu.text.RuleBasedCollator collator)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(java.util.Locale locale)
+    getBucketIndex(java.lang.CharSequence name)
+    setInflowLabel(java.lang.String inflowLabel)
+    setMaxLabelCount(int maxLabelCount)
+    setOverflowLabel(java.lang.String overflowLabel)
+    setUnderflowLabel(java.lang.String underflowLabel)
+  class AlphabeticIndex.ImmutableIndex<V>
+    getBucket(int index)
+    getBucketIndex(java.lang.CharSequence name)
+  class Bidi
+    #ctor(char[] text, int textStart, byte[] embeddings, int embStart, int paragraphLength, int flags)
+    #ctor(int maxLength, int maxRunCount)
+    #ctor(java.lang.String paragraph, int flags)
+    #ctor(java.text.AttributedCharacterIterator paragraph)
+    createLineBidi(int lineStart, int lineLimit)
+    getBaseDirection(java.lang.CharSequence paragraph)
+    getCustomizedClass(int c)
+    getLevelAt(int charIndex)
+    getLogicalIndex(int visualIndex)
+    getLogicalRun(int logicalPosition)
+    getParagraph(int charIndex)
+    getParagraphByIndex(int paraIndex)
+    getParagraphIndex(int charIndex)
+    getRunLevel(int run)
+    getRunLimit(int run)
+    getRunStart(int run)
+    getVisualIndex(int logicalIndex)
+    getVisualRun(int runIndex)
+    invertMap(int[] srcMap)
+    orderParagraphsLTR(boolean ordarParaLTR)
+    reorderLogical(byte[] levels)
+    reorderVisual(byte[] levels)
+    reorderVisually(byte[] levels, int levelStart, java.lang.Object[] objects, int objectStart, int count)
+    requiresBidi(char[] text, int start, int limit)
+    setContext(java.lang.String prologue, java.lang.String epilogue)
+    setCustomClassifier(android.icu.text.BidiClassifier classifier)
+    setInverse(boolean isInverse)
+    setLine(int start, int limit)
+    setPara(char[] chars, byte paraLevel, byte[] embeddingLevels)
+    setPara(java.lang.String text, byte paraLevel, byte[] embeddingLevels)
+    setPara(java.text.AttributedCharacterIterator paragraph)
+    setReorderingMode(int reorderingMode)
+    setReorderingOptions(int options)
+    writeReordered(int options)
+    writeReverse(java.lang.String src, int options)
+  class BidiClassifier
+    #ctor(java.lang.Object context)
+    classify(int c)
+    setContext(java.lang.Object context)
+  class BreakIterator
+    following(int offset)
+    getCharacterInstance(android.icu.util.ULocale where)
+    getCharacterInstance(java.util.Locale where)
+    getLineInstance(android.icu.util.ULocale where)
+    getLineInstance(java.util.Locale where)
+    getRuleStatusVec(int[] fillInArray)
+    getSentenceInstance(android.icu.util.ULocale where)
+    getSentenceInstance(java.util.Locale where)
+    getTitleInstance(android.icu.util.ULocale where)
+    getTitleInstance(java.util.Locale where)
+    getWordInstance(android.icu.util.ULocale where)
+    getWordInstance(java.util.Locale where)
+    isBoundary(int offset)
+    next(int n)
+    preceding(int offset)
+    setText(java.lang.CharSequence newText)
+    setText(java.lang.String newText)
+    setText(java.text.CharacterIterator newText)
+  class CaseMap.Fold
+    apply(java.lang.CharSequence src)
+    <A> apply(java.lang.CharSequence src, A dest, android.icu.text.Edits edits)
+  class CaseMap.Lower
+    apply(java.util.Locale locale, java.lang.CharSequence src)
+    <A> apply(java.util.Locale locale, java.lang.CharSequence src, A dest, android.icu.text.Edits edits)
+  class CaseMap.Title
+    apply(java.util.Locale locale, android.icu.text.BreakIterator iter, java.lang.CharSequence src)
+    <A> apply(java.util.Locale locale, android.icu.text.BreakIterator iter, java.lang.CharSequence src, A dest, android.icu.text.Edits edits)
+  class CaseMap.Upper
+    apply(java.util.Locale locale, java.lang.CharSequence src)
+    <A> apply(java.util.Locale locale, java.lang.CharSequence src, A dest, android.icu.text.Edits edits)
+  class CollationElementIterator
+    equals(java.lang.Object that)
+    getMaxExpansion(int ce)
+    primaryOrder(int ce)
+    secondaryOrder(int ce)
+    setOffset(int newOffset)
+    setText(android.icu.text.UCharacterIterator source)
+    setText(java.lang.String source)
+    setText(java.text.CharacterIterator source)
+    tertiaryOrder(int ce)
+  class CollationKey
+    #ctor(java.lang.String source, byte[] key)
+    compareTo(android.icu.text.CollationKey target)
+    equals(android.icu.text.CollationKey target)
+    equals(java.lang.Object target)
+    getBound(int boundType, int noOfLevels)
+    merge(android.icu.text.CollationKey source)
+  class Collator
+    compare(java.lang.Object source, java.lang.Object target)
+    compare(java.lang.String source, java.lang.String target)
+    equals(java.lang.Object obj)
+    equals(java.lang.String source, java.lang.String target)
+    getCollationKey(java.lang.String source)
+    getDisplayName(android.icu.util.ULocale objectLocale)
+    getDisplayName(android.icu.util.ULocale objectLocale, android.icu.util.ULocale displayLocale)
+    getDisplayName(java.util.Locale objectLocale)
+    getDisplayName(java.util.Locale objectLocale, java.util.Locale displayLocale)
+    getEquivalentReorderCodes(int reorderCode)
+    getFunctionalEquivalent(java.lang.String keyword, android.icu.util.ULocale locID)
+    getFunctionalEquivalent(java.lang.String keyword, android.icu.util.ULocale locID, boolean[] isAvailable)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale locale)
+    getKeywordValues(java.lang.String keyword)
+    getKeywordValuesForLocale(java.lang.String key, android.icu.util.ULocale locale, boolean commonlyUsed)
+    setDecomposition(int decomposition)
+    setMaxVariable(int group)
+    setReorderCodes(int... order)
+    setStrength(int newStrength)
+  class CompactDecimalFormat
+    getInstance(android.icu.util.ULocale locale, android.icu.text.CompactDecimalFormat.CompactStyle style)
+    getInstance(java.util.Locale locale, android.icu.text.CompactDecimalFormat.CompactStyle style)
+    parse(java.lang.String text, java.text.ParsePosition parsePosition)
+    parseCurrency(java.lang.CharSequence text, java.text.ParsePosition parsePosition)
+  class ConstrainedFieldPosition
+    constrainClass(java.lang.Class<?> classConstraint)
+    constrainField(java.text.Format.Field field)
+    matchesField(java.text.Format.Field field, java.lang.Object fieldValue)
+    setInt64IterationContext(long context)
+    setState(java.text.Format.Field field, java.lang.Object value, int start, int limit)
+  class CurrencyPluralInfo
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(java.util.Locale locale)
+    equals(java.lang.Object a)
+    getCurrencyPluralPattern(java.lang.String pluralCount)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale locale)
+    setCurrencyPluralPattern(java.lang.String pluralCount, java.lang.String pattern)
+    setLocale(android.icu.util.ULocale loc)
+    setPluralRules(java.lang.String ruleDescription)
+  class DateFormat
+    equals(java.lang.Object obj)
+    format(android.icu.util.Calendar cal, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
+    format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
+    format(java.util.Date date)
+    format(java.util.Date date, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
+    getBooleanAttribute(android.icu.text.DateFormat.BooleanAttribute key)
+    getContext(android.icu.text.DisplayContext.Type type)
+    getDateInstance(android.icu.util.Calendar cal, int dateStyle)
+    getDateInstance(android.icu.util.Calendar cal, int dateStyle, android.icu.util.ULocale locale)
+    getDateInstance(android.icu.util.Calendar cal, int dateStyle, java.util.Locale locale)
+    getDateInstance(int style)
+    getDateInstance(int style, android.icu.util.ULocale locale)
+    getDateInstance(int style, java.util.Locale aLocale)
+    getDateTimeInstance(android.icu.util.Calendar cal, int dateStyle, int timeStyle)
+    getDateTimeInstance(android.icu.util.Calendar cal, int dateStyle, int timeStyle, android.icu.util.ULocale locale)
+    getDateTimeInstance(android.icu.util.Calendar cal, int dateStyle, int timeStyle, java.util.Locale locale)
+    getDateTimeInstance(int dateStyle, int timeStyle)
+    getDateTimeInstance(int dateStyle, int timeStyle, android.icu.util.ULocale locale)
+    getDateTimeInstance(int dateStyle, int timeStyle, java.util.Locale aLocale)
+    getInstance(android.icu.util.Calendar cal)
+    getInstance(android.icu.util.Calendar cal, android.icu.util.ULocale locale)
+    getInstance(android.icu.util.Calendar cal, java.util.Locale locale)
+    getInstanceForSkeleton(android.icu.util.Calendar cal, java.lang.String skeleton, android.icu.util.ULocale locale)
+    getInstanceForSkeleton(android.icu.util.Calendar cal, java.lang.String skeleton, java.util.Locale locale)
+    getInstanceForSkeleton(java.lang.String skeleton)
+    getInstanceForSkeleton(java.lang.String skeleton, android.icu.util.ULocale locale)
+    getInstanceForSkeleton(java.lang.String skeleton, java.util.Locale locale)
+    getPatternInstance(android.icu.util.Calendar cal, java.lang.String skeleton, android.icu.util.ULocale locale)
+    getPatternInstance(android.icu.util.Calendar cal, java.lang.String skeleton, java.util.Locale locale)
+    getPatternInstance(java.lang.String skeleton)
+    getPatternInstance(java.lang.String skeleton, android.icu.util.ULocale locale)
+    getPatternInstance(java.lang.String skeleton, java.util.Locale locale)
+    getTimeInstance(android.icu.util.Calendar cal, int timeStyle)
+    getTimeInstance(android.icu.util.Calendar cal, int timeStyle, android.icu.util.ULocale locale)
+    getTimeInstance(android.icu.util.Calendar cal, int timeStyle, java.util.Locale locale)
+    getTimeInstance(int style)
+    getTimeInstance(int style, android.icu.util.ULocale locale)
+    getTimeInstance(int style, java.util.Locale aLocale)
+    parse(java.lang.String text)
+    parse(java.lang.String text, android.icu.util.Calendar cal, java.text.ParsePosition pos)
+    parse(java.lang.String text, java.text.ParsePosition pos)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    setBooleanAttribute(android.icu.text.DateFormat.BooleanAttribute key, boolean value)
+    setCalendar(android.icu.util.Calendar newCalendar)
+    setCalendarLenient(boolean lenient)
+    setContext(android.icu.text.DisplayContext context)
+    setLenient(boolean lenient)
+    setNumberFormat(android.icu.text.NumberFormat newNumberFormat)
+    setTimeZone(android.icu.util.TimeZone zone)
+  class DateFormat.Field
+    #ctor(java.lang.String name, int calendarField)
+    ofCalendarField(int calendarField)
+  class DateFormatSymbols
+    #ctor(android.icu.util.Calendar cal, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.Calendar cal, java.util.Locale locale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(java.lang.Class<? extends android.icu.util.Calendar> calendarClass, android.icu.util.ULocale locale)
+    #ctor(java.lang.Class<? extends android.icu.util.Calendar> calendarClass, java.util.Locale locale)
+    #ctor(java.util.Locale locale)
+    #ctor(java.util.ResourceBundle bundle, android.icu.util.ULocale locale)
+    #ctor(java.util.ResourceBundle bundle, java.util.Locale locale)
+    equals(java.lang.Object obj)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale locale)
+    getMonths(int context, int width)
+    getQuarters(int context, int width)
+    getWeekdays(int context, int width)
+    getYearNames(int context, int width)
+    getZodiacNames(int context, int width)
+    initializeData(android.icu.util.ULocale desiredLocale, java.lang.String type)
+    setAmPmStrings(java.lang.String[] newAmpms)
+    setEraNames(java.lang.String[] newEraNames)
+    setEras(java.lang.String[] newEras)
+    setLocalPatternChars(java.lang.String newLocalPatternChars)
+    setMonths(java.lang.String[] newMonths)
+    setMonths(java.lang.String[] newMonths, int context, int width)
+    setNarrowEras(java.lang.String[] newNarrowEras)
+    setQuarters(java.lang.String[] newQuarters, int context, int width)
+    setShortMonths(java.lang.String[] newShortMonths)
+    setShortWeekdays(java.lang.String[] newAbbrevWeekdays)
+    setWeekdays(java.lang.String[] newWeekdays)
+    setWeekdays(java.lang.String[] newWeekdays, int context, int width)
+    setYearNames(java.lang.String[] yearNames, int context, int width)
+    setZodiacNames(java.lang.String[] zodiacNames, int context, int width)
+    setZoneStrings(java.lang.String[][] newZoneStrings)
+  class DateIntervalFormat
+    format(android.icu.util.Calendar fromCalendar, android.icu.util.Calendar toCalendar, java.lang.StringBuffer appendTo, java.text.FieldPosition pos)
+    format(android.icu.util.DateInterval dtInterval, java.lang.StringBuffer appendTo, java.text.FieldPosition fieldPosition)
+    format(java.lang.Object obj, java.lang.StringBuffer appendTo, java.text.FieldPosition fieldPosition)
+    formatToValue(android.icu.util.Calendar fromCalendar, android.icu.util.Calendar toCalendar)
+    formatToValue(android.icu.util.DateInterval dtInterval)
+    getContext(android.icu.text.DisplayContext.Type type)
+    getInstance(java.lang.String skeleton)
+    getInstance(java.lang.String skeleton, android.icu.text.DateIntervalInfo dtitvinf)
+    getInstance(java.lang.String skeleton, android.icu.util.ULocale locale)
+    getInstance(java.lang.String skeleton, android.icu.util.ULocale locale, android.icu.text.DateIntervalInfo dtitvinf)
+    getInstance(java.lang.String skeleton, java.util.Locale locale)
+    getInstance(java.lang.String skeleton, java.util.Locale locale, android.icu.text.DateIntervalInfo dtitvinf)
+    parseObject(java.lang.String source, java.text.ParsePosition parse_pos)
+    setContext(android.icu.text.DisplayContext context)
+    setDateIntervalInfo(android.icu.text.DateIntervalInfo newItvPattern)
+    setTimeZone(android.icu.util.TimeZone zone)
+  class DateIntervalFormat.FormattedDateInterval
+    <A> appendTo(A appendable)
+    charAt(int index)
+    nextPosition(android.icu.text.ConstrainedFieldPosition cfpos)
+    subSequence(int start, int end)
+  class DateIntervalInfo
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(java.util.Locale locale)
+    equals(java.lang.Object a)
+    getIntervalPattern(java.lang.String skeleton, int field)
+    setFallbackIntervalPattern(java.lang.String fallbackPattern)
+    setIntervalPattern(java.lang.String skeleton, int lrgDiffCalUnit, java.lang.String intervalPattern)
+  class DateIntervalInfo.PatternInfo
+    #ctor(java.lang.String firstPart, java.lang.String secondPart, boolean firstDateInPtnIsLaterDate)
+    equals(java.lang.Object a)
+  class DateTimePatternGenerator
+    addPattern(java.lang.String pattern, boolean override, android.icu.text.DateTimePatternGenerator.PatternInfo returnInfo)
+    getAppendItemFormat(int field)
+    getAppendItemName(int field)
+    getBaseSkeleton(java.lang.String pattern)
+    getBaseSkeletons(java.util.Set<java.lang.String> result)
+    getBestPattern(java.lang.String skeleton)
+    getBestPattern(java.lang.String skeleton, int options)
+    getFieldDisplayName(int field, android.icu.text.DateTimePatternGenerator.DisplayWidth width)
+    getInstance(android.icu.util.ULocale uLocale)
+    getInstance(java.util.Locale locale)
+    getSkeleton(java.lang.String pattern)
+    getSkeletons(java.util.Map<java.lang.String,java.lang.String> result)
+    replaceFieldTypes(java.lang.String pattern, java.lang.String skeleton)
+    replaceFieldTypes(java.lang.String pattern, java.lang.String skeleton, int options)
+    setAppendItemFormat(int field, java.lang.String value)
+    setAppendItemName(int field, java.lang.String value)
+    setDateTimeFormat(java.lang.String dateTimeFormat)
+    setDecimal(java.lang.String decimal)
+  class DecimalFormat
+    applyLocalizedPattern(java.lang.String localizedPattern)
+    applyPattern(java.lang.String pattern)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, android.icu.text.DecimalFormatSymbols symbols)
+    #ctor(java.lang.String pattern, android.icu.text.DecimalFormatSymbols symbols, android.icu.text.CurrencyPluralInfo infoInput, int style)
+    equals(java.lang.Object obj)
+    format(android.icu.math.BigDecimal number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    format(android.icu.util.CurrencyAmount currAmt, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    format(double number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    format(java.math.BigDecimal number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    format(java.math.BigInteger number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    format(long number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    formatToCharacterIterator(java.lang.Object obj)
+    parse(java.lang.String text, java.text.ParsePosition parsePosition)
+    parseCurrency(java.lang.CharSequence text, java.text.ParsePosition parsePosition)
+    setCurrency(android.icu.util.Currency currency)
+    setCurrencyPluralInfo(android.icu.text.CurrencyPluralInfo newInfo)
+    setCurrencyUsage(android.icu.util.Currency.CurrencyUsage usage)
+    setDecimalFormatSymbols(android.icu.text.DecimalFormatSymbols newSymbols)
+    setDecimalPatternMatchRequired(boolean value)
+    setDecimalSeparatorAlwaysShown(boolean value)
+    setExponentSignAlwaysShown(boolean expSignAlways)
+    setFormatWidth(int width)
+    setGroupingSize(int width)
+    setGroupingUsed(boolean enabled)
+    setMathContext(java.math.MathContext mathContext)
+    setMathContextICU(android.icu.math.MathContext mathContextICU)
+    setMaximumFractionDigits(int value)
+    setMaximumIntegerDigits(int value)
+    setMaximumSignificantDigits(int value)
+    setMinimumExponentDigits(byte minExpDig)
+    setMinimumFractionDigits(int value)
+    setMinimumGroupingDigits(int number)
+    setMinimumIntegerDigits(int value)
+    setMinimumSignificantDigits(int value)
+    setMultiplier(int multiplier)
+    setNegativePrefix(java.lang.String prefix)
+    setNegativeSuffix(java.lang.String suffix)
+    setPadCharacter(char padChar)
+    setPadPosition(int padPos)
+    setParseBigDecimal(boolean value)
+    setParseCaseSensitive(boolean value)
+    setParseIntegerOnly(boolean parseIntegerOnly)
+    setParseMaxDigits(int maxDigits)
+    setParseNoExponent(boolean value)
+    setParseStrict(boolean parseStrict)
+    setPositivePrefix(java.lang.String prefix)
+    setPositiveSuffix(java.lang.String suffix)
+    setRoundingIncrement(android.icu.math.BigDecimal increment)
+    setRoundingIncrement(double increment)
+    setRoundingIncrement(java.math.BigDecimal increment)
+    setRoundingMode(int roundingMode)
+    setScientificNotation(boolean useScientific)
+    setSecondaryGroupingSize(int width)
+    setSignAlwaysShown(boolean value)
+    setSignificantDigitsUsed(boolean useSignificantDigits)
+  class DecimalFormatSymbols
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(java.util.Locale locale)
+    equals(java.lang.Object obj)
+    forNumberingSystem(android.icu.util.ULocale locale, android.icu.text.NumberingSystem ns)
+    forNumberingSystem(java.util.Locale locale, android.icu.text.NumberingSystem ns)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale locale)
+    getPatternForCurrencySpacing(int itemType, boolean beforeCurrency)
+    setCurrency(android.icu.util.Currency currency)
+    setCurrencySymbol(java.lang.String currency)
+    setDecimalSeparator(char decimalSeparator)
+    setDecimalSeparatorString(java.lang.String decimalSeparatorString)
+    setDigit(char digit)
+    setDigitStrings(java.lang.String[] digitStrings)
+    setExponentMultiplicationSign(java.lang.String exponentMultiplicationSign)
+    setExponentSeparator(java.lang.String exp)
+    setGroupingSeparator(char groupingSeparator)
+    setGroupingSeparatorString(java.lang.String groupingSeparatorString)
+    setInfinity(java.lang.String infinity)
+    setInternationalCurrencySymbol(java.lang.String currency)
+    setMinusSign(char minusSign)
+    setMinusSignString(java.lang.String minusSignString)
+    setMonetaryDecimalSeparator(char sep)
+    setMonetaryDecimalSeparatorString(java.lang.String sep)
+    setMonetaryGroupingSeparator(char sep)
+    setMonetaryGroupingSeparatorString(java.lang.String sep)
+    setNaN(java.lang.String NaN)
+    setPadEscape(char c)
+    setPatternForCurrencySpacing(int itemType, boolean beforeCurrency, java.lang.String pattern)
+    setPatternSeparator(char patternSeparator)
+    setPercent(char percent)
+    setPercentString(java.lang.String percentString)
+    setPerMill(char perMill)
+    setPerMillString(java.lang.String perMillString)
+    setPlusSign(char plus)
+    setPlusSignString(java.lang.String plusSignString)
+    setSignificantDigit(char sigDigit)
+    setZeroDigit(char zeroDigit)
+  class Edits
+    addReplace(int oldLength, int newLength)
+    addUnchanged(int unchangedLength)
+    mergeAndAppend(android.icu.text.Edits ab, android.icu.text.Edits bc)
+  class Edits.Iterator
+    destinationIndexFromSourceIndex(int i)
+    findDestinationIndex(int i)
+    findSourceIndex(int i)
+    sourceIndexFromDestinationIndex(int i)
+  interface FormattedValue
+    <A> appendTo(A appendable)
+    nextPosition(android.icu.text.ConstrainedFieldPosition cfpos)
+  class IDNA
+    getUTS46Instance(int options)
+    labelToASCII(java.lang.CharSequence label, java.lang.StringBuilder dest, android.icu.text.IDNA.Info info)
+    labelToUnicode(java.lang.CharSequence label, java.lang.StringBuilder dest, android.icu.text.IDNA.Info info)
+    nameToASCII(java.lang.CharSequence name, java.lang.StringBuilder dest, android.icu.text.IDNA.Info info)
+    nameToUnicode(java.lang.CharSequence name, java.lang.StringBuilder dest, android.icu.text.IDNA.Info info)
+  class ListFormatter
+    format(java.lang.Object... items)
+    format(java.util.Collection<?> items)
+    formatToValue(java.lang.Object... items)
+    formatToValue(java.util.Collection<?> items)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.ListFormatter.Type type, android.icu.text.ListFormatter.Width width)
+    getInstance(java.util.Locale locale)
+    getInstance(java.util.Locale locale, android.icu.text.ListFormatter.Type type, android.icu.text.ListFormatter.Width width)
+    getPatternForNumItems(int count)
+  class ListFormatter.FormattedList
+    <A> appendTo(A appendable)
+    charAt(int index)
+    nextPosition(android.icu.text.ConstrainedFieldPosition cfpos)
+    subSequence(int start, int end)
+  class LocaleDisplayNames
+    getContext(android.icu.text.DisplayContext.Type type)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.DisplayContext... contexts)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.LocaleDisplayNames.DialectHandling dialectHandling)
+    getInstance(java.util.Locale locale)
+    getInstance(java.util.Locale locale, android.icu.text.DisplayContext... contexts)
+    getUiList(java.util.Set<android.icu.util.ULocale> localeSet, boolean inSelf, java.util.Comparator<java.lang.Object> collator)
+    getUiListCompareWholeItems(java.util.Set<android.icu.util.ULocale> localeSet, java.util.Comparator<android.icu.text.LocaleDisplayNames.UiListItem> comparator)
+    keyDisplayName(java.lang.String key)
+    keyValueDisplayName(java.lang.String key, java.lang.String value)
+    languageDisplayName(java.lang.String lang)
+    localeDisplayName(android.icu.util.ULocale locale)
+    localeDisplayName(java.lang.String localeId)
+    localeDisplayName(java.util.Locale locale)
+    regionDisplayName(java.lang.String region)
+    scriptDisplayName(int scriptCode)
+    scriptDisplayName(java.lang.String script)
+    variantDisplayName(java.lang.String variant)
+  class LocaleDisplayNames.UiListItem
+    equals(java.lang.Object obj)
+    getComparator(java.util.Comparator<java.lang.Object> comparator, boolean inSelf)
+    #ctor(android.icu.util.ULocale minimized, android.icu.util.ULocale modified, java.lang.String nameInDisplayLocale, java.lang.String nameInSelf)
+  class MeasureFormat
+    equals(java.lang.Object other)
+    format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fpos)
+    formatMeasurePerUnit(android.icu.util.Measure measure, android.icu.util.MeasureUnit perUnit, java.lang.StringBuilder appendTo, java.text.FieldPosition pos)
+    formatMeasures(android.icu.util.Measure... measures)
+    formatMeasures(java.lang.StringBuilder appendTo, java.text.FieldPosition fpos, android.icu.util.Measure... measures)
+    getCurrencyFormat(android.icu.util.ULocale locale)
+    getCurrencyFormat(java.util.Locale locale)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.MeasureFormat.FormatWidth formatWidth)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.MeasureFormat.FormatWidth formatWidth, android.icu.text.NumberFormat format)
+    getInstance(java.util.Locale locale, android.icu.text.MeasureFormat.FormatWidth formatWidth)
+    getInstance(java.util.Locale locale, android.icu.text.MeasureFormat.FormatWidth formatWidth, android.icu.text.NumberFormat format)
+    getUnitDisplayName(android.icu.util.MeasureUnit unit)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+  class MessageFormat
+    applyPattern(java.lang.String pttrn)
+    applyPattern(java.lang.String pattern, android.icu.text.MessagePattern.ApostropheMode aposMode)
+    autoQuoteApostrophe(java.lang.String pattern)
+    equals(java.lang.Object obj)
+    format(java.lang.Object arguments, java.lang.StringBuffer result, java.text.FieldPosition pos)
+    format(java.lang.Object[] arguments, java.lang.StringBuffer result, java.text.FieldPosition pos)
+    format(java.lang.String pattern, java.lang.Object... arguments)
+    format(java.lang.String pattern, java.util.Map<java.lang.String,java.lang.Object> arguments)
+    format(java.util.Map<java.lang.String,java.lang.Object> arguments, java.lang.StringBuffer result, java.text.FieldPosition pos)
+    formatToCharacterIterator(java.lang.Object arguments)
+    getFormatByArgumentName(java.lang.String argumentName)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, android.icu.util.ULocale locale)
+    #ctor(java.lang.String pattern, java.util.Locale locale)
+    parse(java.lang.String source)
+    parse(java.lang.String source, java.text.ParsePosition pos)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    parseToMap(java.lang.String source)
+    parseToMap(java.lang.String source, java.text.ParsePosition pos)
+    setFormat(int formatElementIndex, java.text.Format newFormat)
+    setFormatByArgumentIndex(int argumentIndex, java.text.Format newFormat)
+    setFormatByArgumentName(java.lang.String argumentName, java.text.Format newFormat)
+    setFormats(java.text.Format[] newFormats)
+    setFormatsByArgumentIndex(java.text.Format[] newFormats)
+    setFormatsByArgumentName(java.util.Map<java.lang.String,java.text.Format> newFormats)
+    setLocale(android.icu.util.ULocale locale)
+    setLocale(java.util.Locale locale)
+  class MessageFormat.Field
+    #ctor(java.lang.String name)
+  class MessagePattern
+    clearPatternAndSetApostropheMode(android.icu.text.MessagePattern.ApostropheMode mode)
+    equals(java.lang.Object other)
+    getLimitPartIndex(int start)
+    getNumericValue(android.icu.text.MessagePattern.Part part)
+    getPart(int i)
+    getPartType(int i)
+    getPatternIndex(int partIndex)
+    getPluralOffset(int pluralStart)
+    getSubstring(android.icu.text.MessagePattern.Part part)
+    #ctor(android.icu.text.MessagePattern.ApostropheMode mode)
+    #ctor(java.lang.String pattern)
+    parse(java.lang.String pattern)
+    parseChoiceStyle(java.lang.String pattern)
+    parsePluralStyle(java.lang.String pattern)
+    parseSelectStyle(java.lang.String pattern)
+    partSubstringMatches(android.icu.text.MessagePattern.Part part, java.lang.String s)
+    validateArgumentName(java.lang.String name)
+  class MessagePattern.Part
+    equals(java.lang.Object other)
+  class Normalizer
+    compare(char[] s1, char[] s2, int options)
+    compare(char[] s1, int s1Start, int s1Limit, char[] s2, int s2Start, int s2Limit, int options)
+    compare(int char32a, int char32b, int options)
+    compare(int char32a, java.lang.String str2, int options)
+    compare(java.lang.String s1, java.lang.String s2, int options)
+  class Normalizer2
+    append(java.lang.StringBuilder first, java.lang.CharSequence second)
+    composePair(int a, int b)
+    getCombiningClass(int c)
+    getDecomposition(int c)
+    getInstance(java.io.InputStream data, java.lang.String name, android.icu.text.Normalizer2.Mode mode)
+    getRawDecomposition(int c)
+    hasBoundaryAfter(int c)
+    hasBoundaryBefore(int c)
+    isInert(int c)
+    isNormalized(java.lang.CharSequence s)
+    normalize(java.lang.CharSequence src)
+    normalize(java.lang.CharSequence src, java.lang.Appendable dest)
+    normalize(java.lang.CharSequence src, java.lang.StringBuilder dest)
+    normalizeSecondAndAppend(java.lang.StringBuilder first, java.lang.CharSequence second)
+    quickCheck(java.lang.CharSequence s)
+    spanQuickCheckYes(java.lang.CharSequence s)
+  class NumberFormat
+    equals(java.lang.Object obj)
+    format(android.icu.math.BigDecimal number)
+    format(android.icu.math.BigDecimal number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(android.icu.util.CurrencyAmount currAmt)
+    format(android.icu.util.CurrencyAmount currAmt, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(double number)
+    format(double number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(java.lang.Object number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(java.math.BigDecimal number)
+    format(java.math.BigDecimal number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(java.math.BigInteger number)
+    format(java.math.BigInteger number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(long number)
+    format(long number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    getContext(android.icu.text.DisplayContext.Type type)
+    getCurrencyInstance(android.icu.util.ULocale inLocale)
+    getCurrencyInstance(java.util.Locale inLocale)
+    getInstance(android.icu.util.ULocale inLocale)
+    getInstance(android.icu.util.ULocale desiredLocale, int choice)
+    getInstance(int style)
+    getInstance(java.util.Locale inLocale)
+    getInstance(java.util.Locale inLocale, int style)
+    getIntegerInstance(android.icu.util.ULocale inLocale)
+    getIntegerInstance(java.util.Locale inLocale)
+    getNumberInstance(android.icu.util.ULocale inLocale)
+    getNumberInstance(java.util.Locale inLocale)
+    getPattern(android.icu.util.ULocale forLocale, int choice)
+    getPercentInstance(android.icu.util.ULocale inLocale)
+    getPercentInstance(java.util.Locale inLocale)
+    getScientificInstance(android.icu.util.ULocale inLocale)
+    getScientificInstance(java.util.Locale inLocale)
+    parse(java.lang.String text)
+    parse(java.lang.String text, java.text.ParsePosition parsePosition)
+    parseCurrency(java.lang.CharSequence text, java.text.ParsePosition pos)
+    parseObject(java.lang.String source, java.text.ParsePosition parsePosition)
+    setContext(android.icu.text.DisplayContext context)
+    setCurrency(android.icu.util.Currency theCurrency)
+    setGroupingUsed(boolean newValue)
+    setMaximumFractionDigits(int newValue)
+    setMaximumIntegerDigits(int newValue)
+    setMinimumFractionDigits(int newValue)
+    setMinimumIntegerDigits(int newValue)
+    setParseIntegerOnly(boolean value)
+    setParseStrict(boolean value)
+    setRoundingMode(int roundingMode)
+  class NumberFormat.Field
+    #ctor(java.lang.String fieldName)
+  class NumberingSystem
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(int radix_in, boolean isAlgorithmic_in, java.lang.String desc_in)
+    getInstance(java.util.Locale inLocale)
+    getInstanceByName(java.lang.String name)
+    isValidDigitString(java.lang.String str)
+  class PluralFormat
+    applyPattern(java.lang.String pattern)
+    equals(android.icu.text.PluralFormat rhs)
+    equals(java.lang.Object rhs)
+    format(double number)
+    format(java.lang.Object number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    parse(java.lang.String text, java.text.ParsePosition parsePosition)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    #ctor(android.icu.text.PluralRules rules)
+    #ctor(android.icu.text.PluralRules rules, java.lang.String pattern)
+    #ctor(android.icu.util.ULocale ulocale)
+    #ctor(android.icu.util.ULocale ulocale, android.icu.text.PluralRules rules)
+    #ctor(android.icu.util.ULocale ulocale, android.icu.text.PluralRules rules, java.lang.String pattern)
+    #ctor(android.icu.util.ULocale ulocale, android.icu.text.PluralRules.PluralType type)
+    #ctor(android.icu.util.ULocale ulocale, android.icu.text.PluralRules.PluralType type, java.lang.String pattern)
+    #ctor(android.icu.util.ULocale ulocale, java.lang.String pattern)
+    #ctor(java.lang.String pattern)
+    #ctor(java.util.Locale locale)
+    #ctor(java.util.Locale locale, android.icu.text.PluralRules rules)
+    #ctor(java.util.Locale locale, android.icu.text.PluralRules.PluralType type)
+    setNumberFormat(android.icu.text.NumberFormat format)
+  class PluralRules
+    createRules(java.lang.String description)
+    equals(android.icu.text.PluralRules rhs)
+    equals(java.lang.Object rhs)
+    forLocale(android.icu.util.ULocale locale)
+    forLocale(android.icu.util.ULocale locale, android.icu.text.PluralRules.PluralType type)
+    forLocale(java.util.Locale locale)
+    forLocale(java.util.Locale locale, android.icu.text.PluralRules.PluralType type)
+    getAllKeywordValues(java.lang.String keyword)
+    getSamples(java.lang.String keyword)
+    getUniqueKeywordValue(java.lang.String keyword)
+    parseDescription(java.lang.String description)
+    select(android.icu.number.FormattedNumber number)
+    select(android.icu.number.FormattedNumberRange range)
+    select(double number)
+  class RelativeDateTimeFormatter
+    combineDateAndTime(java.lang.String relativeDateString, java.lang.String timeString)
+    format(android.icu.text.RelativeDateTimeFormatter.Direction direction, android.icu.text.RelativeDateTimeFormatter.AbsoluteUnit unit)
+    format(double quantity, android.icu.text.RelativeDateTimeFormatter.Direction direction, android.icu.text.RelativeDateTimeFormatter.RelativeUnit unit)
+    format(double offset, android.icu.text.RelativeDateTimeFormatter.RelativeDateTimeUnit unit)
+    formatNumeric(double offset, android.icu.text.RelativeDateTimeFormatter.RelativeDateTimeUnit unit)
+    formatNumericToValue(double offset, android.icu.text.RelativeDateTimeFormatter.RelativeDateTimeUnit unit)
+    formatToValue(android.icu.text.RelativeDateTimeFormatter.Direction direction, android.icu.text.RelativeDateTimeFormatter.AbsoluteUnit unit)
+    formatToValue(double quantity, android.icu.text.RelativeDateTimeFormatter.Direction direction, android.icu.text.RelativeDateTimeFormatter.RelativeUnit unit)
+    formatToValue(double offset, android.icu.text.RelativeDateTimeFormatter.RelativeDateTimeUnit unit)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.NumberFormat nf)
+    getInstance(android.icu.util.ULocale locale, android.icu.text.NumberFormat nf, android.icu.text.RelativeDateTimeFormatter.Style style, android.icu.text.DisplayContext capitalizationContext)
+    getInstance(java.util.Locale locale)
+    getInstance(java.util.Locale locale, android.icu.text.NumberFormat nf)
+  class RelativeDateTimeFormatter.FormattedRelativeDateTime
+    <A> appendTo(A appendable)
+    charAt(int index)
+    nextPosition(android.icu.text.ConstrainedFieldPosition cfpos)
+    subSequence(int start, int end)
+  interface Replaceable
+    char32At(int offset)
+    charAt(int offset)
+    copy(int start, int limit, int dest)
+    getChars(int srcStart, int srcLimit, char[] dst, int dstStart)
+    replace(int start, int limit, char[] chars, int charsStart, int charsLen)
+    replace(int start, int limit, java.lang.String text)
+  class RuleBasedCollator
+    compare(java.lang.String source, java.lang.String target)
+    equals(java.lang.Object obj)
+    getCollationElementIterator(android.icu.text.UCharacterIterator source)
+    getCollationElementIterator(java.lang.String source)
+    getCollationElementIterator(java.text.CharacterIterator source)
+    getCollationKey(java.lang.String source)
+    getContractionsAndExpansions(android.icu.text.UnicodeSet contractions, android.icu.text.UnicodeSet expansions, boolean addPrefixes)
+    getRules(boolean fullrules)
+    #ctor(java.lang.String rules)
+    setAlternateHandlingShifted(boolean shifted)
+    setCaseLevel(boolean flag)
+    setDecomposition(int decomposition)
+    setFrenchCollation(boolean flag)
+    setLowerCaseFirst(boolean lowerfirst)
+    setMaxVariable(int group)
+    setNumericCollation(boolean flag)
+    setReorderCodes(int... order)
+    setStrength(int newStrength)
+    setUpperCaseFirst(boolean upperfirst)
+  class ScientificNumberFormatter
+    format(java.lang.Object number)
+    getMarkupInstance(android.icu.text.DecimalFormat df, java.lang.String beginMarkup, java.lang.String endMarkup)
+    getMarkupInstance(android.icu.util.ULocale locale, java.lang.String beginMarkup, java.lang.String endMarkup)
+    getSuperscriptInstance(android.icu.text.DecimalFormat df)
+    getSuperscriptInstance(android.icu.util.ULocale locale)
+  class SearchIterator
+    following(int position)
+    handleNext(int start)
+    handlePrevious(int startAt)
+    preceding(int position)
+    #ctor(java.text.CharacterIterator target, android.icu.text.BreakIterator breaker)
+    setBreakIterator(android.icu.text.BreakIterator breakiter)
+    setElementComparisonType(android.icu.text.SearchIterator.ElementComparisonType type)
+    setIndex(int position)
+    setMatchLength(int length)
+    setOverlapping(boolean allowOverlap)
+    setTarget(java.text.CharacterIterator text)
+  class SelectFormat
+    applyPattern(java.lang.String pattern)
+    equals(java.lang.Object obj)
+    format(java.lang.Object keyword, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(java.lang.String keyword)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    #ctor(java.lang.String pattern)
+  class SimpleDateFormat
+    applyLocalizedPattern(java.lang.String pat)
+    applyPattern(java.lang.String pat)
+    equals(java.lang.Object obj)
+    format(android.icu.util.Calendar cal, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    formatToCharacterIterator(java.lang.Object obj)
+    getNumberFormat(char field)
+    matchQuarterString(java.lang.String text, int start, int field, java.lang.String[] data, android.icu.util.Calendar cal)
+    matchString(java.lang.String text, int start, int field, java.lang.String[] data, android.icu.util.Calendar cal)
+    parse(java.lang.String text, android.icu.util.Calendar cal, java.text.ParsePosition parsePos)
+    patternCharToDateFormatField(char ch)
+    set2DigitYearStart(java.util.Date startDate)
+    setContext(android.icu.text.DisplayContext context)
+    setDateFormatSymbols(android.icu.text.DateFormatSymbols newFormatSymbols)
+    setNumberFormat(android.icu.text.NumberFormat newNumberFormat)
+    setNumberFormat(java.lang.String fields, android.icu.text.NumberFormat overrideNF)
+    setTimeZoneFormat(android.icu.text.TimeZoneFormat tzfmt)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, android.icu.text.DateFormatSymbols formatData)
+    #ctor(java.lang.String pattern, android.icu.util.ULocale loc)
+    #ctor(java.lang.String pattern, java.lang.String override, android.icu.util.ULocale loc)
+    #ctor(java.lang.String pattern, java.util.Locale loc)
+    subFormat(char ch, int count, int beginOffset, java.text.FieldPosition pos, android.icu.text.DateFormatSymbols fmtData, android.icu.util.Calendar cal)
+    subParse(java.lang.String text, int start, char ch, int count, boolean obeyCount, boolean allowNegative, boolean[] ambiguousYear, android.icu.util.Calendar cal)
+    zeroPaddingNumber(long value, int minDigits, int maxDigits)
+  class StringPrepParseException
+    equals(java.lang.Object other)
+    #ctor(java.lang.String message, int error)
+    #ctor(java.lang.String message, int error, java.lang.String rules, int pos)
+    #ctor(java.lang.String message, int error, java.lang.String rules, int pos, int lineNumber)
+  class StringSearch
+    handleNext(int position)
+    handlePrevious(int position)
+    setCanonical(boolean allowCanonical)
+    setCollator(android.icu.text.RuleBasedCollator collator)
+    setIndex(int position)
+    setPattern(java.lang.String pattern)
+    setTarget(java.text.CharacterIterator text)
+    #ctor(java.lang.String pattern, java.lang.String target)
+    #ctor(java.lang.String pattern, java.text.CharacterIterator target, android.icu.text.RuleBasedCollator collator)
+    #ctor(java.lang.String pattern, java.text.CharacterIterator target, android.icu.text.RuleBasedCollator collator, android.icu.text.BreakIterator breakiter)
+    #ctor(java.lang.String pattern, java.text.CharacterIterator target, android.icu.util.ULocale locale)
+    #ctor(java.lang.String pattern, java.text.CharacterIterator target, java.util.Locale locale)
+  interface SymbolTable
+    lookup(java.lang.String s)
+    lookupMatcher(int ch)
+    parseReference(java.lang.String text, java.text.ParsePosition pos, int limit)
+  class TimeZoneFormat
+    format(android.icu.text.TimeZoneFormat.Style style, android.icu.util.TimeZone tz, long date)
+    format(android.icu.text.TimeZoneFormat.Style style, android.icu.util.TimeZone tz, long date, android.icu.util.Output<android.icu.text.TimeZoneFormat.TimeType> timeType)
+    format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    formatOffsetISO8601Basic(int offset, boolean useUtcIndicator, boolean isShort, boolean ignoreSeconds)
+    formatOffsetISO8601Extended(int offset, boolean useUtcIndicator, boolean isShort, boolean ignoreSeconds)
+    formatOffsetLocalizedGMT(int offset)
+    formatOffsetShortLocalizedGMT(int offset)
+    formatToCharacterIterator(java.lang.Object obj)
+    getGMTOffsetPattern(android.icu.text.TimeZoneFormat.GMTOffsetPatternType type)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale locale)
+    parse(android.icu.text.TimeZoneFormat.Style style, java.lang.String text, java.text.ParsePosition pos, android.icu.util.Output<android.icu.text.TimeZoneFormat.TimeType> timeType)
+    parse(android.icu.text.TimeZoneFormat.Style style, java.lang.String text, java.text.ParsePosition pos, java.util.EnumSet<android.icu.text.TimeZoneFormat.ParseOption> options, android.icu.util.Output<android.icu.text.TimeZoneFormat.TimeType> timeType)
+    parse(java.lang.String text)
+    parse(java.lang.String text, java.text.ParsePosition pos)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    parseOffsetISO8601(java.lang.String text, java.text.ParsePosition pos)
+    parseOffsetLocalizedGMT(java.lang.String text, java.text.ParsePosition pos)
+    parseOffsetShortLocalizedGMT(java.lang.String text, java.text.ParsePosition pos)
+    setDefaultParseOptions(java.util.EnumSet<android.icu.text.TimeZoneFormat.ParseOption> options)
+    setGMTOffsetDigits(java.lang.String digits)
+    setGMTOffsetPattern(android.icu.text.TimeZoneFormat.GMTOffsetPatternType type, java.lang.String pattern)
+    setGMTPattern(java.lang.String pattern)
+    setGMTZeroFormat(java.lang.String gmtZeroFormat)
+    setTimeZoneNames(android.icu.text.TimeZoneNames tznames)
+    #ctor(android.icu.util.ULocale locale)
+  class TimeZoneNames
+    getAvailableMetaZoneIDs(java.lang.String tzID)
+    getDisplayName(java.lang.String tzID, android.icu.text.TimeZoneNames.NameType type, long date)
+    getExemplarLocationName(java.lang.String tzID)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale locale)
+    getMetaZoneDisplayName(java.lang.String mzID, android.icu.text.TimeZoneNames.NameType type)
+    getMetaZoneID(java.lang.String tzID, long date)
+    getReferenceZoneID(java.lang.String mzID, java.lang.String region)
+    getTimeZoneDisplayName(java.lang.String tzID, android.icu.text.TimeZoneNames.NameType type)
+    getTZDBInstance(android.icu.util.ULocale locale)
+  class Transliterator
+    createFromRules(java.lang.String ID, java.lang.String rules, int dir)
+    filteredTransliterate(android.icu.text.Replaceable text, android.icu.text.Transliterator.Position index, boolean incremental)
+    finishTransliteration(android.icu.text.Replaceable text, android.icu.text.Transliterator.Position index)
+    getAvailableTargets(java.lang.String source)
+    getAvailableVariants(java.lang.String source, java.lang.String target)
+    getDisplayName(java.lang.String ID)
+    getDisplayName(java.lang.String id, android.icu.util.ULocale inLocale)
+    getDisplayName(java.lang.String id, java.util.Locale inLocale)
+    getInstance(java.lang.String ID)
+    getInstance(java.lang.String ID, int dir)
+    setFilter(android.icu.text.UnicodeFilter filter)
+    toRules(boolean escapeUnprintable)
+    transliterate(android.icu.text.Replaceable text)
+    transliterate(android.icu.text.Replaceable text, android.icu.text.Transliterator.Position index)
+    transliterate(android.icu.text.Replaceable text, android.icu.text.Transliterator.Position index, int insertion)
+    transliterate(android.icu.text.Replaceable text, android.icu.text.Transliterator.Position index, java.lang.String insertion)
+    transliterate(android.icu.text.Replaceable text, int start, int limit)
+    transliterate(java.lang.String text)
+  class Transliterator.Position
+    equals(java.lang.Object obj)
+    set(android.icu.text.Transliterator.Position pos)
+    #ctor(android.icu.text.Transliterator.Position pos)
+    #ctor(int contextStart, int contextLimit, int start)
+    #ctor(int contextStart, int contextLimit, int start, int limit)
+    validate(int length)
+  class UCharacterIterator
+    getInstance(android.icu.text.Replaceable source)
+    getInstance(char[] source)
+    getInstance(char[] source, int start, int limit)
+    getInstance(java.lang.String source)
+    getInstance(java.lang.StringBuffer source)
+    getInstance(java.text.CharacterIterator source)
+    getText(char[] fillIn)
+    getText(char[] fillIn, int offset)
+    moveCodePointIndex(int delta)
+    moveIndex(int delta)
+    setIndex(int index)
+  class UnicodeFilter
+    contains(int c)
+    matches(android.icu.text.Replaceable text, int[] offset, int limit, boolean incremental)
+  interface UnicodeMatcher
+    addMatchSetTo(android.icu.text.UnicodeSet toUnionTo)
+    matches(android.icu.text.Replaceable text, int[] offset, int limit, boolean incremental)
+    matchesIndexValue(int v)
+    toPattern(boolean escapeUnprintable)
+  class UnicodeSet
+    _generatePattern(java.lang.StringBuffer result, boolean escapeUnprintable)
+    _generatePattern(java.lang.StringBuffer result, boolean escapeUnprintable, boolean includeStrings)
+    add(int c)
+    add(int start, int end)
+    add(java.lang.CharSequence s)
+    add(java.lang.Iterable<?> source)
+    addAll(android.icu.text.UnicodeSet c)
+    addAll(int start, int end)
+    addAll(java.lang.CharSequence s)
+    addAll(java.lang.Iterable<?> source)
+    <T> addAll(T... collection)
+    <T> addAllTo(T target)
+    addMatchSetTo(android.icu.text.UnicodeSet toUnionTo)
+    applyIntPropertyValue(int prop, int value)
+    applyPattern(java.lang.String pattern)
+    applyPattern(java.lang.String pattern, boolean ignoreWhitespace)
+    applyPattern(java.lang.String pattern, int options)
+    applyPropertyAlias(java.lang.String propertyAlias, java.lang.String valueAlias)
+    applyPropertyAlias(java.lang.String propertyAlias, java.lang.String valueAlias, android.icu.text.SymbolTable symbols)
+    charAt(int index)
+    closeOver(int attribute)
+    compareTo(android.icu.text.UnicodeSet o)
+    compareTo(android.icu.text.UnicodeSet o, android.icu.text.UnicodeSet.ComparisonStyle style)
+    compareTo(java.lang.Iterable<java.lang.String> other)
+    complement(int c)
+    complement(int start, int end)
+    complement(java.lang.CharSequence s)
+    complementAll(android.icu.text.UnicodeSet c)
+    complementAll(java.lang.CharSequence s)
+    contains(int c)
+    contains(int start, int end)
+    contains(java.lang.CharSequence s)
+    containsAll(android.icu.text.UnicodeSet b)
+    <T> containsAll(java.lang.Iterable<T> collection)
+    containsAll(java.lang.String s)
+    containsNone(android.icu.text.UnicodeSet b)
+    containsNone(int start, int end)
+    containsNone(java.lang.CharSequence s)
+    <T> containsNone(java.lang.Iterable<T> collection)
+    containsSome(android.icu.text.UnicodeSet s)
+    containsSome(int start, int end)
+    containsSome(java.lang.CharSequence s)
+    <T> containsSome(java.lang.Iterable<T> collection)
+    equals(java.lang.Object o)
+    from(java.lang.CharSequence s)
+    fromAll(java.lang.CharSequence s)
+    getRangeEnd(int index)
+    getRangeStart(int index)
+    indexOf(int c)
+    matches(android.icu.text.Replaceable text, int[] offset, int limit, boolean incremental)
+    matchesIndexValue(int v)
+    remove(int c)
+    remove(int start, int end)
+    remove(java.lang.CharSequence s)
+    removeAll(android.icu.text.UnicodeSet c)
+    removeAll(java.lang.CharSequence s)
+    <T> removeAll(java.lang.Iterable<T> collection)
+    retain(int c)
+    retain(int start, int end)
+    retain(java.lang.CharSequence cs)
+    retainAll(android.icu.text.UnicodeSet c)
+    retainAll(java.lang.CharSequence s)
+    <T> retainAll(java.lang.Iterable<T> collection)
+    set(android.icu.text.UnicodeSet other)
+    set(int start, int end)
+    span(java.lang.CharSequence s, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    span(java.lang.CharSequence s, int start, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    spanBack(java.lang.CharSequence s, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    spanBack(java.lang.CharSequence s, int fromIndex, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    toPattern(boolean escapeUnprintable)
+    #ctor(android.icu.text.UnicodeSet other)
+    #ctor(int start, int end)
+    #ctor(int... pairs)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, boolean ignoreWhitespace)
+    #ctor(java.lang.String pattern, int options)
+    #ctor(java.lang.String pattern, java.text.ParsePosition pos, android.icu.text.SymbolTable symbols)
+    #ctor(java.lang.String pattern, java.text.ParsePosition pos, android.icu.text.SymbolTable symbols, int options)
+  class UnicodeSetIterator
+    reset(android.icu.text.UnicodeSet uset)
+    #ctor(android.icu.text.UnicodeSet set)
+  class UnicodeSetSpanner
+    countIn(java.lang.CharSequence sequence)
+    countIn(java.lang.CharSequence sequence, android.icu.text.UnicodeSetSpanner.CountMethod countMethod)
+    countIn(java.lang.CharSequence sequence, android.icu.text.UnicodeSetSpanner.CountMethod countMethod, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    deleteFrom(java.lang.CharSequence sequence)
+    deleteFrom(java.lang.CharSequence sequence, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    equals(java.lang.Object other)
+    replaceFrom(java.lang.CharSequence sequence, java.lang.CharSequence replacement)
+    replaceFrom(java.lang.CharSequence sequence, java.lang.CharSequence replacement, android.icu.text.UnicodeSetSpanner.CountMethod countMethod)
+    replaceFrom(java.lang.CharSequence sequence, java.lang.CharSequence replacement, android.icu.text.UnicodeSetSpanner.CountMethod countMethod, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    trim(java.lang.CharSequence sequence)
+    trim(java.lang.CharSequence sequence, android.icu.text.UnicodeSetSpanner.TrimOption trimOption)
+    trim(java.lang.CharSequence sequence, android.icu.text.UnicodeSetSpanner.TrimOption trimOption, android.icu.text.UnicodeSet.SpanCondition spanCondition)
+    #ctor(android.icu.text.UnicodeSet source)
+
+package android.icu.util
+;---------------------------------------
+  class BuddhistCalendar
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int eyear, int month, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+  class Calendar
+    add(int field, int amount)
+    after(java.lang.Object when)
+    before(java.lang.Object when)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    clear(int field)
+    compareTo(android.icu.util.Calendar that)
+    computeGregorianFields(int julianDay)
+    computeGregorianMonthStart(int year, int month)
+    computeZoneOffset(long millis, int millisInDay)
+    equals(java.lang.Object obj)
+    fieldDifference(java.util.Date when, int field)
+    fieldName(int field)
+    floorDivide(int numerator, int denominator)
+    floorDivide(int numerator, int denominator, int[] remainder)
+    floorDivide(long numerator, int denominator, int[] remainder)
+    floorDivide(long numerator, long denominator)
+    get(int field)
+    getActualMaximum(int field)
+    getActualMinimum(int field)
+    getDateTimeFormat(int dateStyle, int timeStyle, android.icu.util.ULocale loc)
+    getDateTimeFormat(int dateStyle, int timeStyle, java.util.Locale loc)
+    getDisplayName(android.icu.util.ULocale loc)
+    getDisplayName(java.util.Locale loc)
+    getGreatestMinimum(int field)
+    getInstance(android.icu.util.TimeZone zone)
+    getInstance(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    getInstance(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.util.Locale aLocale)
+    getKeywordValuesForLocale(java.lang.String key, android.icu.util.ULocale locale, boolean commonlyUsed)
+    getLeastMaximum(int field)
+    getLimit(int field, int limitType)
+    getMaximum(int field)
+    getMinimum(int field)
+    getStamp(int field)
+    getWeekDataForRegion(java.lang.String region)
+    gregorianMonthLength(int y, int m)
+    gregorianPreviousMonthLength(int y, int m)
+    handleComputeFields(int julianDay)
+    handleComputeJulianDay(int bestField)
+    handleComputeMonthStart(int eyear, int month, boolean useMonth)
+    handleGetDateFormat(java.lang.String pattern, android.icu.util.ULocale locale)
+    handleGetDateFormat(java.lang.String pattern, java.lang.String override, java.util.Locale locale)
+    handleGetDateFormat(java.lang.String pattern, java.util.Locale locale)
+    handleGetLimit(int field, int limitType)
+    handleGetMonthLength(int extendedYear, int month)
+    handleGetYearLength(int eyear)
+    internalGet(int field)
+    internalGet(int field, int defaultValue)
+    internalSet(int field, int value)
+    isEquivalentTo(android.icu.util.Calendar other)
+    isGregorianLeapYear(int year)
+    isSet(int field)
+    isWeekend(java.util.Date date)
+    julianDayToDayOfWeek(int julian)
+    julianDayToMillis(int julian)
+    millisToJulianDay(long millis)
+    newerField(int defaultField, int alternateField)
+    newestStamp(int first, int last, int bestStampSoFar)
+    pinField(int field)
+    prepareGetActual(int field, boolean isMinimum)
+    resolveFields(int[][][] precedenceTable)
+    roll(int field, boolean up)
+    roll(int field, int amount)
+    set(int field, int value)
+    set(int year, int month, int date)
+    set(int year, int month, int date, int hour, int minute)
+    set(int year, int month, int date, int hour, int minute, int second)
+    setFirstDayOfWeek(int value)
+    setLenient(boolean lenient)
+    setMinimalDaysInFirstWeek(int value)
+    setRepeatedWallTimeOption(int option)
+    setSkippedWallTimeOption(int option)
+    setTime(java.util.Date date)
+    setTimeInMillis(long millis)
+    setTimeZone(android.icu.util.TimeZone value)
+    setWeekData(android.icu.util.Calendar.WeekData wdata)
+    validateField(int field)
+    validateField(int field, int min, int max)
+    weekNumber(int dayOfPeriod, int dayOfWeek)
+    weekNumber(int desiredDay, int dayOfPeriod, int dayOfWeek)
+  class Calendar.WeekData
+    #ctor(int fdow, int mdifw, int weekendOnset, int weekendOnsetMillis, int weekendCease, int weekendCeaseMillis)
+    equals(java.lang.Object other)
+  class ChineseCalendar
+    add(int field, int amount)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int isLeapMonth, int date)
+    #ctor(int era, int year, int month, int isLeapMonth, int date)
+    #ctor(int year, int month, int isLeapMonth, int date, int hour, int minute, int second)
+    #ctor(int era, int year, int month, int isLeapMonth, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int eyear, int month, boolean useMonth)
+    handleGetDateFormat(java.lang.String pattern, java.lang.String override, android.icu.util.ULocale locale)
+    handleGetLimit(int field, int limitType)
+    handleGetMonthLength(int extendedYear, int month)
+    roll(int field, int amount)
+  class CopticCalendar
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int eyear, int emonth, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+  class Currency
+    #ctor(java.lang.String theISOCode)
+    fromJavaCurrency(java.util.Currency currency)
+    getAvailableCurrencyCodes(android.icu.util.ULocale loc, java.util.Date d)
+    getAvailableCurrencyCodes(java.util.Locale loc, java.util.Date d)
+    getDefaultFractionDigits(android.icu.util.Currency.CurrencyUsage Usage)
+    getDisplayName(java.util.Locale locale)
+    getInstance(android.icu.util.ULocale locale)
+    getInstance(java.lang.String theISOCode)
+    getInstance(java.util.Locale locale)
+    getKeywordValuesForLocale(java.lang.String key, android.icu.util.ULocale locale, boolean commonlyUsed)
+    getName(android.icu.util.ULocale locale, int nameStyle, boolean[] isChoiceFormat)
+    getName(android.icu.util.ULocale locale, int nameStyle, java.lang.String pluralCount, boolean[] isChoiceFormat)
+    getName(java.util.Locale locale, int nameStyle, boolean[] isChoiceFormat)
+    getName(java.util.Locale locale, int nameStyle, java.lang.String pluralCount, boolean[] isChoiceFormat)
+    getRoundingIncrement(android.icu.util.Currency.CurrencyUsage Usage)
+    getSymbol(android.icu.util.ULocale uloc)
+    getSymbol(java.util.Locale loc)
+    isAvailable(java.lang.String code, java.util.Date from, java.util.Date to)
+  class CurrencyAmount
+    #ctor(double number, android.icu.util.Currency currency)
+    #ctor(double number, java.util.Currency currency)
+    #ctor(java.lang.Number number, android.icu.util.Currency currency)
+    #ctor(java.lang.Number number, java.util.Currency currency)
+  class DateInterval
+    #ctor(long from, long to)
+    equals(java.lang.Object a)
+  class EthiopicCalendar
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int eyear, int emonth, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+    setAmeteAlemEra(boolean onOff)
+  class GregorianCalendar
+    getActualMaximum(int field)
+    getActualMinimum(int field)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Locale aLocale)
+    handleComputeFields(int julianDay)
+    handleComputeJulianDay(int bestField)
+    handleComputeMonthStart(int eyear, int month, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+    handleGetMonthLength(int extendedYear, int month)
+    handleGetYearLength(int eyear)
+    isEquivalentTo(android.icu.util.Calendar other)
+    isLeapYear(int year)
+    roll(int field, int amount)
+    setGregorianChange(java.util.Date date)
+  class HebrewCalendar
+    add(int field, int amount)
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int eyear, int month, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+    handleGetMonthLength(int extendedYear, int month)
+    handleGetYearLength(int eyear)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+    roll(int field, int amount)
+    validateField(int field)
+  class ICUUncheckedIOException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class IllformedLocaleException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, int errorIndex)
+  class IndianCalendar
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int year, int month, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+    handleGetMonthLength(int extendedYear, int month)
+    handleGetYearLength(int extendedYear)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+  class IslamicCalendar
+    handleComputeFields(int julianDay)
+    handleComputeMonthStart(int eyear, int month, boolean useMonth)
+    handleGetLimit(int field, int limitType)
+    handleGetMonthLength(int extendedYear, int month)
+    handleGetYearLength(int extendedYear)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+    setCalculationType(android.icu.util.IslamicCalendar.CalculationType type)
+  class JapaneseCalendar
+    getActualMaximum(int field)
+    handleComputeFields(int julianDay)
+    handleGetLimit(int field, int limitType)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int era, int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+  class LocaleData
+    getDelimiter(int type)
+    getInstance(android.icu.util.ULocale locale)
+    getMeasurementSystem(android.icu.util.ULocale locale)
+    getPaperSize(android.icu.util.ULocale locale)
+    setNoSubstitute(boolean setting)
+  class Measure
+    equals(java.lang.Object obj)
+    #ctor(java.lang.Number number, android.icu.util.MeasureUnit unit)
+  class MeasureUnit
+    equals(java.lang.Object rhs)
+    forIdentifier(java.lang.String identifier)
+    getAvailable(java.lang.String type)
+    product(android.icu.util.MeasureUnit other)
+    withDimensionality(int dimensionality)
+    withPrefix(android.icu.util.MeasureUnit.MeasurePrefix prefix)
+  class Output<T>
+    #ctor(T value)
+  interface RangeValueIterator
+    next(android.icu.util.RangeValueIterator.Element element)
+  class TaiwanCalendar
+    handleComputeFields(int julianDay)
+    handleGetLimit(int field, int limitType)
+    #ctor(android.icu.util.TimeZone zone)
+    #ctor(android.icu.util.TimeZone zone, android.icu.util.ULocale locale)
+    #ctor(android.icu.util.TimeZone zone, java.util.Locale aLocale)
+    #ctor(android.icu.util.ULocale locale)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hour, int minute, int second)
+    #ctor(java.util.Date date)
+    #ctor(java.util.Locale aLocale)
+  class TimeZone
+    countEquivalentIDs(java.lang.String id)
+    equals(java.lang.Object obj)
+    getAvailableIDs(android.icu.util.TimeZone.SystemTimeZoneType zoneType, java.lang.String region, java.lang.Integer rawOffset)
+    getAvailableIDs(int rawOffset)
+    getAvailableIDs(java.lang.String country)
+    getCanonicalID(java.lang.String id)
+    getCanonicalID(java.lang.String id, boolean[] isSystemID)
+    getDisplayName(android.icu.util.ULocale locale)
+    getDisplayName(boolean daylight, int style)
+    getDisplayName(boolean daylight, int style, android.icu.util.ULocale locale)
+    getDisplayName(boolean daylight, int style, java.util.Locale locale)
+    getDisplayName(java.util.Locale locale)
+    getEquivalentID(java.lang.String id, int index)
+    getFrozenTimeZone(java.lang.String ID)
+    getIDForWindowsID(java.lang.String winid, java.lang.String region)
+    getOffset(int era, int year, int month, int day, int dayOfWeek, int milliseconds)
+    getOffset(long date)
+    getOffset(long date, boolean local, int[] offsets)
+    getRegion(java.lang.String id)
+    getTimeZone(java.lang.String ID)
+    getTimeZone(java.lang.String ID, int type)
+    getWindowsID(java.lang.String id)
+    hasSameRules(android.icu.util.TimeZone other)
+    inDaylightTime(java.util.Date date)
+    setID(java.lang.String ID)
+    setRawOffset(int offsetMillis)
+  class ULocale
+    acceptLanguage(android.icu.util.ULocale[] acceptLanguageList, android.icu.util.ULocale[] availableLocales, boolean[] fallback)
+    acceptLanguage(android.icu.util.ULocale[] acceptLanguageList, boolean[] fallback)
+    acceptLanguage(java.lang.String acceptLanguageList, android.icu.util.ULocale[] availableLocales, boolean[] fallback)
+    acceptLanguage(java.lang.String acceptLanguageList, boolean[] fallback)
+    addLikelySubtags(android.icu.util.ULocale loc)
+    canonicalize(java.lang.String localeID)
+    compareTo(android.icu.util.ULocale other)
+    createCanonical(android.icu.util.ULocale locale)
+    createCanonical(java.lang.String nonCanonicalID)
+    equals(java.lang.Object obj)
+    forLanguageTag(java.lang.String languageTag)
+    forLocale(java.util.Locale loc)
+    getAvailableLocalesByType(android.icu.util.ULocale.AvailableType type)
+    getBaseName(java.lang.String localeID)
+    getCountry(java.lang.String localeID)
+    getDefault(android.icu.util.ULocale.Category category)
+    getDisplayCountry(android.icu.util.ULocale displayLocale)
+    getDisplayCountry(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayCountry(java.lang.String localeID, java.lang.String displayLocaleID)
+    getDisplayKeyword(java.lang.String keyword)
+    getDisplayKeyword(java.lang.String keyword, android.icu.util.ULocale displayLocale)
+    getDisplayKeyword(java.lang.String keyword, java.lang.String displayLocaleID)
+    getDisplayKeywordValue(java.lang.String keyword)
+    getDisplayKeywordValue(java.lang.String keyword, android.icu.util.ULocale displayLocale)
+    getDisplayKeywordValue(java.lang.String localeID, java.lang.String keyword, android.icu.util.ULocale displayLocale)
+    getDisplayKeywordValue(java.lang.String localeID, java.lang.String keyword, java.lang.String displayLocaleID)
+    getDisplayLanguage(android.icu.util.ULocale displayLocale)
+    getDisplayLanguage(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayLanguage(java.lang.String localeID, java.lang.String displayLocaleID)
+    getDisplayLanguageWithDialect(android.icu.util.ULocale displayLocale)
+    getDisplayLanguageWithDialect(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayLanguageWithDialect(java.lang.String localeID, java.lang.String displayLocaleID)
+    getDisplayName(android.icu.util.ULocale displayLocale)
+    getDisplayName(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayName(java.lang.String localeID, java.lang.String displayLocaleID)
+    getDisplayNameWithDialect(android.icu.util.ULocale displayLocale)
+    getDisplayNameWithDialect(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayNameWithDialect(java.lang.String localeID, java.lang.String displayLocaleID)
+    getDisplayScript(android.icu.util.ULocale displayLocale)
+    getDisplayScript(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayScript(java.lang.String localeID, java.lang.String displayLocaleID)
+    getDisplayVariant(android.icu.util.ULocale displayLocale)
+    getDisplayVariant(java.lang.String localeID, android.icu.util.ULocale displayLocale)
+    getDisplayVariant(java.lang.String localeID, java.lang.String displayLocaleID)
+    getExtension(char key)
+    getFallback(java.lang.String localeID)
+    getISO3Country(java.lang.String localeID)
+    getISO3Language(java.lang.String localeID)
+    getKeywords(java.lang.String localeID)
+    getKeywordValue(java.lang.String keywordName)
+    getKeywordValue(java.lang.String localeID, java.lang.String keywordName)
+    getLanguage(java.lang.String localeID)
+    getName(java.lang.String localeID)
+    getScript(java.lang.String localeID)
+    getUnicodeLocaleType(java.lang.String key)
+    getVariant(java.lang.String localeID)
+    minimizeSubtags(android.icu.util.ULocale loc)
+    setKeywordValue(java.lang.String keyword, java.lang.String value)
+    setKeywordValue(java.lang.String localeID, java.lang.String keyword, java.lang.String value)
+    toLegacyKey(java.lang.String keyword)
+    toLegacyType(java.lang.String keyword, java.lang.String value)
+    toUnicodeLocaleKey(java.lang.String keyword)
+    toUnicodeLocaleType(java.lang.String keyword, java.lang.String value)
+    #ctor(java.lang.String localeID)
+    #ctor(java.lang.String a, java.lang.String b)
+    #ctor(java.lang.String a, java.lang.String b, java.lang.String c)
+  class ULocale.Builder
+    addUnicodeLocaleAttribute(java.lang.String attribute)
+    removeUnicodeLocaleAttribute(java.lang.String attribute)
+    setExtension(char key, java.lang.String value)
+    setLanguage(java.lang.String language)
+    setLanguageTag(java.lang.String languageTag)
+    setLocale(android.icu.util.ULocale locale)
+    setRegion(java.lang.String region)
+    setScript(java.lang.String script)
+    setUnicodeLocaleKeyword(java.lang.String key, java.lang.String type)
+    setVariant(java.lang.String variant)
+  class UniversalTimeScale
+    bigDecimalFrom(android.icu.math.BigDecimal otherTime, int timeScale)
+    bigDecimalFrom(double otherTime, int timeScale)
+    bigDecimalFrom(long otherTime, int timeScale)
+    from(long otherTime, int timeScale)
+    getTimeScaleValue(int scale, int value)
+    toBigDecimal(android.icu.math.BigDecimal universalTime, int timeScale)
+    toBigDecimal(long universalTime, int timeScale)
+    toLong(long universalTime, int timeScale)
+  interface ValueIterator
+    next(android.icu.util.ValueIterator.Element element)
+    setRange(int start, int limit)
+  class VersionInfo
+    compareTo(android.icu.util.VersionInfo other)
+    equals(java.lang.Object other)
+    getInstance(int major)
+    getInstance(int major, int minor)
+    getInstance(int major, int minor, int milli)
+    getInstance(int major, int minor, int milli, int micro)
+    getInstance(java.lang.String version)
+
+package android.inputmethodservice
+;---------------------------------------
+  class AbstractInputMethodService
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter fout, java.lang.String[] args)
+    getSystemService(java.lang.String name)
+    onBind(android.content.Intent intent)
+    onConfigurationChanged(android.content.res.Configuration configuration)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onTrimMemory(int level)
+    registerComponentCallbacks(android.content.ComponentCallbacks callback)
+    unregisterComponentCallbacks(android.content.ComponentCallbacks callback)
+  class AbstractInputMethodService.AbstractInputMethodImpl
+    createSession(android.view.inputmethod.InputMethod.SessionCallback callback)
+    revokeSession(android.view.inputmethod.InputMethodSession session)
+    setSessionEnabled(android.view.inputmethod.InputMethodSession session, boolean enabled)
+  class AbstractInputMethodService.AbstractInputMethodSessionImpl
+    dispatchGenericMotionEvent(int seq, android.view.MotionEvent event, android.view.inputmethod.InputMethodSession.EventCallback callback)
+    dispatchKeyEvent(int seq, android.view.KeyEvent event, android.view.inputmethod.InputMethodSession.EventCallback callback)
+    dispatchTrackballEvent(int seq, android.view.MotionEvent event, android.view.inputmethod.InputMethodSession.EventCallback callback)
+    setEnabled(boolean enabled)
+  class ExtractEditText
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onSelectionChanged(int selStart, int selEnd)
+    onTextContextMenuItem(int id)
+    setExtractedText(android.view.inputmethod.ExtractedText text)
+  class InputMethodService
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter fout, java.lang.String[] args)
+    getSystemService(java.lang.String name)
+    getTextForImeAction(int imeOptions)
+    onAppPrivateCommand(java.lang.String action, android.os.Bundle data)
+    onComputeInsets(android.inputmethodservice.InputMethodService.Insets outInsets)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onConfigureWindow(android.view.Window win, boolean isFullscreen, boolean isCandidatesOnly)
+    onCreateInlineSuggestionsRequest(android.os.Bundle uiExtras)
+    onCurrentInputMethodSubtypeChanged(android.view.inputmethod.InputMethodSubtype newSubtype)
+    onDisplayCompletions(android.view.inputmethod.CompletionInfo[] completions)
+    onExtractedCursorMovement(int dx, int dy)
+    onExtractedSelectionChanged(int start, int end)
+    onExtractingInputChanged(android.view.inputmethod.EditorInfo ei)
+    onExtractTextContextMenuItem(int id)
+    onFinishCandidatesView(boolean finishingInput)
+    onFinishInputView(boolean finishingInput)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onInlineSuggestionsResponse(android.view.inputmethod.InlineSuggestionsResponse response)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int count, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onShowInputRequested(int flags, boolean configChange)
+    onStartCandidatesView(android.view.inputmethod.EditorInfo editorInfo, boolean restarting)
+    onStartInput(android.view.inputmethod.EditorInfo attribute, boolean restarting)
+    onStartInputView(android.view.inputmethod.EditorInfo editorInfo, boolean restarting)
+    onStylusHandwritingMotionEvent(android.view.MotionEvent motionEvent)
+    onTrackballEvent(android.view.MotionEvent event)
+    onUpdateCursor(android.graphics.Rect newCursor)
+    onUpdateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo cursorAnchorInfo)
+    onUpdateEditorToolType(int toolType)
+    onUpdateExtractedText(int token, android.view.inputmethod.ExtractedText text)
+    onUpdateExtractingViews(android.view.inputmethod.EditorInfo ei)
+    onUpdateExtractingVisibility(android.view.inputmethod.EditorInfo ei)
+    onUpdateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)
+    onViewClicked(boolean focusChanged)
+    requestHideSelf(int flags)
+    requestShowSelf(int flags)
+    sendDefaultEditorAction(boolean fromEnterKey)
+    sendDownUpKeyEvents(int keyEventCode)
+    sendKeyChar(char charCode)
+    setBackDisposition(int disposition)
+    setCandidatesView(android.view.View view)
+    setCandidatesViewShown(boolean shown)
+    setExtractView(android.view.View view)
+    setExtractViewShown(boolean shown)
+    setInputView(android.view.View view)
+    setStylusHandwritingSessionTimeout(java.time.Duration duration)
+    setTheme(int theme)
+    showStatusIcon(int iconResId)
+    showWindow(boolean showInput)
+    switchInputMethod(java.lang.String id)
+    switchInputMethod(java.lang.String id, android.view.inputmethod.InputMethodSubtype subtype)
+    switchToNextInputMethod(boolean onlyCurrentIme)
+  class InputMethodService.InputMethodImpl
+    attachToken(android.os.IBinder token)
+    bindInput(android.view.inputmethod.InputBinding binding)
+    changeInputMethodSubtype(android.view.inputmethod.InputMethodSubtype subtype)
+    hideSoftInput(int flags, android.os.ResultReceiver resultReceiver)
+    restartInput(android.view.inputmethod.InputConnection ic, android.view.inputmethod.EditorInfo editorInfo)
+    showSoftInput(int flags, android.os.ResultReceiver resultReceiver)
+    startInput(android.view.inputmethod.InputConnection ic, android.view.inputmethod.EditorInfo editorInfo)
+  class InputMethodService.InputMethodSessionImpl
+    appPrivateCommand(java.lang.String action, android.os.Bundle data)
+    displayCompletions(android.view.inputmethod.CompletionInfo[] completions)
+    toggleSoftInput(int showFlags, int hideFlags)
+    updateCursor(android.graphics.Rect newCursor)
+    updateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo info)
+    updateExtractedText(int token, android.view.inputmethod.ExtractedText text)
+    updateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)
+    viewClicked(boolean focusChanged)
+  class Keyboard
+    createKeyFromXml(android.content.res.Resources res, android.inputmethodservice.Keyboard.Row parent, int x, int y, android.content.res.XmlResourceParser parser)
+    createRowFromXml(android.content.res.Resources res, android.content.res.XmlResourceParser parser)
+    getNearestKeys(int x, int y)
+    #ctor(android.content.Context context, int xmlLayoutResId)
+    #ctor(android.content.Context context, int xmlLayoutResId, int modeId)
+    #ctor(android.content.Context context, int xmlLayoutResId, int modeId, int width, int height)
+    #ctor(android.content.Context context, int layoutTemplateResId, java.lang.CharSequence characters, int columns, int horizontalPadding)
+    setHorizontalGap(int gap)
+    setKeyHeight(int height)
+    setKeyWidth(int width)
+    setShifted(boolean shiftState)
+    setVerticalGap(int gap)
+  class Keyboard.Key
+    isInside(int x, int y)
+    #ctor(android.content.res.Resources res, android.inputmethodservice.Keyboard.Row parent, int x, int y, android.content.res.XmlResourceParser parser)
+    #ctor(android.inputmethodservice.Keyboard.Row parent)
+    onReleased(boolean inside)
+    squaredDistanceFrom(int x, int y)
+  class Keyboard.Row
+    #ctor(android.content.res.Resources res, android.inputmethodservice.Keyboard parent, android.content.res.XmlResourceParser parser)
+    #ctor(android.inputmethodservice.Keyboard parent)
+  class KeyboardView
+    invalidateKey(int keyIndex)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onClick(android.view.View v)
+    onDraw(android.graphics.Canvas canvas)
+    onHoverEvent(android.view.MotionEvent event)
+    onLongPress(android.inputmethodservice.Keyboard.Key popupKey)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onTouchEvent(android.view.MotionEvent me)
+    setKeyboard(android.inputmethodservice.Keyboard keyboard)
+    setOnKeyboardActionListener(android.inputmethodservice.KeyboardView.OnKeyboardActionListener listener)
+    setPopupOffset(int x, int y)
+    setPopupParent(android.view.View v)
+    setPreviewEnabled(boolean previewEnabled)
+    setProximityCorrectionEnabled(boolean enabled)
+    setShifted(boolean shifted)
+    setVerticalCorrection(int verticalOffset)
+  interface KeyboardView.OnKeyboardActionListener
+    onKey(int primaryCode, int[] keyCodes)
+    onPress(int primaryCode)
+    onRelease(int primaryCode)
+    onText(java.lang.CharSequence text)
+
+package android.location
+;---------------------------------------
+  class Address
+    #ctor(java.util.Locale locale)
+    getAddressLine(int index)
+    setAddressLine(int index, java.lang.String line)
+    setAdminArea(java.lang.String adminArea)
+    setCountryCode(java.lang.String countryCode)
+    setCountryName(java.lang.String countryName)
+    setExtras(android.os.Bundle extras)
+    setFeatureName(java.lang.String featureName)
+    setLatitude(double latitude)
+    setLocality(java.lang.String locality)
+    setLongitude(double longitude)
+    setPhone(java.lang.String phone)
+    setPostalCode(java.lang.String postalCode)
+    setPremises(java.lang.String premises)
+    setSubAdminArea(java.lang.String subAdminArea)
+    setSubLocality(java.lang.String sublocality)
+    setSubThoroughfare(java.lang.String subthoroughfare)
+    setThoroughfare(java.lang.String thoroughfare)
+    setUrl(java.lang.String Url)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Criteria
+    #ctor(android.location.Criteria criteria)
+    setAccuracy(int accuracy)
+    setAltitudeRequired(boolean altitudeRequired)
+    setBearingAccuracy(int accuracy)
+    setBearingRequired(boolean bearingRequired)
+    setCostAllowed(boolean costAllowed)
+    setHorizontalAccuracy(int accuracy)
+    setPowerRequirement(int powerRequirement)
+    setSpeedAccuracy(int accuracy)
+    setSpeedRequired(boolean speedRequired)
+    setVerticalAccuracy(int accuracy)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Geocoder
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, java.util.Locale locale)
+    getFromLocation(double latitude, double longitude, int maxResults)
+    getFromLocation(double latitude, double longitude, int maxResults, android.location.Geocoder.GeocodeListener listener)
+    getFromLocationName(java.lang.String locationName, int maxResults)
+    getFromLocationName(java.lang.String locationName, int maxResults, android.location.Geocoder.GeocodeListener listener)
+    getFromLocationName(java.lang.String locationName, int maxResults, double lowerLeftLatitude, double lowerLeftLongitude, double upperRightLatitude, double upperRightLongitude)
+    getFromLocationName(java.lang.String locationName, int maxResults, double lowerLeftLatitude, double lowerLeftLongitude, double upperRightLatitude, double upperRightLongitude, android.location.Geocoder.GeocodeListener listener)
+  interface Geocoder.GeocodeListener
+    onError(java.lang.String errorMessage)
+    onGeocode(java.util.List<android.location.Address> addresses)
+  class GnssAntennaInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssAntennaInfo.Builder
+    #ctor(android.location.GnssAntennaInfo antennaInfo)
+    #ctor(double carrierFrequencyMHz, android.location.GnssAntennaInfo.PhaseCenterOffset phaseCenterOffset)
+    setCarrierFrequencyMHz(double carrierFrequencyMHz)
+    setPhaseCenterOffset(android.location.GnssAntennaInfo.PhaseCenterOffset phaseCenterOffset)
+    setPhaseCenterVariationCorrections(android.location.GnssAntennaInfo.SphericalCorrections phaseCenterVariationCorrections)
+    setSignalGainCorrections(android.location.GnssAntennaInfo.SphericalCorrections signalGainCorrections)
+  interface GnssAntennaInfo.Listener
+    onGnssAntennaInfoReceived(java.util.List<android.location.GnssAntennaInfo> gnssAntennaInfos)
+  class GnssAntennaInfo.PhaseCenterOffset
+    equals(java.lang.Object o)
+    #ctor(double offsetXMm, double offsetXUncertaintyMm, double offsetYMm, double offsetYUncertaintyMm, double offsetZMm, double offsetZUncertaintyMm)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GnssAntennaInfo.SphericalCorrections
+    equals(java.lang.Object o)
+    #ctor(double[][] corrections, double[][] correctionUncertainties)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GnssAutomaticGainControl
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flag)
+  class GnssAutomaticGainControl.Builder
+    #ctor(android.location.GnssAutomaticGainControl agc)
+    setCarrierFrequencyHz(long carrierFrequencyHz)
+    setConstellationType(int constellationType)
+    setLevelDb(double levelDb)
+  class GnssCapabilities
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssCapabilities.Builder
+    #ctor(android.location.GnssCapabilities capabilities)
+    setGnssSignalTypes(java.util.List<android.location.GnssSignalType> gnssSignalTypes)
+    setHasAccumulatedDeltaRange(boolean capable)
+    setHasAntennaInfo(boolean capable)
+    setHasGeofencing(boolean capable)
+    setHasLowPowerMode(boolean capable)
+    setHasMeasurementCorrections(boolean capable)
+    setHasMeasurementCorrectionsExcessPathLength(boolean capable)
+    setHasMeasurementCorrectionsForDriving(boolean capable)
+    setHasMeasurementCorrectionsLosSats(boolean capable)
+    setHasMeasurementCorrectionsReflectingPlane(boolean capable)
+    setHasMeasurementCorrelationVectors(boolean capable)
+    setHasMeasurements(boolean capable)
+    setHasMsa(boolean capable)
+    setHasMsb(boolean capable)
+    setHasNavigationMessages(boolean capable)
+    setHasOnDemandTime(boolean capable)
+    setHasPowerMultibandAcquisition(boolean capable)
+    setHasPowerMultibandTracking(boolean capable)
+    setHasPowerOtherModes(boolean capable)
+    setHasPowerSinglebandAcquisition(boolean capable)
+    setHasPowerSinglebandTracking(boolean capable)
+    setHasPowerTotal(boolean capable)
+    setHasSatelliteBlocklist(boolean capable)
+    setHasSatellitePvt(boolean capable)
+    setHasScheduling(boolean capable)
+    setHasSingleShotFix(boolean capable)
+  class GnssClock
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssMeasurement
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssMeasurementRequest
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssMeasurementRequest.Builder
+    #ctor(android.location.GnssMeasurementRequest request)
+    setFullTracking(boolean value)
+    setIntervalMillis(int value)
+  class GnssMeasurementsEvent
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssMeasurementsEvent.Builder
+    #ctor(android.location.GnssMeasurementsEvent event)
+    setClock(android.location.GnssClock clock)
+    setFullTracking(boolean isFullTracking)
+    setGnssAutomaticGainControls(java.util.Collection<android.location.GnssAutomaticGainControl> agcs)
+    setMeasurements(java.util.Collection<android.location.GnssMeasurement> measurements)
+  class GnssMeasurementsEvent.Callback
+    onGnssMeasurementsReceived(android.location.GnssMeasurementsEvent eventArgs)
+    onStatusChanged(int status)
+  class GnssNavigationMessage
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssNavigationMessage.Callback
+    onGnssNavigationMessageReceived(android.location.GnssNavigationMessage event)
+    onStatusChanged(int status)
+  class GnssSignalType
+    create(int constellationType, double carrierFrequencyHz, java.lang.String codeType)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssStatus
+    equals(java.lang.Object o)
+    getAzimuthDegrees(int satelliteIndex)
+    getBasebandCn0DbHz(int satelliteIndex)
+    getCarrierFrequencyHz(int satelliteIndex)
+    getCn0DbHz(int satelliteIndex)
+    getConstellationType(int satelliteIndex)
+    getElevationDegrees(int satelliteIndex)
+    getSvid(int satelliteIndex)
+    hasAlmanacData(int satelliteIndex)
+    hasBasebandCn0DbHz(int satelliteIndex)
+    hasCarrierFrequencyHz(int satelliteIndex)
+    hasEphemerisData(int satelliteIndex)
+    usedInFix(int satelliteIndex)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class GnssStatus.Builder
+    addSatellite(int constellationType, int svid, float cn0DbHz, float elevation, float azimuth, boolean hasEphemeris, boolean hasAlmanac, boolean usedInFix, boolean hasCarrierFrequency, float carrierFrequency, boolean hasBasebandCn0DbHz, float basebandCn0DbHz)
+  class GnssStatus.Callback
+    onFirstFix(int ttffMillis)
+    onSatelliteStatusChanged(android.location.GnssStatus status)
+  class GpsStatus
+    create(android.location.GnssStatus gnssStatus, int timeToFirstFix)
+  interface GpsStatus.Listener
+    onGpsStatusChanged(int event)
+  interface GpsStatus.NmeaListener
+    onNmeaReceived(long timestamp, java.lang.String nmea)
+  class Location
+    bearingTo(android.location.Location dest)
+    convert(double coordinate, int outputType)
+    convert(java.lang.String coordinate)
+    distanceBetween(double startLatitude, double startLongitude, double endLatitude, double endLongitude, float[] results)
+    distanceTo(android.location.Location dest)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    equals(java.lang.Object o)
+    getElapsedRealtimeAgeMillis(long referenceRealtimeMs)
+    #ctor(android.location.Location location)
+    #ctor(java.lang.String provider)
+    set(android.location.Location location)
+    setAccuracy(float horizontalAccuracyMeters)
+    setAltitude(double altitudeMeters)
+    setBearing(float bearingDegrees)
+    setBearingAccuracyDegrees(float bearingAccuracyDegrees)
+    setElapsedRealtimeNanos(long elapsedRealtimeNs)
+    setElapsedRealtimeUncertaintyNanos(double elapsedRealtimeUncertaintyNs)
+    setExtras(android.os.Bundle extras)
+    setLatitude(double latitudeDegrees)
+    setLongitude(double longitudeDegrees)
+    setMock(boolean mock)
+    setMslAltitudeAccuracyMeters(float mslAltitudeAccuracyMeters)
+    setMslAltitudeMeters(double mslAltitudeMeters)
+    setProvider(java.lang.String provider)
+    setSpeed(float speedMetersPerSecond)
+    setSpeedAccuracyMetersPerSecond(float speedAccuracyMeterPerSecond)
+    setTime(long timeMs)
+    setVerticalAccuracyMeters(float altitudeAccuracyMeters)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  interface LocationListener
+    onFlushComplete(int requestCode)
+    onLocationChanged(android.location.Location location)
+    onLocationChanged(java.util.List<android.location.Location> locations)
+    onProviderDisabled(java.lang.String provider)
+    onProviderEnabled(java.lang.String provider)
+    onStatusChanged(java.lang.String provider, int status, android.os.Bundle extras)
+  class LocationManager
+    addGpsStatusListener(android.location.GpsStatus.Listener listener)
+    addNmeaListener(android.location.GpsStatus.NmeaListener listener)
+    addNmeaListener(android.location.OnNmeaMessageListener listener)
+    addNmeaListener(android.location.OnNmeaMessageListener listener, android.os.Handler handler)
+    addNmeaListener(java.util.concurrent.Executor executor, android.location.OnNmeaMessageListener listener)
+    addProximityAlert(double latitude, double longitude, float radius, long expiration, android.app.PendingIntent pendingIntent)
+    addTestProvider(java.lang.String provider, android.location.provider.ProviderProperties properties)
+    addTestProvider(java.lang.String provider, android.location.provider.ProviderProperties properties, java.util.Set<java.lang.String> extraAttributionTags)
+    addTestProvider(java.lang.String provider, boolean requiresNetwork, boolean requiresSatellite, boolean requiresCell, boolean hasMonetaryCost, boolean supportsAltitude, boolean supportsSpeed, boolean supportsBearing, int powerUsage, int accuracy)
+    clearTestProviderEnabled(java.lang.String provider)
+    clearTestProviderLocation(java.lang.String provider)
+    clearTestProviderStatus(java.lang.String provider)
+    getBestProvider(android.location.Criteria criteria, boolean enabledOnly)
+    getCurrentLocation(java.lang.String provider, android.location.LocationRequest locationRequest, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor executor, java.util.function.Consumer<android.location.Location> consumer)
+    getCurrentLocation(java.lang.String provider, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor executor, java.util.function.Consumer<android.location.Location> consumer)
+    getGpsStatus(android.location.GpsStatus status)
+    getLastKnownLocation(java.lang.String provider)
+    getProvider(java.lang.String provider)
+    getProviderProperties(java.lang.String provider)
+    getProviders(android.location.Criteria criteria, boolean enabledOnly)
+    getProviders(boolean enabledOnly)
+    hasProvider(java.lang.String provider)
+    isProviderEnabled(java.lang.String provider)
+    registerAntennaInfoListener(java.util.concurrent.Executor executor, android.location.GnssAntennaInfo.Listener listener)
+    registerGnssMeasurementsCallback(android.location.GnssMeasurementRequest request, java.util.concurrent.Executor executor, android.location.GnssMeasurementsEvent.Callback callback)
+    registerGnssMeasurementsCallback(android.location.GnssMeasurementsEvent.Callback callback)
+    registerGnssMeasurementsCallback(android.location.GnssMeasurementsEvent.Callback callback, android.os.Handler handler)
+    registerGnssMeasurementsCallback(java.util.concurrent.Executor executor, android.location.GnssMeasurementsEvent.Callback callback)
+    registerGnssNavigationMessageCallback(android.location.GnssNavigationMessage.Callback callback)
+    registerGnssNavigationMessageCallback(android.location.GnssNavigationMessage.Callback callback, android.os.Handler handler)
+    registerGnssNavigationMessageCallback(java.util.concurrent.Executor executor, android.location.GnssNavigationMessage.Callback callback)
+    registerGnssStatusCallback(android.location.GnssStatus.Callback callback)
+    registerGnssStatusCallback(android.location.GnssStatus.Callback callback, android.os.Handler handler)
+    registerGnssStatusCallback(java.util.concurrent.Executor executor, android.location.GnssStatus.Callback callback)
+    removeGpsStatusListener(android.location.GpsStatus.Listener listener)
+    removeNmeaListener(android.location.GpsStatus.NmeaListener listener)
+    removeNmeaListener(android.location.OnNmeaMessageListener listener)
+    removeProximityAlert(android.app.PendingIntent intent)
+    removeTestProvider(java.lang.String provider)
+    removeUpdates(android.app.PendingIntent pendingIntent)
+    removeUpdates(android.location.LocationListener listener)
+    requestFlush(java.lang.String provider, android.app.PendingIntent pendingIntent, int requestCode)
+    requestFlush(java.lang.String provider, android.location.LocationListener listener, int requestCode)
+    requestLocationUpdates(java.lang.String provider, android.location.LocationRequest locationRequest, android.app.PendingIntent pendingIntent)
+    requestLocationUpdates(java.lang.String provider, android.location.LocationRequest locationRequest, java.util.concurrent.Executor executor, android.location.LocationListener listener)
+    requestLocationUpdates(java.lang.String provider, long minTimeMs, float minDistanceM, android.app.PendingIntent pendingIntent)
+    requestLocationUpdates(java.lang.String provider, long minTimeMs, float minDistanceM, android.location.LocationListener listener)
+    requestLocationUpdates(java.lang.String provider, long minTimeMs, float minDistanceM, android.location.LocationListener listener, android.os.Looper looper)
+    requestLocationUpdates(java.lang.String provider, long minTimeMs, float minDistanceM, java.util.concurrent.Executor executor, android.location.LocationListener listener)
+    requestLocationUpdates(long minTimeMs, float minDistanceM, android.location.Criteria criteria, android.app.PendingIntent pendingIntent)
+    requestLocationUpdates(long minTimeMs, float minDistanceM, android.location.Criteria criteria, android.location.LocationListener listener, android.os.Looper looper)
+    requestLocationUpdates(long minTimeMs, float minDistanceM, android.location.Criteria criteria, java.util.concurrent.Executor executor, android.location.LocationListener listener)
+    requestSingleUpdate(android.location.Criteria criteria, android.app.PendingIntent pendingIntent)
+    requestSingleUpdate(android.location.Criteria criteria, android.location.LocationListener listener, android.os.Looper looper)
+    requestSingleUpdate(java.lang.String provider, android.app.PendingIntent pendingIntent)
+    requestSingleUpdate(java.lang.String provider, android.location.LocationListener listener, android.os.Looper looper)
+    sendExtraCommand(java.lang.String provider, java.lang.String command, android.os.Bundle extras)
+    setTestProviderEnabled(java.lang.String provider, boolean enabled)
+    setTestProviderLocation(java.lang.String provider, android.location.Location location)
+    setTestProviderStatus(java.lang.String provider, int status, android.os.Bundle extras, long updateTime)
+    unregisterAntennaInfoListener(android.location.GnssAntennaInfo.Listener listener)
+    unregisterGnssMeasurementsCallback(android.location.GnssMeasurementsEvent.Callback callback)
+    unregisterGnssNavigationMessageCallback(android.location.GnssNavigationMessage.Callback callback)
+    unregisterGnssStatusCallback(android.location.GnssStatus.Callback callback)
+  class LocationProvider
+    meetsCriteria(android.location.Criteria criteria)
+  class LocationRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class LocationRequest.Builder
+    #ctor(android.location.LocationRequest locationRequest)
+    #ctor(long intervalMillis)
+    setDurationMillis(long durationMillis)
+    setIntervalMillis(long intervalMillis)
+    setMaxUpdateDelayMillis(long maxUpdateDelayMillis)
+    setMaxUpdates(int maxUpdates)
+    setMinUpdateDistanceMeters(float minUpdateDistanceMeters)
+    setMinUpdateIntervalMillis(long minUpdateIntervalMillis)
+    setQuality(int quality)
+  interface OnNmeaMessageListener
+    onNmeaMessage(java.lang.String message, long timestamp)
+  class SettingInjectorService
+    onBind(android.content.Intent intent)
+    onStart(android.content.Intent intent, int startId)
+    onStartCommand(android.content.Intent intent, int flags, int startId)
+    refreshSettings(android.content.Context context)
+    #ctor(java.lang.String name)
+
+package android.location.altitude
+;---------------------------------------
+  class AltitudeConverter
+    addMslAltitudeToLocation(android.content.Context context, android.location.Location location)
+
+package android.location.provider
+;---------------------------------------
+  class ProviderProperties
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ProviderProperties.Builder
+    #ctor(android.location.provider.ProviderProperties providerProperties)
+    setAccuracy(int accuracy)
+    setHasAltitudeSupport(boolean supportsAltitude)
+    setHasBearingSupport(boolean supportsBearing)
+    setHasCellRequirement(boolean requiresCell)
+    setHasMonetaryCost(boolean monetaryCost)
+    setHasNetworkRequirement(boolean requiresNetwork)
+    setHasSatelliteRequirement(boolean requiresSatellite)
+    setHasSpeedSupport(boolean supportsSpeed)
+    setPowerUsage(int powerUsage)
+
+package android.media
+;---------------------------------------
+  class ApplicationMediaCapabilities
+    createFromXml(org.xmlpull.v1.XmlPullParser xmlParser)
+    isFormatSpecified(java.lang.String format)
+    isHdrTypeSupported(java.lang.String hdrType)
+    isVideoMimeTypeSupported(java.lang.String videoMime)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApplicationMediaCapabilities.Builder
+    addSupportedHdrType(java.lang.String hdrType)
+    addSupportedVideoMimeType(java.lang.String codecMime)
+    addUnsupportedHdrType(java.lang.String hdrType)
+    addUnsupportedVideoMimeType(java.lang.String codecMime)
+  class AsyncPlayer
+    #ctor(java.lang.String tag)
+    play(android.content.Context context, android.net.Uri uri, boolean looping, android.media.AudioAttributes attributes)
+    play(android.content.Context context, android.net.Uri uri, boolean looping, int stream)
+  class AudioAttributes
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioAttributes.Builder
+    #ctor(android.media.AudioAttributes aa)
+    setAllowedCapturePolicy(int capturePolicy)
+    setContentType(int contentType)
+    setFlags(int flags)
+    setHapticChannelsMuted(boolean muted)
+    setIsContentSpatialized(boolean isSpatialized)
+    setLegacyStreamType(int streamType)
+    setSpatializationBehavior(int sb)
+    setUsage(int usage)
+  class AudioDescriptor
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioDeviceCallback
+    onAudioDevicesAdded(android.media.AudioDeviceInfo[] addedDevices)
+    onAudioDevicesRemoved(android.media.AudioDeviceInfo[] removedDevices)
+  class AudioDeviceInfo
+    equals(java.lang.Object o)
+  class AudioFocusRequest.Builder
+    #ctor(android.media.AudioFocusRequest requestToCopy)
+    #ctor(int focusGain)
+    setAcceptsDelayedFocusGain(boolean acceptsDelayedFocusGain)
+    setAudioAttributes(android.media.AudioAttributes attributes)
+    setFocusGain(int focusGain)
+    setForceDucking(boolean forceDucking)
+    setOnAudioFocusChangeListener(android.media.AudioManager.OnAudioFocusChangeListener listener)
+    setOnAudioFocusChangeListener(android.media.AudioManager.OnAudioFocusChangeListener listener, android.os.Handler handler)
+    setWillPauseWhenDucked(boolean pauseOnDuck)
+  class AudioFormat
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioFormat.Builder
+    #ctor(android.media.AudioFormat af)
+    setChannelIndexMask(int channelIndexMask)
+    setChannelMask(int channelMask)
+    setEncoding(int encoding)
+    setSampleRate(int sampleRate)
+  class AudioManager
+    abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener l)
+    abandonAudioFocusRequest(android.media.AudioFocusRequest focusRequest)
+    addOnCommunicationDeviceChangedListener(java.util.concurrent.Executor executor, android.media.AudioManager.OnCommunicationDeviceChangedListener listener)
+    addOnModeChangedListener(java.util.concurrent.Executor executor, android.media.AudioManager.OnModeChangedListener listener)
+    addOnPreferredMixerAttributesChangedListener(java.util.concurrent.Executor executor, android.media.AudioManager.OnPreferredMixerAttributesChangedListener listener)
+    adjustStreamVolume(int streamType, int direction, int flags)
+    adjustSuggestedStreamVolume(int direction, int suggestedStreamType, int flags)
+    adjustVolume(int direction, int flags)
+    clearPreferredMixerAttributes(android.media.AudioAttributes attributes, android.media.AudioDeviceInfo device)
+    dispatchMediaKeyEvent(android.view.KeyEvent keyEvent)
+    getAudioDevicesForAttributes(android.media.AudioAttributes attributes)
+    getAudioHwSyncForSession(int sessionId)
+    getDevices(int flags)
+    getDirectPlaybackSupport(android.media.AudioFormat format, android.media.AudioAttributes attributes)
+    getDirectProfilesForAttributes(android.media.AudioAttributes attributes)
+    getParameters(java.lang.String keys)
+    getPlaybackOffloadSupport(android.media.AudioFormat format, android.media.AudioAttributes attributes)
+    getPreferredMixerAttributes(android.media.AudioAttributes attributes, android.media.AudioDeviceInfo device)
+    getProperty(java.lang.String key)
+    getRouting(int mode)
+    getStreamMaxVolume(int streamType)
+    getStreamMinVolume(int streamType)
+    getStreamVolume(int streamType)
+    getStreamVolumeDb(int streamType, int index, int deviceType)
+    getSupportedMixerAttributes(android.media.AudioDeviceInfo device)
+    getVibrateSetting(int vibrateType)
+    isOffloadedPlaybackSupported(android.media.AudioFormat format, android.media.AudioAttributes attributes)
+    isStreamMute(int streamType)
+    isSurroundFormatEnabled(int audioFormat)
+    playSoundEffect(int effectType)
+    playSoundEffect(int effectType, float volume)
+    registerAudioDeviceCallback(android.media.AudioDeviceCallback callback, android.os.Handler handler)
+    registerAudioPlaybackCallback(android.media.AudioManager.AudioPlaybackCallback cb, android.os.Handler handler)
+    registerAudioRecordingCallback(android.media.AudioManager.AudioRecordingCallback cb, android.os.Handler handler)
+    registerMediaButtonEventReceiver(android.app.PendingIntent eventReceiver)
+    registerMediaButtonEventReceiver(android.content.ComponentName eventReceiver)
+    registerRemoteControlClient(android.media.RemoteControlClient rcClient)
+    registerRemoteController(android.media.RemoteController rctlr)
+    removeOnCommunicationDeviceChangedListener(android.media.AudioManager.OnCommunicationDeviceChangedListener listener)
+    removeOnModeChangedListener(android.media.AudioManager.OnModeChangedListener listener)
+    removeOnPreferredMixerAttributesChangedListener(android.media.AudioManager.OnPreferredMixerAttributesChangedListener listener)
+    requestAudioFocus(android.media.AudioFocusRequest focusRequest)
+    requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener l, int streamType, int durationHint)
+    setAllowedCapturePolicy(int capturePolicy)
+    setBluetoothA2dpOn(boolean on)
+    setBluetoothScoOn(boolean on)
+    setCommunicationDevice(android.media.AudioDeviceInfo device)
+    setEncodedSurroundMode(int mode)
+    setMicrophoneMute(boolean on)
+    setMode(int mode)
+    setParameters(java.lang.String keyValuePairs)
+    setPreferredMixerAttributes(android.media.AudioAttributes attributes, android.media.AudioDeviceInfo device, android.media.AudioMixerAttributes mixerAttributes)
+    setRingerMode(int ringerMode)
+    setRouting(int mode, int routes, int mask)
+    setSpeakerphoneOn(boolean on)
+    setStreamMute(int streamType, boolean state)
+    setStreamSolo(int streamType, boolean state)
+    setStreamVolume(int streamType, int index, int flags)
+    setSurroundFormatEnabled(int audioFormat, boolean enabled)
+    setVibrateSetting(int vibrateType, int vibrateSetting)
+    setWiredHeadsetOn(boolean on)
+    shouldVibrate(int vibrateType)
+    unregisterAudioDeviceCallback(android.media.AudioDeviceCallback callback)
+    unregisterAudioPlaybackCallback(android.media.AudioManager.AudioPlaybackCallback cb)
+    unregisterAudioRecordingCallback(android.media.AudioManager.AudioRecordingCallback cb)
+    unregisterMediaButtonEventReceiver(android.app.PendingIntent eventReceiver)
+    unregisterMediaButtonEventReceiver(android.content.ComponentName eventReceiver)
+    unregisterRemoteControlClient(android.media.RemoteControlClient rcClient)
+    unregisterRemoteController(android.media.RemoteController rctlr)
+  class AudioManager.AudioPlaybackCallback
+    onPlaybackConfigChanged(java.util.List<android.media.AudioPlaybackConfiguration> configs)
+  class AudioManager.AudioRecordingCallback
+    onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration> configs)
+  interface AudioManager.OnAudioFocusChangeListener
+    onAudioFocusChange(int focusChange)
+  interface AudioManager.OnCommunicationDeviceChangedListener
+    onCommunicationDeviceChanged(android.media.AudioDeviceInfo device)
+  interface AudioManager.OnModeChangedListener
+    onModeChanged(int mode)
+  interface AudioManager.OnPreferredMixerAttributesChangedListener
+    onPreferredMixerAttributesChanged(android.media.AudioAttributes attributes, android.media.AudioDeviceInfo device, android.media.AudioMixerAttributes mixerAttributes)
+  interface AudioMetadataMap
+    <T> remove(android.media.AudioMetadata.Key<T> key)
+    <T> set(android.media.AudioMetadata.Key<T> key, T value)
+  interface AudioMetadataReadMap
+    <T> containsKey(android.media.AudioMetadata.Key<T> key)
+    <T> get(android.media.AudioMetadata.Key<T> key)
+  class AudioMixerAttributes
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioMixerAttributes.Builder
+    #ctor(android.media.AudioFormat format)
+    setMixerBehavior(int mixerBehavior)
+  class AudioPlaybackCaptureConfiguration.Builder
+    addMatchingUid(int uid)
+    addMatchingUsage(int usage)
+    #ctor(android.media.projection.MediaProjection projection)
+    excludeUid(int uid)
+    excludeUsage(int usage)
+  class AudioPlaybackConfiguration
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioPresentation
+    equals(java.lang.Object o)
+  class AudioPresentation.Builder
+    #ctor(int presentationId)
+    setHasAudioDescription(boolean audioDescriptionAvailable)
+    setHasDialogueEnhancement(boolean dialogueEnhancementAvailable)
+    setHasSpokenSubtitles(boolean spokenSubtitlesAvailable)
+    setLabels(java.util.Map<android.icu.util.ULocale,java.lang.CharSequence> labels)
+    setLocale(android.icu.util.ULocale language)
+    setMasteringIndication(int masteringIndication)
+    setProgramId(int programId)
+  class AudioProfile
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioRecord
+    addOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener listener, android.os.Handler handler)
+    addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener, android.os.Handler handler)
+    #ctor(int audioSource, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes)
+    getMinBufferSize(int sampleRateInHz, int channelConfig, int audioFormat)
+    getTimestamp(android.media.AudioTimestamp outTimestamp, int timebase)
+    read(byte[] audioData, int offsetInBytes, int sizeInBytes)
+    read(byte[] audioData, int offsetInBytes, int sizeInBytes, int readMode)
+    read(float[] audioData, int offsetInFloats, int sizeInFloats, int readMode)
+    read(java.nio.ByteBuffer audioBuffer, int sizeInBytes)
+    read(java.nio.ByteBuffer audioBuffer, int sizeInBytes, int readMode)
+    read(short[] audioData, int offsetInShorts, int sizeInShorts)
+    read(short[] audioData, int offsetInShorts, int sizeInShorts, int readMode)
+    registerAudioRecordingCallback(java.util.concurrent.Executor executor, android.media.AudioManager.AudioRecordingCallback cb)
+    removeOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener listener)
+    removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener)
+    setLogSessionId(android.media.metrics.LogSessionId logSessionId)
+    setNotificationMarkerPosition(int markerInFrames)
+    setPositionNotificationPeriod(int periodInFrames)
+    setPreferredDevice(android.media.AudioDeviceInfo deviceInfo)
+    setPreferredMicrophoneDirection(int direction)
+    setPreferredMicrophoneFieldDimension(float zoom)
+    setRecordPositionUpdateListener(android.media.AudioRecord.OnRecordPositionUpdateListener listener)
+    setRecordPositionUpdateListener(android.media.AudioRecord.OnRecordPositionUpdateListener listener, android.os.Handler handler)
+    startRecording(android.media.MediaSyncEvent syncEvent)
+    unregisterAudioRecordingCallback(android.media.AudioManager.AudioRecordingCallback cb)
+  class AudioRecord.Builder
+    setAudioFormat(android.media.AudioFormat format)
+    setAudioPlaybackCaptureConfig(android.media.AudioPlaybackCaptureConfiguration config)
+    setAudioSource(int source)
+    setBufferSizeInBytes(int bufferSizeInBytes)
+    setContext(android.content.Context context)
+    setPrivacySensitive(boolean privacySensitive)
+  interface AudioRecord.OnRecordPositionUpdateListener
+    onMarkerReached(android.media.AudioRecord recorder)
+    onPeriodicNotification(android.media.AudioRecord recorder)
+  interface AudioRecord.OnRoutingChangedListener
+    onRoutingChanged(android.media.AudioRecord audioRecord)
+    onRoutingChanged(android.media.AudioRouting router)
+  class AudioRecordingConfiguration
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface AudioRecordingMonitor
+    registerAudioRecordingCallback(java.util.concurrent.Executor executor, android.media.AudioManager.AudioRecordingCallback cb)
+    unregisterAudioRecordingCallback(android.media.AudioManager.AudioRecordingCallback cb)
+  interface AudioRouting
+    addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener, android.os.Handler handler)
+    removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener)
+    setPreferredDevice(android.media.AudioDeviceInfo deviceInfo)
+  interface AudioRouting.OnRoutingChangedListener
+    onRoutingChanged(android.media.AudioRouting router)
+  class AudioTimestamp
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AudioTrack
+    addOnCodecFormatChangedListener(java.util.concurrent.Executor executor, android.media.AudioTrack.OnCodecFormatChangedListener listener)
+    addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener, android.os.Handler handler)
+    addOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener listener, android.os.Handler handler)
+    attachAuxEffect(int effectId)
+    #ctor(android.media.AudioAttributes attributes, android.media.AudioFormat format, int bufferSizeInBytes, int mode, int sessionId)
+    #ctor(int streamType, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes, int mode)
+    #ctor(int streamType, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes, int mode, int sessionId)
+    createVolumeShaper(android.media.VolumeShaper.Configuration configuration)
+    getMinBufferSize(int sampleRateInHz, int channelConfig, int audioFormat)
+    getNativeOutputSampleRate(int streamType)
+    getTimestamp(android.media.AudioTimestamp timestamp)
+    isDirectPlaybackSupported(android.media.AudioFormat format, android.media.AudioAttributes attributes)
+    registerStreamEventCallback(java.util.concurrent.Executor executor, android.media.AudioTrack.StreamEventCallback eventCallback)
+    removeOnCodecFormatChangedListener(android.media.AudioTrack.OnCodecFormatChangedListener listener)
+    removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener)
+    removeOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener listener)
+    setAudioDescriptionMixLeveldB(float level)
+    setAuxEffectSendLevel(float level)
+    setBufferSizeInFrames(int bufferSizeInFrames)
+    setDualMonoMode(int dualMonoMode)
+    setLogSessionId(android.media.metrics.LogSessionId logSessionId)
+    setLoopPoints(int startInFrames, int endInFrames, int loopCount)
+    setNotificationMarkerPosition(int markerInFrames)
+    setOffloadDelayPadding(int delayInFrames, int paddingInFrames)
+    setPlaybackHeadPosition(int positionInFrames)
+    setPlaybackParams(android.media.PlaybackParams params)
+    setPlaybackPositionUpdateListener(android.media.AudioTrack.OnPlaybackPositionUpdateListener listener)
+    setPlaybackPositionUpdateListener(android.media.AudioTrack.OnPlaybackPositionUpdateListener listener, android.os.Handler handler)
+    setPlaybackRate(int sampleRateInHz)
+    setPositionNotificationPeriod(int periodInFrames)
+    setPreferredDevice(android.media.AudioDeviceInfo deviceInfo)
+    setPresentation(android.media.AudioPresentation presentation)
+    setStartThresholdInFrames(int startThresholdInFrames)
+    setState(int state)
+    setStereoVolume(float leftGain, float rightGain)
+    setVolume(float gain)
+    unregisterStreamEventCallback(android.media.AudioTrack.StreamEventCallback eventCallback)
+    write(byte[] audioData, int offsetInBytes, int sizeInBytes)
+    write(byte[] audioData, int offsetInBytes, int sizeInBytes, int writeMode)
+    write(float[] audioData, int offsetInFloats, int sizeInFloats, int writeMode)
+    write(java.nio.ByteBuffer audioData, int sizeInBytes, int writeMode)
+    write(java.nio.ByteBuffer audioData, int sizeInBytes, int writeMode, long timestamp)
+    write(short[] audioData, int offsetInShorts, int sizeInShorts)
+    write(short[] audioData, int offsetInShorts, int sizeInShorts, int writeMode)
+  class AudioTrack.Builder
+    setAudioAttributes(android.media.AudioAttributes attributes)
+    setAudioFormat(android.media.AudioFormat format)
+    setBufferSizeInBytes(int bufferSizeInBytes)
+    setContext(android.content.Context context)
+    setEncapsulationMode(int encapsulationMode)
+    setOffloadedPlayback(boolean offload)
+    setPerformanceMode(int performanceMode)
+    setSessionId(int sessionId)
+    setTransferMode(int mode)
+  interface AudioTrack.OnCodecFormatChangedListener
+    onCodecFormatChanged(android.media.AudioTrack audioTrack, android.media.AudioMetadataReadMap info)
+  interface AudioTrack.OnPlaybackPositionUpdateListener
+    onMarkerReached(android.media.AudioTrack track)
+    onPeriodicNotification(android.media.AudioTrack track)
+  interface AudioTrack.OnRoutingChangedListener
+    onRoutingChanged(android.media.AudioRouting router)
+    onRoutingChanged(android.media.AudioTrack audioTrack)
+  class AudioTrack.StreamEventCallback
+    onDataRequest(android.media.AudioTrack track, int sizeInFrames)
+    onPresentationEnded(android.media.AudioTrack track)
+    onTearDown(android.media.AudioTrack track)
+  class CamcorderProfile
+    get(int quality)
+    get(int cameraId, int quality)
+    getAll(java.lang.String cameraId, int quality)
+    hasProfile(int quality)
+    hasProfile(int cameraId, int quality)
+  class CameraProfile
+    getJpegEncodingQualityParameter(int quality)
+    getJpegEncodingQualityParameter(int cameraId, int quality)
+  class DeniedByServerException
+    #ctor(java.lang.String detailMessage)
+  class DrmInitData
+    get(java.util.UUID schemeUuid)
+    getSchemeInitDataAt(int index)
+  class DrmInitData.SchemeInitData
+    #ctor(java.util.UUID uuid, java.lang.String mimeType, byte[] data)
+    equals(java.lang.Object obj)
+  class ExifInterface
+    #ctor(java.io.File file)
+    #ctor(java.io.FileDescriptor fileDescriptor)
+    #ctor(java.io.InputStream inputStream)
+    #ctor(java.io.InputStream inputStream, int streamType)
+    #ctor(java.lang.String filename)
+    getAltitude(double defaultValue)
+    getAttribute(java.lang.String tag)
+    getAttributeBytes(java.lang.String tag)
+    getAttributeDouble(java.lang.String tag, double defaultValue)
+    getAttributeInt(java.lang.String tag, int defaultValue)
+    getAttributeRange(java.lang.String tag)
+    getLatLong(float[] output)
+    hasAttribute(java.lang.String tag)
+    isSupportedMimeType(java.lang.String mimeType)
+    setAttribute(java.lang.String tag, java.lang.String value)
+  class FaceDetector
+    #ctor(int width, int height, int maxFaces)
+    findFaces(android.graphics.Bitmap bitmap, android.media.FaceDetector.Face[] faces)
+  class FaceDetector.Face
+    getMidPoint(android.graphics.PointF point)
+    pose(int euler)
+  class Image
+    setCropRect(android.graphics.Rect cropRect)
+    setDataSpace(int dataSpace)
+    setFence(android.hardware.SyncFence fence)
+    setTimestamp(long timestamp)
+  class ImageReader
+    newInstance(int width, int height, int format, int maxImages)
+    newInstance(int width, int height, int format, int maxImages, long usage)
+    setOnImageAvailableListener(android.media.ImageReader.OnImageAvailableListener listener, android.os.Handler handler)
+  class ImageReader.Builder
+    #ctor(int width, int height)
+    setDefaultDataSpace(int dataSpace)
+    setDefaultHardwareBufferFormat(int hardwareBufferFormat)
+    setImageFormat(int imageFormat)
+    setMaxImages(int maxImages)
+    setUsage(long usage)
+  interface ImageReader.OnImageAvailableListener
+    onImageAvailable(android.media.ImageReader reader)
+  class ImageWriter
+    newInstance(android.view.Surface surface, int maxImages)
+    newInstance(android.view.Surface surface, int maxImages, int format)
+    queueInputImage(android.media.Image image)
+    setOnImageReleasedListener(android.media.ImageWriter.OnImageReleasedListener listener, android.os.Handler handler)
+  class ImageWriter.Builder
+    #ctor(android.view.Surface surface)
+    setDataSpace(int dataSpace)
+    setHardwareBufferFormat(int hardwareBufferFormat)
+    setImageFormat(int imageFormat)
+    setMaxImages(int maxImages)
+    setUsage(long usage)
+    setWidthAndHeight(int width, int height)
+  interface ImageWriter.OnImageReleasedListener
+    onImageReleased(android.media.ImageWriter writer)
+  class JetPlayer
+    loadJetFile(android.content.res.AssetFileDescriptor afd)
+    loadJetFile(java.lang.String path)
+    queueJetSegment(int segmentNum, int libNum, int repeatCount, int transpose, int muteFlags, byte userID)
+    queueJetSegmentMuteArray(int segmentNum, int libNum, int repeatCount, int transpose, boolean[] muteArray, byte userID)
+    setEventListener(android.media.JetPlayer.OnJetEventListener listener)
+    setEventListener(android.media.JetPlayer.OnJetEventListener listener, android.os.Handler handler)
+    setMuteArray(boolean[] muteArray, boolean sync)
+    setMuteFlag(int trackId, boolean muteFlag, boolean sync)
+    setMuteFlags(int muteFlags, boolean sync)
+    triggerClip(int clipId)
+  interface JetPlayer.OnJetEventListener
+    onJetEvent(android.media.JetPlayer player, short segment, byte track, byte channel, byte controller, byte value)
+    onJetNumQueuedSegmentUpdate(android.media.JetPlayer player, int nbSegments)
+    onJetPauseUpdate(android.media.JetPlayer player, int paused)
+    onJetUserIdUpdate(android.media.JetPlayer player, int userId, int repeatCount)
+  class MediaActionSound
+    load(int soundName)
+    play(int soundName)
+  class MediaCas
+    isSystemIdSupported(int CA_system_id)
+    #ctor(android.content.Context context, int casSystemId, java.lang.String tvInputServiceSessionId, int priorityHint)
+    #ctor(android.content.Context context, int casSystemId, java.lang.String tvInputServiceSessionId, int priorityHint, android.os.Handler handler, android.media.MediaCas.EventListener listener)
+    #ctor(int casSystemId)
+    openSession(int sessionUsage, int scramblingMode)
+    processEmm(byte[] data)
+    processEmm(byte[] data, int offset, int length)
+    provision(java.lang.String provisionString)
+    refreshEntitlements(int refreshType, byte[] refreshData)
+    sendEvent(int event, int arg, byte[] data)
+    setEventListener(android.media.MediaCas.EventListener listener, android.os.Handler handler)
+    setPrivateData(byte[] data)
+  interface MediaCas.EventListener
+    onEvent(android.media.MediaCas mediaCas, int event, int arg, byte[] data)
+    onPluginStatusUpdate(android.media.MediaCas mediaCas, int status, int arg)
+    onResourceLost(android.media.MediaCas mediaCas)
+    onSessionEvent(android.media.MediaCas mediaCas, android.media.MediaCas.Session session, int event, int arg, byte[] data)
+  class MediaCas.Session
+    equals(java.lang.Object obj)
+    processEcm(byte[] data)
+    processEcm(byte[] data, int offset, int length)
+    sendSessionEvent(int event, int arg, byte[] data)
+    setPrivateData(byte[] data)
+  class MediaCodec
+    configure(android.media.MediaFormat format, android.view.Surface surface, android.media.MediaCrypto crypto, int flags)
+    configure(android.media.MediaFormat format, android.view.Surface surface, int flags, android.media.MediaDescrambler descrambler)
+    createByCodecName(java.lang.String name)
+    createDecoderByType(java.lang.String type)
+    createEncoderByType(java.lang.String type)
+    dequeueInputBuffer(long timeoutUs)
+    dequeueOutputBuffer(android.media.MediaCodec.BufferInfo info, long timeoutUs)
+    getInputBuffer(int index)
+    getInputImage(int index)
+    getOutputBuffer(int index)
+    getOutputFormat(int index)
+    getOutputFrame(int index)
+    getOutputImage(int index)
+    getParameterDescriptor(java.lang.String name)
+    getQueueRequest(int index)
+    mapHardwareBuffer(android.hardware.HardwareBuffer hardwareBuffer)
+    queueInputBuffer(int index, int offset, int size, long presentationTimeUs, int flags)
+    queueSecureInputBuffer(int index, int offset, android.media.MediaCodec.CryptoInfo info, long presentationTimeUs, int flags)
+    releaseOutputBuffer(int index, boolean render)
+    releaseOutputBuffer(int index, long renderTimestampNs)
+    setAudioPresentation(android.media.AudioPresentation presentation)
+    setCallback(android.media.MediaCodec.Callback cb)
+    setCallback(android.media.MediaCodec.Callback cb, android.os.Handler handler)
+    setInputSurface(android.view.Surface surface)
+    setOnFirstTunnelFrameReadyListener(android.os.Handler handler, android.media.MediaCodec.OnFirstTunnelFrameReadyListener listener)
+    setOnFrameRenderedListener(android.media.MediaCodec.OnFrameRenderedListener listener, android.os.Handler handler)
+    setOutputSurface(android.view.Surface surface)
+    setParameters(android.os.Bundle params)
+    setVideoScalingMode(int mode)
+    subscribeToVendorParameters(java.util.List<java.lang.String> names)
+    unsubscribeFromVendorParameters(java.util.List<java.lang.String> names)
+  class MediaCodec.BufferInfo
+    set(int newOffset, int newSize, long newTimeUs, int newFlags)
+  class MediaCodec.Callback
+    onError(android.media.MediaCodec codec, android.media.MediaCodec.CodecException e)
+    onInputBufferAvailable(android.media.MediaCodec codec, int index)
+    onOutputBufferAvailable(android.media.MediaCodec codec, int index, android.media.MediaCodec.BufferInfo info)
+    onOutputFormatChanged(android.media.MediaCodec codec, android.media.MediaFormat format)
+  class MediaCodec.CryptoException
+    #ctor(int errorCode, java.lang.String detailMessage)
+  class MediaCodec.CryptoInfo
+    set(int newNumSubSamples, int[] newNumBytesOfClearData, int[] newNumBytesOfEncryptedData, byte[] newKey, byte[] newIV, int newMode)
+    setPattern(android.media.MediaCodec.CryptoInfo.Pattern newPattern)
+  class MediaCodec.CryptoInfo.Pattern
+    #ctor(int blocksToEncrypt, int blocksToSkip)
+    set(int blocksToEncrypt, int blocksToSkip)
+  class MediaCodec.LinearBlock
+    isCodecCopyFreeCompatible(java.lang.String[] codecNames)
+    obtain(int capacity, java.lang.String[] codecNames)
+  interface MediaCodec.OnFirstTunnelFrameReadyListener
+    onFirstTunnelFrameReady(android.media.MediaCodec codec)
+  interface MediaCodec.OnFrameRenderedListener
+    onFrameRendered(android.media.MediaCodec codec, long presentationTimeUs, long nanoTime)
+  class MediaCodec.ParameterDescriptor
+    equals(java.lang.Object o)
+  class MediaCodec.QueueRequest
+    setByteBufferParameter(java.lang.String key, java.nio.ByteBuffer value)
+    setEncryptedLinearBlock(android.media.MediaCodec.LinearBlock block, int offset, int size, android.media.MediaCodec.CryptoInfo cryptoInfo)
+    setFlags(int flags)
+    setFloatParameter(java.lang.String key, float value)
+    setHardwareBuffer(android.hardware.HardwareBuffer buffer)
+    setIntegerParameter(java.lang.String key, int value)
+    setLinearBlock(android.media.MediaCodec.LinearBlock block, int offset, int size)
+    setLongParameter(java.lang.String key, long value)
+    setPresentationTimeUs(long presentationTimeUs)
+    setStringParameter(java.lang.String key, java.lang.String value)
+  class MediaCodecInfo
+    getCapabilitiesForType(java.lang.String type)
+  class MediaCodecInfo.AudioCapabilities
+    isSampleRateSupported(int sampleRate)
+  class MediaCodecInfo.CodecCapabilities
+    createFromProfileLevel(java.lang.String mime, int profile, int level)
+    isFeatureRequired(java.lang.String name)
+    isFeatureSupported(java.lang.String name)
+    isFormatSupported(android.media.MediaFormat format)
+  class MediaCodecInfo.CodecProfileLevel
+    equals(java.lang.Object obj)
+  class MediaCodecInfo.EncoderCapabilities
+    isBitrateModeSupported(int mode)
+  class MediaCodecInfo.VideoCapabilities
+    areSizeAndRateSupported(int width, int height, double frameRate)
+    getAchievableFrameRatesFor(int width, int height)
+    getSupportedFrameRatesFor(int width, int height)
+    getSupportedHeightsFor(int width)
+    getSupportedWidthsFor(int height)
+    isSizeSupported(int width, int height)
+  class MediaCodecInfo.VideoCapabilities.PerformancePoint
+    covers(android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint other)
+    covers(android.media.MediaFormat format)
+    equals(java.lang.Object o)
+    #ctor(int width, int height, int frameRate)
+  class MediaCodecList
+    findDecoderForFormat(android.media.MediaFormat format)
+    findEncoderForFormat(android.media.MediaFormat format)
+    getCodecInfoAt(int index)
+    #ctor(int kind)
+  class MediaController2
+    cancelSessionCommand(java.lang.Object token)
+    sendSessionCommand(android.media.Session2Command command, android.os.Bundle args)
+  class MediaController2.Builder
+    #ctor(android.content.Context context, android.media.Session2Token token)
+    setConnectionHints(android.os.Bundle connectionHints)
+    setControllerCallback(java.util.concurrent.Executor executor, android.media.MediaController2.ControllerCallback callback)
+  class MediaController2.ControllerCallback
+    onCommandResult(android.media.MediaController2 controller, java.lang.Object token, android.media.Session2Command command, android.media.Session2Command.Result result)
+    onConnected(android.media.MediaController2 controller, android.media.Session2CommandGroup allowedCommands)
+    onDisconnected(android.media.MediaController2 controller)
+    onPlaybackActiveChanged(android.media.MediaController2 controller, boolean playbackActive)
+    onSessionCommand(android.media.MediaController2 controller, android.media.Session2Command command, android.os.Bundle args)
+  class MediaCrypto
+    isCryptoSchemeSupported(java.util.UUID uuid)
+    #ctor(java.util.UUID uuid, byte[] sessionId)
+    requiresSecureDecoderComponent(java.lang.String mime)
+    setMediaDrmSession(byte[] sessionId)
+  class MediaCryptoException
+    #ctor(java.lang.String detailMessage)
+  class MediaDataSource
+    readAt(long position, byte[] buffer, int offset, int size)
+  class MediaDescrambler
+    descramble(java.nio.ByteBuffer srcBuf, java.nio.ByteBuffer dstBuf, android.media.MediaCodec.CryptoInfo cryptoInfo)
+    #ctor(int CA_system_id)
+    requiresSecureDecoderComponent(java.lang.String mime)
+    setMediaCasSession(android.media.MediaCas.Session session)
+  class MediaDescription
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaDescription.Builder
+    setDescription(java.lang.CharSequence description)
+    setExtras(android.os.Bundle extras)
+    setIconBitmap(android.graphics.Bitmap icon)
+    setIconUri(android.net.Uri iconUri)
+    setMediaId(java.lang.String mediaId)
+    setMediaUri(android.net.Uri mediaUri)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTitle(java.lang.CharSequence title)
+  class MediaDrm
+    closeSession(byte[] sessionId)
+    getCryptoSession(byte[] sessionId, java.lang.String cipherAlgorithm, java.lang.String macAlgorithm)
+    getKeyRequest(byte[] scope, byte[] init, java.lang.String mimeType, int keyType, java.util.HashMap<java.lang.String,java.lang.String> optionalParameters)
+    getOfflineLicenseState(byte[] keySetId)
+    getPlaybackComponent(byte[] sessionId)
+    getPropertyByteArray(java.lang.String propertyName)
+    getPropertyString(java.lang.String propertyName)
+    getSecureStop(byte[] ssid)
+    getSecurityLevel(byte[] sessionId)
+    isCryptoSchemeSupported(java.util.UUID uuid)
+    isCryptoSchemeSupported(java.util.UUID uuid, java.lang.String mimeType)
+    isCryptoSchemeSupported(java.util.UUID uuid, java.lang.String mimeType, int securityLevel)
+    #ctor(java.util.UUID uuid)
+    openSession(int level)
+    provideKeyResponse(byte[] scope, byte[] response)
+    provideProvisionResponse(byte[] response)
+    queryKeyStatus(byte[] sessionId)
+    releaseSecureStops(byte[] ssRelease)
+    removeKeys(byte[] sessionId)
+    removeOfflineLicense(byte[] keySetId)
+    removeSecureStop(byte[] ssid)
+    requiresSecureDecoder(java.lang.String mime)
+    requiresSecureDecoder(java.lang.String mime, int level)
+    restoreKeys(byte[] sessionId, byte[] keySetId)
+    setOnEventListener(android.media.MediaDrm.OnEventListener listener)
+    setOnEventListener(android.media.MediaDrm.OnEventListener listener, android.os.Handler handler)
+    setOnEventListener(java.util.concurrent.Executor executor, android.media.MediaDrm.OnEventListener listener)
+    setOnExpirationUpdateListener(android.media.MediaDrm.OnExpirationUpdateListener listener, android.os.Handler handler)
+    setOnExpirationUpdateListener(java.util.concurrent.Executor executor, android.media.MediaDrm.OnExpirationUpdateListener listener)
+    setOnKeyStatusChangeListener(android.media.MediaDrm.OnKeyStatusChangeListener listener, android.os.Handler handler)
+    setOnKeyStatusChangeListener(java.util.concurrent.Executor executor, android.media.MediaDrm.OnKeyStatusChangeListener listener)
+    setOnSessionLostStateListener(android.media.MediaDrm.OnSessionLostStateListener listener, android.os.Handler handler)
+    setOnSessionLostStateListener(java.util.concurrent.Executor executor, android.media.MediaDrm.OnSessionLostStateListener listener)
+    setPropertyByteArray(java.lang.String propertyName, byte[] value)
+    setPropertyString(java.lang.String propertyName, java.lang.String value)
+  class MediaDrm.CryptoSession
+    decrypt(byte[] keyid, byte[] input, byte[] iv)
+    encrypt(byte[] keyid, byte[] input, byte[] iv)
+    sign(byte[] keyid, byte[] message)
+    verify(byte[] keyid, byte[] message, byte[] signature)
+  interface MediaDrm.OnEventListener
+    onEvent(android.media.MediaDrm md, byte[] sessionId, int event, int extra, byte[] data)
+  interface MediaDrm.OnExpirationUpdateListener
+    onExpirationUpdate(android.media.MediaDrm md, byte[] sessionId, long expirationTime)
+  interface MediaDrm.OnKeyStatusChangeListener
+    onKeyStatusChange(android.media.MediaDrm md, byte[] sessionId, java.util.List<android.media.MediaDrm.KeyStatus> keyInformation, boolean hasNewUsableKey)
+  interface MediaDrm.OnSessionLostStateListener
+    onSessionLostState(android.media.MediaDrm md, byte[] sessionId)
+  class MediaDrm.PlaybackComponent
+    setLogSessionId(android.media.metrics.LogSessionId logSessionId)
+  class MediaDrm.SessionException
+    #ctor(int errorCode, java.lang.String detailMessage)
+  class MediaDrmException
+    #ctor(java.lang.String detailMessage)
+  class MediaDrmResetException
+    #ctor(java.lang.String detailMessage)
+  class MediaExtractor
+    getAudioPresentations(int trackIndex)
+    getCasInfo(int index)
+    getSampleCryptoInfo(android.media.MediaCodec.CryptoInfo info)
+    getTrackFormat(int index)
+    readSampleData(java.nio.ByteBuffer byteBuf, int offset)
+    seekTo(long timeUs, int mode)
+    selectTrack(int index)
+    setDataSource(android.content.Context context, android.net.Uri uri, java.util.Map<java.lang.String,java.lang.String> headers)
+    setDataSource(android.content.res.AssetFileDescriptor afd)
+    setDataSource(android.media.MediaDataSource dataSource)
+    setDataSource(java.io.FileDescriptor fd)
+    setDataSource(java.io.FileDescriptor fd, long offset, long length)
+    setDataSource(java.lang.String path)
+    setDataSource(java.lang.String path, java.util.Map<java.lang.String,java.lang.String> headers)
+    setLogSessionId(android.media.metrics.LogSessionId logSessionId)
+    setMediaCas(android.media.MediaCas mediaCas)
+    unselectTrack(int index)
+  class MediaFormat
+    containsFeature(java.lang.String name)
+    containsKey(java.lang.String name)
+    createAudioFormat(java.lang.String mime, int sampleRate, int channelCount)
+    createSubtitleFormat(java.lang.String mime, java.lang.String language)
+    createVideoFormat(java.lang.String mime, int width, int height)
+    getByteBuffer(java.lang.String name)
+    getByteBuffer(java.lang.String name, java.nio.ByteBuffer defaultValue)
+    getFeatureEnabled(java.lang.String feature)
+    getFloat(java.lang.String name)
+    getFloat(java.lang.String name, float defaultValue)
+    getInteger(java.lang.String name)
+    getInteger(java.lang.String name, int defaultValue)
+    getLong(java.lang.String name)
+    getLong(java.lang.String name, long defaultValue)
+    getNumber(java.lang.String name)
+    getNumber(java.lang.String name, java.lang.Number defaultValue)
+    getString(java.lang.String name)
+    getString(java.lang.String name, java.lang.String defaultValue)
+    getValueTypeForKey(java.lang.String name)
+    #ctor(android.media.MediaFormat other)
+    removeFeature(java.lang.String name)
+    removeKey(java.lang.String name)
+    setByteBuffer(java.lang.String name, java.nio.ByteBuffer bytes)
+    setFeatureEnabled(java.lang.String feature, boolean enabled)
+    setFloat(java.lang.String name, float value)
+    setInteger(java.lang.String name, int value)
+    setLong(java.lang.String name, long value)
+    setString(java.lang.String name, java.lang.String value)
+  class MediaMetadata
+    containsKey(java.lang.String key)
+    equals(java.lang.Object o)
+    getBitmap(java.lang.String key)
+    getLong(java.lang.String key)
+    getRating(java.lang.String key)
+    getString(java.lang.String key)
+    getText(java.lang.String key)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaMetadata.Builder
+    #ctor(android.media.MediaMetadata source)
+    putBitmap(java.lang.String key, android.graphics.Bitmap value)
+    putLong(java.lang.String key, long value)
+    putRating(java.lang.String key, android.media.Rating value)
+    putString(java.lang.String key, java.lang.String value)
+    putText(java.lang.String key, java.lang.CharSequence value)
+    setBitmapDimensionLimit(int bitmapDimensionLimit)
+  class MediaMetadataEditor
+    addEditableKey(int key)
+    getBitmap(int key, android.graphics.Bitmap defaultValue)
+    getLong(int key, long defaultValue)
+    getObject(int key, java.lang.Object defaultValue)
+    getString(int key, java.lang.String defaultValue)
+    putBitmap(int key, android.graphics.Bitmap bitmap)
+    putLong(int key, long value)
+    putObject(int key, java.lang.Object value)
+    putString(int key, java.lang.String value)
+  class MediaMetadataRetriever
+    extractMetadata(int keyCode)
+    getFrameAtIndex(int frameIndex)
+    getFrameAtIndex(int frameIndex, android.media.MediaMetadataRetriever.BitmapParams params)
+    getFrameAtTime(long timeUs)
+    getFrameAtTime(long timeUs, int option)
+    getFrameAtTime(long timeUs, int option, android.media.MediaMetadataRetriever.BitmapParams params)
+    getFramesAtIndex(int frameIndex, int numFrames)
+    getFramesAtIndex(int frameIndex, int numFrames, android.media.MediaMetadataRetriever.BitmapParams params)
+    getImageAtIndex(int imageIndex)
+    getImageAtIndex(int imageIndex, android.media.MediaMetadataRetriever.BitmapParams params)
+    getPrimaryImage(android.media.MediaMetadataRetriever.BitmapParams params)
+    getScaledFrameAtTime(long timeUs, int option, int dstWidth, int dstHeight)
+    getScaledFrameAtTime(long timeUs, int option, int dstWidth, int dstHeight, android.media.MediaMetadataRetriever.BitmapParams params)
+    setDataSource(android.content.Context context, android.net.Uri uri)
+    setDataSource(android.media.MediaDataSource dataSource)
+    setDataSource(java.io.FileDescriptor fd)
+    setDataSource(java.io.FileDescriptor fd, long offset, long length)
+    setDataSource(java.lang.String path)
+    setDataSource(java.lang.String uri, java.util.Map<java.lang.String,java.lang.String> headers)
+  class MediaMetadataRetriever.BitmapParams
+    setPreferredConfig(android.graphics.Bitmap.Config config)
+  class MediaMuxer
+    addTrack(android.media.MediaFormat format)
+    #ctor(java.io.FileDescriptor fd, int format)
+    #ctor(java.lang.String path, int format)
+    setLocation(float latitude, float longitude)
+    setOrientationHint(int degrees)
+    writeSampleData(int trackIndex, java.nio.ByteBuffer byteBuf, android.media.MediaCodec.BufferInfo bufferInfo)
+  class MediaParser
+    advance(android.media.MediaParser.SeekableInputReader seekableInputReader)
+    create(android.media.MediaParser.OutputConsumer outputConsumer, java.lang.String... parserNames)
+    createByName(java.lang.String name, android.media.MediaParser.OutputConsumer outputConsumer)
+    getParserNames(android.media.MediaFormat mediaFormat)
+    seek(android.media.MediaParser.SeekPoint seekPoint)
+    setLogSessionId(android.media.metrics.LogSessionId logSessionId)
+    setParameter(java.lang.String parameterName, java.lang.Object value)
+    supportsParameter(java.lang.String parameterName)
+  interface MediaParser.InputReader
+    read(byte[] buffer, int offset, int readLength)
+  interface MediaParser.OutputConsumer
+    onSampleCompleted(int trackIndex, long timeMicros, int flags, int size, int offset, android.media.MediaCodec.CryptoInfo cryptoInfo)
+    onSampleDataFound(int trackIndex, android.media.MediaParser.InputReader inputReader)
+    onSeekMapFound(android.media.MediaParser.SeekMap seekMap)
+    onTrackCountFound(int numberOfTracks)
+    onTrackDataFound(int trackIndex, android.media.MediaParser.TrackData trackData)
+  interface MediaParser.SeekableInputReader
+    seekToPosition(long position)
+  class MediaParser.SeekMap
+    getSeekPoints(long timeMicros)
+  class MediaParser.SeekPoint
+    equals(java.lang.Object obj)
+  class MediaPlayer
+    addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener, android.os.Handler handler)
+    addTimedTextSource(android.content.Context context, android.net.Uri uri, java.lang.String mimeType)
+    addTimedTextSource(java.io.FileDescriptor fd, java.lang.String mimeType)
+    addTimedTextSource(java.io.FileDescriptor fd, long offset, long length, java.lang.String mime)
+    addTimedTextSource(java.lang.String path, java.lang.String mimeType)
+    attachAuxEffect(int effectId)
+    create(android.content.Context context, android.net.Uri uri)
+    create(android.content.Context context, android.net.Uri uri, android.view.SurfaceHolder holder)
+    create(android.content.Context context, android.net.Uri uri, android.view.SurfaceHolder holder, android.media.AudioAttributes audioAttributes, int audioSessionId)
+    create(android.content.Context context, int resid)
+    create(android.content.Context context, int resid, android.media.AudioAttributes audioAttributes, int audioSessionId)
+    createVolumeShaper(android.media.VolumeShaper.Configuration configuration)
+    deselectTrack(int index)
+    getDrmPropertyString(java.lang.String propertyName)
+    getKeyRequest(byte[] keySetId, byte[] initData, java.lang.String mimeType, int keyType, java.util.Map<java.lang.String,java.lang.String> optionalParameters)
+    getSelectedTrack(int trackType)
+    #ctor(android.content.Context context)
+    prepareDrm(java.util.UUID uuid)
+    provideKeyResponse(byte[] keySetId, byte[] response)
+    removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener)
+    restoreKeys(byte[] keySetId)
+    seekTo(int msec)
+    seekTo(long msec, int mode)
+    selectTrack(int index)
+    setAudioAttributes(android.media.AudioAttributes attributes)
+    setAudioSessionId(int sessionId)
+    setAudioStreamType(int streamtype)
+    setAuxEffectSendLevel(float level)
+    setDataSource(android.content.Context context, android.net.Uri uri)
+    setDataSource(android.content.Context context, android.net.Uri uri, java.util.Map<java.lang.String,java.lang.String> headers)
+    setDataSource(android.content.Context context, android.net.Uri uri, java.util.Map<java.lang.String,java.lang.String> headers, java.util.List<java.net.HttpCookie> cookies)
+    setDataSource(android.content.res.AssetFileDescriptor afd)
+    setDataSource(android.media.MediaDataSource dataSource)
+    setDataSource(java.io.FileDescriptor fd)
+    setDataSource(java.io.FileDescriptor fd, long offset, long length)
+    setDataSource(java.lang.String path)
+    setDisplay(android.view.SurfaceHolder sh)
+    setDrmPropertyString(java.lang.String propertyName, java.lang.String value)
+    setLooping(boolean looping)
+    setNextMediaPlayer(android.media.MediaPlayer next)
+    setOnBufferingUpdateListener(android.media.MediaPlayer.OnBufferingUpdateListener listener)
+    setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener listener)
+    setOnDrmConfigHelper(android.media.MediaPlayer.OnDrmConfigHelper listener)
+    setOnDrmInfoListener(android.media.MediaPlayer.OnDrmInfoListener listener)
+    setOnDrmInfoListener(android.media.MediaPlayer.OnDrmInfoListener listener, android.os.Handler handler)
+    setOnDrmPreparedListener(android.media.MediaPlayer.OnDrmPreparedListener listener)
+    setOnDrmPreparedListener(android.media.MediaPlayer.OnDrmPreparedListener listener, android.os.Handler handler)
+    setOnErrorListener(android.media.MediaPlayer.OnErrorListener listener)
+    setOnInfoListener(android.media.MediaPlayer.OnInfoListener listener)
+    setOnMediaTimeDiscontinuityListener(android.media.MediaPlayer.OnMediaTimeDiscontinuityListener listener)
+    setOnMediaTimeDiscontinuityListener(android.media.MediaPlayer.OnMediaTimeDiscontinuityListener listener, android.os.Handler handler)
+    setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener listener)
+    setOnSeekCompleteListener(android.media.MediaPlayer.OnSeekCompleteListener listener)
+    setOnSubtitleDataListener(android.media.MediaPlayer.OnSubtitleDataListener listener)
+    setOnSubtitleDataListener(android.media.MediaPlayer.OnSubtitleDataListener listener, android.os.Handler handler)
+    setOnTimedMetaDataAvailableListener(android.media.MediaPlayer.OnTimedMetaDataAvailableListener listener)
+    setOnTimedTextListener(android.media.MediaPlayer.OnTimedTextListener listener)
+    setOnVideoSizeChangedListener(android.media.MediaPlayer.OnVideoSizeChangedListener listener)
+    setPlaybackParams(android.media.PlaybackParams params)
+    setPreferredDevice(android.media.AudioDeviceInfo deviceInfo)
+    setScreenOnWhilePlaying(boolean screenOn)
+    setSurface(android.view.Surface surface)
+    setSyncParams(android.media.SyncParams params)
+    setVideoScalingMode(int mode)
+    setVolume(float leftVolume, float rightVolume)
+    setWakeMode(android.content.Context context, int mode)
+  class MediaPlayer.NoDrmSchemeException
+    #ctor(java.lang.String detailMessage)
+  interface MediaPlayer.OnBufferingUpdateListener
+    onBufferingUpdate(android.media.MediaPlayer mp, int percent)
+  interface MediaPlayer.OnCompletionListener
+    onCompletion(android.media.MediaPlayer mp)
+  interface MediaPlayer.OnDrmConfigHelper
+    onDrmConfig(android.media.MediaPlayer mp)
+  interface MediaPlayer.OnDrmInfoListener
+    onDrmInfo(android.media.MediaPlayer mp, android.media.MediaPlayer.DrmInfo drmInfo)
+  interface MediaPlayer.OnDrmPreparedListener
+    onDrmPrepared(android.media.MediaPlayer mp, int status)
+  interface MediaPlayer.OnErrorListener
+    onError(android.media.MediaPlayer mp, int what, int extra)
+  interface MediaPlayer.OnInfoListener
+    onInfo(android.media.MediaPlayer mp, int what, int extra)
+  interface MediaPlayer.OnMediaTimeDiscontinuityListener
+    onMediaTimeDiscontinuity(android.media.MediaPlayer mp, android.media.MediaTimestamp mts)
+  interface MediaPlayer.OnPreparedListener
+    onPrepared(android.media.MediaPlayer mp)
+  interface MediaPlayer.OnSeekCompleteListener
+    onSeekComplete(android.media.MediaPlayer mp)
+  interface MediaPlayer.OnSubtitleDataListener
+    onSubtitleData(android.media.MediaPlayer mp, android.media.SubtitleData data)
+  interface MediaPlayer.OnTimedMetaDataAvailableListener
+    onTimedMetaDataAvailable(android.media.MediaPlayer mp, android.media.TimedMetaData data)
+  interface MediaPlayer.OnTimedTextListener
+    onTimedText(android.media.MediaPlayer mp, android.media.TimedText text)
+  interface MediaPlayer.OnVideoSizeChangedListener
+    onVideoSizeChanged(android.media.MediaPlayer mp, int width, int height)
+  class MediaPlayer.ProvisioningNetworkErrorException
+    #ctor(java.lang.String detailMessage)
+  class MediaPlayer.ProvisioningServerErrorException
+    #ctor(java.lang.String detailMessage)
+  class MediaPlayer.TrackInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaRecorder
+    addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener, android.os.Handler handler)
+    #ctor(android.content.Context context)
+    registerAudioRecordingCallback(java.util.concurrent.Executor executor, android.media.AudioManager.AudioRecordingCallback cb)
+    removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener listener)
+    setAudioChannels(int numChannels)
+    setAudioEncoder(int audio_encoder)
+    setAudioEncodingBitRate(int bitRate)
+    setAudioProfile(android.media.EncoderProfiles.AudioProfile profile)
+    setAudioSamplingRate(int samplingRate)
+    setAudioSource(int audioSource)
+    setCamera(android.hardware.Camera c)
+    setCaptureRate(double fps)
+    setInputSurface(android.view.Surface surface)
+    setLocation(float latitude, float longitude)
+    setLogSessionId(android.media.metrics.LogSessionId id)
+    setMaxDuration(int max_duration_ms)
+    setMaxFileSize(long max_filesize_bytes)
+    setNextOutputFile(java.io.File file)
+    setNextOutputFile(java.io.FileDescriptor fd)
+    setOnErrorListener(android.media.MediaRecorder.OnErrorListener l)
+    setOnInfoListener(android.media.MediaRecorder.OnInfoListener listener)
+    setOrientationHint(int degrees)
+    setOutputFile(java.io.File file)
+    setOutputFile(java.io.FileDescriptor fd)
+    setOutputFile(java.lang.String path)
+    setOutputFormat(int output_format)
+    setPreferredDevice(android.media.AudioDeviceInfo deviceInfo)
+    setPreferredMicrophoneDirection(int direction)
+    setPreferredMicrophoneFieldDimension(float zoom)
+    setPreviewDisplay(android.view.Surface sv)
+    setPrivacySensitive(boolean privacySensitive)
+    setProfile(android.media.CamcorderProfile profile)
+    setVideoEncoder(int video_encoder)
+    setVideoEncodingBitRate(int bitRate)
+    setVideoEncodingProfileLevel(int profile, int level)
+    setVideoFrameRate(int rate)
+    setVideoProfile(android.media.EncoderProfiles.VideoProfile profile)
+    setVideoSize(int width, int height)
+    setVideoSource(int video_source)
+    unregisterAudioRecordingCallback(android.media.AudioManager.AudioRecordingCallback cb)
+  interface MediaRecorder.OnErrorListener
+    onError(android.media.MediaRecorder mr, int what, int extra)
+  interface MediaRecorder.OnInfoListener
+    onInfo(android.media.MediaRecorder mr, int what, int extra)
+  class MediaRoute2Info
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaRoute2Info.Builder
+    addFeature(java.lang.String feature)
+    addFeatures(java.util.Collection<java.lang.String> features)
+    #ctor(android.media.MediaRoute2Info routeInfo)
+    #ctor(java.lang.String id, java.lang.CharSequence name)
+    setClientPackageName(java.lang.String packageName)
+    setConnectionState(int connectionState)
+    setDeduplicationIds(java.util.Set<java.lang.String> id)
+    setDescription(java.lang.CharSequence description)
+    setExtras(android.os.Bundle extras)
+    setIconUri(android.net.Uri iconUri)
+    setVisibilityRestricted(java.util.Set<java.lang.String> allowedPackages)
+    setVolume(int volume)
+    setVolumeHandling(int volumeHandling)
+    setVolumeMax(int volumeMax)
+  class MediaRoute2ProviderService
+    getSessionInfo(java.lang.String sessionId)
+    notifyRequestFailed(long requestId, int reason)
+    notifyRoutes(java.util.Collection<android.media.MediaRoute2Info> routes)
+    notifySessionCreated(long requestId, android.media.RoutingSessionInfo sessionInfo)
+    notifySessionReleased(java.lang.String sessionId)
+    notifySessionUpdated(android.media.RoutingSessionInfo sessionInfo)
+    onBind(android.content.Intent intent)
+    onCreateSession(long requestId, java.lang.String packageName, java.lang.String routeId, android.os.Bundle sessionHints)
+    onDeselectRoute(long requestId, java.lang.String sessionId, java.lang.String routeId)
+    onDiscoveryPreferenceChanged(android.media.RouteDiscoveryPreference preference)
+    onReleaseSession(long requestId, java.lang.String sessionId)
+    onSelectRoute(long requestId, java.lang.String sessionId, java.lang.String routeId)
+    onSetRouteVolume(long requestId, java.lang.String routeId, int volume)
+    onSetSessionVolume(long requestId, java.lang.String sessionId, int volume)
+    onTransferToRoute(long requestId, java.lang.String sessionId, java.lang.String routeId)
+  class MediaRouter
+    addCallback(int types, android.media.MediaRouter.Callback cb)
+    addCallback(int types, android.media.MediaRouter.Callback cb, int flags)
+    addUserRoute(android.media.MediaRouter.UserRouteInfo info)
+    createRouteCategory(int nameResId, boolean isGroupable)
+    createRouteCategory(java.lang.CharSequence name, boolean isGroupable)
+    createUserRoute(android.media.MediaRouter.RouteCategory category)
+    getCategoryAt(int index)
+    getRouteAt(int index)
+    getSelectedRoute(int type)
+    removeCallback(android.media.MediaRouter.Callback cb)
+    removeUserRoute(android.media.MediaRouter.UserRouteInfo info)
+    selectRoute(int types, android.media.MediaRouter.RouteInfo route)
+  class MediaRouter.Callback
+    onRouteAdded(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteChanged(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteGrouped(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info, android.media.MediaRouter.RouteGroup group, int index)
+    onRoutePresentationDisplayChanged(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteRemoved(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteSelected(android.media.MediaRouter router, int type, android.media.MediaRouter.RouteInfo info)
+    onRouteUngrouped(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info, android.media.MediaRouter.RouteGroup group)
+    onRouteUnselected(android.media.MediaRouter router, int type, android.media.MediaRouter.RouteInfo info)
+    onRouteVolumeChanged(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+  class MediaRouter.RouteCategory
+    getName(android.content.Context context)
+    getRoutes(java.util.List<android.media.MediaRouter.RouteInfo> out)
+  class MediaRouter.RouteGroup
+    addRoute(android.media.MediaRouter.RouteInfo route)
+    addRoute(android.media.MediaRouter.RouteInfo route, int insertAt)
+    getRouteAt(int index)
+    removeRoute(android.media.MediaRouter.RouteInfo route)
+    removeRoute(int index)
+    requestSetVolume(int volume)
+    requestUpdateVolume(int direction)
+    setIconDrawable(android.graphics.drawable.Drawable icon)
+    setIconResource(int resId)
+  class MediaRouter.RouteInfo
+    getName(android.content.Context context)
+    requestSetVolume(int volume)
+    requestUpdateVolume(int direction)
+    setTag(java.lang.Object tag)
+  class MediaRouter.SimpleCallback
+    onRouteAdded(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteChanged(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteGrouped(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info, android.media.MediaRouter.RouteGroup group, int index)
+    onRouteRemoved(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+    onRouteSelected(android.media.MediaRouter router, int type, android.media.MediaRouter.RouteInfo info)
+    onRouteUngrouped(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info, android.media.MediaRouter.RouteGroup group)
+    onRouteUnselected(android.media.MediaRouter router, int type, android.media.MediaRouter.RouteInfo info)
+    onRouteVolumeChanged(android.media.MediaRouter router, android.media.MediaRouter.RouteInfo info)
+  class MediaRouter.UserRouteInfo
+    requestSetVolume(int volume)
+    requestUpdateVolume(int direction)
+    setDescription(java.lang.CharSequence description)
+    setIconDrawable(android.graphics.drawable.Drawable icon)
+    setIconResource(int resId)
+    setName(int resId)
+    setName(java.lang.CharSequence name)
+    setPlaybackStream(int stream)
+    setPlaybackType(int type)
+    setRemoteControlClient(android.media.RemoteControlClient rcc)
+    setStatus(java.lang.CharSequence status)
+    setVolume(int volume)
+    setVolumeCallback(android.media.MediaRouter.VolumeCallback vcb)
+    setVolumeHandling(int volumeHandling)
+    setVolumeMax(int volumeMax)
+  class MediaRouter.VolumeCallback
+    onVolumeSetRequest(android.media.MediaRouter.RouteInfo info, int volume)
+    onVolumeUpdateRequest(android.media.MediaRouter.RouteInfo info, int direction)
+  class MediaRouter2
+    getController(java.lang.String id)
+    getInstance(android.content.Context context)
+    registerControllerCallback(java.util.concurrent.Executor executor, android.media.MediaRouter2.ControllerCallback callback)
+    registerRouteCallback(java.util.concurrent.Executor executor, android.media.MediaRouter2.RouteCallback routeCallback, android.media.RouteDiscoveryPreference preference)
+    registerTransferCallback(java.util.concurrent.Executor executor, android.media.MediaRouter2.TransferCallback callback)
+    setOnGetControllerHintsListener(android.media.MediaRouter2.OnGetControllerHintsListener listener)
+    setRouteListingPreference(android.media.RouteListingPreference routeListingPreference)
+    transferTo(android.media.MediaRoute2Info route)
+    unregisterControllerCallback(android.media.MediaRouter2.ControllerCallback callback)
+    unregisterRouteCallback(android.media.MediaRouter2.RouteCallback routeCallback)
+    unregisterTransferCallback(android.media.MediaRouter2.TransferCallback callback)
+  class MediaRouter2.ControllerCallback
+    onControllerUpdated(android.media.MediaRouter2.RoutingController controller)
+  interface MediaRouter2.OnGetControllerHintsListener
+    onGetControllerHints(android.media.MediaRoute2Info route)
+  class MediaRouter2.RouteCallback
+    onRoutesAdded(java.util.List<android.media.MediaRoute2Info> routes)
+    onRoutesChanged(java.util.List<android.media.MediaRoute2Info> routes)
+    onRoutesRemoved(java.util.List<android.media.MediaRoute2Info> routes)
+    onRoutesUpdated(java.util.List<android.media.MediaRoute2Info> routes)
+  class MediaRouter2.RoutingController
+    deselectRoute(android.media.MediaRoute2Info route)
+    selectRoute(android.media.MediaRoute2Info route)
+    setVolume(int volume)
+  class MediaRouter2.TransferCallback
+    onStop(android.media.MediaRouter2.RoutingController controller)
+    onTransfer(android.media.MediaRouter2.RoutingController oldController, android.media.MediaRouter2.RoutingController newController)
+    onTransferFailure(android.media.MediaRoute2Info requestedRoute)
+  class MediaScannerConnection
+    #ctor(android.content.Context context, android.media.MediaScannerConnection.MediaScannerConnectionClient client)
+    onServiceConnected(android.content.ComponentName className, android.os.IBinder service)
+    onServiceDisconnected(android.content.ComponentName className)
+    scanFile(android.content.Context context, java.lang.String[] paths, java.lang.String[] mimeTypes, android.media.MediaScannerConnection.OnScanCompletedListener callback)
+    scanFile(java.lang.String path, java.lang.String mimeType)
+  interface MediaScannerConnection.OnScanCompletedListener
+    onScanCompleted(java.lang.String path, android.net.Uri uri)
+  class MediaSession2
+    broadcastSessionCommand(android.media.Session2Command command, android.os.Bundle args)
+    cancelSessionCommand(android.media.MediaSession2.ControllerInfo controller, java.lang.Object token)
+    sendSessionCommand(android.media.MediaSession2.ControllerInfo controller, android.media.Session2Command command, android.os.Bundle args)
+    setPlaybackActive(boolean playbackActive)
+  class MediaSession2.Builder
+    #ctor(android.content.Context context)
+    setExtras(android.os.Bundle extras)
+    setId(java.lang.String id)
+    setSessionActivity(android.app.PendingIntent pi)
+    setSessionCallback(java.util.concurrent.Executor executor, android.media.MediaSession2.SessionCallback callback)
+  class MediaSession2.ControllerInfo
+    equals(java.lang.Object obj)
+  class MediaSession2.SessionCallback
+    onCommandResult(android.media.MediaSession2 session, android.media.MediaSession2.ControllerInfo controller, java.lang.Object token, android.media.Session2Command command, android.media.Session2Command.Result result)
+    onConnect(android.media.MediaSession2 session, android.media.MediaSession2.ControllerInfo controller)
+    onDisconnected(android.media.MediaSession2 session, android.media.MediaSession2.ControllerInfo controller)
+    onPostConnect(android.media.MediaSession2 session, android.media.MediaSession2.ControllerInfo controller)
+    onSessionCommand(android.media.MediaSession2 session, android.media.MediaSession2.ControllerInfo controller, android.media.Session2Command command, android.os.Bundle args)
+  class MediaSession2Service
+    addSession(android.media.MediaSession2 session)
+    onBind(android.content.Intent intent)
+    onGetSession(android.media.MediaSession2.ControllerInfo controllerInfo)
+    onUpdateNotification(android.media.MediaSession2 session)
+    removeSession(android.media.MediaSession2 session)
+  class MediaSession2Service.MediaNotification
+    #ctor(int notificationId, android.app.Notification notification)
+  class MediaSync
+    queueAudio(java.nio.ByteBuffer audioData, int bufferId, long presentationTimeUs)
+    setAudioTrack(android.media.AudioTrack audioTrack)
+    setCallback(android.media.MediaSync.Callback cb, android.os.Handler handler)
+    setOnErrorListener(android.media.MediaSync.OnErrorListener listener, android.os.Handler handler)
+    setPlaybackParams(android.media.PlaybackParams params)
+    setSurface(android.view.Surface surface)
+    setSyncParams(android.media.SyncParams params)
+  class MediaSync.Callback
+    onAudioBufferConsumed(android.media.MediaSync sync, java.nio.ByteBuffer audioBuffer, int bufferId)
+  interface MediaSync.OnErrorListener
+    onError(android.media.MediaSync sync, int what, int extra)
+  class MediaSyncEvent
+    createEvent(int eventType)
+    equals(java.lang.Object o)
+    setAudioSessionId(int audioSessionId)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaTimestamp
+    equals(java.lang.Object obj)
+    #ctor(long mediaTimeUs, long nanoTimeNs, float clockRate)
+  interface MicrophoneDirection
+    setPreferredMicrophoneDirection(int direction)
+    setPreferredMicrophoneFieldDimension(float zoom)
+  class MicrophoneInfo.Coordinate3F
+    equals(java.lang.Object obj)
+  class NotProvisionedException
+    #ctor(java.lang.String detailMessage)
+  class PlaybackParams
+    setAudioFallbackMode(int audioFallbackMode)
+    setPitch(float pitch)
+    setSpeed(float speed)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Rating
+    newHeartRating(boolean hasHeart)
+    newPercentageRating(float percent)
+    newStarRating(int starRatingStyle, float starRating)
+    newThumbRating(boolean thumbIsUp)
+    newUnratedRating(int ratingStyle)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RemoteControlClient
+    editMetadata(boolean startEmpty)
+    #ctor(android.app.PendingIntent mediaButtonIntent)
+    #ctor(android.app.PendingIntent mediaButtonIntent, android.os.Looper looper)
+    setMetadataUpdateListener(android.media.RemoteControlClient.OnMetadataUpdateListener l)
+    setOnGetPlaybackPositionListener(android.media.RemoteControlClient.OnGetPlaybackPositionListener l)
+    setPlaybackPositionUpdateListener(android.media.RemoteControlClient.OnPlaybackPositionUpdateListener l)
+    setPlaybackState(int state)
+    setPlaybackState(int state, long timeInMs, float playbackSpeed)
+    setTransportControlFlags(int transportControlFlags)
+  class RemoteControlClient.MetadataEditor
+    putBitmap(int key, android.graphics.Bitmap bitmap)
+    putLong(int key, long value)
+    putObject(int key, java.lang.Object object)
+    putString(int key, java.lang.String value)
+  interface RemoteControlClient.OnMetadataUpdateListener
+    onMetadataUpdate(int key, java.lang.Object newValue)
+  interface RemoteControlClient.OnPlaybackPositionUpdateListener
+    onPlaybackPositionUpdate(long newPositionMs)
+  class RemoteController
+    #ctor(android.content.Context context, android.media.RemoteController.OnClientUpdateListener updateListener)
+    #ctor(android.content.Context context, android.media.RemoteController.OnClientUpdateListener updateListener, android.os.Looper looper)
+    seekTo(long timeMs)
+    sendMediaKeyEvent(android.view.KeyEvent keyEvent)
+    setArtworkConfiguration(int width, int height)
+    setSynchronizationMode(int sync)
+  interface RemoteController.OnClientUpdateListener
+    onClientChange(boolean clearing)
+    onClientMetadataUpdate(android.media.RemoteController.MetadataEditor metadataEditor)
+    onClientPlaybackStateUpdate(int state)
+    onClientPlaybackStateUpdate(int state, long stateChangeTimeMs, long currentPosMs, float speed)
+    onClientTransportControlUpdate(int transportControlFlags)
+  class ResourceBusyException
+    #ctor(java.lang.String detailMessage)
+  class Ringtone
+    getTitle(android.content.Context context)
+    setAudioAttributes(android.media.AudioAttributes attributes)
+    setHapticGeneratorEnabled(boolean enabled)
+    setLooping(boolean looping)
+    setStreamType(int streamType)
+    setVolume(float volume)
+  class RingtoneManager
+    getActualDefaultRingtoneUri(android.content.Context context, int type)
+    getDefaultType(android.net.Uri defaultRingtoneUri)
+    getDefaultUri(int type)
+    getRingtone(android.content.Context context, android.net.Uri ringtoneUri)
+    getRingtone(int position)
+    getRingtonePosition(android.net.Uri ringtoneUri)
+    getRingtoneUri(int position)
+    getValidRingtoneUri(android.content.Context context)
+    hasHapticChannels(android.content.Context context, android.net.Uri ringtoneUri)
+    hasHapticChannels(android.net.Uri ringtoneUri)
+    hasHapticChannels(int position)
+    isDefault(android.net.Uri ringtoneUri)
+    openDefaultRingtoneUri(android.content.Context context, android.net.Uri uri)
+    #ctor(android.app.Activity activity)
+    #ctor(android.content.Context context)
+    setActualDefaultRingtoneUri(android.content.Context context, int type, android.net.Uri ringtoneUri)
+    setIncludeDrm(boolean includeDrm)
+    setStopPreviousRingtone(boolean stopPreviousRingtone)
+    setType(int type)
+  class RouteDiscoveryPreference
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RouteDiscoveryPreference.Builder
+    #ctor(android.media.RouteDiscoveryPreference preference)
+    #ctor(java.util.List<java.lang.String> preferredFeatures, boolean activeScan)
+    setPreferredFeatures(java.util.List<java.lang.String> preferredFeatures)
+    setShouldPerformActiveScan(boolean activeScan)
+  class RouteListingPreference
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RouteListingPreference.Builder
+    setInAppOnlyItemRoutingReceiver(android.content.ComponentName inAppOnlyItemRoutingReceiver)
+    setItems(java.util.List<android.media.RouteListingPreference.Item> items)
+    setUseSystemOrdering(boolean useSystemOrdering)
+  class RouteListingPreference.Item
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RouteListingPreference.Item.Builder
+    #ctor(java.lang.String routeId)
+    setDisableReason(int disableReason)
+    setFlags(int flags)
+    setSessionParticipantCount(int sessionParticipantCount)
+  class RoutingSessionInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RoutingSessionInfo.Builder
+    addDeselectableRoute(java.lang.String routeId)
+    addSelectableRoute(java.lang.String routeId)
+    addSelectedRoute(java.lang.String routeId)
+    addTransferableRoute(java.lang.String routeId)
+    removeDeselectableRoute(java.lang.String routeId)
+    removeSelectableRoute(java.lang.String routeId)
+    removeSelectedRoute(java.lang.String routeId)
+    removeTransferableRoute(java.lang.String routeId)
+    #ctor(android.media.RoutingSessionInfo sessionInfo)
+    #ctor(java.lang.String id, java.lang.String clientPackageName)
+    setControlHints(android.os.Bundle controlHints)
+    setName(java.lang.CharSequence name)
+    setVolume(int volume)
+    setVolumeHandling(int volumeHandling)
+    setVolumeMax(int volumeMax)
+  class Session2Command
+    equals(java.lang.Object obj)
+    #ctor(int commandCode)
+    #ctor(java.lang.String action, android.os.Bundle extras)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Session2Command.Result
+    #ctor(int resultCode, android.os.Bundle resultData)
+  class Session2CommandGroup
+    hasCommand(android.media.Session2Command command)
+    hasCommand(int commandCode)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Session2CommandGroup.Builder
+    addCommand(android.media.Session2Command command)
+    removeCommand(android.media.Session2Command command)
+    #ctor(android.media.Session2CommandGroup commandGroup)
+  class Session2Token
+    equals(java.lang.Object obj)
+    #ctor(android.content.Context context, android.content.ComponentName serviceComponent)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SoundPool
+    load(android.content.Context context, int resId, int priority)
+    load(android.content.res.AssetFileDescriptor afd, int priority)
+    load(java.io.FileDescriptor fd, long offset, long length, int priority)
+    load(java.lang.String path, int priority)
+    pause(int streamID)
+    play(int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate)
+    resume(int streamID)
+    setLoop(int streamID, int loop)
+    setOnLoadCompleteListener(android.media.SoundPool.OnLoadCompleteListener listener)
+    setPriority(int streamID, int priority)
+    setRate(int streamID, float rate)
+    setVolume(int streamID, float leftVolume, float rightVolume)
+    #ctor(int maxStreams, int streamType, int srcQuality)
+    stop(int streamID)
+    unload(int soundID)
+  class SoundPool.Builder
+    setAudioAttributes(android.media.AudioAttributes attributes)
+    setAudioSessionId(int sessionId)
+    setContext(android.content.Context context)
+    setMaxStreams(int maxStreams)
+  interface SoundPool.OnLoadCompleteListener
+    onLoadComplete(android.media.SoundPool soundPool, int sampleId, int status)
+  class Spatializer
+    addOnHeadTrackerAvailableListener(java.util.concurrent.Executor executor, android.media.Spatializer.OnHeadTrackerAvailableListener listener)
+    addOnSpatializerStateChangedListener(java.util.concurrent.Executor executor, android.media.Spatializer.OnSpatializerStateChangedListener listener)
+    canBeSpatialized(android.media.AudioAttributes attributes, android.media.AudioFormat format)
+    removeOnHeadTrackerAvailableListener(android.media.Spatializer.OnHeadTrackerAvailableListener listener)
+    removeOnSpatializerStateChangedListener(android.media.Spatializer.OnSpatializerStateChangedListener listener)
+  interface Spatializer.OnHeadTrackerAvailableListener
+    onHeadTrackerAvailableChanged(android.media.Spatializer spatializer, boolean available)
+  interface Spatializer.OnSpatializerStateChangedListener
+    onSpatializerAvailableChanged(android.media.Spatializer spat, boolean available)
+    onSpatializerEnabledChanged(android.media.Spatializer spat, boolean enabled)
+  class SubtitleData
+    #ctor(int trackIndex, long startTimeUs, long durationUs, byte[] data)
+  class SyncParams
+    setAudioAdjustMode(int audioAdjustMode)
+    setFrameRate(float frameRate)
+    setSyncSource(int syncSource)
+    setTolerance(float tolerance)
+  class ThumbnailUtils
+    createAudioThumbnail(java.io.File file, android.util.Size size, android.os.CancellationSignal signal)
+    createAudioThumbnail(java.lang.String filePath, int kind)
+    createImageThumbnail(java.io.File file, android.util.Size size, android.os.CancellationSignal signal)
+    createImageThumbnail(java.lang.String filePath, int kind)
+    createVideoThumbnail(java.io.File file, android.util.Size size, android.os.CancellationSignal signal)
+    createVideoThumbnail(java.lang.String filePath, int kind)
+    extractThumbnail(android.graphics.Bitmap source, int width, int height)
+    extractThumbnail(android.graphics.Bitmap source, int width, int height, int options)
+  class TimedMetaData
+    #ctor(long timestampUs, byte[] metaData)
+  class ToneGenerator
+    startTone(int toneType)
+    startTone(int toneType, int durationMs)
+    #ctor(int streamType, int volume)
+  class UnsupportedSchemeException
+    #ctor(java.lang.String detailMessage)
+  interface VolumeAutomation
+    createVolumeShaper(android.media.VolumeShaper.Configuration configuration)
+  class VolumeProvider
+    onAdjustVolume(int direction)
+    onSetVolumeTo(int volume)
+    setCurrentVolume(int currentVolume)
+    #ctor(int volumeControl, int maxVolume, int currentVolume)
+    #ctor(int volumeControl, int maxVolume, int currentVolume, java.lang.String volumeControlId)
+  class VolumeShaper
+    apply(android.media.VolumeShaper.Operation operation)
+    replace(android.media.VolumeShaper.Configuration configuration, android.media.VolumeShaper.Operation operation, boolean join)
+  class VolumeShaper.Configuration
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VolumeShaper.Configuration.Builder
+    scaleToEndVolume(float volume)
+    scaleToStartVolume(float volume)
+    setCurve(float[] times, float[] volumes)
+    setDuration(long durationMillis)
+    setInterpolatorType(int interpolatorType)
+    #ctor(android.media.VolumeShaper.Configuration configuration)
+  class VolumeShaper.Operation
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.media.audiofx
+;---------------------------------------
+  class AcousticEchoCanceler
+    create(int audioSession)
+  class AudioEffect
+    setControlStatusListener(android.media.audiofx.AudioEffect.OnControlStatusChangeListener listener)
+    setEnabled(boolean enabled)
+    setEnableStatusListener(android.media.audiofx.AudioEffect.OnEnableStatusChangeListener listener)
+  class AudioEffect.Descriptor
+    #ctor(java.lang.String type, java.lang.String uuid, java.lang.String connectMode, java.lang.String name, java.lang.String implementor)
+    equals(java.lang.Object o)
+  interface AudioEffect.OnControlStatusChangeListener
+    onControlStatusChange(android.media.audiofx.AudioEffect effect, boolean controlGranted)
+  interface AudioEffect.OnEnableStatusChangeListener
+    onEnableStatusChange(android.media.audiofx.AudioEffect effect, boolean enabled)
+  class AutomaticGainControl
+    create(int audioSession)
+  class BassBoost
+    #ctor(int priority, int audioSession)
+    setParameterListener(android.media.audiofx.BassBoost.OnParameterChangeListener listener)
+    setProperties(android.media.audiofx.BassBoost.Settings settings)
+    setStrength(short strength)
+  interface BassBoost.OnParameterChangeListener
+    onParameterChange(android.media.audiofx.BassBoost effect, int status, int param, short value)
+  class BassBoost.Settings
+    #ctor(java.lang.String settings)
+  class DynamicsProcessing
+    #ctor(int audioSession)
+    #ctor(int priority, int audioSession, android.media.audiofx.DynamicsProcessing.Config cfg)
+    getChannelByChannelIndex(int channelIndex)
+    getInputGainByChannelIndex(int channelIndex)
+    getLimiterByChannelIndex(int channelIndex)
+    getMbcBandByChannelIndex(int channelIndex, int band)
+    getMbcByChannelIndex(int channelIndex)
+    getPostEqBandByChannelIndex(int channelIndex, int band)
+    getPostEqByChannelIndex(int channelIndex)
+    getPreEqBandByChannelIndex(int channelIndex, int band)
+    getPreEqByChannelIndex(int channelIndex)
+    setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel channel)
+    setChannelTo(int channelIndex, android.media.audiofx.DynamicsProcessing.Channel channel)
+    setInputGainAllChannelsTo(float inputGain)
+    setInputGainbyChannel(int channelIndex, float inputGain)
+    setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setLimiterByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setMbcBandAllChannelsTo(int band, android.media.audiofx.DynamicsProcessing.MbcBand mbcBand)
+    setMbcBandByChannelIndex(int channelIndex, int band, android.media.audiofx.DynamicsProcessing.MbcBand mbcBand)
+    setMbcByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPostEqBandAllChannelsTo(int band, android.media.audiofx.DynamicsProcessing.EqBand postEqBand)
+    setPostEqBandByChannelIndex(int channelIndex, int band, android.media.audiofx.DynamicsProcessing.EqBand postEqBand)
+    setPostEqByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq preEq)
+    setPreEqBandAllChannelsTo(int band, android.media.audiofx.DynamicsProcessing.EqBand preEqBand)
+    setPreEqBandByChannelIndex(int channelIndex, int band, android.media.audiofx.DynamicsProcessing.EqBand preEqBand)
+    setPreEqByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Eq preEq)
+  class DynamicsProcessing.BandBase
+    #ctor(boolean enabled, float cutoffFrequency)
+    setCutoffFrequency(float frequency)
+    setEnabled(boolean enabled)
+  class DynamicsProcessing.BandStage
+    #ctor(boolean inUse, boolean enabled, int bandCount)
+  class DynamicsProcessing.Channel
+    #ctor(android.media.audiofx.DynamicsProcessing.Channel cfg)
+    #ctor(float inputGain, boolean preEqInUse, int preEqBandCount, boolean mbcInUse, int mbcBandCount, boolean postEqInUse, int postEqBandCount, boolean limiterInUse)
+    getMbcBand(int band)
+    getPostEqBand(int band)
+    getPreEqBand(int band)
+    setInputGain(float inputGain)
+    setLimiter(android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setMbc(android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setMbcBand(int band, android.media.audiofx.DynamicsProcessing.MbcBand mbcBand)
+    setPostEq(android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPostEqBand(int band, android.media.audiofx.DynamicsProcessing.EqBand postEqBand)
+    setPreEq(android.media.audiofx.DynamicsProcessing.Eq preEq)
+    setPreEqBand(int band, android.media.audiofx.DynamicsProcessing.EqBand preEqBand)
+  class DynamicsProcessing.Config
+    getChannelByChannelIndex(int channelIndex)
+    getInputGainByChannelIndex(int channelIndex)
+    getLimiterByChannelIndex(int channelIndex)
+    getMbcBandByChannelIndex(int channelIndex, int band)
+    getMbcByChannelIndex(int channelIndex)
+    getPostEqBandByChannelIndex(int channelIndex, int band)
+    getPostEqByChannelIndex(int channelIndex)
+    getPreEqBandByChannelIndex(int channelIndex, int band)
+    getPreEqByChannelIndex(int channelIndex)
+    setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel channel)
+    setChannelTo(int channelIndex, android.media.audiofx.DynamicsProcessing.Channel channel)
+    setInputGainAllChannelsTo(float inputGain)
+    setInputGainByChannelIndex(int channelIndex, float inputGain)
+    setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setLimiterByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setMbcBandAllChannelsTo(int band, android.media.audiofx.DynamicsProcessing.MbcBand mbcBand)
+    setMbcBandByChannelIndex(int channelIndex, int band, android.media.audiofx.DynamicsProcessing.MbcBand mbcBand)
+    setMbcByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPostEqBandAllChannelsTo(int band, android.media.audiofx.DynamicsProcessing.EqBand postEqBand)
+    setPostEqBandByChannelIndex(int channelIndex, int band, android.media.audiofx.DynamicsProcessing.EqBand postEqBand)
+    setPostEqByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq preEq)
+    setPreEqBandAllChannelsTo(int band, android.media.audiofx.DynamicsProcessing.EqBand preEqBand)
+    setPreEqBandByChannelIndex(int channelIndex, int band, android.media.audiofx.DynamicsProcessing.EqBand preEqBand)
+    setPreEqByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Eq preEq)
+  class DynamicsProcessing.Config.Builder
+    #ctor(int variant, int channelCount, boolean preEqInUse, int preEqBandCount, boolean mbcInUse, int mbcBandCount, boolean postEqInUse, int postEqBandCount, boolean limiterInUse)
+    setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel channel)
+    setChannelTo(int channelIndex, android.media.audiofx.DynamicsProcessing.Channel channel)
+    setInputGainAllChannelsTo(float inputGain)
+    setInputGainByChannelIndex(int channelIndex, float inputGain)
+    setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setLimiterByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Limiter limiter)
+    setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setMbcByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Mbc mbc)
+    setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPostEqByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Eq postEq)
+    setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq preEq)
+    setPreEqByChannelIndex(int channelIndex, android.media.audiofx.DynamicsProcessing.Eq preEq)
+    setPreferredFrameDuration(float frameDuration)
+  class DynamicsProcessing.Eq
+    #ctor(android.media.audiofx.DynamicsProcessing.Eq cfg)
+    #ctor(boolean inUse, boolean enabled, int bandCount)
+    getBand(int band)
+    setBand(int band, android.media.audiofx.DynamicsProcessing.EqBand bandCfg)
+  class DynamicsProcessing.EqBand
+    #ctor(android.media.audiofx.DynamicsProcessing.EqBand cfg)
+    #ctor(boolean enabled, float cutoffFrequency, float gain)
+    setGain(float gain)
+  class DynamicsProcessing.Limiter
+    #ctor(android.media.audiofx.DynamicsProcessing.Limiter cfg)
+    #ctor(boolean inUse, boolean enabled, int linkGroup, float attackTime, float releaseTime, float ratio, float threshold, float postGain)
+    setAttackTime(float attackTime)
+    setLinkGroup(int linkGroup)
+    setPostGain(float postGain)
+    setRatio(float ratio)
+    setReleaseTime(float releaseTime)
+    setThreshold(float threshold)
+  class DynamicsProcessing.Mbc
+    #ctor(android.media.audiofx.DynamicsProcessing.Mbc cfg)
+    #ctor(boolean inUse, boolean enabled, int bandCount)
+    getBand(int band)
+    setBand(int band, android.media.audiofx.DynamicsProcessing.MbcBand bandCfg)
+  class DynamicsProcessing.MbcBand
+    #ctor(android.media.audiofx.DynamicsProcessing.MbcBand cfg)
+    #ctor(boolean enabled, float cutoffFrequency, float attackTime, float releaseTime, float ratio, float threshold, float kneeWidth, float noiseGateThreshold, float expanderRatio, float preGain, float postGain)
+    setAttackTime(float attackTime)
+    setExpanderRatio(float expanderRatio)
+    setKneeWidth(float kneeWidth)
+    setNoiseGateThreshold(float noiseGateThreshold)
+    setPostGain(float postGain)
+    setPreGain(float preGain)
+    setRatio(float ratio)
+    setReleaseTime(float releaseTime)
+    setThreshold(float threshold)
+  class DynamicsProcessing.Stage
+    #ctor(boolean inUse, boolean enabled)
+    setEnabled(boolean enabled)
+  class EnvironmentalReverb
+    #ctor(int priority, int audioSession)
+    setDecayHFRatio(short decayHFRatio)
+    setDecayTime(int decayTime)
+    setDensity(short density)
+    setDiffusion(short diffusion)
+    setParameterListener(android.media.audiofx.EnvironmentalReverb.OnParameterChangeListener listener)
+    setProperties(android.media.audiofx.EnvironmentalReverb.Settings settings)
+    setReflectionsDelay(int reflectionsDelay)
+    setReflectionsLevel(short reflectionsLevel)
+    setReverbDelay(int reverbDelay)
+    setReverbLevel(short reverbLevel)
+    setRoomHFLevel(short roomHF)
+    setRoomLevel(short room)
+  interface EnvironmentalReverb.OnParameterChangeListener
+    onParameterChange(android.media.audiofx.EnvironmentalReverb effect, int status, int param, int value)
+  class EnvironmentalReverb.Settings
+    #ctor(java.lang.String settings)
+  class Equalizer
+    #ctor(int priority, int audioSession)
+    getBand(int frequency)
+    getBandFreqRange(short band)
+    getBandLevel(short band)
+    getCenterFreq(short band)
+    getPresetName(short preset)
+    setBandLevel(short band, short level)
+    setParameterListener(android.media.audiofx.Equalizer.OnParameterChangeListener listener)
+    setProperties(android.media.audiofx.Equalizer.Settings settings)
+    usePreset(short preset)
+  interface Equalizer.OnParameterChangeListener
+    onParameterChange(android.media.audiofx.Equalizer effect, int status, int param1, int param2, int value)
+  class Equalizer.Settings
+    #ctor(java.lang.String settings)
+  class HapticGenerator
+    create(int audioSession)
+    setEnabled(boolean enabled)
+  class LoudnessEnhancer
+    #ctor(int audioSession)
+    setTargetGain(int gainmB)
+  class NoiseSuppressor
+    create(int audioSession)
+  class PresetReverb
+    #ctor(int priority, int audioSession)
+    setParameterListener(android.media.audiofx.PresetReverb.OnParameterChangeListener listener)
+    setPreset(short preset)
+    setProperties(android.media.audiofx.PresetReverb.Settings settings)
+  interface PresetReverb.OnParameterChangeListener
+    onParameterChange(android.media.audiofx.PresetReverb effect, int status, int param, short value)
+  class PresetReverb.Settings
+    #ctor(java.lang.String settings)
+  class Virtualizer
+    canVirtualize(int inputChannelMask, int virtualizationMode)
+    forceVirtualizationMode(int virtualizationMode)
+    getSpeakerAngles(int inputChannelMask, int virtualizationMode, int[] angles)
+    setParameterListener(android.media.audiofx.Virtualizer.OnParameterChangeListener listener)
+    setProperties(android.media.audiofx.Virtualizer.Settings settings)
+    setStrength(short strength)
+    #ctor(int priority, int audioSession)
+  interface Virtualizer.OnParameterChangeListener
+    onParameterChange(android.media.audiofx.Virtualizer effect, int status, int param, short value)
+  class Virtualizer.Settings
+    #ctor(java.lang.String settings)
+  class Visualizer
+    getFft(byte[] fft)
+    getMeasurementPeakRms(android.media.audiofx.Visualizer.MeasurementPeakRms measurement)
+    getWaveForm(byte[] waveform)
+    setCaptureSize(int size)
+    setDataCaptureListener(android.media.audiofx.Visualizer.OnDataCaptureListener listener, int rate, boolean waveform, boolean fft)
+    setEnabled(boolean enabled)
+    setMeasurementMode(int mode)
+    setScalingMode(int mode)
+    #ctor(int audioSession)
+  interface Visualizer.OnDataCaptureListener
+    onFftDataCapture(android.media.audiofx.Visualizer visualizer, byte[] fft, int samplingRate)
+    onWaveFormDataCapture(android.media.audiofx.Visualizer visualizer, byte[] waveform, int samplingRate)
+
+package android.media.browse
+;---------------------------------------
+  class MediaBrowser
+    getItem(java.lang.String mediaId, android.media.browse.MediaBrowser.ItemCallback cb)
+    #ctor(android.content.Context context, android.content.ComponentName serviceComponent, android.media.browse.MediaBrowser.ConnectionCallback callback, android.os.Bundle rootHints)
+    subscribe(java.lang.String parentId, android.media.browse.MediaBrowser.SubscriptionCallback callback)
+    subscribe(java.lang.String parentId, android.os.Bundle options, android.media.browse.MediaBrowser.SubscriptionCallback callback)
+    unsubscribe(java.lang.String parentId)
+    unsubscribe(java.lang.String parentId, android.media.browse.MediaBrowser.SubscriptionCallback callback)
+  class MediaBrowser.ItemCallback
+    onError(java.lang.String mediaId)
+    onItemLoaded(android.media.browse.MediaBrowser.MediaItem item)
+  class MediaBrowser.MediaItem
+    #ctor(android.media.MediaDescription description, int flags)
+    writeToParcel(android.os.Parcel out, int flags)
+  class MediaBrowser.SubscriptionCallback
+    onChildrenLoaded(java.lang.String parentId, java.util.List<android.media.browse.MediaBrowser.MediaItem> children)
+    onChildrenLoaded(java.lang.String parentId, java.util.List<android.media.browse.MediaBrowser.MediaItem> children, android.os.Bundle options)
+    onError(java.lang.String parentId)
+    onError(java.lang.String parentId, android.os.Bundle options)
+
+package android.media.effect
+;---------------------------------------
+  class Effect
+    apply(int inputTexId, int width, int height, int outputTexId)
+    setParameter(java.lang.String parameterKey, java.lang.Object value)
+    setUpdateListener(android.media.effect.EffectUpdateListener listener)
+  class EffectFactory
+    createEffect(java.lang.String effectName)
+    isEffectSupported(java.lang.String effectName)
+  interface EffectUpdateListener
+    onEffectUpdated(android.media.effect.Effect effect, java.lang.Object info)
+
+package android.media.metrics
+;---------------------------------------
+  class BundleSession
+    equals(java.lang.Object o)
+    reportBundleMetrics(android.os.PersistableBundle metrics)
+  class EditingSession
+    equals(java.lang.Object o)
+  class LogSessionId
+    equals(java.lang.Object o)
+  class MediaMetricsManager
+    releaseSessionId(java.lang.String sessionId)
+  class NetworkEvent
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkEvent.Builder
+    setMetricsBundle(android.os.Bundle metricsBundle)
+    setNetworkType(int value)
+    setTimeSinceCreatedMillis(long value)
+  class PlaybackErrorEvent
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PlaybackErrorEvent.Builder
+    setErrorCode(int value)
+    setException(java.lang.Exception value)
+    setMetricsBundle(android.os.Bundle metricsBundle)
+    setSubErrorCode(int value)
+    setTimeSinceCreatedMillis(long value)
+  class PlaybackMetrics
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PlaybackMetrics.Builder
+    addExperimentId(long value)
+    setAudioUnderrunCount(int value)
+    setContentType(int value)
+    setDrmSessionId(byte[] drmSessionId)
+    setDrmType(int value)
+    setLocalBytesRead(long value)
+    setMediaDurationMillis(long value)
+    setMetricsBundle(android.os.Bundle metricsBundle)
+    setNetworkBytesRead(long value)
+    setNetworkTransferDurationMillis(long value)
+    setPlaybackType(int value)
+    setPlayerName(java.lang.String value)
+    setPlayerVersion(java.lang.String value)
+    setStreamSource(int value)
+    setStreamType(int value)
+    setVideoFramesDropped(int value)
+    setVideoFramesPlayed(int value)
+  class PlaybackSession
+    equals(java.lang.Object o)
+    reportNetworkEvent(android.media.metrics.NetworkEvent event)
+    reportPlaybackErrorEvent(android.media.metrics.PlaybackErrorEvent event)
+    reportPlaybackMetrics(android.media.metrics.PlaybackMetrics metrics)
+    reportPlaybackStateEvent(android.media.metrics.PlaybackStateEvent event)
+    reportTrackChangeEvent(android.media.metrics.TrackChangeEvent event)
+  class PlaybackStateEvent
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PlaybackStateEvent.Builder
+    setMetricsBundle(android.os.Bundle metricsBundle)
+    setState(int value)
+    setTimeSinceCreatedMillis(long value)
+  class RecordingSession
+    equals(java.lang.Object o)
+  class TrackChangeEvent
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TrackChangeEvent.Builder
+    setAudioSampleRate(int value)
+    setBitrate(int value)
+    setChannelCount(int value)
+    setCodecName(java.lang.String value)
+    setContainerMimeType(java.lang.String value)
+    setHeight(int value)
+    setLanguage(java.lang.String value)
+    setLanguageRegion(java.lang.String value)
+    setMetricsBundle(android.os.Bundle metricsBundle)
+    setSampleMimeType(java.lang.String value)
+    setTimeSinceCreatedMillis(long value)
+    setTrackChangeReason(int value)
+    setTrackState(int value)
+    setVideoFrameRate(float value)
+    setWidth(int value)
+    #ctor(int type)
+  class TranscodingSession
+    equals(java.lang.Object o)
+
+package android.media.midi
+;---------------------------------------
+  class MidiDevice
+    connectPorts(android.media.midi.MidiInputPort inputPort, int outputPortNumber)
+    openInputPort(int portNumber)
+    openOutputPort(int portNumber)
+  class MidiDeviceInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class MidiDeviceService
+    onBind(android.content.Intent intent)
+    onDeviceStatusChanged(android.media.midi.MidiDeviceStatus status)
+  class MidiDeviceStatus
+    getOutputPortOpenCount(int portNumber)
+    isInputPortOpen(int portNumber)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class MidiInputPort
+    onSend(byte[] msg, int offset, int count, long timestamp)
+  class MidiManager
+    getDevicesForTransport(int transport)
+    openBluetoothDevice(android.bluetooth.BluetoothDevice bluetoothDevice, android.media.midi.MidiManager.OnDeviceOpenedListener listener, android.os.Handler handler)
+    openDevice(android.media.midi.MidiDeviceInfo deviceInfo, android.media.midi.MidiManager.OnDeviceOpenedListener listener, android.os.Handler handler)
+    registerDeviceCallback(android.media.midi.MidiManager.DeviceCallback callback, android.os.Handler handler)
+    registerDeviceCallback(int transport, java.util.concurrent.Executor executor, android.media.midi.MidiManager.DeviceCallback callback)
+    unregisterDeviceCallback(android.media.midi.MidiManager.DeviceCallback callback)
+  class MidiManager.DeviceCallback
+    onDeviceAdded(android.media.midi.MidiDeviceInfo device)
+    onDeviceRemoved(android.media.midi.MidiDeviceInfo device)
+    onDeviceStatusChanged(android.media.midi.MidiDeviceStatus status)
+  interface MidiManager.OnDeviceOpenedListener
+    onDeviceOpened(android.media.midi.MidiDevice device)
+  class MidiOutputPort
+    onConnect(android.media.midi.MidiReceiver receiver)
+    onDisconnect(android.media.midi.MidiReceiver receiver)
+  class MidiReceiver
+    #ctor(int maxMessageSize)
+    onSend(byte[] msg, int offset, int count, long timestamp)
+    send(byte[] msg, int offset, int count)
+    send(byte[] msg, int offset, int count, long timestamp)
+  class MidiSender
+    connect(android.media.midi.MidiReceiver receiver)
+    disconnect(android.media.midi.MidiReceiver receiver)
+    onConnect(android.media.midi.MidiReceiver receiver)
+    onDisconnect(android.media.midi.MidiReceiver receiver)
+
+package android.media.projection
+;---------------------------------------
+  class MediaProjection
+    createVirtualDisplay(java.lang.String name, int width, int height, int dpi, int flags, android.view.Surface surface, android.hardware.display.VirtualDisplay.Callback callback, android.os.Handler handler)
+    registerCallback(android.media.projection.MediaProjection.Callback callback, android.os.Handler handler)
+    unregisterCallback(android.media.projection.MediaProjection.Callback callback)
+  class MediaProjection.Callback
+    onCapturedContentResize(int width, int height)
+    onCapturedContentVisibilityChanged(boolean isVisible)
+  class MediaProjectionConfig
+    createConfigForDisplay(int displayId)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaProjectionManager
+    createScreenCaptureIntent(android.media.projection.MediaProjectionConfig config)
+    getMediaProjection(int resultCode, android.content.Intent resultData)
+
+package android.media.session
+;---------------------------------------
+  class MediaController
+    adjustVolume(int direction, int flags)
+    dispatchMediaButtonEvent(android.view.KeyEvent keyEvent)
+    #ctor(android.content.Context context, android.media.session.MediaSession.Token token)
+    registerCallback(android.media.session.MediaController.Callback callback)
+    registerCallback(android.media.session.MediaController.Callback callback, android.os.Handler handler)
+    sendCommand(java.lang.String command, android.os.Bundle args, android.os.ResultReceiver cb)
+    setVolumeTo(int value, int flags)
+    unregisterCallback(android.media.session.MediaController.Callback callback)
+  class MediaController.Callback
+    onAudioInfoChanged(android.media.session.MediaController.PlaybackInfo info)
+    onExtrasChanged(android.os.Bundle extras)
+    onMetadataChanged(android.media.MediaMetadata metadata)
+    onPlaybackStateChanged(android.media.session.PlaybackState state)
+    onQueueChanged(java.util.List<android.media.session.MediaSession.QueueItem> queue)
+    onQueueTitleChanged(java.lang.CharSequence title)
+    onSessionEvent(java.lang.String event, android.os.Bundle extras)
+  class MediaController.PlaybackInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaController.TransportControls
+    playFromMediaId(java.lang.String mediaId, android.os.Bundle extras)
+    playFromSearch(java.lang.String query, android.os.Bundle extras)
+    playFromUri(android.net.Uri uri, android.os.Bundle extras)
+    prepareFromMediaId(java.lang.String mediaId, android.os.Bundle extras)
+    prepareFromSearch(java.lang.String query, android.os.Bundle extras)
+    prepareFromUri(android.net.Uri uri, android.os.Bundle extras)
+    seekTo(long pos)
+    sendCustomAction(android.media.session.PlaybackState.CustomAction customAction, android.os.Bundle args)
+    sendCustomAction(java.lang.String action, android.os.Bundle args)
+    setPlaybackSpeed(float speed)
+    setRating(android.media.Rating rating)
+    skipToQueueItem(long id)
+  class MediaSession
+    #ctor(android.content.Context context, java.lang.String tag)
+    #ctor(android.content.Context context, java.lang.String tag, android.os.Bundle sessionInfo)
+    sendSessionEvent(java.lang.String event, android.os.Bundle extras)
+    setActive(boolean active)
+    setCallback(android.media.session.MediaSession.Callback callback)
+    setCallback(android.media.session.MediaSession.Callback callback, android.os.Handler handler)
+    setExtras(android.os.Bundle extras)
+    setFlags(int flags)
+    setMediaButtonBroadcastReceiver(android.content.ComponentName broadcastReceiver)
+    setMediaButtonReceiver(android.app.PendingIntent mbr)
+    setMetadata(android.media.MediaMetadata metadata)
+    setPlaybackState(android.media.session.PlaybackState state)
+    setPlaybackToLocal(android.media.AudioAttributes attributes)
+    setPlaybackToRemote(android.media.VolumeProvider volumeProvider)
+    setQueue(java.util.List<android.media.session.MediaSession.QueueItem> queue)
+    setQueueTitle(java.lang.CharSequence title)
+    setRatingType(int type)
+    setSessionActivity(android.app.PendingIntent pi)
+  class MediaSession.Callback
+    onCommand(java.lang.String command, android.os.Bundle args, android.os.ResultReceiver cb)
+    onCustomAction(java.lang.String action, android.os.Bundle extras)
+    onMediaButtonEvent(android.content.Intent mediaButtonIntent)
+    onPlayFromMediaId(java.lang.String mediaId, android.os.Bundle extras)
+    onPlayFromSearch(java.lang.String query, android.os.Bundle extras)
+    onPlayFromUri(android.net.Uri uri, android.os.Bundle extras)
+    onPrepareFromMediaId(java.lang.String mediaId, android.os.Bundle extras)
+    onPrepareFromSearch(java.lang.String query, android.os.Bundle extras)
+    onPrepareFromUri(android.net.Uri uri, android.os.Bundle extras)
+    onSeekTo(long pos)
+    onSetPlaybackSpeed(float speed)
+    onSetRating(android.media.Rating rating)
+    onSkipToQueueItem(long id)
+  class MediaSession.QueueItem
+    equals(java.lang.Object o)
+    #ctor(android.media.MediaDescription description, long id)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaSession.Token
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MediaSessionManager
+    addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener sessionListener, android.content.ComponentName notificationListener)
+    addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener sessionListener, android.content.ComponentName notificationListener, android.os.Handler handler)
+    addOnMediaKeyEventSessionChangedListener(java.util.concurrent.Executor executor, android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener listener)
+    addOnSession2TokensChangedListener(android.media.session.MediaSessionManager.OnSession2TokensChangedListener listener)
+    addOnSession2TokensChangedListener(android.media.session.MediaSessionManager.OnSession2TokensChangedListener listener, android.os.Handler handler)
+    getActiveSessions(android.content.ComponentName notificationListener)
+    isTrustedForMediaControl(android.media.session.MediaSessionManager.RemoteUserInfo userInfo)
+    notifySession2Created(android.media.Session2Token token)
+    removeOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener sessionListener)
+    removeOnMediaKeyEventSessionChangedListener(android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener listener)
+    removeOnSession2TokensChangedListener(android.media.session.MediaSessionManager.OnSession2TokensChangedListener listener)
+  interface MediaSessionManager.OnActiveSessionsChangedListener
+    onActiveSessionsChanged(java.util.List<android.media.session.MediaController> controllers)
+  interface MediaSessionManager.OnMediaKeyEventSessionChangedListener
+    onMediaKeyEventSessionChanged(java.lang.String packageName, android.media.session.MediaSession.Token sessionToken)
+  interface MediaSessionManager.OnSession2TokensChangedListener
+    onSession2TokensChanged(java.util.List<android.media.Session2Token> tokens)
+  class MediaSessionManager.RemoteUserInfo
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String packageName, int pid, int uid)
+  class PlaybackState
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PlaybackState.Builder
+    addCustomAction(android.media.session.PlaybackState.CustomAction customAction)
+    addCustomAction(java.lang.String action, java.lang.String name, int icon)
+    #ctor(android.media.session.PlaybackState from)
+    setActions(long actions)
+    setActiveQueueItemId(long id)
+    setBufferedPosition(long bufferedPosition)
+    setErrorMessage(java.lang.CharSequence error)
+    setExtras(android.os.Bundle extras)
+    setState(int state, long position, float playbackSpeed)
+    setState(int state, long position, float playbackSpeed, long updateTime)
+  class PlaybackState.CustomAction
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PlaybackState.CustomAction.Builder
+    #ctor(java.lang.String action, java.lang.CharSequence name, int icon)
+    setExtras(android.os.Bundle extras)
+
+package android.media.tv
+;---------------------------------------
+  class AdRequest
+    #ctor(int id, int requestType, android.os.ParcelFileDescriptor fileDescriptor, long startTime, long stopTime, long echoInterval, java.lang.String mediaFileType, android.os.Bundle metadata)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AdResponse
+    #ctor(int id, int responseType, long elapsedTime)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AitInfo
+    #ctor(int type, int version)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BroadcastInfoRequest
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BroadcastInfoResponse
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CommandRequest
+    #ctor(int requestId, int option, java.lang.String namespace, java.lang.String name, java.lang.String arguments, java.lang.String argumentType)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CommandResponse
+    #ctor(int requestId, int sequence, int responseResult, java.lang.String response, java.lang.String responseType)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DsmccRequest
+    #ctor(int requestId, int option, android.net.Uri uri)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DsmccResponse
+    #ctor(int requestId, int sequence, int responseResult, android.os.ParcelFileDescriptor file)
+    #ctor(int requestId, int sequence, int responseResult, boolean isServiceGateway, java.util.List<java.lang.String> childList)
+    #ctor(int requestId, int sequence, int responseResult, int[] eventIds, java.lang.String[] eventNames)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PesRequest
+    #ctor(int requestId, int option, int tsPid, int streamId)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PesResponse
+    #ctor(int requestId, int sequence, int responseResult, java.lang.String sharedFilterToken)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SectionRequest
+    #ctor(int requestId, int option, int tsPid, int tableId, int version)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SectionResponse
+    #ctor(int requestId, int sequence, int responseResult, int sessionId, int version, android.os.Bundle sessionData)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StreamEventRequest
+    #ctor(int requestId, int option, android.net.Uri targetUri, java.lang.String eventName)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StreamEventResponse
+    #ctor(int requestId, int sequence, int responseResult, int eventId, long nptMillis, byte[] data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TableRequest
+    #ctor(int requestId, int option, int tableId, int tableName, int version)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TableResponse
+    #ctor(int requestId, int sequence, int responseResult, android.net.Uri tableUri, int version, int size)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TimelineRequest
+    #ctor(int requestId, int option, int intervalMillis)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TimelineResponse
+    #ctor(int requestId, int sequence, int responseResult, java.lang.String selector, int unitsPerTick, int unitsPerSecond, long wallClock, long ticks)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TsRequest
+    #ctor(int requestId, int option, int tsPid)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TsResponse
+    #ctor(int requestId, int sequence, int responseResult, java.lang.String sharedFilterToken)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TvContentRating
+    contains(android.media.tv.TvContentRating rating)
+    createRating(java.lang.String domain, java.lang.String ratingSystem, java.lang.String rating, java.lang.String... subRatings)
+    equals(java.lang.Object obj)
+    unflattenFromString(java.lang.String ratingString)
+  class TvContract
+    buildChannelLogoUri(android.net.Uri channelUri)
+    buildChannelLogoUri(long channelId)
+    buildChannelsUriForInput(java.lang.String inputId)
+    buildChannelUri(long channelId)
+    buildChannelUriForPassthroughInput(java.lang.String inputId)
+    buildInputId(android.content.ComponentName name)
+    buildPreviewProgramsUriForChannel(android.net.Uri channelUri)
+    buildPreviewProgramsUriForChannel(long channelId)
+    buildPreviewProgramUri(long previewProgramId)
+    buildProgramsUriForChannel(android.net.Uri channelUri)
+    buildProgramsUriForChannel(android.net.Uri channelUri, long startTime, long endTime)
+    buildProgramsUriForChannel(long channelId)
+    buildProgramsUriForChannel(long channelId, long startTime, long endTime)
+    buildProgramUri(long programId)
+    buildRecordedProgramUri(long recordedProgramId)
+    buildWatchNextProgramUri(long watchNextProgramId)
+    isChannelUri(android.net.Uri uri)
+    isChannelUriForPassthroughInput(android.net.Uri uri)
+    isChannelUriForTunerInput(android.net.Uri uri)
+    isProgramUri(android.net.Uri uri)
+    isRecordedProgramUri(android.net.Uri uri)
+    requestChannelBrowsable(android.content.Context context, long channelId)
+  class TvContract.Channels
+    getVideoResolution(java.lang.String videoFormat)
+  class TvContract.Programs.Genres
+    decode(java.lang.String genres)
+    encode(java.lang.String... genres)
+    isCanonical(java.lang.String genre)
+  class TvInputInfo
+    equals(java.lang.Object o)
+    isHidden(android.content.Context context)
+    loadCustomLabel(android.content.Context context)
+    loadIcon(android.content.Context context)
+    loadLabel(android.content.Context context)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TvInputInfo.Builder
+    setCanPauseRecording(boolean canPauseRecording)
+    setCanRecord(boolean canRecord)
+    setExtras(android.os.Bundle extras)
+    setTunerCount(int tunerCount)
+    #ctor(android.content.Context context, android.content.ComponentName component)
+  class TvInputManager
+    getInputState(java.lang.String inputId)
+    getTvInputInfo(java.lang.String inputId)
+    isRatingBlocked(android.media.tv.TvContentRating rating)
+    registerCallback(android.media.tv.TvInputManager.TvInputCallback callback, android.os.Handler handler)
+    unregisterCallback(android.media.tv.TvInputManager.TvInputCallback callback)
+    updateTvInputInfo(android.media.tv.TvInputInfo inputInfo)
+  class TvInputManager.TvInputCallback
+    onInputAdded(java.lang.String inputId)
+    onInputRemoved(java.lang.String inputId)
+    onInputStateChanged(java.lang.String inputId, int state)
+    onInputUpdated(java.lang.String inputId)
+    onTvInputInfoUpdated(android.media.tv.TvInputInfo inputInfo)
+  class TvInputService
+    onBind(android.content.Intent intent)
+    onCreateRecordingSession(java.lang.String inputId)
+    onCreateRecordingSession(java.lang.String inputId, java.lang.String sessionId)
+    onCreateSession(java.lang.String inputId)
+    onCreateSession(java.lang.String inputId, java.lang.String sessionId)
+  class TvInputService.HardwareSession
+    onHardwareVideoUnavailable(int reason)
+    onSetSurface(android.view.Surface surface)
+    #ctor(android.content.Context context)
+  class TvInputService.RecordingSession
+    notifyError(int error)
+    notifyRecordingStopped(android.net.Uri recordedProgramUri)
+    notifyTuned(android.net.Uri channelUri)
+    onAppPrivateCommand(java.lang.String action, android.os.Bundle data)
+    onPauseRecording(android.os.Bundle params)
+    onResumeRecording(android.os.Bundle params)
+    onStartRecording(android.net.Uri programUri)
+    onStartRecording(android.net.Uri programUri, android.os.Bundle params)
+    onTune(android.net.Uri channelUri)
+    onTune(android.net.Uri channelUri, android.os.Bundle params)
+    #ctor(android.content.Context context)
+  class TvInputService.Session
+    layoutSurface(int left, int top, int right, int bottom)
+    notifyAdResponse(android.media.tv.AdResponse response)
+    notifyAitInfoUpdated(android.media.tv.AitInfo aitInfo)
+    notifyBroadcastInfoResponse(android.media.tv.BroadcastInfoResponse response)
+    notifyChannelRetuned(android.net.Uri channelUri)
+    notifyContentBlocked(android.media.tv.TvContentRating rating)
+    notifySignalStrength(int strength)
+    notifyTimeShiftStatusChanged(int status)
+    notifyTracksChanged(java.util.List<android.media.tv.TvTrackInfo> tracks)
+    notifyTrackSelected(int type, java.lang.String trackId)
+    notifyTuned(android.net.Uri channelUri)
+    notifyVideoUnavailable(int reason)
+    onAppPrivateCommand(java.lang.String action, android.os.Bundle data)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int count, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onOverlayViewSizeChanged(int width, int height)
+    onRemoveBroadcastInfo(int requestId)
+    onRequestAd(android.media.tv.AdRequest request)
+    onRequestBroadcastInfo(android.media.tv.BroadcastInfoRequest request)
+    onSelectTrack(int type, java.lang.String trackId)
+    onSetCaptionEnabled(boolean enabled)
+    onSetInteractiveAppNotificationEnabled(boolean enabled)
+    onSetStreamVolume(float volume)
+    onSetSurface(android.view.Surface surface)
+    onSurfaceChanged(int format, int width, int height)
+    onTimeShiftPlay(android.net.Uri recordedProgramUri)
+    onTimeShiftSeekTo(long timeMs)
+    onTimeShiftSetPlaybackParams(android.media.PlaybackParams params)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onTune(android.net.Uri channelUri)
+    onTune(android.net.Uri channelUri, android.os.Bundle params)
+    onUnblockContent(android.media.tv.TvContentRating unblockedRating)
+    setOverlayViewEnabled(boolean enable)
+    #ctor(android.content.Context context)
+  class TvRecordingClient
+    pauseRecording(android.os.Bundle params)
+    resumeRecording(android.os.Bundle params)
+    sendAppPrivateCommand(java.lang.String action, android.os.Bundle data)
+    startRecording(android.net.Uri programUri)
+    startRecording(android.net.Uri programUri, android.os.Bundle params)
+    tune(java.lang.String inputId, android.net.Uri channelUri)
+    tune(java.lang.String inputId, android.net.Uri channelUri, android.os.Bundle params)
+    #ctor(android.content.Context context, java.lang.String tag, android.media.tv.TvRecordingClient.RecordingCallback callback, android.os.Handler handler)
+  class TvRecordingClient.RecordingCallback
+    onConnectionFailed(java.lang.String inputId)
+    onDisconnected(java.lang.String inputId)
+    onError(int error)
+    onRecordingStopped(android.net.Uri recordedProgramUri)
+    onTuned(android.net.Uri channelUri)
+  class TvTrackInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TvTrackInfo.Builder
+    setAudioChannelCount(int audioChannelCount)
+    setAudioDescription(boolean audioDescription)
+    setAudioSampleRate(int audioSampleRate)
+    setDescription(java.lang.CharSequence description)
+    setEncoding(java.lang.String encoding)
+    setEncrypted(boolean encrypted)
+    setExtra(android.os.Bundle extra)
+    setHardOfHearing(boolean hardOfHearing)
+    setLanguage(java.lang.String language)
+    setSpokenSubtitle(boolean spokenSubtitle)
+    setVideoActiveFormatDescription(byte videoActiveFormatDescription)
+    setVideoFrameRate(float videoFrameRate)
+    setVideoHeight(int videoHeight)
+    setVideoPixelAspectRatio(float videoPixelAspectRatio)
+    setVideoWidth(int videoWidth)
+    #ctor(int type, java.lang.String id)
+  class TvView
+    dispatchDraw(android.graphics.Canvas canvas)
+    dispatchGenericMotionEvent(android.view.MotionEvent event)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchTouchEvent(android.view.MotionEvent event)
+    dispatchTrackballEvent(android.view.MotionEvent event)
+    dispatchUnhandledInputEvent(android.view.InputEvent event)
+    dispatchWindowFocusChanged(boolean hasFocus)
+    draw(android.graphics.Canvas canvas)
+    gatherTransparentRegion(android.graphics.Region region)
+    getSelectedTrack(int type)
+    getTracks(int type)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onUnhandledInputEvent(android.view.InputEvent event)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    selectTrack(int type, java.lang.String trackId)
+    sendAppPrivateCommand(java.lang.String action, android.os.Bundle data)
+    setCallback(android.media.tv.TvView.TvInputCallback callback)
+    setCaptionEnabled(boolean enabled)
+    setInteractiveAppNotificationEnabled(boolean enabled)
+    setOnUnhandledInputEventListener(android.media.tv.TvView.OnUnhandledInputEventListener listener)
+    setStreamVolume(float volume)
+    setTimeShiftPositionCallback(android.media.tv.TvView.TimeShiftPositionCallback callback)
+    setZOrderMediaOverlay(boolean isMediaOverlay)
+    setZOrderOnTop(boolean onTop)
+    timeShiftPlay(java.lang.String inputId, android.net.Uri recordedProgramUri)
+    timeShiftSeekTo(long timeMs)
+    timeShiftSetPlaybackParams(android.media.PlaybackParams params)
+    tune(java.lang.String inputId, android.net.Uri channelUri)
+    tune(java.lang.String inputId, android.net.Uri channelUri, android.os.Bundle params)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+  interface TvView.OnUnhandledInputEventListener
+    onUnhandledInputEvent(android.view.InputEvent event)
+  class TvView.TimeShiftPositionCallback
+    onTimeShiftCurrentPositionChanged(java.lang.String inputId, long timeMs)
+    onTimeShiftStartPositionChanged(java.lang.String inputId, long timeMs)
+  class TvView.TvInputCallback
+    onAitInfoUpdated(java.lang.String inputId, android.media.tv.AitInfo aitInfo)
+    onChannelRetuned(java.lang.String inputId, android.net.Uri channelUri)
+    onConnectionFailed(java.lang.String inputId)
+    onContentAllowed(java.lang.String inputId)
+    onContentBlocked(java.lang.String inputId, android.media.tv.TvContentRating rating)
+    onDisconnected(java.lang.String inputId)
+    onSignalStrengthUpdated(java.lang.String inputId, int strength)
+    onTimeShiftStatusChanged(java.lang.String inputId, int status)
+    onTracksChanged(java.lang.String inputId, java.util.List<android.media.tv.TvTrackInfo> tracks)
+    onTrackSelected(java.lang.String inputId, int type, java.lang.String trackId)
+    onTuned(java.lang.String inputId, android.net.Uri channelUri)
+    onVideoAvailable(java.lang.String inputId)
+    onVideoSizeChanged(java.lang.String inputId, int width, int height)
+    onVideoUnavailable(java.lang.String inputId, int reason)
+
+package android.media.tv.interactive
+;---------------------------------------
+  class AppLinkInfo
+    #ctor(java.lang.String packageName, java.lang.String className, java.lang.String uriString)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TvInteractiveAppManager
+    registerAppLinkInfo(java.lang.String tvIAppServiceId, android.media.tv.interactive.AppLinkInfo appLinkInfo)
+    registerCallback(java.util.concurrent.Executor executor, android.media.tv.interactive.TvInteractiveAppManager.TvInteractiveAppCallback callback)
+    sendAppLinkCommand(java.lang.String tvIAppServiceId, android.os.Bundle command)
+    unregisterAppLinkInfo(java.lang.String tvIAppServiceId, android.media.tv.interactive.AppLinkInfo appLinkInfo)
+    unregisterCallback(android.media.tv.interactive.TvInteractiveAppManager.TvInteractiveAppCallback callback)
+  class TvInteractiveAppManager.TvInteractiveAppCallback
+    onInteractiveAppServiceAdded(java.lang.String iAppServiceId)
+    onInteractiveAppServiceRemoved(java.lang.String iAppServiceId)
+    onInteractiveAppServiceUpdated(java.lang.String iAppServiceId)
+    onTvInteractiveAppServiceStateChanged(java.lang.String iAppServiceId, int type, int state, int err)
+  class TvInteractiveAppService
+    notifyStateChanged(int type, int state, int error)
+    onAppLinkCommand(android.os.Bundle command)
+    onBind(android.content.Intent intent)
+    onCreateSession(java.lang.String iAppServiceId, int type)
+    onRegisterAppLinkInfo(android.media.tv.interactive.AppLinkInfo appLinkInfo)
+    onUnregisterAppLinkInfo(android.media.tv.interactive.AppLinkInfo appLinkInfo)
+  class TvInteractiveAppService.Session
+    layoutSurface(int left, int top, int right, int bottom)
+    notifyBiInteractiveAppCreated(android.net.Uri biIAppUri, java.lang.String biIAppId)
+    notifySessionStateChanged(int state, int err)
+    notifyTeletextAppStateChanged(int state)
+    onAdResponse(android.media.tv.AdResponse response)
+    onBroadcastInfoResponse(android.media.tv.BroadcastInfoResponse response)
+    onContentBlocked(android.media.tv.TvContentRating rating)
+    onCreateBiInteractiveAppRequest(android.net.Uri biIAppUri, android.os.Bundle params)
+    onCurrentChannelLcn(int lcn)
+    onCurrentChannelUri(android.net.Uri channelUri)
+    onCurrentTvInputId(java.lang.String inputId)
+    onDestroyBiInteractiveAppRequest(java.lang.String biIAppId)
+    onError(java.lang.String errMsg, android.os.Bundle params)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int count, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onMediaViewSizeChanged(int width, int height)
+    onRecordingStarted(java.lang.String recordingId)
+    onRecordingStopped(java.lang.String recordingId)
+    onSetSurface(android.view.Surface surface)
+    onSetTeletextAppEnabled(boolean enable)
+    onSignalStrength(int strength)
+    onSigningResult(java.lang.String signingId, byte[] result)
+    onStreamVolume(float volume)
+    onSurfaceChanged(int format, int width, int height)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onTrackInfoList(java.util.List<android.media.tv.TvTrackInfo> tracks)
+    onTracksChanged(java.util.List<android.media.tv.TvTrackInfo> tracks)
+    onTrackSelected(int type, java.lang.String trackId)
+    onTuned(android.net.Uri channelUri)
+    onVideoUnavailable(int reason)
+    removeBroadcastInfo(int requestId)
+    requestAd(android.media.tv.AdRequest request)
+    requestBroadcastInfo(android.media.tv.BroadcastInfoRequest request)
+    requestSigning(java.lang.String signingId, java.lang.String algorithm, java.lang.String alias, byte[] data)
+    requestStartRecording(android.net.Uri programUri)
+    requestStopRecording(java.lang.String recordingId)
+    sendPlaybackCommandRequest(java.lang.String cmdType, android.os.Bundle parameters)
+    setMediaViewEnabled(boolean enable)
+    setVideoBounds(android.graphics.Rect rect)
+    #ctor(android.content.Context context)
+  class TvInteractiveAppServiceInfo
+    #ctor(android.content.Context context, android.content.ComponentName component)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TvInteractiveAppView
+    createBiInteractiveApp(android.net.Uri biIAppUri, android.os.Bundle params)
+    destroyBiInteractiveApp(java.lang.String biIAppId)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchUnhandledInputEvent(android.view.InputEvent event)
+    notifyError(java.lang.String errMsg, android.os.Bundle params)
+    notifyRecordingStarted(java.lang.String recordingId)
+    notifyRecordingStopped(java.lang.String recordingId)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onUnhandledInputEvent(android.view.InputEvent event)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    prepareInteractiveApp(java.lang.String iAppServiceId, int type)
+    sendCurrentChannelLcn(int lcn)
+    sendCurrentChannelUri(android.net.Uri channelUri)
+    sendCurrentTvInputId(java.lang.String inputId)
+    sendSigningResult(java.lang.String signingId, byte[] result)
+    sendStreamVolume(float volume)
+    sendTrackInfoList(java.util.List<android.media.tv.TvTrackInfo> tracks)
+    setCallback(java.util.concurrent.Executor executor, android.media.tv.interactive.TvInteractiveAppView.TvInteractiveAppCallback callback)
+    setOnUnhandledInputEventListener(java.util.concurrent.Executor executor, android.media.tv.interactive.TvInteractiveAppView.OnUnhandledInputEventListener listener)
+    setTeletextAppEnabled(boolean enable)
+    setTvView(android.media.tv.TvView tvView)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+  interface TvInteractiveAppView.OnUnhandledInputEventListener
+    onUnhandledInputEvent(android.view.InputEvent event)
+  class TvInteractiveAppView.TvInteractiveAppCallback
+    onBiInteractiveAppCreated(java.lang.String iAppServiceId, android.net.Uri biIAppUri, java.lang.String biIAppId)
+    onPlaybackCommandRequest(java.lang.String iAppServiceId, java.lang.String cmdType, android.os.Bundle parameters)
+    onRequestCurrentChannelLcn(java.lang.String iAppServiceId)
+    onRequestCurrentChannelUri(java.lang.String iAppServiceId)
+    onRequestCurrentTvInputId(java.lang.String iAppServiceId)
+    onRequestSigning(java.lang.String iAppServiceId, java.lang.String signingId, java.lang.String algorithm, java.lang.String alias, byte[] data)
+    onRequestStartRecording(java.lang.String iAppServiceId, android.net.Uri programUri)
+    onRequestStopRecording(java.lang.String iAppServiceId, java.lang.String recordingId)
+    onRequestStreamVolume(java.lang.String iAppServiceId)
+    onRequestTrackInfoList(java.lang.String iAppServiceId)
+    onSetVideoBounds(java.lang.String iAppServiceId, android.graphics.Rect rect)
+    onStateChanged(java.lang.String iAppServiceId, int state, int err)
+    onTeletextAppStateChanged(java.lang.String iAppServiceId, int state)
+
+package android.mtp
+;---------------------------------------
+  class MtpConstants
+    isAbstractObject(int format)
+  class MtpDevice
+    deleteObject(int objectHandle)
+    getObject(int objectHandle, int objectSize)
+    getObjectHandles(int storageId, int format, int objectHandle)
+    getObjectInfo(int objectHandle)
+    getParent(int objectHandle)
+    getPartialObject(int objectHandle, long offset, long size, byte[] buffer)
+    getPartialObject64(int objectHandle, long offset, long size, byte[] buffer)
+    getStorageId(int objectHandle)
+    getStorageInfo(int storageId)
+    getThumbnail(int objectHandle)
+    importFile(int objectHandle, android.os.ParcelFileDescriptor descriptor)
+    importFile(int objectHandle, java.lang.String destPath)
+    #ctor(android.hardware.usb.UsbDevice device)
+    open(android.hardware.usb.UsbDeviceConnection connection)
+    readEvent(android.os.CancellationSignal signal)
+    sendObject(int objectHandle, long size, android.os.ParcelFileDescriptor descriptor)
+    sendObjectInfo(android.mtp.MtpObjectInfo info)
+  class MtpDeviceInfo
+    isEventSupported(int code)
+    isOperationSupported(int code)
+  class MtpObjectInfo.Builder
+    #ctor(android.mtp.MtpObjectInfo objectInfo)
+    setAssociationDesc(int value)
+    setAssociationType(int value)
+    setCompressedSize(long value)
+    setDateCreated(long value)
+    setDateModified(long value)
+    setFormat(int value)
+    setImagePixDepth(long value)
+    setImagePixHeight(long value)
+    setImagePixWidth(long value)
+    setKeywords(java.lang.String value)
+    setName(java.lang.String value)
+    setObjectHandle(int value)
+    setParent(int value)
+    setProtectionStatus(int value)
+    setSequenceNumber(long value)
+    setStorageId(int value)
+    setThumbCompressedSize(long value)
+    setThumbFormat(int value)
+    setThumbPixHeight(long value)
+    setThumbPixWidth(long value)
+
+package android.net
+;---------------------------------------
+  class CaptivePortal
+    writeToParcel(android.os.Parcel out, int flags)
+  class ConnectivityDiagnosticsManager
+    registerConnectivityDiagnosticsCallback(android.net.NetworkRequest request, java.util.concurrent.Executor e, android.net.ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback callback)
+    unregisterConnectivityDiagnosticsCallback(android.net.ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback callback)
+  class ConnectivityDiagnosticsManager.ConnectivityDiagnosticsCallback
+    onConnectivityReportAvailable(android.net.ConnectivityDiagnosticsManager.ConnectivityReport report)
+    onDataStallSuspected(android.net.ConnectivityDiagnosticsManager.DataStallReport report)
+    onNetworkConnectivityReported(android.net.Network network, boolean hasConnectivity)
+  class ConnectivityDiagnosticsManager.ConnectivityReport
+    #ctor(android.net.Network network, long reportTimestamp, android.net.LinkProperties linkProperties, android.net.NetworkCapabilities networkCapabilities, android.os.PersistableBundle additionalInfo)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ConnectivityDiagnosticsManager.DataStallReport
+    #ctor(android.net.Network network, long reportTimestamp, int detectionMethod, android.net.LinkProperties linkProperties, android.net.NetworkCapabilities networkCapabilities, android.os.PersistableBundle stallDetails)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ConnectivityManager
+    addDefaultNetworkActiveListener(android.net.ConnectivityManager.OnNetworkActiveListener l)
+    bindProcessToNetwork(android.net.Network network)
+    createSocketKeepalive(android.net.Network network, android.net.IpSecManager.UdpEncapsulationSocket socket, java.net.InetAddress source, java.net.InetAddress destination, java.util.concurrent.Executor executor, android.net.SocketKeepalive.Callback callback)
+    getConnectionOwnerUid(int protocol, java.net.InetSocketAddress local, java.net.InetSocketAddress remote)
+    getLinkProperties(android.net.Network network)
+    getMultipathPreference(android.net.Network network)
+    getNetworkCapabilities(android.net.Network network)
+    getNetworkInfo(android.net.Network network)
+    getNetworkInfo(int networkType)
+    isNetworkTypeValid(int networkType)
+    registerBestMatchingNetworkCallback(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback, android.os.Handler handler)
+    registerDefaultNetworkCallback(android.net.ConnectivityManager.NetworkCallback networkCallback)
+    registerDefaultNetworkCallback(android.net.ConnectivityManager.NetworkCallback networkCallback, android.os.Handler handler)
+    registerNetworkCallback(android.net.NetworkRequest request, android.app.PendingIntent operation)
+    registerNetworkCallback(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback)
+    registerNetworkCallback(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback, android.os.Handler handler)
+    releaseNetworkRequest(android.app.PendingIntent operation)
+    removeDefaultNetworkActiveListener(android.net.ConnectivityManager.OnNetworkActiveListener l)
+    reportBadNetwork(android.net.Network network)
+    reportNetworkConnectivity(android.net.Network network, boolean hasConnectivity)
+    requestBandwidthUpdate(android.net.Network network)
+    requestNetwork(android.net.NetworkRequest request, android.app.PendingIntent operation)
+    requestNetwork(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback)
+    requestNetwork(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback, android.os.Handler handler)
+    requestNetwork(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback, android.os.Handler handler, int timeoutMs)
+    requestNetwork(android.net.NetworkRequest request, android.net.ConnectivityManager.NetworkCallback networkCallback, int timeoutMs)
+    setNetworkPreference(int preference)
+    setProcessDefaultNetwork(android.net.Network network)
+    unregisterNetworkCallback(android.app.PendingIntent operation)
+    unregisterNetworkCallback(android.net.ConnectivityManager.NetworkCallback networkCallback)
+  class ConnectivityManager.NetworkCallback
+    #ctor(int flags)
+    onAvailable(android.net.Network network)
+    onBlockedStatusChanged(android.net.Network network, boolean blocked)
+    onCapabilitiesChanged(android.net.Network network, android.net.NetworkCapabilities networkCapabilities)
+    onLinkPropertiesChanged(android.net.Network network, android.net.LinkProperties linkProperties)
+    onLosing(android.net.Network network, int maxMsToLive)
+    onLost(android.net.Network network)
+  class Credentials
+    #ctor(int pid, int uid, int gid)
+  class DhcpInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DnsResolver
+    query(android.net.Network network, java.lang.String domain, int nsType, int flags, java.util.concurrent.Executor executor, android.os.CancellationSignal cancellationSignal, android.net.DnsResolver.Callback<? super java.util.List<java.net.InetAddress>> callback)
+    query(android.net.Network network, java.lang.String domain, int flags, java.util.concurrent.Executor executor, android.os.CancellationSignal cancellationSignal, android.net.DnsResolver.Callback<? super java.util.List<java.net.InetAddress>> callback)
+    rawQuery(android.net.Network network, byte[] query, int flags, java.util.concurrent.Executor executor, android.os.CancellationSignal cancellationSignal, android.net.DnsResolver.Callback<? super byte[]> callback)
+    rawQuery(android.net.Network network, java.lang.String domain, int nsClass, int nsType, int flags, java.util.concurrent.Executor executor, android.os.CancellationSignal cancellationSignal, android.net.DnsResolver.Callback<? super byte[]> callback)
+  interface DnsResolver.Callback<T>
+    onAnswer(T answer, int rcode)
+    onError(android.net.DnsResolver.DnsException error)
+  class DnsResolver.DnsException
+    #ctor(int code, java.lang.Throwable cause)
+  class EthernetNetworkSpecifier
+    canBeSatisfiedBy(android.net.NetworkSpecifier other)
+    equals(java.lang.Object o)
+    #ctor(java.lang.String interfaceName)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Ikev2VpnProfile
+    equals(java.lang.Object obj)
+  class Ikev2VpnProfile.Builder
+    #ctor(android.net.ipsec.ike.IkeTunnelConnectionParams ikeTunConnParams)
+    #ctor(java.lang.String serverAddr, java.lang.String identity)
+    setAllowedAlgorithms(java.util.List<java.lang.String> algorithmNames)
+    setAuthDigitalSignature(java.security.cert.X509Certificate userCert, java.security.PrivateKey key, java.security.cert.X509Certificate serverRootCa)
+    setAuthPsk(byte[] psk)
+    setAuthUsernamePassword(java.lang.String user, java.lang.String pass, java.security.cert.X509Certificate serverRootCa)
+    setBypassable(boolean isBypassable)
+    setLocalRoutesExcluded(boolean excludeLocalRoutes)
+    setMaxMtu(int mtu)
+    setMetered(boolean isMetered)
+    setProxy(android.net.ProxyInfo proxy)
+    setRequiresInternetValidation(boolean requiresInternetValidation)
+  class InetAddresses
+    isNumericAddress(java.lang.String address)
+    parseNumericAddress(java.lang.String address)
+  class IpConfiguration
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class IpConfiguration.Builder
+    setHttpProxy(android.net.ProxyInfo proxyInfo)
+    setStaticIpConfiguration(android.net.StaticIpConfiguration config)
+  class IpPrefix
+    contains(java.net.InetAddress address)
+    equals(java.lang.Object obj)
+    #ctor(java.net.InetAddress address, int prefixLength)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class IpSecAlgorithm
+    #ctor(java.lang.String algorithm, byte[] key)
+    #ctor(java.lang.String algorithm, byte[] key, int truncLenBits)
+    writeToParcel(android.os.Parcel out, int flags)
+  class IpSecManager
+    allocateSecurityParameterIndex(java.net.InetAddress destinationAddress)
+    allocateSecurityParameterIndex(java.net.InetAddress destinationAddress, int requestedSpi)
+    applyTransportModeTransform(java.io.FileDescriptor socket, int direction, android.net.IpSecTransform transform)
+    applyTransportModeTransform(java.net.DatagramSocket socket, int direction, android.net.IpSecTransform transform)
+    applyTransportModeTransform(java.net.Socket socket, int direction, android.net.IpSecTransform transform)
+    openUdpEncapsulationSocket(int port)
+    removeTransportModeTransforms(java.io.FileDescriptor socket)
+    removeTransportModeTransforms(java.net.DatagramSocket socket)
+    removeTransportModeTransforms(java.net.Socket socket)
+  class IpSecTransform
+    equals(java.lang.Object other)
+  class IpSecTransform.Builder
+    buildTransportModeTransform(java.net.InetAddress sourceAddress, android.net.IpSecManager.SecurityParameterIndex spi)
+    #ctor(android.content.Context context)
+    setAuthenticatedEncryption(android.net.IpSecAlgorithm algo)
+    setAuthentication(android.net.IpSecAlgorithm algo)
+    setEncryption(android.net.IpSecAlgorithm algo)
+    setIpv4Encapsulation(android.net.IpSecManager.UdpEncapsulationSocket localSocket, int remotePort)
+  class LinkAddress
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LinkProperties
+    addRoute(android.net.RouteInfo route)
+    equals(java.lang.Object obj)
+    setDhcpServerAddress(java.net.Inet4Address serverAddress)
+    setDnsServers(java.util.Collection<java.net.InetAddress> dnsServers)
+    setDomains(java.lang.String domains)
+    setHttpProxy(android.net.ProxyInfo proxy)
+    setInterfaceName(java.lang.String iface)
+    setLinkAddresses(java.util.Collection<android.net.LinkAddress> addresses)
+    setMtu(int mtu)
+    setNat64Prefix(android.net.IpPrefix prefix)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LocalServerSocket
+    #ctor(java.io.FileDescriptor fd)
+    #ctor(java.lang.String name)
+  class LocalSocket
+    bind(android.net.LocalSocketAddress bindpoint)
+    connect(android.net.LocalSocketAddress endpoint)
+    connect(android.net.LocalSocketAddress endpoint, int timeout)
+    #ctor(int sockType)
+    setFileDescriptorsForSend(java.io.FileDescriptor[] fds)
+    setReceiveBufferSize(int size)
+    setSendBufferSize(int n)
+    setSoTimeout(int n)
+  class LocalSocketAddress
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, android.net.LocalSocketAddress.Namespace namespace)
+  class MacAddress
+    equals(java.lang.Object o)
+    fromBytes(byte[] addr)
+    fromString(java.lang.String addr)
+    matches(android.net.MacAddress baseAddress, android.net.MacAddress mask)
+    writeToParcel(android.os.Parcel out, int flags)
+  class MailTo
+    isMailTo(java.lang.String url)
+    parse(java.lang.String url)
+  class Network
+    bindSocket(java.io.FileDescriptor fd)
+    bindSocket(java.net.DatagramSocket socket)
+    bindSocket(java.net.Socket socket)
+    equals(java.lang.Object obj)
+    fromNetworkHandle(long networkHandle)
+    getAllByName(java.lang.String host)
+    getByName(java.lang.String host)
+    openConnection(java.net.URL url)
+    openConnection(java.net.URL url, java.net.Proxy proxy)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkCapabilities
+    equals(java.lang.Object obj)
+    hasCapability(int capability)
+    hasEnterpriseId(int enterpriseId)
+    hasTransport(int transportType)
+    #ctor(android.net.NetworkCapabilities nc)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkInfo
+    #ctor(int type, int subtype, java.lang.String typeName, java.lang.String subtypeName)
+    setDetailedState(android.net.NetworkInfo.DetailedState detailedState, java.lang.String reason, java.lang.String extraInfo)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkRequest
+    canBeSatisfiedBy(android.net.NetworkCapabilities nc)
+    equals(java.lang.Object obj)
+    hasCapability(int capability)
+    hasTransport(int transportType)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkRequest.Builder
+    addCapability(int capability)
+    addTransportType(int transportType)
+    #ctor(android.net.NetworkRequest request)
+    removeCapability(int capability)
+    removeTransportType(int transportType)
+    setIncludeOtherUidNetworks(boolean include)
+    setNetworkSpecifier(android.net.NetworkSpecifier networkSpecifier)
+    setNetworkSpecifier(java.lang.String networkSpecifier)
+  class ParseException
+    #ctor(java.lang.String response)
+    #ctor(java.lang.String response, java.lang.Throwable cause)
+  class Proxy
+    getHost(android.content.Context ctx)
+    getPort(android.content.Context ctx)
+  class ProxyInfo
+    buildDirectProxy(java.lang.String host, int port)
+    buildDirectProxy(java.lang.String host, int port, java.util.List<java.lang.String> exclList)
+    buildPacProxy(android.net.Uri pacUri)
+    buildPacProxy(android.net.Uri pacUrl, int port)
+    equals(java.lang.Object o)
+    #ctor(android.net.ProxyInfo source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RouteInfo
+    equals(java.lang.Object obj)
+    matches(java.net.InetAddress destination)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SocketKeepalive
+    start(int intervalSec)
+  class SocketKeepalive.Callback
+    onError(int error)
+  class SSLCertificateSocketFactory
+    createSocket(java.lang.String host, int port)
+    createSocket(java.lang.String host, int port, java.net.InetAddress localAddr, int localPort)
+    createSocket(java.net.InetAddress addr, int port)
+    createSocket(java.net.InetAddress addr, int port, java.net.InetAddress localAddr, int localPort)
+    createSocket(java.net.Socket k, java.lang.String host, int port, boolean close)
+    getDefault(int handshakeTimeoutMillis)
+    getDefault(int handshakeTimeoutMillis, android.net.SSLSessionCache cache)
+    getInsecure(int handshakeTimeoutMillis, android.net.SSLSessionCache cache)
+    getNpnSelectedProtocol(java.net.Socket socket)
+    setHostname(java.net.Socket socket, java.lang.String hostName)
+    setKeyManagers(javax.net.ssl.KeyManager[] keyManagers)
+    setNpnProtocols(byte[][] npnProtocols)
+    setTrustManagers(javax.net.ssl.TrustManager[] trustManager)
+    setUseSessionTickets(java.net.Socket socket, boolean useSessionTickets)
+    #ctor(int handshakeTimeoutMillis)
+  class SSLSessionCache
+    #ctor(android.content.Context context)
+    #ctor(java.io.File dir)
+  class StaticIpConfiguration
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StaticIpConfiguration.Builder
+    setDnsServers(java.lang.Iterable<java.net.InetAddress> dnsServers)
+    setDomains(java.lang.String newDomains)
+    setGateway(java.net.InetAddress gateway)
+    setIpAddress(android.net.LinkAddress ipAddress)
+  class TelephonyNetworkSpecifier
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TelephonyNetworkSpecifier.Builder
+    setSubscriptionId(int subId)
+  class TrafficStats
+    getAndSetThreadStatsTag(int tag)
+    getRxBytes(java.lang.String iface)
+    getRxPackets(java.lang.String iface)
+    getTxBytes(java.lang.String iface)
+    getTxPackets(java.lang.String iface)
+    getUidRxBytes(int uid)
+    getUidRxPackets(int uid)
+    getUidTcpRxBytes(int uid)
+    getUidTcpRxSegments(int uid)
+    getUidTcpTxBytes(int uid)
+    getUidTcpTxSegments(int uid)
+    getUidTxBytes(int uid)
+    getUidTxPackets(int uid)
+    getUidUdpRxBytes(int uid)
+    getUidUdpRxPackets(int uid)
+    getUidUdpTxBytes(int uid)
+    getUidUdpTxPackets(int uid)
+    incrementOperationCount(int operationCount)
+    incrementOperationCount(int tag, int operationCount)
+    setThreadStatsTag(int tag)
+    setThreadStatsUid(int uid)
+    tagDatagramSocket(java.net.DatagramSocket socket)
+    tagFileDescriptor(java.io.FileDescriptor fd)
+    tagSocket(java.net.Socket socket)
+    untagDatagramSocket(java.net.DatagramSocket socket)
+    untagFileDescriptor(java.io.FileDescriptor fd)
+    untagSocket(java.net.Socket socket)
+  class Uri
+    compareTo(android.net.Uri other)
+    decode(java.lang.String s)
+    encode(java.lang.String s)
+    encode(java.lang.String s, java.lang.String allow)
+    equals(java.lang.Object o)
+    fromFile(java.io.File file)
+    fromParts(java.lang.String scheme, java.lang.String ssp, java.lang.String fragment)
+    getBooleanQueryParameter(java.lang.String key, boolean defaultValue)
+    getQueryParameter(java.lang.String key)
+    getQueryParameters(java.lang.String key)
+    parse(java.lang.String uriString)
+    withAppendedPath(android.net.Uri baseUri, java.lang.String pathSegment)
+    writeToParcel(android.os.Parcel out, android.net.Uri uri)
+  class Uri.Builder
+    appendEncodedPath(java.lang.String newSegment)
+    appendPath(java.lang.String newSegment)
+    appendQueryParameter(java.lang.String key, java.lang.String value)
+    authority(java.lang.String authority)
+    encodedAuthority(java.lang.String authority)
+    encodedFragment(java.lang.String fragment)
+    encodedOpaquePart(java.lang.String opaquePart)
+    encodedPath(java.lang.String path)
+    encodedQuery(java.lang.String query)
+    fragment(java.lang.String fragment)
+    opaquePart(java.lang.String opaquePart)
+    path(java.lang.String path)
+    query(java.lang.String query)
+    scheme(java.lang.String scheme)
+  class UrlQuerySanitizer
+    addSanitizedEntry(java.lang.String parameter, java.lang.String value)
+    decodeHexDigit(char c)
+    getEffectiveValueSanitizer(java.lang.String parameter)
+    getValue(java.lang.String parameter)
+    getValueSanitizer(java.lang.String parameter)
+    hasParameter(java.lang.String parameter)
+    isHexDigit(char c)
+    parseEntry(java.lang.String parameter, java.lang.String value)
+    parseQuery(java.lang.String query)
+    parseUrl(java.lang.String url)
+    registerParameter(java.lang.String parameter, android.net.UrlQuerySanitizer.ValueSanitizer valueSanitizer)
+    registerParameters(java.lang.String[] parameters, android.net.UrlQuerySanitizer.ValueSanitizer valueSanitizer)
+    setAllowUnregisteredParamaters(boolean allowUnregisteredParamaters)
+    setPreferFirstRepeatedParameter(boolean preferFirstRepeatedParameter)
+    setUnregisteredParameterValueSanitizer(android.net.UrlQuerySanitizer.ValueSanitizer sanitizer)
+    unescape(java.lang.String string)
+    #ctor(java.lang.String url)
+  class UrlQuerySanitizer.IllegalCharacterValueSanitizer
+    sanitize(java.lang.String value)
+    #ctor(int flags)
+  class UrlQuerySanitizer.ParameterValuePair
+    #ctor(java.lang.String parameter, java.lang.String value)
+  interface UrlQuerySanitizer.ValueSanitizer
+    sanitize(java.lang.String value)
+  class VpnManager
+    provisionVpnProfile(android.net.PlatformVpnProfile profile)
+  class VpnProfileState
+    equals(java.lang.Object obj)
+    #ctor(int state, java.lang.String sessionKey, boolean alwaysOn, boolean lockdown)
+    writeToParcel(android.os.Parcel out, int flags)
+  class VpnService
+    onBind(android.content.Intent intent)
+    prepare(android.content.Context context)
+    protect(int socket)
+    protect(java.net.DatagramSocket socket)
+    protect(java.net.Socket socket)
+    setUnderlyingNetworks(android.net.Network[] networks)
+  class VpnService.Builder
+    addAddress(java.lang.String address, int prefixLength)
+    addAddress(java.net.InetAddress address, int prefixLength)
+    addAllowedApplication(java.lang.String packageName)
+    addDisallowedApplication(java.lang.String packageName)
+    addDnsServer(java.lang.String address)
+    addDnsServer(java.net.InetAddress address)
+    addRoute(android.net.IpPrefix prefix)
+    addRoute(java.lang.String address, int prefixLength)
+    addRoute(java.net.InetAddress address, int prefixLength)
+    addSearchDomain(java.lang.String domain)
+    allowFamily(int family)
+    excludeRoute(android.net.IpPrefix prefix)
+    setBlocking(boolean blocking)
+    setConfigureIntent(android.app.PendingIntent intent)
+    setHttpProxy(android.net.ProxyInfo proxyInfo)
+    setMetered(boolean isMetered)
+    setMtu(int mtu)
+    setSession(java.lang.String session)
+    setUnderlyingNetworks(android.net.Network[] networks)
+
+package android.net.eap
+;---------------------------------------
+  class EapAkaInfo.Builder
+    setReauthId(byte[] reauthId)
+  class EapSessionConfig
+    equals(java.lang.Object o)
+  class EapSessionConfig.Builder
+    setEapAkaConfig(int subId, int apptype)
+    setEapAkaConfig(int subId, int apptype, android.net.eap.EapSessionConfig.EapAkaOption options)
+    setEapAkaPrimeConfig(int subId, int apptype, java.lang.String networkName, boolean allowMismatchedNetworkNames)
+    setEapIdentity(byte[] eapIdentity)
+    setEapMsChapV2Config(java.lang.String username, java.lang.String password)
+    setEapSimConfig(int subId, int apptype)
+    setEapTtlsConfig(java.security.cert.X509Certificate serverCaCert, android.net.eap.EapSessionConfig innerEapSessionConfig)
+  class EapSessionConfig.EapAkaConfig
+    equals(java.lang.Object o)
+  class EapSessionConfig.EapAkaOption
+    equals(java.lang.Object o)
+  class EapSessionConfig.EapAkaOption.Builder
+    setReauthId(byte[] reauthId)
+  class EapSessionConfig.EapAkaPrimeConfig
+    equals(java.lang.Object o)
+  class EapSessionConfig.EapMethodConfig
+    equals(java.lang.Object o)
+  class EapSessionConfig.EapMsChapV2Config
+    equals(java.lang.Object o)
+  class EapSessionConfig.EapSimConfig
+    equals(java.lang.Object o)
+  class EapSessionConfig.EapTtlsConfig
+    equals(java.lang.Object o)
+
+package android.net.http
+;---------------------------------------
+  class HttpResponseCache
+    get(java.net.URI uri, java.lang.String requestMethod, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders)
+    install(java.io.File directory, long maxSize)
+    put(java.net.URI uri, java.net.URLConnection urlConnection)
+  class SslCertificate
+    restoreState(android.os.Bundle bundle)
+    saveState(android.net.http.SslCertificate certificate)
+    #ctor(java.lang.String issuedTo, java.lang.String issuedBy, java.lang.String validNotBefore, java.lang.String validNotAfter)
+    #ctor(java.lang.String issuedTo, java.lang.String issuedBy, java.util.Date validNotBefore, java.util.Date validNotAfter)
+    #ctor(java.security.cert.X509Certificate certificate)
+  class SslCertificate.DName
+    #ctor(java.lang.String dName)
+  class SslError
+    addError(int error)
+    hasError(int error)
+    #ctor(int error, android.net.http.SslCertificate certificate)
+    #ctor(int error, android.net.http.SslCertificate certificate, java.lang.String url)
+    #ctor(int error, java.security.cert.X509Certificate certificate)
+    #ctor(int error, java.security.cert.X509Certificate certificate, java.lang.String url)
+  class X509TrustManagerExtensions
+    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.lang.String host)
+    isSameTrustConfiguration(java.lang.String hostname1, java.lang.String hostname2)
+    isUserAddedCertificate(java.security.cert.X509Certificate cert)
+    #ctor(javax.net.ssl.X509TrustManager tm)
+
+package android.net.ipsec.ike
+;---------------------------------------
+  class ChildSaProposal
+    equals(java.lang.Object o)
+  class ChildSaProposal.Builder
+    addDhGroup(int dhGroup)
+    addEncryptionAlgorithm(int algorithm, int keyLength)
+    addIntegrityAlgorithm(int algorithm)
+  interface ChildSessionCallback
+    onClosedWithException(android.net.ipsec.ike.exceptions.IkeException exception)
+    onIpSecTransformCreated(android.net.IpSecTransform ipSecTransform, int direction)
+    onIpSecTransformDeleted(android.net.IpSecTransform ipSecTransform, int direction)
+    onOpened(android.net.ipsec.ike.ChildSessionConfiguration sessionConfiguration)
+  class ChildSessionConfiguration.Builder
+    #ctor(java.util.List<android.net.ipsec.ike.IkeTrafficSelector> inTs, java.util.List<android.net.ipsec.ike.IkeTrafficSelector> outTs)
+  class ChildSessionParams
+    equals(java.lang.Object o)
+  class IkeDerAsn1DnIdentification
+    equals(java.lang.Object o)
+    #ctor(javax.security.auth.x500.X500Principal derAsn1Dn)
+  class IkeFqdnIdentification
+    equals(java.lang.Object o)
+    #ctor(java.lang.String fqdn)
+  class IkeIpv4AddrIdentification
+    equals(java.lang.Object o)
+    #ctor(java.net.Inet4Address address)
+  class IkeIpv6AddrIdentification
+    equals(java.lang.Object o)
+    #ctor(java.net.Inet6Address address)
+  class IkeKeyIdIdentification
+    equals(java.lang.Object o)
+    #ctor(byte[] keyId)
+  class IkeRfc822AddrIdentification
+    equals(java.lang.Object o)
+    #ctor(java.lang.String rfc822Name)
+  class IkeSaProposal
+    equals(java.lang.Object o)
+  class IkeSaProposal.Builder
+    addDhGroup(int dhGroup)
+    addEncryptionAlgorithm(int algorithm, int keyLength)
+    addIntegrityAlgorithm(int algorithm)
+    addPseudorandomFunction(int algorithm)
+  class IkeSession
+    closeChildSession(android.net.ipsec.ike.ChildSessionCallback childSessionCallback)
+    #ctor(android.content.Context context, android.net.ipsec.ike.IkeSessionParams ikeSessionParams, android.net.ipsec.ike.ChildSessionParams firstChildSessionParams, java.util.concurrent.Executor userCbExecutor, android.net.ipsec.ike.IkeSessionCallback ikeSessionCallback, android.net.ipsec.ike.ChildSessionCallback firstChildSessionCallback)
+    openChildSession(android.net.ipsec.ike.ChildSessionParams childSessionParams, android.net.ipsec.ike.ChildSessionCallback childSessionCallback)
+  interface IkeSessionCallback
+    onClosedWithException(android.net.ipsec.ike.exceptions.IkeException exception)
+    onError(android.net.ipsec.ike.exceptions.IkeException exception)
+    onOpened(android.net.ipsec.ike.IkeSessionConfiguration sessionConfiguration)
+  class IkeSessionConfiguration
+    isIkeExtensionEnabled(int extensionType)
+  class IkeSessionConfiguration.Builder
+    addIkeExtension(int extensionType)
+    addRemoteVendorId(byte[] remoteVendorId)
+    #ctor(android.net.ipsec.ike.IkeSessionConnectionInfo ikeConnInfo)
+    setEapInfo(android.net.eap.EapInfo eapInfo)
+    setRemoteApplicationVersion(java.lang.String remoteApplicationVersion)
+  class IkeSessionConnectionInfo
+    #ctor(java.net.InetAddress localAddress, java.net.InetAddress remoteAddress, android.net.Network network)
+  class IkeSessionParams
+    equals(java.lang.Object o)
+    hasIkeOption(int ikeOption)
+  class IkeSessionParams.Builder
+    addIkeOption(int ikeOption)
+    addIkeSaProposal(android.net.ipsec.ike.IkeSaProposal proposal)
+    #ctor(android.net.ipsec.ike.IkeSessionParams ikeSessionParams)
+    removeIkeOption(int ikeOption)
+    setAuthDigitalSignature(java.security.cert.X509Certificate serverCaCert, java.security.cert.X509Certificate clientEndCert, java.security.PrivateKey clientPrivateKey)
+    setAuthDigitalSignature(java.security.cert.X509Certificate serverCaCert, java.security.cert.X509Certificate clientEndCert, java.util.List<java.security.cert.X509Certificate> clientIntermediateCerts, java.security.PrivateKey clientPrivateKey)
+    setAuthEap(java.security.cert.X509Certificate serverCaCert, android.net.eap.EapSessionConfig eapConfig)
+    setAuthPsk(byte[] sharedKey)
+    setDpdDelaySeconds(int dpdDelaySeconds)
+    setLifetimeSeconds(int hardLifetimeSeconds, int softLifetimeSeconds)
+    setLocalIdentification(android.net.ipsec.ike.IkeIdentification identification)
+    setNattKeepAliveDelaySeconds(int nattKeepaliveDelaySeconds)
+    setNetwork(android.net.Network network)
+    setRemoteIdentification(android.net.ipsec.ike.IkeIdentification identification)
+    setRetransmissionTimeoutsMillis(int[] retransTimeoutMillisList)
+    setServerHostname(java.lang.String serverHostname)
+  class IkeSessionParams.IkeAuthConfig
+    equals(java.lang.Object o)
+  class IkeSessionParams.IkeAuthDigitalSignLocalConfig
+    equals(java.lang.Object o)
+  class IkeSessionParams.IkeAuthDigitalSignRemoteConfig
+    equals(java.lang.Object o)
+  class IkeSessionParams.IkeAuthEapConfig
+    equals(java.lang.Object o)
+  class IkeSessionParams.IkeAuthPskConfig
+    equals(java.lang.Object o)
+  class IkeTrafficSelector
+    equals(java.lang.Object o)
+    #ctor(int startPort, int endPort, java.net.InetAddress startingAddress, java.net.InetAddress endingAddress)
+  class IkeTunnelConnectionParams
+    equals(java.lang.Object o)
+    #ctor(android.net.ipsec.ike.IkeSessionParams ikeParams, android.net.ipsec.ike.TunnelModeChildSessionParams childParams)
+  class SaProposal
+    equals(java.lang.Object o)
+  class TransportModeChildSessionParams.Builder
+    addChildSaProposal(android.net.ipsec.ike.ChildSaProposal proposal)
+    addInboundTrafficSelectors(android.net.ipsec.ike.IkeTrafficSelector trafficSelector)
+    addOutboundTrafficSelectors(android.net.ipsec.ike.IkeTrafficSelector trafficSelector)
+    setLifetimeSeconds(int hardLifetimeSeconds, int softLifetimeSeconds)
+    #ctor(android.net.ipsec.ike.TransportModeChildSessionParams childParams)
+  class TunnelModeChildSessionParams
+    equals(java.lang.Object o)
+  class TunnelModeChildSessionParams.Builder
+    addChildSaProposal(android.net.ipsec.ike.ChildSaProposal proposal)
+    addInboundTrafficSelectors(android.net.ipsec.ike.IkeTrafficSelector trafficSelector)
+    addInternalAddressRequest(int addressFamily)
+    addInternalAddressRequest(java.net.Inet4Address address)
+    addInternalAddressRequest(java.net.Inet6Address address, int prefixLen)
+    addInternalDhcpServerRequest(int addressFamily)
+    addInternalDnsServerRequest(int addressFamily)
+    addOutboundTrafficSelectors(android.net.ipsec.ike.IkeTrafficSelector trafficSelector)
+    setLifetimeSeconds(int hardLifetimeSeconds, int softLifetimeSeconds)
+    #ctor(android.net.ipsec.ike.TunnelModeChildSessionParams childParams)
+
+package android.net.ipsec.ike.exceptions
+;---------------------------------------
+  class IkeInternalException
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class IkeIOException
+    #ctor(java.io.IOException cause)
+    initCause(java.lang.Throwable cause)
+  class IkeNetworkLostException
+    #ctor(android.net.Network network)
+  class IkeTimeoutException
+    #ctor(java.lang.String message)
+  class InvalidKeException
+    #ctor(int dhGroup)
+  class InvalidMajorVersionException
+    #ctor(byte version)
+  class InvalidSelectorsException
+    #ctor(int spi, byte[] packetInfo)
+
+package android.net.nsd
+;---------------------------------------
+  class NsdManager
+    discoverServices(java.lang.String serviceType, int protocolType, android.net.Network network, java.util.concurrent.Executor executor, android.net.nsd.NsdManager.DiscoveryListener listener)
+    discoverServices(java.lang.String serviceType, int protocolType, android.net.NetworkRequest networkRequest, java.util.concurrent.Executor executor, android.net.nsd.NsdManager.DiscoveryListener listener)
+    discoverServices(java.lang.String serviceType, int protocolType, android.net.nsd.NsdManager.DiscoveryListener listener)
+    registerService(android.net.nsd.NsdServiceInfo serviceInfo, int protocolType, android.net.nsd.NsdManager.RegistrationListener listener)
+    registerService(android.net.nsd.NsdServiceInfo serviceInfo, int protocolType, java.util.concurrent.Executor executor, android.net.nsd.NsdManager.RegistrationListener listener)
+    resolveService(android.net.nsd.NsdServiceInfo serviceInfo, android.net.nsd.NsdManager.ResolveListener listener)
+    resolveService(android.net.nsd.NsdServiceInfo serviceInfo, java.util.concurrent.Executor executor, android.net.nsd.NsdManager.ResolveListener listener)
+    stopServiceDiscovery(android.net.nsd.NsdManager.DiscoveryListener listener)
+    unregisterService(android.net.nsd.NsdManager.RegistrationListener listener)
+  interface NsdManager.DiscoveryListener
+    onDiscoveryStarted(java.lang.String serviceType)
+    onDiscoveryStopped(java.lang.String serviceType)
+    onServiceFound(android.net.nsd.NsdServiceInfo serviceInfo)
+    onServiceLost(android.net.nsd.NsdServiceInfo serviceInfo)
+    onStartDiscoveryFailed(java.lang.String serviceType, int errorCode)
+    onStopDiscoveryFailed(java.lang.String serviceType, int errorCode)
+  interface NsdManager.RegistrationListener
+    onRegistrationFailed(android.net.nsd.NsdServiceInfo serviceInfo, int errorCode)
+    onServiceRegistered(android.net.nsd.NsdServiceInfo serviceInfo)
+    onServiceUnregistered(android.net.nsd.NsdServiceInfo serviceInfo)
+    onUnregistrationFailed(android.net.nsd.NsdServiceInfo serviceInfo, int errorCode)
+  interface NsdManager.ResolveListener
+    onResolveFailed(android.net.nsd.NsdServiceInfo serviceInfo, int errorCode)
+    onServiceResolved(android.net.nsd.NsdServiceInfo serviceInfo)
+  class NsdServiceInfo
+    removeAttribute(java.lang.String key)
+    setAttribute(java.lang.String key, java.lang.String value)
+    setHost(java.net.InetAddress s)
+    setNetwork(android.net.Network network)
+    setPort(int p)
+    setServiceName(java.lang.String s)
+    setServiceType(java.lang.String s)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.net.rtp
+;---------------------------------------
+  class AudioCodec
+    getCodec(int type, java.lang.String rtpmap, java.lang.String fmtp)
+  class AudioGroup
+    #ctor(android.content.Context context)
+    sendDtmf(int event)
+    setMode(int mode)
+  class AudioStream
+    #ctor(java.net.InetAddress address)
+    join(android.net.rtp.AudioGroup group)
+    setCodec(android.net.rtp.AudioCodec codec)
+    setDtmfType(int type)
+  class RtpStream
+    associate(java.net.InetAddress address, int port)
+    setMode(int mode)
+
+package android.net.sip
+;---------------------------------------
+  class SipAudioCall
+    answerCall(int timeout)
+    attachCall(android.net.sip.SipSession session, java.lang.String sessionDescription)
+    continueCall(int timeout)
+    holdCall(int timeout)
+    makeCall(android.net.sip.SipProfile peerProfile, android.net.sip.SipSession sipSession, int timeout)
+    sendDtmf(int code)
+    sendDtmf(int code, android.os.Message result)
+    setListener(android.net.sip.SipAudioCall.Listener listener)
+    setListener(android.net.sip.SipAudioCall.Listener listener, boolean callbackImmediately)
+    setSpeakerMode(boolean speakerMode)
+    #ctor(android.content.Context context, android.net.sip.SipProfile localProfile)
+  class SipAudioCall.Listener
+    onCallBusy(android.net.sip.SipAudioCall call)
+    onCallEnded(android.net.sip.SipAudioCall call)
+    onCallEstablished(android.net.sip.SipAudioCall call)
+    onCallHeld(android.net.sip.SipAudioCall call)
+    onCalling(android.net.sip.SipAudioCall call)
+    onChanged(android.net.sip.SipAudioCall call)
+    onError(android.net.sip.SipAudioCall call, int errorCode, java.lang.String errorMessage)
+    onReadyToCall(android.net.sip.SipAudioCall call)
+    onRinging(android.net.sip.SipAudioCall call, android.net.sip.SipProfile caller)
+    onRingingBack(android.net.sip.SipAudioCall call)
+  class SipErrorCode
+    toString(int errorCode)
+  class SipException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class SipManager
+    close(java.lang.String localProfileUri)
+    createSipSession(android.net.sip.SipProfile localProfile, android.net.sip.SipSession.Listener listener)
+    getCallId(android.content.Intent incomingCallIntent)
+    getOfferSessionDescription(android.content.Intent incomingCallIntent)
+    getSessionFor(android.content.Intent incomingCallIntent)
+    isApiSupported(android.content.Context context)
+    isIncomingCallIntent(android.content.Intent intent)
+    isOpened(java.lang.String localProfileUri)
+    isRegistered(java.lang.String localProfileUri)
+    isSipWifiOnly(android.content.Context context)
+    isVoipSupported(android.content.Context context)
+    makeAudioCall(android.net.sip.SipProfile localProfile, android.net.sip.SipProfile peerProfile, android.net.sip.SipAudioCall.Listener listener, int timeout)
+    makeAudioCall(java.lang.String localProfileUri, java.lang.String peerProfileUri, android.net.sip.SipAudioCall.Listener listener, int timeout)
+    newInstance(android.content.Context context)
+    open(android.net.sip.SipProfile localProfile)
+    open(android.net.sip.SipProfile localProfile, android.app.PendingIntent incomingCallPendingIntent, android.net.sip.SipRegistrationListener listener)
+    register(android.net.sip.SipProfile localProfile, int expiryTime, android.net.sip.SipRegistrationListener listener)
+    setRegistrationListener(java.lang.String localProfileUri, android.net.sip.SipRegistrationListener listener)
+    takeAudioCall(android.content.Intent incomingCallIntent, android.net.sip.SipAudioCall.Listener listener)
+    unregister(android.net.sip.SipProfile localProfile, android.net.sip.SipRegistrationListener listener)
+  class SipProfile
+    setCallingUid(int uid)
+    writeToParcel(android.os.Parcel out, int flags)
+  class SipProfile.Builder
+    setAuthUserName(java.lang.String name)
+    setAutoRegistration(boolean flag)
+    setDisplayName(java.lang.String displayName)
+    setOutboundProxy(java.lang.String outboundProxy)
+    setPassword(java.lang.String password)
+    setPort(int port)
+    setProfileName(java.lang.String name)
+    setProtocol(java.lang.String protocol)
+    setSendKeepAlive(boolean flag)
+    #ctor(android.net.sip.SipProfile profile)
+    #ctor(java.lang.String uriString)
+    #ctor(java.lang.String username, java.lang.String serverDomain)
+  interface SipRegistrationListener
+    onRegistering(java.lang.String localProfileUri)
+    onRegistrationDone(java.lang.String localProfileUri, long expiryTime)
+    onRegistrationFailed(java.lang.String localProfileUri, int errorCode, java.lang.String errorMessage)
+  class SipSession
+    answerCall(java.lang.String sessionDescription, int timeout)
+    changeCall(java.lang.String sessionDescription, int timeout)
+    makeCall(android.net.sip.SipProfile callee, java.lang.String sessionDescription, int timeout)
+    register(int duration)
+    setListener(android.net.sip.SipSession.Listener listener)
+  class SipSession.Listener
+    onCallBusy(android.net.sip.SipSession session)
+    onCallChangeFailed(android.net.sip.SipSession session, int errorCode, java.lang.String errorMessage)
+    onCallEnded(android.net.sip.SipSession session)
+    onCallEstablished(android.net.sip.SipSession session, java.lang.String sessionDescription)
+    onCalling(android.net.sip.SipSession session)
+    onError(android.net.sip.SipSession session, int errorCode, java.lang.String errorMessage)
+    onRegistering(android.net.sip.SipSession session)
+    onRegistrationDone(android.net.sip.SipSession session, int duration)
+    onRegistrationFailed(android.net.sip.SipSession session, int errorCode, java.lang.String errorMessage)
+    onRegistrationTimeout(android.net.sip.SipSession session)
+    onRinging(android.net.sip.SipSession session, android.net.sip.SipProfile caller, java.lang.String sessionDescription)
+    onRingingBack(android.net.sip.SipSession session)
+  class SipSession.State
+    toString(int state)
+
+package android.net.ssl
+;---------------------------------------
+  class SSLEngines
+    exportKeyingMaterial(javax.net.ssl.SSLEngine engine, java.lang.String label, byte[] context, int length)
+    isSupportedEngine(javax.net.ssl.SSLEngine engine)
+    setUseSessionTickets(javax.net.ssl.SSLEngine engine, boolean useSessionTickets)
+  class SSLSockets
+    exportKeyingMaterial(javax.net.ssl.SSLSocket socket, java.lang.String label, byte[] context, int length)
+    isSupportedSocket(javax.net.ssl.SSLSocket socket)
+    setUseSessionTickets(javax.net.ssl.SSLSocket socket, boolean useSessionTickets)
+
+package android.net.vcn
+;---------------------------------------
+  class VcnCellUnderlyingNetworkTemplate
+    equals(java.lang.Object other)
+  class VcnCellUnderlyingNetworkTemplate.Builder
+    setCbs(int matchCriteria)
+    setDun(int matchCriteria)
+    setIms(int matchCriteria)
+    setInternet(int matchCriteria)
+    setMetered(int matchCriteria)
+    setMinDownstreamBandwidthKbps(int minEntryDownstreamBandwidthKbps, int minExitDownstreamBandwidthKbps)
+    setMinUpstreamBandwidthKbps(int minEntryUpstreamBandwidthKbps, int minExitUpstreamBandwidthKbps)
+    setMms(int matchCriteria)
+    setOperatorPlmnIds(java.util.Set<java.lang.String> operatorPlmnIds)
+    setOpportunistic(int matchCriteria)
+    setRcs(int matchCriteria)
+    setRoaming(int matchCriteria)
+    setSimSpecificCarrierIds(java.util.Set<java.lang.Integer> simSpecificCarrierIds)
+  class VcnConfig
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel out, int flags)
+  class VcnConfig.Builder
+    addGatewayConnectionConfig(android.net.vcn.VcnGatewayConnectionConfig gatewayConnectionConfig)
+    setRestrictedUnderlyingNetworkTransports(java.util.Set<java.lang.Integer> transports)
+    #ctor(android.content.Context context)
+  class VcnGatewayConnectionConfig
+    equals(java.lang.Object other)
+    hasGatewayOption(int option)
+  class VcnGatewayConnectionConfig.Builder
+    addExposedCapability(int exposedCapability)
+    addGatewayOption(int option)
+    removeExposedCapability(int exposedCapability)
+    removeGatewayOption(int option)
+    setMaxMtu(int maxMtu)
+    setRetryIntervalsMillis(long[] retryIntervalsMs)
+    setVcnUnderlyingNetworkPriorities(java.util.List<android.net.vcn.VcnUnderlyingNetworkTemplate> underlyingNetworkTemplates)
+    #ctor(java.lang.String gatewayConnectionName, android.net.ipsec.ike.IkeTunnelConnectionParams tunnelConnectionParams)
+  class VcnManager
+    clearVcnConfig(android.os.ParcelUuid subscriptionGroup)
+    registerVcnStatusCallback(android.os.ParcelUuid subscriptionGroup, java.util.concurrent.Executor executor, android.net.vcn.VcnManager.VcnStatusCallback callback)
+    setVcnConfig(android.os.ParcelUuid subscriptionGroup, android.net.vcn.VcnConfig config)
+    unregisterVcnStatusCallback(android.net.vcn.VcnManager.VcnStatusCallback callback)
+  class VcnManager.VcnStatusCallback
+    onGatewayConnectionError(java.lang.String gatewayConnectionName, int errorCode, java.lang.Throwable detail)
+    onStatusChanged(int statusCode)
+  class VcnUnderlyingNetworkTemplate
+    equals(java.lang.Object other)
+  class VcnWifiUnderlyingNetworkTemplate
+    equals(java.lang.Object other)
+  class VcnWifiUnderlyingNetworkTemplate.Builder
+    setMetered(int matchCriteria)
+    setMinDownstreamBandwidthKbps(int minEntryDownstreamBandwidthKbps, int minExitDownstreamBandwidthKbps)
+    setMinUpstreamBandwidthKbps(int minEntryUpstreamBandwidthKbps, int minExitUpstreamBandwidthKbps)
+    setSsids(java.util.Set<java.lang.String> ssids)
+
+package android.net.wifi
+;---------------------------------------
+  class MloLink
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ScanResult
+    convertChannelToFrequencyMhzIfSupported(int channel, int band)
+    convertFrequencyMhzToChannelIfSupported(int freqMhz)
+    #ctor(android.net.wifi.ScanResult source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ScanResult.InformationElement
+    equals(java.lang.Object that)
+    #ctor(android.net.wifi.ScanResult.InformationElement rhs)
+    #ctor(int id, int idExt, byte[] bytes)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SoftApConfiguration
+    equals(java.lang.Object otherObj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SupplicantState
+    isValidState(android.net.wifi.SupplicantState state)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiAvailableChannel
+    equals(java.lang.Object o)
+    #ctor(int freq, int opModes)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiConfiguration
+    setHttpProxy(android.net.ProxyInfo httpProxy)
+    setIpConfiguration(android.net.IpConfiguration ipConfiguration)
+    setMacRandomizationSetting(int macRandomizationSetting)
+    setSecurityParams(int securityType)
+    #ctor(android.net.wifi.WifiConfiguration source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiEnterpriseConfig
+    enableTrustOnFirstUse(boolean enable)
+    setAltSubjectMatch(java.lang.String altSubjectMatch)
+    setAnonymousIdentity(java.lang.String anonymousIdentity)
+    setCaCertificate(java.security.cert.X509Certificate cert)
+    setCaCertificates(java.security.cert.X509Certificate[] certs)
+    setClientKeyEntry(java.security.PrivateKey privateKey, java.security.cert.X509Certificate clientCertificate)
+    setClientKeyEntryWithCertificateChain(java.security.PrivateKey privateKey, java.security.cert.X509Certificate[] clientCertificateChain)
+    setClientKeyPairAlias(java.lang.String alias)
+    setDecoratedIdentityPrefix(java.lang.String decoratedIdentityPrefix)
+    setDomainSuffixMatch(java.lang.String domain)
+    setEapMethod(int eapMethod)
+    setIdentity(java.lang.String identity)
+    setMinimumTlsVersion(int tlsVersion)
+    setPassword(java.lang.String password)
+    setPhase2Method(int phase2Method)
+    setPlmn(java.lang.String plmn)
+    setRealm(java.lang.String realm)
+    setSubjectMatch(java.lang.String subjectMatch)
+    #ctor(android.net.wifi.WifiEnterpriseConfig source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiInfo
+    equals(java.lang.Object that)
+    getDetailedStateOf(android.net.wifi.SupplicantState suppState)
+    makeCopy(long redactions)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiInfo.Builder
+    setBssid(java.lang.String bssid)
+    setCurrentSecurityType(int securityType)
+    setNetworkId(int networkId)
+    setRssi(int rssi)
+    setSsid(byte[] ssid)
+  class WifiManager
+    addNetwork(android.net.wifi.WifiConfiguration config)
+    addNetworkPrivileged(android.net.wifi.WifiConfiguration config)
+    addNetworkSuggestions(java.util.List<android.net.wifi.WifiNetworkSuggestion> networkSuggestions)
+    addOrUpdatePasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration config)
+    addSuggestionConnectionStatusListener(java.util.concurrent.Executor executor, android.net.wifi.WifiManager.SuggestionConnectionStatusListener listener)
+    addSuggestionUserApprovalStatusListener(java.util.concurrent.Executor executor, android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener listener)
+    allowAutojoinGlobal(boolean allowAutojoin)
+    calculateSignalLevel(int rssi)
+    calculateSignalLevel(int rssi, int numLevels)
+    cancelWps(android.net.wifi.WifiManager.WpsCallback listener)
+    compareSignalLevel(int rssiA, int rssiB)
+    createMulticastLock(java.lang.String tag)
+    createWifiLock(int lockType, java.lang.String tag)
+    createWifiLock(java.lang.String tag)
+    disableNetwork(int netId)
+    enableNetwork(int netId, boolean attemptConnect)
+    getAllowedChannels(int band, int mode)
+    getChannelData(java.util.concurrent.Executor executor, java.util.function.Consumer<java.util.List<android.os.Bundle>> resultsCallback)
+    getUsableChannels(int band, int mode)
+    isCarrierNetworkOffloadEnabled(int subscriptionId, boolean merged)
+    isWifiStandardSupported(int standard)
+    queryAutojoinGlobal(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Boolean> resultsCallback)
+    registerScanResultsCallback(java.util.concurrent.Executor executor, android.net.wifi.WifiManager.ScanResultsCallback callback)
+    registerSubsystemRestartTrackingCallback(java.util.concurrent.Executor executor, android.net.wifi.WifiManager.SubsystemRestartTrackingCallback callback)
+    removeNetwork(int netId)
+    removeNetworkSuggestions(java.util.List<android.net.wifi.WifiNetworkSuggestion> networkSuggestions)
+    removeNetworkSuggestions(java.util.List<android.net.wifi.WifiNetworkSuggestion> networkSuggestions, int action)
+    removePasspointConfiguration(java.lang.String fqdn)
+    removeSuggestionConnectionStatusListener(android.net.wifi.WifiManager.SuggestionConnectionStatusListener listener)
+    removeSuggestionUserApprovalStatusListener(android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener listener)
+    reportCreateInterfaceImpact(int interfaceType, boolean requireNewInterface, java.util.concurrent.Executor executor, java.util.function.BiConsumer<java.lang.Boolean,java.util.Set<android.net.wifi.WifiManager.InterfaceCreationImpact>> resultCallback)
+    setTdlsEnabled(java.net.InetAddress remoteIPAddress, boolean enable)
+    setTdlsEnabledWithMacAddress(java.lang.String remoteMacAddress, boolean enable)
+    setWifiEnabled(boolean enabled)
+    startLocalOnlyHotspot(android.net.wifi.WifiManager.LocalOnlyHotspotCallback callback, android.os.Handler handler)
+    startWps(android.net.wifi.WpsInfo config, android.net.wifi.WifiManager.WpsCallback listener)
+    unregisterScanResultsCallback(android.net.wifi.WifiManager.ScanResultsCallback callback)
+    unregisterSubsystemRestartTrackingCallback(android.net.wifi.WifiManager.SubsystemRestartTrackingCallback callback)
+    updateNetwork(android.net.wifi.WifiConfiguration config)
+    validateSoftApConfiguration(android.net.wifi.SoftApConfiguration config)
+  class WifiManager.AddNetworkResult
+    #ctor(int statusCode, int networkId)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiManager.InterfaceCreationImpact
+    equals(java.lang.Object that)
+    #ctor(int interfaceType, java.util.Set<java.lang.String> packages)
+  class WifiManager.LocalOnlyHotspotCallback
+    onFailed(int reason)
+    onStarted(android.net.wifi.WifiManager.LocalOnlyHotspotReservation reservation)
+  class WifiManager.MulticastLock
+    setReferenceCounted(boolean refCounted)
+  interface WifiManager.SuggestionConnectionStatusListener
+    onConnectionStatus(android.net.wifi.WifiNetworkSuggestion wifiNetworkSuggestion, int failureReason)
+  interface WifiManager.SuggestionUserApprovalStatusListener
+    onUserApprovalStatusChange(int status)
+  class WifiManager.WifiLock
+    setReferenceCounted(boolean refCounted)
+    setWorkSource(android.os.WorkSource ws)
+  class WifiManager.WpsCallback
+    onFailed(int reason)
+    onStarted(java.lang.String pin)
+  class WifiNetworkSpecifier
+    canBeSatisfiedBy(android.net.NetworkSpecifier other)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiNetworkSpecifier.Builder
+    setBand(int band)
+    setBssid(android.net.MacAddress bssid)
+    setBssidPattern(android.net.MacAddress baseAddress, android.net.MacAddress mask)
+    setIsEnhancedOpen(boolean isEnhancedOpen)
+    setIsHiddenSsid(boolean isHiddenSsid)
+    setPreferredChannelsFrequenciesMhz(int[] channelFreqs)
+    setSsid(java.lang.String ssid)
+    setSsidPattern(android.os.PatternMatcher ssidPattern)
+    setWpa2EnterpriseConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa2Passphrase(java.lang.String passphrase)
+    setWpa3Enterprise192BitModeConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa3EnterpriseConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa3EnterpriseStandardModeConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa3Passphrase(java.lang.String passphrase)
+  class WifiNetworkSuggestion
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiNetworkSuggestion.Builder
+    setBssid(android.net.MacAddress bssid)
+    setCarrierMerged(boolean isCarrierMerged)
+    setCredentialSharedWithUser(boolean isShared)
+    setIsAppInteractionRequired(boolean isAppInteractionRequired)
+    setIsEnhancedOpen(boolean isEnhancedOpen)
+    setIsHiddenSsid(boolean isHiddenSsid)
+    setIsInitialAutojoinEnabled(boolean enabled)
+    setIsMetered(boolean isMetered)
+    setIsUserInteractionRequired(boolean isUserInteractionRequired)
+    setIsWpa3SaeH2eOnlyModeEnabled(boolean enable)
+    setMacRandomizationSetting(int macRandomizationSetting)
+    setPasspointConfig(android.net.wifi.hotspot2.PasspointConfiguration passpointConfig)
+    setPriority(int priority)
+    setPriorityGroup(int priorityGroup)
+    setRestricted(boolean isRestricted)
+    setSsid(java.lang.String ssid)
+    setSubscriptionGroup(android.os.ParcelUuid groupUuid)
+    setSubscriptionId(int subscriptionId)
+    setUntrusted(boolean isUntrusted)
+    setWapiEnterpriseConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWapiPassphrase(java.lang.String passphrase)
+    setWifiSsid(android.net.wifi.WifiSsid wifiSsid)
+    setWpa2EnterpriseConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa2Passphrase(java.lang.String passphrase)
+    setWpa3Enterprise192BitModeConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa3EnterpriseConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa3EnterpriseStandardModeConfig(android.net.wifi.WifiEnterpriseConfig enterpriseConfig)
+    setWpa3Passphrase(java.lang.String passphrase)
+  class WifiSsid
+    equals(java.lang.Object thatObject)
+    fromBytes(byte[] bytes)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WpsInfo
+    #ctor(android.net.wifi.WpsInfo source)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.net.wifi.aware
+;---------------------------------------
+  class AttachCallback
+    onAttached(android.net.wifi.aware.WifiAwareSession session)
+  class AwarePairingConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AwarePairingConfig.Builder
+    setBootstrappingMethods(int methods)
+    setPairingCacheEnabled(boolean enabled)
+    setPairingSetupEnabled(boolean enabled)
+    setPairingVerificationEnabled(boolean enabled)
+  class AwareResources
+    #ctor(int availableDataPathsCount, int availablePublishSessionsCount, int availableSubscribeSessionsCount)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Characteristics
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DiscoverySession
+    createNetworkSpecifierOpen(android.net.wifi.aware.PeerHandle peerHandle)
+    createNetworkSpecifierPassphrase(android.net.wifi.aware.PeerHandle peerHandle, java.lang.String passphrase)
+    initiateBootstrappingRequest(android.net.wifi.aware.PeerHandle peerHandle, int method)
+    initiatePairingRequest(android.net.wifi.aware.PeerHandle peerHandle, java.lang.String password, java.lang.String peerDeviceAlias)
+    respondToPairingRequest(int requestId, android.net.wifi.aware.PeerHandle peerHandle, boolean accept, java.lang.String password, java.lang.String peerDeviceAlias)
+    sendMessage(android.net.wifi.aware.PeerHandle peerHandle, int messageId, byte[] message)
+  class DiscoverySessionCallback
+    onBootstrappingConfirmed(android.net.wifi.aware.PeerHandle peerHandle, boolean accept, int method)
+    onMessageReceived(android.net.wifi.aware.PeerHandle peerHandle, byte[] message)
+    onMessageSendFailed(int messageId)
+    onMessageSendSucceeded(int messageId)
+    onPairingSetupConfirmed(android.net.wifi.aware.PeerHandle peerHandle, boolean accept, java.lang.String alias)
+    onPairingSetupRequestReceived(android.net.wifi.aware.PeerHandle peerHandle, int requestId)
+    onPairingVerificationConfirmed(android.net.wifi.aware.PeerHandle peerHandle, boolean accept, java.lang.String alias)
+    onPublishStarted(android.net.wifi.aware.PublishDiscoverySession session)
+    onServiceDiscovered(android.net.wifi.aware.PeerHandle peerHandle, byte[] serviceSpecificInfo, java.util.List<byte[]> matchFilter)
+    onServiceDiscovered(android.net.wifi.aware.ServiceDiscoveryInfo info)
+    onServiceDiscoveredWithinRange(android.net.wifi.aware.PeerHandle peerHandle, byte[] serviceSpecificInfo, java.util.List<byte[]> matchFilter, int distanceMm)
+    onServiceDiscoveredWithinRange(android.net.wifi.aware.ServiceDiscoveryInfo info, int distanceMm)
+    onServiceLost(android.net.wifi.aware.PeerHandle peerHandle, int reason)
+    onSubscribeStarted(android.net.wifi.aware.SubscribeDiscoverySession session)
+  class IdentityChangedListener
+    onClusterIdChanged(int clusterEventType, android.net.MacAddress clusterId)
+    onIdentityChanged(byte[] mac)
+  class ParcelablePeerHandle
+    #ctor(android.net.wifi.aware.PeerHandle peerHandle)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PeerHandle
+    equals(java.lang.Object o)
+  class PublishConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PublishConfig.Builder
+    setDataPathSecurityConfig(android.net.wifi.aware.WifiAwareDataPathSecurityConfig securityConfig)
+    setInstantCommunicationModeEnabled(boolean enabled, int band)
+    setMatchFilter(java.util.List<byte[]> matchFilter)
+    setPairingConfig(android.net.wifi.aware.AwarePairingConfig config)
+    setPublishType(int publishType)
+    setRangingEnabled(boolean enable)
+    setServiceName(java.lang.String serviceName)
+    setServiceSpecificInfo(byte[] serviceSpecificInfo)
+    setTerminateNotificationEnabled(boolean enable)
+    setTtlSec(int ttlSec)
+  class PublishDiscoverySession
+    updatePublish(android.net.wifi.aware.PublishConfig publishConfig)
+  class SubscribeConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SubscribeConfig.Builder
+    setInstantCommunicationModeEnabled(boolean enabled, int band)
+    setMatchFilter(java.util.List<byte[]> matchFilter)
+    setMaxDistanceMm(int maxDistanceMm)
+    setMinDistanceMm(int minDistanceMm)
+    setPairingConfig(android.net.wifi.aware.AwarePairingConfig config)
+    setServiceName(java.lang.String serviceName)
+    setServiceSpecificInfo(byte[] serviceSpecificInfo)
+    setSubscribeType(int subscribeType)
+    setTerminateNotificationEnabled(boolean enable)
+    setTtlSec(int ttlSec)
+  class SubscribeDiscoverySession
+    updateSubscribe(android.net.wifi.aware.SubscribeConfig subscribeConfig)
+  class WifiAwareChannelInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiAwareDataPathSecurityConfig
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiAwareDataPathSecurityConfig.Builder
+    setPmk(byte[] pmk)
+    setPmkId(byte[] pmkId)
+    setPskPassphrase(java.lang.String pskPassphrase)
+    #ctor(int cipherSuite)
+  class WifiAwareManager
+    attach(android.net.wifi.aware.AttachCallback attachCallback, android.net.wifi.aware.IdentityChangedListener identityChangedListener, android.os.Handler handler)
+    attach(android.net.wifi.aware.AttachCallback attachCallback, android.os.Handler handler)
+    getPairedDevice(java.util.concurrent.Executor executor, java.util.function.Consumer<java.util.List<java.lang.String>> resultsCallback)
+    removePairedDevice(java.lang.String alias)
+  class WifiAwareNetworkInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiAwareNetworkSpecifier
+    canBeSatisfiedBy(android.net.NetworkSpecifier other)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiAwareNetworkSpecifier.Builder
+    setChannelFrequencyMhz(int channelInMhz, boolean required)
+    setDataPathSecurityConfig(android.net.wifi.aware.WifiAwareDataPathSecurityConfig securityConfig)
+    setPmk(byte[] pmk)
+    setPort(int port)
+    setPskPassphrase(java.lang.String pskPassphrase)
+    setTransportProtocol(int transportProtocol)
+    #ctor(android.net.wifi.aware.DiscoverySession discoverySession, android.net.wifi.aware.PeerHandle peerHandle)
+    #ctor(android.net.wifi.aware.PublishDiscoverySession publishDiscoverySession)
+  class WifiAwareSession
+    createNetworkSpecifierOpen(int role, byte[] peer)
+    createNetworkSpecifierPassphrase(int role, byte[] peer, java.lang.String passphrase)
+    publish(android.net.wifi.aware.PublishConfig publishConfig, android.net.wifi.aware.DiscoverySessionCallback callback, android.os.Handler handler)
+    subscribe(android.net.wifi.aware.SubscribeConfig subscribeConfig, android.net.wifi.aware.DiscoverySessionCallback callback, android.os.Handler handler)
+
+package android.net.wifi.hotspot2
+;---------------------------------------
+  class ConfigParser
+    parsePasspointConfig(java.lang.String mimeType, byte[] data)
+  class PasspointConfiguration
+    equals(java.lang.Object thatObject)
+    #ctor(android.net.wifi.hotspot2.PasspointConfiguration source)
+    setCredential(android.net.wifi.hotspot2.pps.Credential credential)
+    setDecoratedIdentityPrefix(java.lang.String decoratedIdentityPrefix)
+    setHomeSp(android.net.wifi.hotspot2.pps.HomeSp homeSp)
+    setSubscriptionExpirationTimeInMillis(long subscriptionExpirationTimeInMillis)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.net.wifi.hotspot2.omadm
+;---------------------------------------
+  class PpsMoParser
+    parseMoText(java.lang.String xmlString)
+
+package android.net.wifi.hotspot2.pps
+;---------------------------------------
+  class Credential
+    #ctor(android.net.wifi.hotspot2.pps.Credential source)
+    equals(java.lang.Object thatObject)
+    setCaCertificate(java.security.cert.X509Certificate caCertificate)
+    setCertCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential certCredential)
+    setClientCertificateChain(java.security.cert.X509Certificate[] certificateChain)
+    setClientPrivateKey(java.security.PrivateKey clientPrivateKey)
+    setMinimumTlsVersion(int tlsVersion)
+    setRealm(java.lang.String realm)
+    setSimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential simCredential)
+    setUserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential userCredential)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Credential.CertificateCredential
+    #ctor(android.net.wifi.hotspot2.pps.Credential.CertificateCredential source)
+    equals(java.lang.Object thatObject)
+    setCertSha256Fingerprint(byte[] certSha256Fingerprint)
+    setCertType(java.lang.String certType)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Credential.SimCredential
+    #ctor(android.net.wifi.hotspot2.pps.Credential.SimCredential source)
+    equals(java.lang.Object thatObject)
+    setEapType(int eapType)
+    setImsi(java.lang.String imsi)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Credential.UserCredential
+    #ctor(android.net.wifi.hotspot2.pps.Credential.UserCredential source)
+    equals(java.lang.Object thatObject)
+    setEapType(int eapType)
+    setNonEapInnerMethod(java.lang.String nonEapInnerMethod)
+    setPassword(java.lang.String password)
+    setUsername(java.lang.String username)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class HomeSp
+    equals(java.lang.Object thatObject)
+    #ctor(android.net.wifi.hotspot2.pps.HomeSp source)
+    setFqdn(java.lang.String fqdn)
+    setFriendlyName(java.lang.String friendlyName)
+    setMatchAllOis(long[] matchAllOis)
+    setMatchAnyOis(long[] matchAnyOis)
+    setOtherHomePartnersList(java.util.Collection<java.lang.String> otherHomePartners)
+    setRoamingConsortiumOis(long[] roamingConsortiumOis)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.net.wifi.p2p
+;---------------------------------------
+  class WifiP2pConfig
+    #ctor(android.net.wifi.p2p.WifiP2pConfig source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pConfig.Builder
+    enablePersistentMode(boolean persistent)
+    setDeviceAddress(android.net.MacAddress deviceAddress)
+    setGroupClientIpProvisioningMode(int groupClientIpProvisioningMode)
+    setGroupOperatingBand(int band)
+    setGroupOperatingFrequency(int frequency)
+    setNetworkName(java.lang.String networkName)
+    setPassphrase(java.lang.String passphrase)
+  class WifiP2pDevice
+    equals(java.lang.Object obj)
+    update(android.net.wifi.p2p.WifiP2pDevice device)
+    #ctor(android.net.wifi.p2p.WifiP2pDevice source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pDeviceList
+    get(java.lang.String deviceAddress)
+    #ctor(android.net.wifi.p2p.WifiP2pDeviceList source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pGroup
+    #ctor(android.net.wifi.p2p.WifiP2pGroup source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pInfo
+    #ctor(android.net.wifi.p2p.WifiP2pInfo source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pManager
+    addExternalApprover(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.MacAddress deviceAddress, android.net.wifi.p2p.WifiP2pManager.ExternalApproverRequestListener listener)
+    addLocalService(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo servInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    addServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest req, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    cancelConnect(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    clearLocalServices(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    clearServiceRequests(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    connect(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pConfig config, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    createGroup(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pConfig config, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    createGroup(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    discoverPeers(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    discoverPeersOnSocialChannels(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    discoverPeersOnSpecificFrequency(android.net.wifi.p2p.WifiP2pManager.Channel channel, int frequencyMhz, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    discoverServices(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    initialize(android.content.Context srcContext, android.os.Looper srcLooper, android.net.wifi.p2p.WifiP2pManager.ChannelListener listener)
+    removeClient(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.MacAddress peerAddress, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    removeExternalApprover(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.MacAddress deviceAddress, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    removeGroup(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    removeLocalService(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo servInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    removeServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest req, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    requestConnectionInfo(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener listener)
+    requestDeviceInfo(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.wifi.p2p.WifiP2pManager.DeviceInfoListener listener)
+    requestDiscoveryState(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.wifi.p2p.WifiP2pManager.DiscoveryStateListener listener)
+    requestGroupInfo(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.GroupInfoListener listener)
+    requestNetworkInfo(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.wifi.p2p.WifiP2pManager.NetworkInfoListener listener)
+    requestP2pState(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.wifi.p2p.WifiP2pManager.P2pStateListener listener)
+    requestPeers(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.PeerListListener listener)
+    setConnectionRequestResult(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.MacAddress deviceAddress, int result, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    setConnectionRequestResult(android.net.wifi.p2p.WifiP2pManager.Channel c, android.net.MacAddress deviceAddress, int result, java.lang.String pin, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    setDnsSdResponseListeners(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener servListener, android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener txtListener)
+    setServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener listener)
+    setUpnpServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener listener)
+    setVendorElements(android.net.wifi.p2p.WifiP2pManager.Channel c, java.util.List<android.net.wifi.ScanResult.InformationElement> vendorElements, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    setWfdInfo(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pWfdInfo wfdInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    startListening(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    stopListening(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+    stopPeerDiscovery(android.net.wifi.p2p.WifiP2pManager.Channel channel, android.net.wifi.p2p.WifiP2pManager.ActionListener listener)
+  interface WifiP2pManager.ActionListener
+    onFailure(int reason)
+  interface WifiP2pManager.ConnectionInfoListener
+    onConnectionInfoAvailable(android.net.wifi.p2p.WifiP2pInfo info)
+  interface WifiP2pManager.DeviceInfoListener
+    onDeviceInfoAvailable(android.net.wifi.p2p.WifiP2pDevice wifiP2pDevice)
+  interface WifiP2pManager.DiscoveryStateListener
+    onDiscoveryStateAvailable(int state)
+  interface WifiP2pManager.DnsSdServiceResponseListener
+    onDnsSdServiceAvailable(java.lang.String instanceName, java.lang.String registrationType, android.net.wifi.p2p.WifiP2pDevice srcDevice)
+  interface WifiP2pManager.DnsSdTxtRecordListener
+    onDnsSdTxtRecordAvailable(java.lang.String fullDomainName, java.util.Map<java.lang.String,java.lang.String> txtRecordMap, android.net.wifi.p2p.WifiP2pDevice srcDevice)
+  interface WifiP2pManager.ExternalApproverRequestListener
+    onAttached(android.net.MacAddress deviceAddress)
+    onConnectionRequested(int requestType, android.net.wifi.p2p.WifiP2pConfig config, android.net.wifi.p2p.WifiP2pDevice device)
+    onDetached(android.net.MacAddress deviceAddress, int reason)
+    onPinGenerated(android.net.MacAddress deviceAddress, java.lang.String pin)
+  interface WifiP2pManager.GroupInfoListener
+    onGroupInfoAvailable(android.net.wifi.p2p.WifiP2pGroup group)
+  interface WifiP2pManager.NetworkInfoListener
+    onNetworkInfoAvailable(android.net.NetworkInfo networkInfo)
+  interface WifiP2pManager.P2pStateListener
+    onP2pStateAvailable(int state)
+  interface WifiP2pManager.PeerListListener
+    onPeersAvailable(android.net.wifi.p2p.WifiP2pDeviceList peers)
+  interface WifiP2pManager.ServiceResponseListener
+    onServiceAvailable(int protocolType, byte[] responseData, android.net.wifi.p2p.WifiP2pDevice srcDevice)
+  interface WifiP2pManager.UpnpServiceResponseListener
+    onUpnpServiceAvailable(java.util.List<java.lang.String> uniqueServiceNames, android.net.wifi.p2p.WifiP2pDevice srcDevice)
+  class WifiP2pWfdInfo
+    setContentProtectionSupported(boolean enabled)
+    setControlPort(int port)
+    setCoupledSinkSupportAtSink(boolean enabled)
+    setCoupledSinkSupportAtSource(boolean enabled)
+    setDeviceType(int deviceType)
+    setEnabled(boolean enabled)
+    setMaxThroughput(int maxThroughput)
+    setR2DeviceType(int deviceType)
+    setSessionAvailable(boolean enabled)
+    #ctor(android.net.wifi.p2p.WifiP2pWfdInfo source)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.net.wifi.p2p.nsd
+;---------------------------------------
+  class WifiP2pDnsSdServiceInfo
+    newInstance(java.lang.String instanceName, java.lang.String serviceType, java.util.Map<java.lang.String,java.lang.String> txtMap)
+  class WifiP2pDnsSdServiceRequest
+    newInstance(java.lang.String serviceType)
+    newInstance(java.lang.String instanceName, java.lang.String serviceType)
+  class WifiP2pServiceInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pServiceRequest
+    equals(java.lang.Object o)
+    newInstance(int protocolType)
+    newInstance(int protocolType, java.lang.String queryData)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WifiP2pUpnpServiceInfo
+    newInstance(java.lang.String uuid, java.lang.String device, java.util.List<java.lang.String> services)
+  class WifiP2pUpnpServiceRequest
+    newInstance(java.lang.String st)
+
+package android.net.wifi.rtt
+;---------------------------------------
+  class RangingRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RangingRequest.Builder
+    addAccessPoint(android.net.wifi.ScanResult apInfo)
+    addAccessPoints(java.util.List<android.net.wifi.ScanResult> apInfos)
+    addNon80211mcCapableAccessPoint(android.net.wifi.ScanResult apInfo)
+    addNon80211mcCapableAccessPoints(java.util.List<android.net.wifi.ScanResult> apInfos)
+    addResponder(android.net.wifi.rtt.ResponderConfig responder)
+    addResponders(java.util.List<android.net.wifi.rtt.ResponderConfig> responders)
+    addWifiAwarePeer(android.net.MacAddress peerMacAddress)
+    addWifiAwarePeer(android.net.wifi.aware.PeerHandle peerHandle)
+    setRttBurstSize(int rttBurstSize)
+  class RangingResult
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RangingResultCallback
+    onRangingFailure(int code)
+    onRangingResults(java.util.List<android.net.wifi.rtt.RangingResult> results)
+  class ResponderConfig
+    equals(java.lang.Object o)
+    fromScanResult(android.net.wifi.ScanResult scanResult)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ResponderConfig.Builder
+    set80211mcSupported(boolean supports80211mc)
+    setCenterFreq0Mhz(int centerFreq0)
+    setCenterFreq1Mhz(int centerFreq1)
+    setChannelWidth(int channelWidth)
+    setFrequencyMhz(int frequency)
+    setMacAddress(android.net.MacAddress macAddress)
+    setPreamble(int preamble)
+    setResponderType(int responderType)
+  class ResponderLocation
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class WifiRttManager
+    startRanging(android.net.wifi.rtt.RangingRequest request, java.util.concurrent.Executor executor, android.net.wifi.rtt.RangingResultCallback callback)
+
+package android.nfc
+;---------------------------------------
+  class AvailableNfcAntenna
+    #ctor(int locationX, int locationY)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FormatException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable e)
+  class NdefMessage
+    equals(java.lang.Object obj)
+    #ctor(android.nfc.NdefRecord record, android.nfc.NdefRecord... records)
+    #ctor(android.nfc.NdefRecord[] records)
+    #ctor(byte[] data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NdefRecord
+    createApplicationRecord(java.lang.String packageName)
+    createExternal(java.lang.String domain, java.lang.String type, byte[] data)
+    createMime(java.lang.String mimeType, byte[] mimeData)
+    createTextRecord(java.lang.String languageCode, java.lang.String text)
+    createUri(android.net.Uri uri)
+    createUri(java.lang.String uriString)
+    equals(java.lang.Object obj)
+    #ctor(byte[] data)
+    #ctor(short tnf, byte[] type, byte[] id, byte[] payload)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NfcAdapter
+    disableForegroundDispatch(android.app.Activity activity)
+    disableForegroundNdefPush(android.app.Activity activity)
+    disableReaderMode(android.app.Activity activity)
+    enableForegroundDispatch(android.app.Activity activity, android.app.PendingIntent intent, android.content.IntentFilter[] filters, java.lang.String[][] techLists)
+    enableForegroundNdefPush(android.app.Activity activity, android.nfc.NdefMessage message)
+    enableReaderMode(android.app.Activity activity, android.nfc.NfcAdapter.ReaderCallback callback, int flags, android.os.Bundle extras)
+    getDefaultAdapter(android.content.Context context)
+    ignore(android.nfc.Tag tag, int debounceMs, android.nfc.NfcAdapter.OnTagRemovedListener tagRemovedListener, android.os.Handler handler)
+    invokeBeam(android.app.Activity activity)
+    setBeamPushUris(android.net.Uri[] uris, android.app.Activity activity)
+    setBeamPushUrisCallback(android.nfc.NfcAdapter.CreateBeamUrisCallback callback, android.app.Activity activity)
+    setNdefPushMessage(android.nfc.NdefMessage message, android.app.Activity activity, android.app.Activity... activities)
+    setNdefPushMessageCallback(android.nfc.NfcAdapter.CreateNdefMessageCallback callback, android.app.Activity activity, android.app.Activity... activities)
+    setOnNdefPushCompleteCallback(android.nfc.NfcAdapter.OnNdefPushCompleteCallback callback, android.app.Activity activity, android.app.Activity... activities)
+  interface NfcAdapter.CreateBeamUrisCallback
+    createBeamUris(android.nfc.NfcEvent event)
+  interface NfcAdapter.CreateNdefMessageCallback
+    createNdefMessage(android.nfc.NfcEvent event)
+  interface NfcAdapter.OnNdefPushCompleteCallback
+    onNdefPushComplete(android.nfc.NfcEvent event)
+  interface NfcAdapter.ReaderCallback
+    onTagDiscovered(android.nfc.Tag tag)
+  class NfcAntennaInfo
+    #ctor(int deviceWidth, int deviceHeight, boolean deviceFoldable, java.util.List<android.nfc.AvailableNfcAntenna> availableNfcAntennas)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Tag
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TagLostException
+    #ctor(java.lang.String message)
+
+package android.nfc.cardemulation
+;---------------------------------------
+  class CardEmulation
+    categoryAllowsForegroundPreference(java.lang.String category)
+    getAidsForService(android.content.ComponentName service, java.lang.String category)
+    getInstance(android.nfc.NfcAdapter adapter)
+    getSelectionModeForCategory(java.lang.String category)
+    isDefaultServiceForAid(android.content.ComponentName service, java.lang.String aid)
+    isDefaultServiceForCategory(android.content.ComponentName service, java.lang.String category)
+    registerAidsForService(android.content.ComponentName service, java.lang.String category, java.util.List<java.lang.String> aids)
+    removeAidsForService(android.content.ComponentName service, java.lang.String category)
+    setOffHostForService(android.content.ComponentName service, java.lang.String offHostSecureElement)
+    setPreferredService(android.app.Activity activity, android.content.ComponentName service)
+    unsetOffHostForService(android.content.ComponentName service)
+    unsetPreferredService(android.app.Activity activity)
+  class HostApduService
+    onBind(android.content.Intent intent)
+    onDeactivated(int reason)
+    processCommandApdu(byte[] commandApdu, android.os.Bundle extras)
+    sendResponseApdu(byte[] responseApdu)
+  class HostNfcFService
+    onBind(android.content.Intent intent)
+    onDeactivated(int reason)
+    processNfcFPacket(byte[] commandPacket, android.os.Bundle extras)
+    sendResponsePacket(byte[] responsePacket)
+  class NfcFCardEmulation
+    disableService(android.app.Activity activity)
+    enableService(android.app.Activity activity, android.content.ComponentName service)
+    getInstance(android.nfc.NfcAdapter adapter)
+    getNfcid2ForService(android.content.ComponentName service)
+    getSystemCodeForService(android.content.ComponentName service)
+    registerSystemCodeForService(android.content.ComponentName service, java.lang.String systemCode)
+    setNfcid2ForService(android.content.ComponentName service, java.lang.String nfcid2)
+    unregisterSystemCodeForService(android.content.ComponentName service)
+  class OffHostApduService
+    onBind(android.content.Intent intent)
+
+package android.nfc.tech
+;---------------------------------------
+  class IsoDep
+    get(android.nfc.Tag tag)
+    setTimeout(int timeout)
+    transceive(byte[] data)
+  class MifareClassic
+    authenticateSectorWithKeyA(int sectorIndex, byte[] key)
+    authenticateSectorWithKeyB(int sectorIndex, byte[] key)
+    blockToSector(int blockIndex)
+    decrement(int blockIndex, int value)
+    get(android.nfc.Tag tag)
+    getBlockCountInSector(int sectorIndex)
+    increment(int blockIndex, int value)
+    readBlock(int blockIndex)
+    restore(int blockIndex)
+    sectorToBlock(int sectorIndex)
+    setTimeout(int timeout)
+    transceive(byte[] data)
+    transfer(int blockIndex)
+    writeBlock(int blockIndex, byte[] data)
+  class MifareUltralight
+    get(android.nfc.Tag tag)
+    readPages(int pageOffset)
+    setTimeout(int timeout)
+    transceive(byte[] data)
+    writePage(int pageOffset, byte[] data)
+  class Ndef
+    get(android.nfc.Tag tag)
+    writeNdefMessage(android.nfc.NdefMessage msg)
+  class NdefFormatable
+    format(android.nfc.NdefMessage firstMessage)
+    formatReadOnly(android.nfc.NdefMessage firstMessage)
+    get(android.nfc.Tag tag)
+  class NfcA
+    get(android.nfc.Tag tag)
+    setTimeout(int timeout)
+    transceive(byte[] data)
+  class NfcB
+    get(android.nfc.Tag tag)
+    transceive(byte[] data)
+  class NfcBarcode
+    get(android.nfc.Tag tag)
+  class NfcF
+    get(android.nfc.Tag tag)
+    setTimeout(int timeout)
+    transceive(byte[] data)
+  class NfcV
+    get(android.nfc.Tag tag)
+    transceive(byte[] data)
+
+package android.opengl
+;---------------------------------------
+  class EGL14
+    eglBindAPI(int api)
+    eglBindTexImage(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface, int buffer)
+    eglChooseConfig(android.opengl.EGLDisplay dpy, int[] attrib_list, int attrib_listOffset, android.opengl.EGLConfig[] configs, int configsOffset, int config_size, int[] num_config, int num_configOffset)
+    eglCopyBuffers(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface, int target)
+    eglCreateContext(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, android.opengl.EGLContext share_context, int[] attrib_list, int offset)
+    eglCreatePbufferFromClientBuffer(android.opengl.EGLDisplay dpy, int buftype, int buffer, android.opengl.EGLConfig config, int[] attrib_list, int offset)
+    eglCreatePbufferSurface(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, int[] attrib_list, int offset)
+    eglCreatePixmapSurface(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, int pixmap, int[] attrib_list, int offset)
+    eglCreateWindowSurface(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, java.lang.Object win, int[] attrib_list, int offset)
+    eglDestroyContext(android.opengl.EGLDisplay dpy, android.opengl.EGLContext ctx)
+    eglDestroySurface(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface)
+    eglGetConfigAttrib(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, int attribute, int[] value, int offset)
+    eglGetConfigs(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig[] configs, int configsOffset, int config_size, int[] num_config, int num_configOffset)
+    eglGetCurrentSurface(int readdraw)
+    eglGetDisplay(int display_id)
+    eglInitialize(android.opengl.EGLDisplay dpy, int[] major, int majorOffset, int[] minor, int minorOffset)
+    eglMakeCurrent(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface draw, android.opengl.EGLSurface read, android.opengl.EGLContext ctx)
+    eglQueryContext(android.opengl.EGLDisplay dpy, android.opengl.EGLContext ctx, int attribute, int[] value, int offset)
+    eglQueryString(android.opengl.EGLDisplay dpy, int name)
+    eglQuerySurface(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface, int attribute, int[] value, int offset)
+    eglReleaseTexImage(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface, int buffer)
+    eglSurfaceAttrib(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface, int attribute, int value)
+    eglSwapBuffers(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface surface)
+    eglSwapInterval(android.opengl.EGLDisplay dpy, int interval)
+    eglTerminate(android.opengl.EGLDisplay dpy)
+    eglWaitNative(int engine)
+  class EGL15
+    eglClientWaitSync(android.opengl.EGLDisplay dpy, android.opengl.EGLSync sync, int flags, long timeout)
+    eglCreateImage(android.opengl.EGLDisplay dpy, android.opengl.EGLContext context, int target, long buffer, long[] attrib_list, int offset)
+    eglCreatePlatformPixmapSurface(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, java.nio.Buffer native_pixmap, long[] attrib_list, int offset)
+    eglCreatePlatformWindowSurface(android.opengl.EGLDisplay dpy, android.opengl.EGLConfig config, java.nio.Buffer native_window, long[] attrib_list, int offset)
+    eglCreateSync(android.opengl.EGLDisplay dpy, int type, long[] attrib_list, int offset)
+    eglDestroyImage(android.opengl.EGLDisplay dpy, android.opengl.EGLImage image)
+    eglDestroySync(android.opengl.EGLDisplay dpy, android.opengl.EGLSync sync)
+    eglGetPlatformDisplay(int platform, long native_display, long[] attrib_list, int offset)
+    eglGetSyncAttrib(android.opengl.EGLDisplay dpy, android.opengl.EGLSync sync, int attribute, long[] value, int offset)
+    eglWaitSync(android.opengl.EGLDisplay dpy, android.opengl.EGLSync sync, int flags)
+  class EGLConfig
+    equals(java.lang.Object o)
+  class EGLContext
+    equals(java.lang.Object o)
+  class EGLDisplay
+    equals(java.lang.Object o)
+  class EGLExt
+    eglDupNativeFenceFDANDROID(android.opengl.EGLDisplay display, android.opengl.EGLSync sync)
+    eglPresentationTimeANDROID(android.opengl.EGLDisplay dpy, android.opengl.EGLSurface sur, long time)
+  class EGLImage
+    equals(java.lang.Object o)
+  class EGLObjectHandle
+    #ctor(int handle)
+    #ctor(long handle)
+  class EGLSurface
+    equals(java.lang.Object o)
+  class EGLSync
+    equals(java.lang.Object o)
+  class ETC1
+    decodeBlock(java.nio.Buffer in, java.nio.Buffer out)
+    decodeImage(java.nio.Buffer in, java.nio.Buffer out, int width, int height, int pixelSize, int stride)
+    encodeBlock(java.nio.Buffer in, int validPixelMask, java.nio.Buffer out)
+    encodeImage(java.nio.Buffer in, int width, int height, int pixelSize, int stride, java.nio.Buffer out)
+    formatHeader(java.nio.Buffer header, int width, int height)
+    getEncodedDataSize(int width, int height)
+    getHeight(java.nio.Buffer header)
+    getWidth(java.nio.Buffer header)
+    isValid(java.nio.Buffer header)
+  class ETC1Util
+    compressTexture(java.nio.Buffer input, int width, int height, int pixelSize, int stride)
+    createTexture(java.io.InputStream input)
+    loadTexture(int target, int level, int border, int fallbackFormat, int fallbackType, android.opengl.ETC1Util.ETC1Texture texture)
+    loadTexture(int target, int level, int border, int fallbackFormat, int fallbackType, java.io.InputStream input)
+    writeTexture(android.opengl.ETC1Util.ETC1Texture texture, java.io.OutputStream output)
+  class ETC1Util.ETC1Texture
+    #ctor(int width, int height, java.nio.ByteBuffer data)
+  class GLDebugHelper
+    wrap(javax.microedition.khronos.egl.EGL egl, int configFlags, java.io.Writer log)
+    wrap(javax.microedition.khronos.opengles.GL gl, int configFlags, java.io.Writer log)
+  class GLES10
+    glActiveTexture(int texture)
+    glAlphaFunc(int func, float ref)
+    glAlphaFuncx(int func, int ref)
+    glBindTexture(int target, int texture)
+    glBlendFunc(int sfactor, int dfactor)
+    glClear(int mask)
+    glClearColor(float red, float green, float blue, float alpha)
+    glClearColorx(int red, int green, int blue, int alpha)
+    glClearDepthf(float depth)
+    glClearDepthx(int depth)
+    glClearStencil(int s)
+    glClientActiveTexture(int texture)
+    glColor4f(float red, float green, float blue, float alpha)
+    glColor4x(int red, int green, int blue, int alpha)
+    glColorMask(boolean red, boolean green, boolean blue, boolean alpha)
+    glColorPointer(int size, int type, int stride, java.nio.Buffer pointer)
+    glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, java.nio.Buffer data)
+    glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, java.nio.Buffer data)
+    glCopyTexImage2D(int target, int level, int internalformat, int x, int y, int width, int height, int border)
+    glCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height)
+    glCullFace(int mode)
+    glDeleteTextures(int n, int[] textures, int offset)
+    glDeleteTextures(int n, java.nio.IntBuffer textures)
+    glDepthFunc(int func)
+    glDepthMask(boolean flag)
+    glDepthRangef(float zNear, float zFar)
+    glDepthRangex(int zNear, int zFar)
+    glDisable(int cap)
+    glDisableClientState(int array)
+    glDrawArrays(int mode, int first, int count)
+    glDrawElements(int mode, int count, int type, java.nio.Buffer indices)
+    glEnable(int cap)
+    glEnableClientState(int array)
+    glFogf(int pname, float param)
+    glFogfv(int pname, float[] params, int offset)
+    glFogfv(int pname, java.nio.FloatBuffer params)
+    glFogx(int pname, int param)
+    glFogxv(int pname, int[] params, int offset)
+    glFogxv(int pname, java.nio.IntBuffer params)
+    glFrontFace(int mode)
+    glFrustumf(float left, float right, float bottom, float top, float zNear, float zFar)
+    glFrustumx(int left, int right, int bottom, int top, int zNear, int zFar)
+    glGenTextures(int n, int[] textures, int offset)
+    glGenTextures(int n, java.nio.IntBuffer textures)
+    glGetIntegerv(int pname, int[] params, int offset)
+    glGetIntegerv(int pname, java.nio.IntBuffer params)
+    glGetString(int name)
+    glHint(int target, int mode)
+    glLightf(int light, int pname, float param)
+    glLightfv(int light, int pname, float[] params, int offset)
+    glLightfv(int light, int pname, java.nio.FloatBuffer params)
+    glLightModelf(int pname, float param)
+    glLightModelfv(int pname, float[] params, int offset)
+    glLightModelfv(int pname, java.nio.FloatBuffer params)
+    glLightModelx(int pname, int param)
+    glLightModelxv(int pname, int[] params, int offset)
+    glLightModelxv(int pname, java.nio.IntBuffer params)
+    glLightx(int light, int pname, int param)
+    glLightxv(int light, int pname, int[] params, int offset)
+    glLightxv(int light, int pname, java.nio.IntBuffer params)
+    glLineWidth(float width)
+    glLineWidthx(int width)
+    glLoadMatrixf(float[] m, int offset)
+    glLoadMatrixf(java.nio.FloatBuffer m)
+    glLoadMatrixx(int[] m, int offset)
+    glLoadMatrixx(java.nio.IntBuffer m)
+    glLogicOp(int opcode)
+    glMaterialf(int face, int pname, float param)
+    glMaterialfv(int face, int pname, float[] params, int offset)
+    glMaterialfv(int face, int pname, java.nio.FloatBuffer params)
+    glMaterialx(int face, int pname, int param)
+    glMaterialxv(int face, int pname, int[] params, int offset)
+    glMaterialxv(int face, int pname, java.nio.IntBuffer params)
+    glMatrixMode(int mode)
+    glMultiTexCoord4f(int target, float s, float t, float r, float q)
+    glMultiTexCoord4x(int target, int s, int t, int r, int q)
+    glMultMatrixf(float[] m, int offset)
+    glMultMatrixf(java.nio.FloatBuffer m)
+    glMultMatrixx(int[] m, int offset)
+    glMultMatrixx(java.nio.IntBuffer m)
+    glNormal3f(float nx, float ny, float nz)
+    glNormal3x(int nx, int ny, int nz)
+    glNormalPointer(int type, int stride, java.nio.Buffer pointer)
+    glOrthof(float left, float right, float bottom, float top, float zNear, float zFar)
+    glOrthox(int left, int right, int bottom, int top, int zNear, int zFar)
+    glPixelStorei(int pname, int param)
+    glPointSize(float size)
+    glPointSizex(int size)
+    glPolygonOffset(float factor, float units)
+    glPolygonOffsetx(int factor, int units)
+    glReadPixels(int x, int y, int width, int height, int format, int type, java.nio.Buffer pixels)
+    glRotatef(float angle, float x, float y, float z)
+    glRotatex(int angle, int x, int y, int z)
+    glSampleCoverage(float value, boolean invert)
+    glSampleCoveragex(int value, boolean invert)
+    glScalef(float x, float y, float z)
+    glScalex(int x, int y, int z)
+    glScissor(int x, int y, int width, int height)
+    glShadeModel(int mode)
+    glStencilFunc(int func, int ref, int mask)
+    glStencilMask(int mask)
+    glStencilOp(int fail, int zfail, int zpass)
+    glTexCoordPointer(int size, int type, int stride, java.nio.Buffer pointer)
+    glTexEnvf(int target, int pname, float param)
+    glTexEnvfv(int target, int pname, float[] params, int offset)
+    glTexEnvfv(int target, int pname, java.nio.FloatBuffer params)
+    glTexEnvx(int target, int pname, int param)
+    glTexEnvxv(int target, int pname, int[] params, int offset)
+    glTexEnvxv(int target, int pname, java.nio.IntBuffer params)
+    glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, java.nio.Buffer pixels)
+    glTexParameterf(int target, int pname, float param)
+    glTexParameterx(int target, int pname, int param)
+    glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, java.nio.Buffer pixels)
+    glTranslatef(float x, float y, float z)
+    glTranslatex(int x, int y, int z)
+    glVertexPointer(int size, int type, int stride, java.nio.Buffer pointer)
+    glViewport(int x, int y, int width, int height)
+  class GLES10Ext
+    glQueryMatrixxOES(int[] mantissa, int mantissaOffset, int[] exponent, int exponentOffset)
+    glQueryMatrixxOES(java.nio.IntBuffer mantissa, java.nio.IntBuffer exponent)
+  class GLES11
+    glBindBuffer(int target, int buffer)
+    glBufferData(int target, int size, java.nio.Buffer data, int usage)
+    glBufferSubData(int target, int offset, int size, java.nio.Buffer data)
+    glClipPlanef(int plane, float[] equation, int offset)
+    glClipPlanef(int plane, java.nio.FloatBuffer equation)
+    glClipPlanex(int plane, int[] equation, int offset)
+    glClipPlanex(int plane, java.nio.IntBuffer equation)
+    glColor4ub(byte red, byte green, byte blue, byte alpha)
+    glColorPointer(int size, int type, int stride, int offset)
+    glDeleteBuffers(int n, int[] buffers, int offset)
+    glDeleteBuffers(int n, java.nio.IntBuffer buffers)
+    glDrawElements(int mode, int count, int type, int offset)
+    glGenBuffers(int n, int[] buffers, int offset)
+    glGenBuffers(int n, java.nio.IntBuffer buffers)
+    glGetBooleanv(int pname, boolean[] params, int offset)
+    glGetBooleanv(int pname, java.nio.IntBuffer params)
+    glGetBufferParameteriv(int target, int pname, int[] params, int offset)
+    glGetBufferParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetClipPlanef(int pname, float[] eqn, int offset)
+    glGetClipPlanef(int pname, java.nio.FloatBuffer eqn)
+    glGetClipPlanex(int pname, int[] eqn, int offset)
+    glGetClipPlanex(int pname, java.nio.IntBuffer eqn)
+    glGetFixedv(int pname, int[] params, int offset)
+    glGetFixedv(int pname, java.nio.IntBuffer params)
+    glGetFloatv(int pname, float[] params, int offset)
+    glGetFloatv(int pname, java.nio.FloatBuffer params)
+    glGetLightfv(int light, int pname, float[] params, int offset)
+    glGetLightfv(int light, int pname, java.nio.FloatBuffer params)
+    glGetLightxv(int light, int pname, int[] params, int offset)
+    glGetLightxv(int light, int pname, java.nio.IntBuffer params)
+    glGetMaterialfv(int face, int pname, float[] params, int offset)
+    glGetMaterialfv(int face, int pname, java.nio.FloatBuffer params)
+    glGetMaterialxv(int face, int pname, int[] params, int offset)
+    glGetMaterialxv(int face, int pname, java.nio.IntBuffer params)
+    glGetTexEnvfv(int env, int pname, float[] params, int offset)
+    glGetTexEnvfv(int env, int pname, java.nio.FloatBuffer params)
+    glGetTexEnviv(int env, int pname, int[] params, int offset)
+    glGetTexEnviv(int env, int pname, java.nio.IntBuffer params)
+    glGetTexEnvxv(int env, int pname, int[] params, int offset)
+    glGetTexEnvxv(int env, int pname, java.nio.IntBuffer params)
+    glGetTexParameterfv(int target, int pname, float[] params, int offset)
+    glGetTexParameterfv(int target, int pname, java.nio.FloatBuffer params)
+    glGetTexParameteriv(int target, int pname, int[] params, int offset)
+    glGetTexParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetTexParameterxv(int target, int pname, int[] params, int offset)
+    glGetTexParameterxv(int target, int pname, java.nio.IntBuffer params)
+    glIsBuffer(int buffer)
+    glIsEnabled(int cap)
+    glIsTexture(int texture)
+    glNormalPointer(int type, int stride, int offset)
+    glPointParameterf(int pname, float param)
+    glPointParameterfv(int pname, float[] params, int offset)
+    glPointParameterfv(int pname, java.nio.FloatBuffer params)
+    glPointParameterx(int pname, int param)
+    glPointParameterxv(int pname, int[] params, int offset)
+    glPointParameterxv(int pname, java.nio.IntBuffer params)
+    glPointSizePointerOES(int type, int stride, java.nio.Buffer pointer)
+    glTexCoordPointer(int size, int type, int stride, int offset)
+    glTexEnvi(int target, int pname, int param)
+    glTexEnviv(int target, int pname, int[] params, int offset)
+    glTexEnviv(int target, int pname, java.nio.IntBuffer params)
+    glTexParameterfv(int target, int pname, float[] params, int offset)
+    glTexParameterfv(int target, int pname, java.nio.FloatBuffer params)
+    glTexParameteri(int target, int pname, int param)
+    glTexParameteriv(int target, int pname, int[] params, int offset)
+    glTexParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glTexParameterxv(int target, int pname, int[] params, int offset)
+    glTexParameterxv(int target, int pname, java.nio.IntBuffer params)
+    glVertexPointer(int size, int type, int stride, int offset)
+  class GLES11Ext
+    glAlphaFuncxOES(int func, int ref)
+    glBindFramebufferOES(int target, int framebuffer)
+    glBindRenderbufferOES(int target, int renderbuffer)
+    glBlendEquationOES(int mode)
+    glBlendEquationSeparateOES(int modeRGB, int modeAlpha)
+    glBlendFuncSeparateOES(int srcRGB, int dstRGB, int srcAlpha, int dstAlpha)
+    glCheckFramebufferStatusOES(int target)
+    glClearColorxOES(int red, int green, int blue, int alpha)
+    glClearDepthfOES(float depth)
+    glClearDepthxOES(int depth)
+    glClipPlanefOES(int plane, float[] equation, int offset)
+    glClipPlanefOES(int plane, java.nio.FloatBuffer equation)
+    glClipPlanexOES(int plane, int[] equation, int offset)
+    glClipPlanexOES(int plane, java.nio.IntBuffer equation)
+    glColor4xOES(int red, int green, int blue, int alpha)
+    glCurrentPaletteMatrixOES(int matrixpaletteindex)
+    glDeleteFramebuffersOES(int n, int[] framebuffers, int offset)
+    glDeleteFramebuffersOES(int n, java.nio.IntBuffer framebuffers)
+    glDeleteRenderbuffersOES(int n, int[] renderbuffers, int offset)
+    glDeleteRenderbuffersOES(int n, java.nio.IntBuffer renderbuffers)
+    glDepthRangefOES(float zNear, float zFar)
+    glDepthRangexOES(int zNear, int zFar)
+    glDrawTexfOES(float x, float y, float z, float width, float height)
+    glDrawTexfvOES(float[] coords, int offset)
+    glDrawTexfvOES(java.nio.FloatBuffer coords)
+    glDrawTexiOES(int x, int y, int z, int width, int height)
+    glDrawTexivOES(int[] coords, int offset)
+    glDrawTexivOES(java.nio.IntBuffer coords)
+    glDrawTexsOES(short x, short y, short z, short width, short height)
+    glDrawTexsvOES(java.nio.ShortBuffer coords)
+    glDrawTexsvOES(short[] coords, int offset)
+    glDrawTexxOES(int x, int y, int z, int width, int height)
+    glDrawTexxvOES(int[] coords, int offset)
+    glDrawTexxvOES(java.nio.IntBuffer coords)
+    glEGLImageTargetRenderbufferStorageOES(int target, java.nio.Buffer image)
+    glEGLImageTargetTexture2DOES(int target, java.nio.Buffer image)
+    glFogxOES(int pname, int param)
+    glFogxvOES(int pname, int[] params, int offset)
+    glFogxvOES(int pname, java.nio.IntBuffer params)
+    glFramebufferRenderbufferOES(int target, int attachment, int renderbuffertarget, int renderbuffer)
+    glFramebufferTexture2DOES(int target, int attachment, int textarget, int texture, int level)
+    glFrustumfOES(float left, float right, float bottom, float top, float zNear, float zFar)
+    glFrustumxOES(int left, int right, int bottom, int top, int zNear, int zFar)
+    glGenerateMipmapOES(int target)
+    glGenFramebuffersOES(int n, int[] framebuffers, int offset)
+    glGenFramebuffersOES(int n, java.nio.IntBuffer framebuffers)
+    glGenRenderbuffersOES(int n, int[] renderbuffers, int offset)
+    glGenRenderbuffersOES(int n, java.nio.IntBuffer renderbuffers)
+    glGetClipPlanefOES(int pname, float[] eqn, int offset)
+    glGetClipPlanefOES(int pname, java.nio.FloatBuffer eqn)
+    glGetClipPlanexOES(int pname, int[] eqn, int offset)
+    glGetClipPlanexOES(int pname, java.nio.IntBuffer eqn)
+    glGetFixedvOES(int pname, int[] params, int offset)
+    glGetFixedvOES(int pname, java.nio.IntBuffer params)
+    glGetFramebufferAttachmentParameterivOES(int target, int attachment, int pname, int[] params, int offset)
+    glGetFramebufferAttachmentParameterivOES(int target, int attachment, int pname, java.nio.IntBuffer params)
+    glGetLightxvOES(int light, int pname, int[] params, int offset)
+    glGetLightxvOES(int light, int pname, java.nio.IntBuffer params)
+    glGetMaterialxvOES(int face, int pname, int[] params, int offset)
+    glGetMaterialxvOES(int face, int pname, java.nio.IntBuffer params)
+    glGetRenderbufferParameterivOES(int target, int pname, int[] params, int offset)
+    glGetRenderbufferParameterivOES(int target, int pname, java.nio.IntBuffer params)
+    glGetTexEnvxvOES(int env, int pname, int[] params, int offset)
+    glGetTexEnvxvOES(int env, int pname, java.nio.IntBuffer params)
+    glGetTexGenfvOES(int coord, int pname, float[] params, int offset)
+    glGetTexGenfvOES(int coord, int pname, java.nio.FloatBuffer params)
+    glGetTexGenivOES(int coord, int pname, int[] params, int offset)
+    glGetTexGenivOES(int coord, int pname, java.nio.IntBuffer params)
+    glGetTexGenxvOES(int coord, int pname, int[] params, int offset)
+    glGetTexGenxvOES(int coord, int pname, java.nio.IntBuffer params)
+    glGetTexParameterxvOES(int target, int pname, int[] params, int offset)
+    glGetTexParameterxvOES(int target, int pname, java.nio.IntBuffer params)
+    glIsFramebufferOES(int framebuffer)
+    glIsRenderbufferOES(int renderbuffer)
+    glLightModelxOES(int pname, int param)
+    glLightModelxvOES(int pname, int[] params, int offset)
+    glLightModelxvOES(int pname, java.nio.IntBuffer params)
+    glLightxOES(int light, int pname, int param)
+    glLightxvOES(int light, int pname, int[] params, int offset)
+    glLightxvOES(int light, int pname, java.nio.IntBuffer params)
+    glLineWidthxOES(int width)
+    glLoadMatrixxOES(int[] m, int offset)
+    glLoadMatrixxOES(java.nio.IntBuffer m)
+    glMaterialxOES(int face, int pname, int param)
+    glMaterialxvOES(int face, int pname, int[] params, int offset)
+    glMaterialxvOES(int face, int pname, java.nio.IntBuffer params)
+    glMatrixIndexPointerOES(int size, int type, int stride, java.nio.Buffer pointer)
+    glMultiTexCoord4xOES(int target, int s, int t, int r, int q)
+    glMultMatrixxOES(int[] m, int offset)
+    glMultMatrixxOES(java.nio.IntBuffer m)
+    glNormal3xOES(int nx, int ny, int nz)
+    glOrthofOES(float left, float right, float bottom, float top, float zNear, float zFar)
+    glOrthoxOES(int left, int right, int bottom, int top, int zNear, int zFar)
+    glPointParameterxOES(int pname, int param)
+    glPointParameterxvOES(int pname, int[] params, int offset)
+    glPointParameterxvOES(int pname, java.nio.IntBuffer params)
+    glPointSizexOES(int size)
+    glPolygonOffsetxOES(int factor, int units)
+    glRenderbufferStorageOES(int target, int internalformat, int width, int height)
+    glRotatexOES(int angle, int x, int y, int z)
+    glSampleCoveragexOES(int value, boolean invert)
+    glScalexOES(int x, int y, int z)
+    glTexEnvxOES(int target, int pname, int param)
+    glTexEnvxvOES(int target, int pname, int[] params, int offset)
+    glTexEnvxvOES(int target, int pname, java.nio.IntBuffer params)
+    glTexGenfOES(int coord, int pname, float param)
+    glTexGenfvOES(int coord, int pname, float[] params, int offset)
+    glTexGenfvOES(int coord, int pname, java.nio.FloatBuffer params)
+    glTexGeniOES(int coord, int pname, int param)
+    glTexGenivOES(int coord, int pname, int[] params, int offset)
+    glTexGenivOES(int coord, int pname, java.nio.IntBuffer params)
+    glTexGenxOES(int coord, int pname, int param)
+    glTexGenxvOES(int coord, int pname, int[] params, int offset)
+    glTexGenxvOES(int coord, int pname, java.nio.IntBuffer params)
+    glTexParameterxOES(int target, int pname, int param)
+    glTexParameterxvOES(int target, int pname, int[] params, int offset)
+    glTexParameterxvOES(int target, int pname, java.nio.IntBuffer params)
+    glTranslatexOES(int x, int y, int z)
+    glWeightPointerOES(int size, int type, int stride, java.nio.Buffer pointer)
+  class GLES20
+    glActiveTexture(int texture)
+    glAttachShader(int program, int shader)
+    glBindAttribLocation(int program, int index, java.lang.String name)
+    glBindBuffer(int target, int buffer)
+    glBindFramebuffer(int target, int framebuffer)
+    glBindRenderbuffer(int target, int renderbuffer)
+    glBindTexture(int target, int texture)
+    glBlendColor(float red, float green, float blue, float alpha)
+    glBlendEquation(int mode)
+    glBlendEquationSeparate(int modeRGB, int modeAlpha)
+    glBlendFunc(int sfactor, int dfactor)
+    glBlendFuncSeparate(int srcRGB, int dstRGB, int srcAlpha, int dstAlpha)
+    glBufferData(int target, int size, java.nio.Buffer data, int usage)
+    glBufferSubData(int target, int offset, int size, java.nio.Buffer data)
+    glCheckFramebufferStatus(int target)
+    glClear(int mask)
+    glClearColor(float red, float green, float blue, float alpha)
+    glClearDepthf(float depth)
+    glClearStencil(int s)
+    glColorMask(boolean red, boolean green, boolean blue, boolean alpha)
+    glCompileShader(int shader)
+    glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, java.nio.Buffer data)
+    glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, java.nio.Buffer data)
+    glCopyTexImage2D(int target, int level, int internalformat, int x, int y, int width, int height, int border)
+    glCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height)
+    glCreateShader(int type)
+    glCullFace(int mode)
+    glDeleteBuffers(int n, int[] buffers, int offset)
+    glDeleteBuffers(int n, java.nio.IntBuffer buffers)
+    glDeleteFramebuffers(int n, int[] framebuffers, int offset)
+    glDeleteFramebuffers(int n, java.nio.IntBuffer framebuffers)
+    glDeleteProgram(int program)
+    glDeleteRenderbuffers(int n, int[] renderbuffers, int offset)
+    glDeleteRenderbuffers(int n, java.nio.IntBuffer renderbuffers)
+    glDeleteShader(int shader)
+    glDeleteTextures(int n, int[] textures, int offset)
+    glDeleteTextures(int n, java.nio.IntBuffer textures)
+    glDepthFunc(int func)
+    glDepthMask(boolean flag)
+    glDepthRangef(float zNear, float zFar)
+    glDetachShader(int program, int shader)
+    glDisable(int cap)
+    glDisableVertexAttribArray(int index)
+    glDrawArrays(int mode, int first, int count)
+    glDrawElements(int mode, int count, int type, int offset)
+    glDrawElements(int mode, int count, int type, java.nio.Buffer indices)
+    glEnable(int cap)
+    glEnableVertexAttribArray(int index)
+    glFramebufferRenderbuffer(int target, int attachment, int renderbuffertarget, int renderbuffer)
+    glFramebufferTexture2D(int target, int attachment, int textarget, int texture, int level)
+    glFrontFace(int mode)
+    glGenBuffers(int n, int[] buffers, int offset)
+    glGenBuffers(int n, java.nio.IntBuffer buffers)
+    glGenerateMipmap(int target)
+    glGenFramebuffers(int n, int[] framebuffers, int offset)
+    glGenFramebuffers(int n, java.nio.IntBuffer framebuffers)
+    glGenRenderbuffers(int n, int[] renderbuffers, int offset)
+    glGenRenderbuffers(int n, java.nio.IntBuffer renderbuffers)
+    glGenTextures(int n, int[] textures, int offset)
+    glGenTextures(int n, java.nio.IntBuffer textures)
+    glGetActiveAttrib(int program, int index, int bufsize, int[] length, int lengthOffset, int[] size, int sizeOffset, int[] type, int typeOffset, byte[] name, int nameOffset)
+    glGetActiveAttrib(int program, int index, int[] size, int sizeOffset, int[] type, int typeOffset)
+    glGetActiveAttrib(int program, int index, java.nio.IntBuffer size, java.nio.IntBuffer type)
+    glGetActiveUniform(int program, int index, int bufsize, int[] length, int lengthOffset, int[] size, int sizeOffset, int[] type, int typeOffset, byte[] name, int nameOffset)
+    glGetActiveUniform(int program, int index, int[] size, int sizeOffset, int[] type, int typeOffset)
+    glGetActiveUniform(int program, int index, java.nio.IntBuffer size, java.nio.IntBuffer type)
+    glGetAttachedShaders(int program, int maxcount, int[] count, int countOffset, int[] shaders, int shadersOffset)
+    glGetAttachedShaders(int program, int maxcount, java.nio.IntBuffer count, java.nio.IntBuffer shaders)
+    glGetAttribLocation(int program, java.lang.String name)
+    glGetBooleanv(int pname, boolean[] params, int offset)
+    glGetBooleanv(int pname, java.nio.IntBuffer params)
+    glGetBufferParameteriv(int target, int pname, int[] params, int offset)
+    glGetBufferParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetFloatv(int pname, float[] params, int offset)
+    glGetFloatv(int pname, java.nio.FloatBuffer params)
+    glGetFramebufferAttachmentParameteriv(int target, int attachment, int pname, int[] params, int offset)
+    glGetFramebufferAttachmentParameteriv(int target, int attachment, int pname, java.nio.IntBuffer params)
+    glGetIntegerv(int pname, int[] params, int offset)
+    glGetIntegerv(int pname, java.nio.IntBuffer params)
+    glGetProgramInfoLog(int program)
+    glGetProgramiv(int program, int pname, int[] params, int offset)
+    glGetProgramiv(int program, int pname, java.nio.IntBuffer params)
+    glGetRenderbufferParameteriv(int target, int pname, int[] params, int offset)
+    glGetRenderbufferParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetShaderInfoLog(int shader)
+    glGetShaderiv(int shader, int pname, int[] params, int offset)
+    glGetShaderiv(int shader, int pname, java.nio.IntBuffer params)
+    glGetShaderPrecisionFormat(int shadertype, int precisiontype, int[] range, int rangeOffset, int[] precision, int precisionOffset)
+    glGetShaderPrecisionFormat(int shadertype, int precisiontype, java.nio.IntBuffer range, java.nio.IntBuffer precision)
+    glGetShaderSource(int shader)
+    glGetShaderSource(int shader, int bufsize, int[] length, int lengthOffset, byte[] source, int sourceOffset)
+    glGetString(int name)
+    glGetTexParameterfv(int target, int pname, float[] params, int offset)
+    glGetTexParameterfv(int target, int pname, java.nio.FloatBuffer params)
+    glGetTexParameteriv(int target, int pname, int[] params, int offset)
+    glGetTexParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetUniformfv(int program, int location, float[] params, int offset)
+    glGetUniformfv(int program, int location, java.nio.FloatBuffer params)
+    glGetUniformiv(int program, int location, int[] params, int offset)
+    glGetUniformiv(int program, int location, java.nio.IntBuffer params)
+    glGetUniformLocation(int program, java.lang.String name)
+    glGetVertexAttribfv(int index, int pname, float[] params, int offset)
+    glGetVertexAttribfv(int index, int pname, java.nio.FloatBuffer params)
+    glGetVertexAttribiv(int index, int pname, int[] params, int offset)
+    glGetVertexAttribiv(int index, int pname, java.nio.IntBuffer params)
+    glHint(int target, int mode)
+    glIsBuffer(int buffer)
+    glIsEnabled(int cap)
+    glIsFramebuffer(int framebuffer)
+    glIsProgram(int program)
+    glIsRenderbuffer(int renderbuffer)
+    glIsShader(int shader)
+    glIsTexture(int texture)
+    glLineWidth(float width)
+    glLinkProgram(int program)
+    glPixelStorei(int pname, int param)
+    glPolygonOffset(float factor, float units)
+    glReadPixels(int x, int y, int width, int height, int format, int type, java.nio.Buffer pixels)
+    glRenderbufferStorage(int target, int internalformat, int width, int height)
+    glSampleCoverage(float value, boolean invert)
+    glScissor(int x, int y, int width, int height)
+    glShaderBinary(int n, int[] shaders, int offset, int binaryformat, java.nio.Buffer binary, int length)
+    glShaderBinary(int n, java.nio.IntBuffer shaders, int binaryformat, java.nio.Buffer binary, int length)
+    glShaderSource(int shader, java.lang.String string)
+    glStencilFunc(int func, int ref, int mask)
+    glStencilFuncSeparate(int face, int func, int ref, int mask)
+    glStencilMask(int mask)
+    glStencilMaskSeparate(int face, int mask)
+    glStencilOp(int fail, int zfail, int zpass)
+    glStencilOpSeparate(int face, int fail, int zfail, int zpass)
+    glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, java.nio.Buffer pixels)
+    glTexParameterf(int target, int pname, float param)
+    glTexParameterfv(int target, int pname, float[] params, int offset)
+    glTexParameterfv(int target, int pname, java.nio.FloatBuffer params)
+    glTexParameteri(int target, int pname, int param)
+    glTexParameteriv(int target, int pname, int[] params, int offset)
+    glTexParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, java.nio.Buffer pixels)
+    glUniform1f(int location, float x)
+    glUniform1fv(int location, int count, float[] v, int offset)
+    glUniform1fv(int location, int count, java.nio.FloatBuffer v)
+    glUniform1i(int location, int x)
+    glUniform1iv(int location, int count, int[] v, int offset)
+    glUniform1iv(int location, int count, java.nio.IntBuffer v)
+    glUniform2f(int location, float x, float y)
+    glUniform2fv(int location, int count, float[] v, int offset)
+    glUniform2fv(int location, int count, java.nio.FloatBuffer v)
+    glUniform2i(int location, int x, int y)
+    glUniform2iv(int location, int count, int[] v, int offset)
+    glUniform2iv(int location, int count, java.nio.IntBuffer v)
+    glUniform3f(int location, float x, float y, float z)
+    glUniform3fv(int location, int count, float[] v, int offset)
+    glUniform3fv(int location, int count, java.nio.FloatBuffer v)
+    glUniform3i(int location, int x, int y, int z)
+    glUniform3iv(int location, int count, int[] v, int offset)
+    glUniform3iv(int location, int count, java.nio.IntBuffer v)
+    glUniform4f(int location, float x, float y, float z, float w)
+    glUniform4fv(int location, int count, float[] v, int offset)
+    glUniform4fv(int location, int count, java.nio.FloatBuffer v)
+    glUniform4i(int location, int x, int y, int z, int w)
+    glUniform4iv(int location, int count, int[] v, int offset)
+    glUniform4iv(int location, int count, java.nio.IntBuffer v)
+    glUniformMatrix2fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix2fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix3fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix3fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix4fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix4fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUseProgram(int program)
+    glValidateProgram(int program)
+    glVertexAttrib1f(int indx, float x)
+    glVertexAttrib1fv(int indx, float[] values, int offset)
+    glVertexAttrib1fv(int indx, java.nio.FloatBuffer values)
+    glVertexAttrib2f(int indx, float x, float y)
+    glVertexAttrib2fv(int indx, float[] values, int offset)
+    glVertexAttrib2fv(int indx, java.nio.FloatBuffer values)
+    glVertexAttrib3f(int indx, float x, float y, float z)
+    glVertexAttrib3fv(int indx, float[] values, int offset)
+    glVertexAttrib3fv(int indx, java.nio.FloatBuffer values)
+    glVertexAttrib4f(int indx, float x, float y, float z, float w)
+    glVertexAttrib4fv(int indx, float[] values, int offset)
+    glVertexAttrib4fv(int indx, java.nio.FloatBuffer values)
+    glVertexAttribPointer(int indx, int size, int type, boolean normalized, int stride, int offset)
+    glVertexAttribPointer(int indx, int size, int type, boolean normalized, int stride, java.nio.Buffer ptr)
+    glViewport(int x, int y, int width, int height)
+  class GLES30
+    glBeginQuery(int target, int id)
+    glBeginTransformFeedback(int primitiveMode)
+    glBindBufferBase(int target, int index, int buffer)
+    glBindBufferRange(int target, int index, int buffer, int offset, int size)
+    glBindSampler(int unit, int sampler)
+    glBindTransformFeedback(int target, int id)
+    glBindVertexArray(int array)
+    glBlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter)
+    glClearBufferfi(int buffer, int drawbuffer, float depth, int stencil)
+    glClearBufferfv(int buffer, int drawbuffer, float[] value, int offset)
+    glClearBufferfv(int buffer, int drawbuffer, java.nio.FloatBuffer value)
+    glClearBufferiv(int buffer, int drawbuffer, int[] value, int offset)
+    glClearBufferiv(int buffer, int drawbuffer, java.nio.IntBuffer value)
+    glClearBufferuiv(int buffer, int drawbuffer, int[] value, int offset)
+    glClearBufferuiv(int buffer, int drawbuffer, java.nio.IntBuffer value)
+    glClientWaitSync(long sync, int flags, long timeout)
+    glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int offset)
+    glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, java.nio.Buffer data)
+    glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int offset)
+    glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, java.nio.Buffer data)
+    glCopyBufferSubData(int readTarget, int writeTarget, int readOffset, int writeOffset, int size)
+    glCopyTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height)
+    glDeleteQueries(int n, int[] ids, int offset)
+    glDeleteQueries(int n, java.nio.IntBuffer ids)
+    glDeleteSamplers(int count, int[] samplers, int offset)
+    glDeleteSamplers(int count, java.nio.IntBuffer samplers)
+    glDeleteSync(long sync)
+    glDeleteTransformFeedbacks(int n, int[] ids, int offset)
+    glDeleteTransformFeedbacks(int n, java.nio.IntBuffer ids)
+    glDeleteVertexArrays(int n, int[] arrays, int offset)
+    glDeleteVertexArrays(int n, java.nio.IntBuffer arrays)
+    glDrawArraysInstanced(int mode, int first, int count, int instanceCount)
+    glDrawBuffers(int n, int[] bufs, int offset)
+    glDrawBuffers(int n, java.nio.IntBuffer bufs)
+    glDrawElementsInstanced(int mode, int count, int type, int indicesOffset, int instanceCount)
+    glDrawElementsInstanced(int mode, int count, int type, java.nio.Buffer indices, int instanceCount)
+    glDrawRangeElements(int mode, int start, int end, int count, int type, int offset)
+    glDrawRangeElements(int mode, int start, int end, int count, int type, java.nio.Buffer indices)
+    glEndQuery(int target)
+    glFenceSync(int condition, int flags)
+    glFlushMappedBufferRange(int target, int offset, int length)
+    glFramebufferTextureLayer(int target, int attachment, int texture, int level, int layer)
+    glGenQueries(int n, int[] ids, int offset)
+    glGenQueries(int n, java.nio.IntBuffer ids)
+    glGenSamplers(int count, int[] samplers, int offset)
+    glGenSamplers(int count, java.nio.IntBuffer samplers)
+    glGenTransformFeedbacks(int n, int[] ids, int offset)
+    glGenTransformFeedbacks(int n, java.nio.IntBuffer ids)
+    glGenVertexArrays(int n, int[] arrays, int offset)
+    glGenVertexArrays(int n, java.nio.IntBuffer arrays)
+    glGetActiveUniformBlockiv(int program, int uniformBlockIndex, int pname, int[] params, int offset)
+    glGetActiveUniformBlockiv(int program, int uniformBlockIndex, int pname, java.nio.IntBuffer params)
+    glGetActiveUniformBlockName(int program, int uniformBlockIndex)
+    glGetActiveUniformBlockName(int program, int uniformBlockIndex, int bufSize, int[] length, int lengthOffset, byte[] uniformBlockName, int uniformBlockNameOffset)
+    glGetActiveUniformBlockName(int program, int uniformBlockIndex, java.nio.Buffer length, java.nio.Buffer uniformBlockName)
+    glGetActiveUniformsiv(int program, int uniformCount, int[] uniformIndices, int uniformIndicesOffset, int pname, int[] params, int paramsOffset)
+    glGetActiveUniformsiv(int program, int uniformCount, java.nio.IntBuffer uniformIndices, int pname, java.nio.IntBuffer params)
+    glGetBufferParameteri64v(int target, int pname, java.nio.LongBuffer params)
+    glGetBufferParameteri64v(int target, int pname, long[] params, int offset)
+    glGetBufferPointerv(int target, int pname)
+    glGetFragDataLocation(int program, java.lang.String name)
+    glGetInteger64i_v(int target, int index, java.nio.LongBuffer data)
+    glGetInteger64i_v(int target, int index, long[] data, int offset)
+    glGetInteger64v(int pname, java.nio.LongBuffer params)
+    glGetInteger64v(int pname, long[] params, int offset)
+    glGetIntegeri_v(int target, int index, int[] data, int offset)
+    glGetIntegeri_v(int target, int index, java.nio.IntBuffer data)
+    glGetInternalformativ(int target, int internalformat, int pname, int bufSize, int[] params, int offset)
+    glGetInternalformativ(int target, int internalformat, int pname, int bufSize, java.nio.IntBuffer params)
+    glGetProgramBinary(int program, int bufSize, int[] length, int lengthOffset, int[] binaryFormat, int binaryFormatOffset, java.nio.Buffer binary)
+    glGetProgramBinary(int program, int bufSize, java.nio.IntBuffer length, java.nio.IntBuffer binaryFormat, java.nio.Buffer binary)
+    glGetQueryiv(int target, int pname, int[] params, int offset)
+    glGetQueryiv(int target, int pname, java.nio.IntBuffer params)
+    glGetQueryObjectuiv(int id, int pname, int[] params, int offset)
+    glGetQueryObjectuiv(int id, int pname, java.nio.IntBuffer params)
+    glGetSamplerParameterfv(int sampler, int pname, float[] params, int offset)
+    glGetSamplerParameterfv(int sampler, int pname, java.nio.FloatBuffer params)
+    glGetSamplerParameteriv(int sampler, int pname, int[] params, int offset)
+    glGetSamplerParameteriv(int sampler, int pname, java.nio.IntBuffer params)
+    glGetStringi(int name, int index)
+    glGetSynciv(long sync, int pname, int bufSize, int[] length, int lengthOffset, int[] values, int valuesOffset)
+    glGetSynciv(long sync, int pname, int bufSize, java.nio.IntBuffer length, java.nio.IntBuffer values)
+    glGetTransformFeedbackVarying(int program, int index, int bufsize, int[] length, int lengthOffset, int[] size, int sizeOffset, int[] type, int typeOffset, byte[] name, int nameOffset)
+    glGetTransformFeedbackVarying(int program, int index, int bufsize, java.nio.IntBuffer length, java.nio.IntBuffer size, java.nio.IntBuffer type, byte name)
+    glGetTransformFeedbackVarying(int program, int index, int bufsize, java.nio.IntBuffer length, java.nio.IntBuffer size, java.nio.IntBuffer type, java.nio.ByteBuffer name)
+    glGetTransformFeedbackVarying(int program, int index, int[] size, int sizeOffset, int[] type, int typeOffset)
+    glGetTransformFeedbackVarying(int program, int index, java.nio.IntBuffer size, java.nio.IntBuffer type)
+    glGetUniformBlockIndex(int program, java.lang.String uniformBlockName)
+    glGetUniformIndices(int program, java.lang.String[] uniformNames, int[] uniformIndices, int uniformIndicesOffset)
+    glGetUniformIndices(int program, java.lang.String[] uniformNames, java.nio.IntBuffer uniformIndices)
+    glGetUniformuiv(int program, int location, int[] params, int offset)
+    glGetUniformuiv(int program, int location, java.nio.IntBuffer params)
+    glGetVertexAttribIiv(int index, int pname, int[] params, int offset)
+    glGetVertexAttribIiv(int index, int pname, java.nio.IntBuffer params)
+    glGetVertexAttribIuiv(int index, int pname, int[] params, int offset)
+    glGetVertexAttribIuiv(int index, int pname, java.nio.IntBuffer params)
+    glInvalidateFramebuffer(int target, int numAttachments, int[] attachments, int offset)
+    glInvalidateFramebuffer(int target, int numAttachments, java.nio.IntBuffer attachments)
+    glInvalidateSubFramebuffer(int target, int numAttachments, int[] attachments, int offset, int x, int y, int width, int height)
+    glInvalidateSubFramebuffer(int target, int numAttachments, java.nio.IntBuffer attachments, int x, int y, int width, int height)
+    glIsQuery(int id)
+    glIsSampler(int sampler)
+    glIsSync(long sync)
+    glIsTransformFeedback(int id)
+    glIsVertexArray(int array)
+    glMapBufferRange(int target, int offset, int length, int access)
+    glProgramBinary(int program, int binaryFormat, java.nio.Buffer binary, int length)
+    glProgramParameteri(int program, int pname, int value)
+    glReadBuffer(int mode)
+    glReadPixels(int x, int y, int width, int height, int format, int type, int offset)
+    glRenderbufferStorageMultisample(int target, int samples, int internalformat, int width, int height)
+    glSamplerParameterf(int sampler, int pname, float param)
+    glSamplerParameterfv(int sampler, int pname, float[] param, int offset)
+    glSamplerParameterfv(int sampler, int pname, java.nio.FloatBuffer param)
+    glSamplerParameteri(int sampler, int pname, int param)
+    glSamplerParameteriv(int sampler, int pname, int[] param, int offset)
+    glSamplerParameteriv(int sampler, int pname, java.nio.IntBuffer param)
+    glTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, int offset)
+    glTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, java.nio.Buffer pixels)
+    glTexStorage2D(int target, int levels, int internalformat, int width, int height)
+    glTexStorage3D(int target, int levels, int internalformat, int width, int height, int depth)
+    glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int offset)
+    glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, java.nio.Buffer pixels)
+    glTransformFeedbackVaryings(int program, java.lang.String[] varyings, int bufferMode)
+    glUniform1ui(int location, int v0)
+    glUniform1uiv(int location, int count, int[] value, int offset)
+    glUniform1uiv(int location, int count, java.nio.IntBuffer value)
+    glUniform2ui(int location, int v0, int v1)
+    glUniform2uiv(int location, int count, int[] value, int offset)
+    glUniform2uiv(int location, int count, java.nio.IntBuffer value)
+    glUniform3ui(int location, int v0, int v1, int v2)
+    glUniform3uiv(int location, int count, int[] value, int offset)
+    glUniform3uiv(int location, int count, java.nio.IntBuffer value)
+    glUniform4ui(int location, int v0, int v1, int v2, int v3)
+    glUniform4uiv(int location, int count, int[] value, int offset)
+    glUniform4uiv(int location, int count, java.nio.IntBuffer value)
+    glUniformBlockBinding(int program, int uniformBlockIndex, int uniformBlockBinding)
+    glUniformMatrix2x3fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix2x3fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix2x4fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix2x4fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix3x2fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix3x2fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix3x4fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix3x4fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix4x2fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix4x2fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUniformMatrix4x3fv(int location, int count, boolean transpose, float[] value, int offset)
+    glUniformMatrix4x3fv(int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glUnmapBuffer(int target)
+    glVertexAttribDivisor(int index, int divisor)
+    glVertexAttribI4i(int index, int x, int y, int z, int w)
+    glVertexAttribI4iv(int index, int[] v, int offset)
+    glVertexAttribI4iv(int index, java.nio.IntBuffer v)
+    glVertexAttribI4ui(int index, int x, int y, int z, int w)
+    glVertexAttribI4uiv(int index, int[] v, int offset)
+    glVertexAttribI4uiv(int index, java.nio.IntBuffer v)
+    glVertexAttribIPointer(int index, int size, int type, int stride, int offset)
+    glVertexAttribIPointer(int index, int size, int type, int stride, java.nio.Buffer pointer)
+    glWaitSync(long sync, int flags, long timeout)
+  class GLES31
+    glActiveShaderProgram(int pipeline, int program)
+    glBindImageTexture(int unit, int texture, int level, boolean layered, int layer, int access, int format)
+    glBindProgramPipeline(int pipeline)
+    glBindVertexBuffer(int bindingindex, int buffer, long offset, int stride)
+    glCreateShaderProgramv(int type, java.lang.String[] strings)
+    glDeleteProgramPipelines(int n, int[] pipelines, int offset)
+    glDeleteProgramPipelines(int n, java.nio.IntBuffer pipelines)
+    glDispatchCompute(int num_groups_x, int num_groups_y, int num_groups_z)
+    glDispatchComputeIndirect(long indirect)
+    glDrawArraysIndirect(int mode, long indirect)
+    glDrawElementsIndirect(int mode, int type, long indirect)
+    glFramebufferParameteri(int target, int pname, int param)
+    glGenProgramPipelines(int n, int[] pipelines, int offset)
+    glGenProgramPipelines(int n, java.nio.IntBuffer pipelines)
+    glGetBooleani_v(int target, int index, boolean[] data, int offset)
+    glGetBooleani_v(int target, int index, java.nio.IntBuffer data)
+    glGetFramebufferParameteriv(int target, int pname, int[] params, int offset)
+    glGetFramebufferParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetMultisamplefv(int pname, int index, float[] val, int offset)
+    glGetMultisamplefv(int pname, int index, java.nio.FloatBuffer val)
+    glGetProgramInterfaceiv(int program, int programInterface, int pname, int[] params, int offset)
+    glGetProgramInterfaceiv(int program, int programInterface, int pname, java.nio.IntBuffer params)
+    glGetProgramPipelineInfoLog(int program)
+    glGetProgramPipelineiv(int pipeline, int pname, int[] params, int offset)
+    glGetProgramPipelineiv(int pipeline, int pname, java.nio.IntBuffer params)
+    glGetProgramResourceIndex(int program, int programInterface, java.lang.String name)
+    glGetProgramResourceiv(int program, int programInterface, int index, int propCount, int[] props, int propsOffset, int bufSize, int[] length, int lengthOffset, int[] params, int paramsOffset)
+    glGetProgramResourceiv(int program, int programInterface, int index, int propCount, java.nio.IntBuffer props, int bufSize, java.nio.IntBuffer length, java.nio.IntBuffer params)
+    glGetProgramResourceLocation(int program, int programInterface, java.lang.String name)
+    glGetProgramResourceName(int program, int programInterface, int index)
+    glGetTexLevelParameterfv(int target, int level, int pname, float[] params, int offset)
+    glGetTexLevelParameterfv(int target, int level, int pname, java.nio.FloatBuffer params)
+    glGetTexLevelParameteriv(int target, int level, int pname, int[] params, int offset)
+    glGetTexLevelParameteriv(int target, int level, int pname, java.nio.IntBuffer params)
+    glIsProgramPipeline(int pipeline)
+    glMemoryBarrier(int barriers)
+    glMemoryBarrierByRegion(int barriers)
+    glProgramUniform1f(int program, int location, float v0)
+    glProgramUniform1fv(int program, int location, int count, float[] value, int offset)
+    glProgramUniform1fv(int program, int location, int count, java.nio.FloatBuffer value)
+    glProgramUniform1i(int program, int location, int v0)
+    glProgramUniform1iv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform1iv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform1ui(int program, int location, int v0)
+    glProgramUniform1uiv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform1uiv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform2f(int program, int location, float v0, float v1)
+    glProgramUniform2fv(int program, int location, int count, float[] value, int offset)
+    glProgramUniform2fv(int program, int location, int count, java.nio.FloatBuffer value)
+    glProgramUniform2i(int program, int location, int v0, int v1)
+    glProgramUniform2iv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform2iv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform2ui(int program, int location, int v0, int v1)
+    glProgramUniform2uiv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform2uiv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform3f(int program, int location, float v0, float v1, float v2)
+    glProgramUniform3fv(int program, int location, int count, float[] value, int offset)
+    glProgramUniform3fv(int program, int location, int count, java.nio.FloatBuffer value)
+    glProgramUniform3i(int program, int location, int v0, int v1, int v2)
+    glProgramUniform3iv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform3iv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform3ui(int program, int location, int v0, int v1, int v2)
+    glProgramUniform3uiv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform3uiv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform4f(int program, int location, float v0, float v1, float v2, float v3)
+    glProgramUniform4fv(int program, int location, int count, float[] value, int offset)
+    glProgramUniform4fv(int program, int location, int count, java.nio.FloatBuffer value)
+    glProgramUniform4i(int program, int location, int v0, int v1, int v2, int v3)
+    glProgramUniform4iv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform4iv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniform4ui(int program, int location, int v0, int v1, int v2, int v3)
+    glProgramUniform4uiv(int program, int location, int count, int[] value, int offset)
+    glProgramUniform4uiv(int program, int location, int count, java.nio.IntBuffer value)
+    glProgramUniformMatrix2fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix2fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix2x3fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix2x3fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix2x4fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix2x4fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix3fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix3fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix3x2fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix3x2fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix3x4fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix3x4fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix4fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix4fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix4x2fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix4x2fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glProgramUniformMatrix4x3fv(int program, int location, int count, boolean transpose, float[] value, int offset)
+    glProgramUniformMatrix4x3fv(int program, int location, int count, boolean transpose, java.nio.FloatBuffer value)
+    glSampleMaski(int maskNumber, int mask)
+    glTexStorage2DMultisample(int target, int samples, int internalformat, int width, int height, boolean fixedsamplelocations)
+    glUseProgramStages(int pipeline, int stages, int program)
+    glValidateProgramPipeline(int pipeline)
+    glVertexAttribBinding(int attribindex, int bindingindex)
+    glVertexAttribFormat(int attribindex, int size, int type, boolean normalized, int relativeoffset)
+    glVertexAttribIFormat(int attribindex, int size, int type, int relativeoffset)
+    glVertexBindingDivisor(int bindingindex, int divisor)
+  class GLES31Ext
+    glBlendEquationiEXT(int buf, int mode)
+    glBlendEquationSeparateiEXT(int buf, int modeRGB, int modeAlpha)
+    glBlendFunciEXT(int buf, int src, int dst)
+    glBlendFuncSeparateiEXT(int buf, int srcRGB, int dstRGB, int srcAlpha, int dstAlpha)
+    glColorMaskiEXT(int index, boolean r, boolean g, boolean b, boolean a)
+    glCopyImageSubDataEXT(int srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth)
+    glDebugMessageCallbackKHR(android.opengl.GLES31Ext.DebugProcKHR callback)
+    glDebugMessageControlKHR(int source, int type, int severity, int count, int[] ids, int offset, boolean enabled)
+    glDebugMessageControlKHR(int source, int type, int severity, int count, java.nio.IntBuffer ids, boolean enabled)
+    glDebugMessageInsertKHR(int source, int type, int id, int severity, java.lang.String buf)
+    glDisableiEXT(int target, int index)
+    glEnableiEXT(int target, int index)
+    glFramebufferTextureEXT(int target, int attachment, int texture, int level)
+    glGetDebugMessageLogKHR(int count, int bufSize, int[] sources, int sourcesOffset, int[] types, int typesOffset, int[] ids, int idsOffset, int[] severities, int severitiesOffset, int[] lengths, int lengthsOffset, byte[] messageLog, int messageLogOffset)
+    glGetDebugMessageLogKHR(int count, int[] sources, int sourcesOffset, int[] types, int typesOffset, int[] ids, int idsOffset, int[] severities, int severitiesOffset)
+    glGetDebugMessageLogKHR(int count, java.nio.IntBuffer sources, java.nio.IntBuffer types, java.nio.IntBuffer ids, java.nio.IntBuffer severities)
+    glGetDebugMessageLogKHR(int count, java.nio.IntBuffer sources, java.nio.IntBuffer types, java.nio.IntBuffer ids, java.nio.IntBuffer severities, java.nio.IntBuffer lengths, java.nio.ByteBuffer messageLog)
+    glGetObjectLabelKHR(int identifier, int name)
+    glGetObjectPtrLabelKHR(long ptr)
+    glGetSamplerParameterIivEXT(int sampler, int pname, int[] params, int offset)
+    glGetSamplerParameterIivEXT(int sampler, int pname, java.nio.IntBuffer params)
+    glGetSamplerParameterIuivEXT(int sampler, int pname, int[] params, int offset)
+    glGetSamplerParameterIuivEXT(int sampler, int pname, java.nio.IntBuffer params)
+    glGetTexParameterIivEXT(int target, int pname, int[] params, int offset)
+    glGetTexParameterIivEXT(int target, int pname, java.nio.IntBuffer params)
+    glGetTexParameterIuivEXT(int target, int pname, int[] params, int offset)
+    glGetTexParameterIuivEXT(int target, int pname, java.nio.IntBuffer params)
+    glIsEnablediEXT(int target, int index)
+    glMinSampleShadingOES(float value)
+    glObjectLabelKHR(int identifier, int name, int length, java.lang.String label)
+    glObjectPtrLabelKHR(long ptr, java.lang.String label)
+    glPatchParameteriEXT(int pname, int value)
+    glPrimitiveBoundingBoxEXT(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW)
+    glPushDebugGroupKHR(int source, int id, int length, java.lang.String message)
+    glSamplerParameterIivEXT(int sampler, int pname, int[] param, int offset)
+    glSamplerParameterIivEXT(int sampler, int pname, java.nio.IntBuffer param)
+    glSamplerParameterIuivEXT(int sampler, int pname, int[] param, int offset)
+    glSamplerParameterIuivEXT(int sampler, int pname, java.nio.IntBuffer param)
+    glTexBufferEXT(int target, int internalformat, int buffer)
+    glTexBufferRangeEXT(int target, int internalformat, int buffer, int offset, int size)
+    glTexParameterIivEXT(int target, int pname, int[] params, int offset)
+    glTexParameterIivEXT(int target, int pname, java.nio.IntBuffer params)
+    glTexParameterIuivEXT(int target, int pname, int[] params, int offset)
+    glTexParameterIuivEXT(int target, int pname, java.nio.IntBuffer params)
+    glTexStorage3DMultisampleOES(int target, int samples, int internalformat, int width, int height, int depth, boolean fixedsamplelocations)
+  interface GLES31Ext.DebugProcKHR
+    onMessage(int source, int type, int id, int severity, java.lang.String message)
+  class GLES32
+    glBlendEquationi(int buf, int mode)
+    glBlendEquationSeparatei(int buf, int modeRGB, int modeAlpha)
+    glBlendFunci(int buf, int src, int dst)
+    glBlendFuncSeparatei(int buf, int srcRGB, int dstRGB, int srcAlpha, int dstAlpha)
+    glColorMaski(int index, boolean r, boolean g, boolean b, boolean a)
+    glCopyImageSubData(int srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth)
+    glDebugMessageCallback(android.opengl.GLES32.DebugProc callback)
+    glDebugMessageControl(int source, int type, int severity, int count, int[] ids, int offset, boolean enabled)
+    glDebugMessageControl(int source, int type, int severity, int count, java.nio.IntBuffer ids, boolean enabled)
+    glDebugMessageInsert(int source, int type, int id, int severity, int length, java.lang.String buf)
+    glDisablei(int target, int index)
+    glDrawElementsBaseVertex(int mode, int count, int type, java.nio.Buffer indices, int basevertex)
+    glDrawElementsInstancedBaseVertex(int mode, int count, int type, int indicesOffset, int instanceCount, int basevertex)
+    glDrawElementsInstancedBaseVertex(int mode, int count, int type, java.nio.Buffer indices, int instanceCount, int basevertex)
+    glDrawRangeElementsBaseVertex(int mode, int start, int end, int count, int type, java.nio.Buffer indices, int basevertex)
+    glEnablei(int target, int index)
+    glFramebufferTexture(int target, int attachment, int texture, int level)
+    glGetDebugMessageLog(int count, int bufSize, int[] sources, int sourcesOffset, int[] types, int typesOffset, int[] ids, int idsOffset, int[] severities, int severitiesOffset, int[] lengths, int lengthsOffset, byte[] messageLog, int messageLogOffset)
+    glGetDebugMessageLog(int count, int[] sources, int sourcesOffset, int[] types, int typesOffset, int[] ids, int idsOffset, int[] severities, int severitiesOffset)
+    glGetDebugMessageLog(int count, java.nio.IntBuffer sources, java.nio.IntBuffer types, java.nio.IntBuffer ids, java.nio.IntBuffer severities)
+    glGetDebugMessageLog(int count, java.nio.IntBuffer sources, java.nio.IntBuffer types, java.nio.IntBuffer ids, java.nio.IntBuffer severities, java.nio.IntBuffer lengths, java.nio.ByteBuffer messageLog)
+    glGetnUniformfv(int program, int location, int bufSize, float[] params, int offset)
+    glGetnUniformfv(int program, int location, int bufSize, java.nio.FloatBuffer params)
+    glGetnUniformiv(int program, int location, int bufSize, int[] params, int offset)
+    glGetnUniformiv(int program, int location, int bufSize, java.nio.IntBuffer params)
+    glGetnUniformuiv(int program, int location, int bufSize, int[] params, int offset)
+    glGetnUniformuiv(int program, int location, int bufSize, java.nio.IntBuffer params)
+    glGetObjectLabel(int identifier, int name)
+    glGetObjectPtrLabel(long ptr)
+    glGetPointerv(int pname)
+    glGetSamplerParameterIiv(int sampler, int pname, int[] params, int offset)
+    glGetSamplerParameterIiv(int sampler, int pname, java.nio.IntBuffer params)
+    glGetSamplerParameterIuiv(int sampler, int pname, int[] params, int offset)
+    glGetSamplerParameterIuiv(int sampler, int pname, java.nio.IntBuffer params)
+    glGetTexParameterIiv(int target, int pname, int[] params, int offset)
+    glGetTexParameterIiv(int target, int pname, java.nio.IntBuffer params)
+    glGetTexParameterIuiv(int target, int pname, int[] params, int offset)
+    glGetTexParameterIuiv(int target, int pname, java.nio.IntBuffer params)
+    glIsEnabledi(int target, int index)
+    glMinSampleShading(float value)
+    glObjectLabel(int identifier, int name, int length, java.lang.String label)
+    glObjectPtrLabel(long ptr, java.lang.String label)
+    glPatchParameteri(int pname, int value)
+    glPrimitiveBoundingBox(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW)
+    glPushDebugGroup(int source, int id, int length, java.lang.String message)
+    glReadnPixels(int x, int y, int width, int height, int format, int type, int bufSize, java.nio.Buffer data)
+    glSamplerParameterIiv(int sampler, int pname, int[] param, int offset)
+    glSamplerParameterIiv(int sampler, int pname, java.nio.IntBuffer param)
+    glSamplerParameterIuiv(int sampler, int pname, int[] param, int offset)
+    glSamplerParameterIuiv(int sampler, int pname, java.nio.IntBuffer param)
+    glTexBuffer(int target, int internalformat, int buffer)
+    glTexBufferRange(int target, int internalformat, int buffer, int offset, int size)
+    glTexParameterIiv(int target, int pname, int[] params, int offset)
+    glTexParameterIiv(int target, int pname, java.nio.IntBuffer params)
+    glTexParameterIuiv(int target, int pname, int[] params, int offset)
+    glTexParameterIuiv(int target, int pname, java.nio.IntBuffer params)
+    glTexStorage3DMultisample(int target, int samples, int internalformat, int width, int height, int depth, boolean fixedsamplelocations)
+  interface GLES32.DebugProc
+    onMessage(int source, int type, int id, int severity, java.lang.String message)
+  class GLException
+    #ctor(int error)
+    #ctor(int error, java.lang.String string)
+  class GLSurfaceView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    queueEvent(java.lang.Runnable r)
+    setDebugFlags(int debugFlags)
+    setEGLConfigChooser(android.opengl.GLSurfaceView.EGLConfigChooser configChooser)
+    setEGLConfigChooser(boolean needDepth)
+    setEGLConfigChooser(int redSize, int greenSize, int blueSize, int alphaSize, int depthSize, int stencilSize)
+    setEGLContextClientVersion(int version)
+    setEGLContextFactory(android.opengl.GLSurfaceView.EGLContextFactory factory)
+    setEGLWindowSurfaceFactory(android.opengl.GLSurfaceView.EGLWindowSurfaceFactory factory)
+    setGLWrapper(android.opengl.GLSurfaceView.GLWrapper glWrapper)
+    setPreserveEGLContextOnPause(boolean preserveOnPause)
+    setRenderer(android.opengl.GLSurfaceView.Renderer renderer)
+    setRenderMode(int renderMode)
+    surfaceChanged(android.view.SurfaceHolder holder, int format, int w, int h)
+    surfaceCreated(android.view.SurfaceHolder holder)
+    surfaceDestroyed(android.view.SurfaceHolder holder)
+    surfaceRedrawNeeded(android.view.SurfaceHolder holder)
+    surfaceRedrawNeededAsync(android.view.SurfaceHolder holder, java.lang.Runnable finishDrawing)
+  interface GLSurfaceView.EGLConfigChooser
+    chooseConfig(javax.microedition.khronos.egl.EGL10 egl, javax.microedition.khronos.egl.EGLDisplay display)
+  interface GLSurfaceView.EGLContextFactory
+    createContext(javax.microedition.khronos.egl.EGL10 egl, javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig eglConfig)
+    destroyContext(javax.microedition.khronos.egl.EGL10 egl, javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLContext context)
+  interface GLSurfaceView.EGLWindowSurfaceFactory
+    createWindowSurface(javax.microedition.khronos.egl.EGL10 egl, javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig config, java.lang.Object nativeWindow)
+    destroySurface(javax.microedition.khronos.egl.EGL10 egl, javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLSurface surface)
+  interface GLSurfaceView.GLWrapper
+    wrap(javax.microedition.khronos.opengles.GL gl)
+  interface GLSurfaceView.Renderer
+    onDrawFrame(javax.microedition.khronos.opengles.GL10 gl)
+    onSurfaceChanged(javax.microedition.khronos.opengles.GL10 gl, int width, int height)
+    onSurfaceCreated(javax.microedition.khronos.opengles.GL10 gl, javax.microedition.khronos.egl.EGLConfig config)
+  class GLU
+    gluErrorString(int error)
+    gluLookAt(javax.microedition.khronos.opengles.GL10 gl, float eyeX, float eyeY, float eyeZ, float centerX, float centerY, float centerZ, float upX, float upY, float upZ)
+    gluOrtho2D(javax.microedition.khronos.opengles.GL10 gl, float left, float right, float bottom, float top)
+    gluPerspective(javax.microedition.khronos.opengles.GL10 gl, float fovy, float aspect, float zNear, float zFar)
+    gluProject(float objX, float objY, float objZ, float[] model, int modelOffset, float[] project, int projectOffset, int[] view, int viewOffset, float[] win, int winOffset)
+    gluUnProject(float winX, float winY, float winZ, float[] model, int modelOffset, float[] project, int projectOffset, int[] view, int viewOffset, float[] obj, int objOffset)
+  class GLUtils
+    getEGLErrorString(int error)
+    getInternalFormat(android.graphics.Bitmap bitmap)
+    getType(android.graphics.Bitmap bitmap)
+    texImage2D(int target, int level, android.graphics.Bitmap bitmap, int border)
+    texImage2D(int target, int level, int internalformat, android.graphics.Bitmap bitmap, int border)
+    texImage2D(int target, int level, int internalformat, android.graphics.Bitmap bitmap, int type, int border)
+    texSubImage2D(int target, int level, int xoffset, int yoffset, android.graphics.Bitmap bitmap)
+    texSubImage2D(int target, int level, int xoffset, int yoffset, android.graphics.Bitmap bitmap, int format, int type)
+  class Matrix
+    frustumM(float[] m, int offset, float left, float right, float bottom, float top, float near, float far)
+    invertM(float[] mInv, int mInvOffset, float[] m, int mOffset)
+    length(float x, float y, float z)
+    multiplyMM(float[] result, int resultOffset, float[] lhs, int lhsOffset, float[] rhs, int rhsOffset)
+    multiplyMV(float[] resultVec, int resultVecOffset, float[] lhsMat, int lhsMatOffset, float[] rhsVec, int rhsVecOffset)
+    orthoM(float[] m, int mOffset, float left, float right, float bottom, float top, float near, float far)
+    perspectiveM(float[] m, int offset, float fovy, float aspect, float zNear, float zFar)
+    rotateM(float[] m, int mOffset, float a, float x, float y, float z)
+    rotateM(float[] rm, int rmOffset, float[] m, int mOffset, float a, float x, float y, float z)
+    scaleM(float[] m, int mOffset, float x, float y, float z)
+    scaleM(float[] sm, int smOffset, float[] m, int mOffset, float x, float y, float z)
+    setIdentityM(float[] sm, int smOffset)
+    setLookAtM(float[] rm, int rmOffset, float eyeX, float eyeY, float eyeZ, float centerX, float centerY, float centerZ, float upX, float upY, float upZ)
+    setRotateEulerM(float[] rm, int rmOffset, float x, float y, float z)
+    setRotateM(float[] rm, int rmOffset, float a, float x, float y, float z)
+    translateM(float[] m, int mOffset, float x, float y, float z)
+    translateM(float[] tm, int tmOffset, float[] m, int mOffset, float x, float y, float z)
+    transposeM(float[] mTrans, int mTransOffset, float[] m, int mOffset)
+  class Visibility
+    computeBoundingSphere(float[] positions, int positionsOffset, int positionsCount, float[] sphere, int sphereOffset)
+    frustumCullSpheres(float[] mvp, int mvpOffset, float[] spheres, int spheresOffset, int spheresCount, int[] results, int resultsOffset, int resultsCapacity)
+    visibilityTest(float[] ws, int wsOffset, float[] positions, int positionsOffset, char[] indices, int indicesOffset, int indexCount)
+
+package android.os
+;---------------------------------------
+  class AsyncTask<Params,Progress,Result>
+    cancel(boolean mayInterruptIfRunning)
+    doInBackground(Params... params)
+    execute(java.lang.Runnable runnable)
+    execute(Params... params)
+    executeOnExecutor(java.util.concurrent.Executor exec, Params... params)
+    get(long timeout, java.util.concurrent.TimeUnit unit)
+    onCancelled(Result result)
+    onPostExecute(Result result)
+    onProgressUpdate(Progress... values)
+    publishProgress(Progress... values)
+  class BadParcelableException
+    #ctor(java.lang.Exception cause)
+    #ctor(java.lang.String msg)
+  class BaseBundle
+    containsKey(java.lang.String key)
+    get(java.lang.String key)
+    getBoolean(java.lang.String key)
+    getBoolean(java.lang.String key, boolean defaultValue)
+    getBooleanArray(java.lang.String key)
+    getDouble(java.lang.String key)
+    getDouble(java.lang.String key, double defaultValue)
+    getDoubleArray(java.lang.String key)
+    getInt(java.lang.String key)
+    getInt(java.lang.String key, int defaultValue)
+    getIntArray(java.lang.String key)
+    getLong(java.lang.String key)
+    getLong(java.lang.String key, long defaultValue)
+    getLongArray(java.lang.String key)
+    getString(java.lang.String key)
+    getString(java.lang.String key, java.lang.String defaultValue)
+    getStringArray(java.lang.String key)
+    putAll(android.os.PersistableBundle bundle)
+    putBoolean(java.lang.String key, boolean value)
+    putBooleanArray(java.lang.String key, boolean[] value)
+    putDouble(java.lang.String key, double value)
+    putDoubleArray(java.lang.String key, double[] value)
+    putInt(java.lang.String key, int value)
+    putIntArray(java.lang.String key, int[] value)
+    putLong(java.lang.String key, long value)
+    putLongArray(java.lang.String key, long[] value)
+    putString(java.lang.String key, java.lang.String value)
+    putStringArray(java.lang.String key, java.lang.String[] value)
+    remove(java.lang.String key)
+  class BatteryManager
+    getIntProperty(int id)
+    getLongProperty(int id)
+  class Binder
+    attachInterface(android.os.IInterface owner, java.lang.String descriptor)
+    #ctor(java.lang.String descriptor)
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter fout, java.lang.String[] args)
+    dump(java.io.FileDescriptor fd, java.lang.String[] args)
+    dumpAsync(java.io.FileDescriptor fd, java.lang.String[] args)
+    linkToDeath(android.os.IBinder.DeathRecipient recipient, int flags)
+    onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags)
+    queryLocalInterface(java.lang.String descriptor)
+    restoreCallingIdentity(long token)
+    restoreCallingWorkSource(long token)
+    setCallingWorkSourceUid(int workSource)
+    transact(int code, android.os.Parcel data, android.os.Parcel reply, int flags)
+    unlinkToDeath(android.os.IBinder.DeathRecipient recipient, int flags)
+  class BugreportManager
+    startConnectivityBugreport(android.os.ParcelFileDescriptor bugreportFd, java.util.concurrent.Executor executor, android.os.BugreportManager.BugreportCallback callback)
+  class BugreportManager.BugreportCallback
+    onError(int errorCode)
+    onProgress(float progress)
+  class Build.Partition
+    equals(java.lang.Object o)
+  class Bundle
+    #ctor(android.os.Bundle b)
+    #ctor(android.os.PersistableBundle b)
+    #ctor(int capacity)
+    #ctor(java.lang.ClassLoader loader)
+    getBinder(java.lang.String key)
+    getBundle(java.lang.String key)
+    getByte(java.lang.String key)
+    getByte(java.lang.String key, byte defaultValue)
+    getByteArray(java.lang.String key)
+    getChar(java.lang.String key)
+    getChar(java.lang.String key, char defaultValue)
+    getCharArray(java.lang.String key)
+    getCharSequence(java.lang.String key)
+    getCharSequence(java.lang.String key, java.lang.CharSequence defaultValue)
+    getCharSequenceArray(java.lang.String key)
+    getCharSequenceArrayList(java.lang.String key)
+    getFloat(java.lang.String key)
+    getFloat(java.lang.String key, float defaultValue)
+    getFloatArray(java.lang.String key)
+    getIntegerArrayList(java.lang.String key)
+    <T> getParcelable(java.lang.String key)
+    <T> getParcelable(java.lang.String key, java.lang.Class<T> clazz)
+    getParcelableArray(java.lang.String key)
+    <T> getParcelableArray(java.lang.String key, java.lang.Class<T> clazz)
+    <T> getParcelableArrayList(java.lang.String key)
+    <T> getParcelableArrayList(java.lang.String key, java.lang.Class<? extends T> clazz)
+    getSerializable(java.lang.String key)
+    <T> getSerializable(java.lang.String key, java.lang.Class<T> clazz)
+    getShort(java.lang.String key)
+    getShort(java.lang.String key, short defaultValue)
+    getShortArray(java.lang.String key)
+    getSize(java.lang.String key)
+    getSizeF(java.lang.String key)
+    <T> getSparseParcelableArray(java.lang.String key)
+    <T> getSparseParcelableArray(java.lang.String key, java.lang.Class<? extends T> clazz)
+    getStringArrayList(java.lang.String key)
+    putAll(android.os.Bundle bundle)
+    putBinder(java.lang.String key, android.os.IBinder value)
+    putBundle(java.lang.String key, android.os.Bundle value)
+    putByte(java.lang.String key, byte value)
+    putByteArray(java.lang.String key, byte[] value)
+    putChar(java.lang.String key, char value)
+    putCharArray(java.lang.String key, char[] value)
+    putCharSequence(java.lang.String key, java.lang.CharSequence value)
+    putCharSequenceArray(java.lang.String key, java.lang.CharSequence[] value)
+    putCharSequenceArrayList(java.lang.String key, java.util.ArrayList<java.lang.CharSequence> value)
+    putFloat(java.lang.String key, float value)
+    putFloatArray(java.lang.String key, float[] value)
+    putIntegerArrayList(java.lang.String key, java.util.ArrayList<java.lang.Integer> value)
+    putParcelable(java.lang.String key, android.os.Parcelable value)
+    putParcelableArray(java.lang.String key, android.os.Parcelable[] value)
+    putParcelableArrayList(java.lang.String key, java.util.ArrayList<? extends android.os.Parcelable> value)
+    putSerializable(java.lang.String key, java.io.Serializable value)
+    putShort(java.lang.String key, short value)
+    putShortArray(java.lang.String key, short[] value)
+    putSize(java.lang.String key, android.util.Size value)
+    putSizeF(java.lang.String key, android.util.SizeF value)
+    putSparseParcelableArray(java.lang.String key, android.util.SparseArray<? extends android.os.Parcelable> value)
+    putStringArrayList(java.lang.String key, java.util.ArrayList<java.lang.String> value)
+    readFromParcel(android.os.Parcel parcel)
+    remove(java.lang.String key)
+    setClassLoader(java.lang.ClassLoader loader)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class CancellationSignal
+    setOnCancelListener(android.os.CancellationSignal.OnCancelListener listener)
+  class CombinedVibration
+    createParallel(android.os.VibrationEffect effect)
+  class CombinedVibration.ParallelCombination
+    addVibrator(int vibratorId, android.os.VibrationEffect effect)
+  class ConditionVariable
+    block(long timeoutMs)
+    #ctor(boolean state)
+  class CountDownTimer
+    #ctor(long millisInFuture, long countDownInterval)
+    onTick(long millisUntilFinished)
+  class CpuUsageInfo
+    writeToParcel(android.os.Parcel out, int flags)
+  class DeadObjectException
+    #ctor(java.lang.String message)
+  class Debug
+    attachJvmtiAgent(java.lang.String library, java.lang.String options, java.lang.ClassLoader classLoader)
+    changeDebugPort(int port)
+    dumpHprofData(java.lang.String fileName)
+    dumpService(java.lang.String name, java.io.FileDescriptor fd, java.lang.String[] args)
+    getMemoryInfo(android.os.Debug.MemoryInfo memoryInfo)
+    getRuntimeStat(java.lang.String statName)
+    printLoadedClasses(int flags)
+    setAllocationLimit(int limit)
+    setGlobalAllocationLimit(int limit)
+    startMethodTracing(java.lang.String tracePath)
+    startMethodTracing(java.lang.String tracePath, int bufferSize)
+    startMethodTracing(java.lang.String tracePath, int bufferSize, int flags)
+    startMethodTracingSampling(java.lang.String tracePath, int bufferSize, int intervalUs)
+  class Debug.MemoryInfo
+    getMemoryStat(java.lang.String statName)
+    readFromParcel(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DropBoxManager
+    addData(java.lang.String tag, byte[] data, int flags)
+    addFile(java.lang.String tag, java.io.File file, int flags)
+    addText(java.lang.String tag, java.lang.String data)
+    getNextEntry(java.lang.String tag, long msec)
+    isTagEnabled(java.lang.String tag)
+  class DropBoxManager.Entry
+    #ctor(java.lang.String tag, long millis)
+    #ctor(java.lang.String tag, long millis, android.os.ParcelFileDescriptor data, int flags)
+    #ctor(java.lang.String tag, long millis, byte[] data, int flags)
+    #ctor(java.lang.String tag, long millis, java.io.File data, int flags)
+    #ctor(java.lang.String tag, long millis, java.lang.String text)
+    getText(int maxBytes)
+    writeToParcel(android.os.Parcel out, int flags)
+  class Environment
+    getExternalStoragePublicDirectory(java.lang.String type)
+    getExternalStorageState(java.io.File path)
+    getStorageState(java.io.File path)
+    isExternalStorageEmulated(java.io.File path)
+    isExternalStorageLegacy(java.io.File path)
+    isExternalStorageManager(java.io.File path)
+    isExternalStorageRemovable(java.io.File path)
+  class FileObserver
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, int mask)
+    #ctor(java.lang.String path)
+    #ctor(java.lang.String path, int mask)
+    #ctor(java.util.List<java.io.File> files)
+    #ctor(java.util.List<java.io.File> files, int mask)
+    onEvent(int event, java.lang.String path)
+  class FileUriExposedException
+    #ctor(java.lang.String message)
+  class FileUtils
+    closeQuietly(java.io.FileDescriptor fd)
+    closeQuietly(java.lang.AutoCloseable closeable)
+    copy(java.io.FileDescriptor in, java.io.FileDescriptor out)
+    copy(java.io.FileDescriptor in, java.io.FileDescriptor out, android.os.CancellationSignal signal, java.util.concurrent.Executor executor, android.os.FileUtils.ProgressListener listener)
+    copy(java.io.InputStream in, java.io.OutputStream out)
+    copy(java.io.InputStream in, java.io.OutputStream out, android.os.CancellationSignal signal, java.util.concurrent.Executor executor, android.os.FileUtils.ProgressListener listener)
+  interface FileUtils.ProgressListener
+    onProgress(long progress)
+  class Handler
+    createAsync(android.os.Looper looper)
+    createAsync(android.os.Looper looper, android.os.Handler.Callback callback)
+    dispatchMessage(android.os.Message msg)
+    dump(android.util.Printer pw, java.lang.String prefix)
+    getMessageName(android.os.Message message)
+    handleMessage(android.os.Message msg)
+    #ctor(android.os.Handler.Callback callback)
+    #ctor(android.os.Looper looper)
+    #ctor(android.os.Looper looper, android.os.Handler.Callback callback)
+    hasCallbacks(java.lang.Runnable r)
+    hasMessages(int what)
+    hasMessages(int what, java.lang.Object object)
+    obtainMessage(int what)
+    obtainMessage(int what, int arg1, int arg2)
+    obtainMessage(int what, int arg1, int arg2, java.lang.Object obj)
+    obtainMessage(int what, java.lang.Object obj)
+    post(java.lang.Runnable r)
+    postAtFrontOfQueue(java.lang.Runnable r)
+    postAtTime(java.lang.Runnable r, java.lang.Object token, long uptimeMillis)
+    postAtTime(java.lang.Runnable r, long uptimeMillis)
+    postDelayed(java.lang.Runnable r, java.lang.Object token, long delayMillis)
+    postDelayed(java.lang.Runnable r, long delayMillis)
+    removeCallbacks(java.lang.Runnable r)
+    removeCallbacks(java.lang.Runnable r, java.lang.Object token)
+    removeCallbacksAndMessages(java.lang.Object token)
+    removeMessages(int what)
+    removeMessages(int what, java.lang.Object object)
+    sendEmptyMessage(int what)
+    sendEmptyMessageAtTime(int what, long uptimeMillis)
+    sendEmptyMessageDelayed(int what, long delayMillis)
+    sendMessage(android.os.Message msg)
+    sendMessageAtFrontOfQueue(android.os.Message msg)
+    sendMessageAtTime(android.os.Message msg, long uptimeMillis)
+    sendMessageDelayed(android.os.Message msg, long delayMillis)
+  interface Handler.Callback
+    handleMessage(android.os.Message msg)
+  class HandlerThread
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, int priority)
+  class HardwarePropertiesManager
+    getDeviceTemperatures(int type, int source)
+  interface IBinder
+    dump(java.io.FileDescriptor fd, java.lang.String[] args)
+    dumpAsync(java.io.FileDescriptor fd, java.lang.String[] args)
+    linkToDeath(android.os.IBinder.DeathRecipient recipient, int flags)
+    queryLocalInterface(java.lang.String descriptor)
+    transact(int code, android.os.Parcel data, android.os.Parcel reply, int flags)
+    unlinkToDeath(android.os.IBinder.DeathRecipient recipient, int flags)
+  interface IBinder.DeathRecipient
+    binderDied(android.os.IBinder who)
+  class LimitExceededException
+    #ctor(java.lang.String message)
+  class LocaleList
+    equals(java.lang.Object other)
+    forLanguageTags(java.lang.String list)
+    get(int index)
+    getFirstMatch(java.lang.String[] supportedLocales)
+    indexOf(java.util.Locale locale)
+    isPseudoLocale(android.icu.util.ULocale locale)
+    #ctor(java.util.Locale... list)
+    matchesLanguageAndScript(java.util.Locale supported, java.util.Locale desired)
+    setDefault(android.os.LocaleList locales)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class Looper
+    dump(android.util.Printer pw, java.lang.String prefix)
+    setMessageLogging(android.util.Printer printer)
+  class MemoryFile
+    allowPurging(boolean allowPurging)
+    #ctor(java.lang.String name, int length)
+    readBytes(byte[] buffer, int srcOffset, int destOffset, int count)
+    writeBytes(byte[] buffer, int srcOffset, int destOffset, int count)
+  class Message
+    copyFrom(android.os.Message o)
+    obtain(android.os.Handler h)
+    obtain(android.os.Handler h, int what)
+    obtain(android.os.Handler h, int what, int arg1, int arg2)
+    obtain(android.os.Handler h, int what, int arg1, int arg2, java.lang.Object obj)
+    obtain(android.os.Handler h, int what, java.lang.Object obj)
+    obtain(android.os.Handler h, java.lang.Runnable callback)
+    obtain(android.os.Message orig)
+    setAsynchronous(boolean async)
+    setData(android.os.Bundle data)
+    setTarget(android.os.Handler target)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MessageQueue
+    addIdleHandler(android.os.MessageQueue.IdleHandler handler)
+    addOnFileDescriptorEventListener(java.io.FileDescriptor fd, int events, android.os.MessageQueue.OnFileDescriptorEventListener listener)
+    removeIdleHandler(android.os.MessageQueue.IdleHandler handler)
+    removeOnFileDescriptorEventListener(java.io.FileDescriptor fd)
+  interface MessageQueue.OnFileDescriptorEventListener
+    onFileDescriptorEvents(java.io.FileDescriptor fd, int events)
+  class Messenger
+    equals(java.lang.Object otherObj)
+    #ctor(android.os.Handler target)
+    #ctor(android.os.IBinder target)
+    readMessengerOrNullFromParcel(android.os.Parcel in)
+    send(android.os.Message message)
+    writeMessengerOrNullToParcel(android.os.Messenger messenger, android.os.Parcel out)
+    writeToParcel(android.os.Parcel out, int flags)
+  class OperationCanceledException
+    #ctor(java.lang.String message)
+  interface OutcomeReceiver<R,E>
+    onError(E error)
+    onResult(R result)
+  class Parcel
+    appendFrom(android.os.Parcel parcel, int offset, int length)
+    <T,S> createFixedArray(java.lang.Class<T> cls, android.os.Parcelable.Creator<S> c, int... dimensions)
+    <T> createFixedArray(java.lang.Class<T> cls, int... dimensions)
+    <T,S> createFixedArray(java.lang.Class<T> cls, java.util.function.Function<android.os.IBinder,S> asInterface, int... dimensions)
+    <T> createInterfaceArray(java.util.function.IntFunction<T[]> newArray, java.util.function.Function<android.os.IBinder,T> asInterface)
+    <T> createInterfaceArrayList(java.util.function.Function<android.os.IBinder,T> asInterface)
+    <T> createTypedArray(android.os.Parcelable.Creator<T> c)
+    <T> createTypedArrayList(android.os.Parcelable.Creator<T> c)
+    <T> createTypedArrayMap(android.os.Parcelable.Creator<T> creator)
+    <T> createTypedSparseArray(android.os.Parcelable.Creator<T> creator)
+    enforceInterface(java.lang.String interfaceName)
+    hasFileDescriptors(int offset, int length)
+    obtain(android.os.IBinder binder)
+    readArray(java.lang.ClassLoader loader)
+    <T> readArray(java.lang.ClassLoader loader, java.lang.Class<T> clazz)
+    readArrayList(java.lang.ClassLoader loader)
+    <T> readArrayList(java.lang.ClassLoader loader, java.lang.Class<? extends T> clazz)
+    readBinderArray(android.os.IBinder[] val)
+    readBinderList(java.util.List<android.os.IBinder> list)
+    readBooleanArray(boolean[] val)
+    readBundle(java.lang.ClassLoader loader)
+    readByteArray(byte[] val)
+    readCharArray(char[] val)
+    readDoubleArray(double[] val)
+    readException(int code, java.lang.String msg)
+    <T> readFixedArray(T val)
+    <T,S> readFixedArray(T val, android.os.Parcelable.Creator<S> c)
+    <T,S> readFixedArray(T val, java.util.function.Function<android.os.IBinder,S> asInterface)
+    readFloatArray(float[] val)
+    readHashMap(java.lang.ClassLoader loader)
+    <K,V> readHashMap(java.lang.ClassLoader loader, java.lang.Class<? extends K> clazzKey, java.lang.Class<? extends V> clazzValue)
+    readIntArray(int[] val)
+    <T> readInterfaceArray(T[] val, java.util.function.Function<android.os.IBinder,T> asInterface)
+    <T> readInterfaceList(java.util.List<T> list, java.util.function.Function<android.os.IBinder,T> asInterface)
+    readList(java.util.List outVal, java.lang.ClassLoader loader)
+    <T> readList(java.util.List<? super T> outVal, java.lang.ClassLoader loader, java.lang.Class<T> clazz)
+    readLongArray(long[] val)
+    readMap(java.util.Map outVal, java.lang.ClassLoader loader)
+    <K,V> readMap(java.util.Map<? super K,? super V> outVal, java.lang.ClassLoader loader, java.lang.Class<K> clazzKey, java.lang.Class<V> clazzValue)
+    <T> readParcelable(java.lang.ClassLoader loader)
+    <T> readParcelable(java.lang.ClassLoader loader, java.lang.Class<T> clazz)
+    readParcelableArray(java.lang.ClassLoader loader)
+    <T> readParcelableArray(java.lang.ClassLoader loader, java.lang.Class<T> clazz)
+    readParcelableCreator(java.lang.ClassLoader loader)
+    <T> readParcelableCreator(java.lang.ClassLoader loader, java.lang.Class<T> clazz)
+    <T> readParcelableList(java.util.List<T> list, java.lang.ClassLoader cl)
+    <T> readParcelableList(java.util.List<T> list, java.lang.ClassLoader cl, java.lang.Class<? extends T> clazz)
+    readPersistableBundle(java.lang.ClassLoader loader)
+    <T> readSerializable(java.lang.ClassLoader loader, java.lang.Class<T> clazz)
+    <T> readSparseArray(java.lang.ClassLoader loader)
+    <T> readSparseArray(java.lang.ClassLoader loader, java.lang.Class<? extends T> clazz)
+    readStringArray(java.lang.String[] val)
+    readStringList(java.util.List<java.lang.String> list)
+    <T> readTypedArray(T[] val, android.os.Parcelable.Creator<T> c)
+    <T> readTypedList(java.util.List<T> list, android.os.Parcelable.Creator<T> c)
+    <T> readTypedObject(android.os.Parcelable.Creator<T> c)
+    readValue(java.lang.ClassLoader loader)
+    setDataCapacity(int size)
+    setDataPosition(int pos)
+    setDataSize(int size)
+    unmarshall(byte[] data, int offset, int length)
+    writeArray(java.lang.Object[] val)
+    writeBinderArray(android.os.IBinder[] val)
+    writeBinderList(java.util.List<android.os.IBinder> val)
+    writeBlob(byte[] b)
+    writeBlob(byte[] b, int offset, int len)
+    writeBoolean(boolean val)
+    writeBooleanArray(boolean[] val)
+    writeBundle(android.os.Bundle val)
+    writeByte(byte val)
+    writeByteArray(byte[] b)
+    writeByteArray(byte[] b, int offset, int len)
+    writeCharArray(char[] val)
+    writeDouble(double val)
+    writeDoubleArray(double[] val)
+    writeException(java.lang.Exception e)
+    writeFileDescriptor(java.io.FileDescriptor val)
+    <T> writeFixedArray(T val, int parcelableFlags, int... dimensions)
+    writeFloat(float val)
+    writeFloatArray(float[] val)
+    writeInt(int val)
+    writeIntArray(int[] val)
+    <T> writeInterfaceArray(T[] val)
+    <T> writeInterfaceList(java.util.List<T> val)
+    writeInterfaceToken(java.lang.String interfaceName)
+    writeList(java.util.List val)
+    writeLong(long val)
+    writeLongArray(long[] val)
+    writeMap(java.util.Map val)
+    writeParcelable(android.os.Parcelable p, int parcelableFlags)
+    <T> writeParcelableArray(T[] value, int parcelableFlags)
+    writeParcelableCreator(android.os.Parcelable p)
+    <T> writeParcelableList(java.util.List<T> val, int flags)
+    writePersistableBundle(android.os.PersistableBundle val)
+    writeSerializable(java.io.Serializable s)
+    writeSize(android.util.Size val)
+    writeSizeF(android.util.SizeF val)
+    <T> writeSparseArray(android.util.SparseArray<T> val)
+    writeSparseBooleanArray(android.util.SparseBooleanArray val)
+    writeString(java.lang.String val)
+    writeStringArray(java.lang.String[] val)
+    writeStringList(java.util.List<java.lang.String> val)
+    writeStrongBinder(android.os.IBinder val)
+    writeStrongInterface(android.os.IInterface val)
+    <T> writeTypedArray(T[] val, int parcelableFlags)
+    <T> writeTypedArrayMap(android.util.ArrayMap<java.lang.String,T> val, int parcelableFlags)
+    <T> writeTypedList(java.util.List<T> val)
+    <T> writeTypedList(java.util.List<T> val, int parcelableFlags)
+    <T> writeTypedObject(T val, int parcelableFlags)
+    <T> writeTypedSparseArray(android.util.SparseArray<T> val, int parcelableFlags)
+    writeValue(java.lang.Object v)
+  interface Parcelable
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface Parcelable.ClassLoaderCreator<T>
+    createFromParcel(android.os.Parcel source, java.lang.ClassLoader loader)
+  interface Parcelable.Creator<T>
+    createFromParcel(android.os.Parcel source)
+    newArray(int size)
+  class ParcelFileDescriptor
+    adoptFd(int fd)
+    closeWithError(java.lang.String msg)
+    dup(java.io.FileDescriptor orig)
+    fromDatagramSocket(java.net.DatagramSocket datagramSocket)
+    fromFd(int fd)
+    fromSocket(java.net.Socket socket)
+    open(java.io.File file, int mode)
+    open(java.io.File file, int mode, android.os.Handler handler, android.os.ParcelFileDescriptor.OnCloseListener listener)
+    #ctor(android.os.ParcelFileDescriptor wrapped)
+    parseMode(java.lang.String mode)
+    wrap(android.os.ParcelFileDescriptor pfd, android.os.Handler handler, android.os.ParcelFileDescriptor.OnCloseListener listener)
+    writeToParcel(android.os.Parcel out, int flags)
+  class ParcelFileDescriptor.AutoCloseInputStream
+    #ctor(android.os.ParcelFileDescriptor pfd)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+  class ParcelFileDescriptor.AutoCloseOutputStream
+    #ctor(android.os.ParcelFileDescriptor pfd)
+  interface ParcelFileDescriptor.OnCloseListener
+    onClose(java.io.IOException e)
+  class ParcelFormatException
+    #ctor(java.lang.String reason)
+  class ParcelUuid
+    equals(java.lang.Object object)
+    fromString(java.lang.String uuid)
+    #ctor(java.util.UUID uuid)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PatternMatcher
+    match(java.lang.String str)
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String pattern, int type)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PerformanceHintManager
+    createHintSession(int[] tids, long initialTargetWorkDurationNanos)
+  class PerformanceHintManager.Session
+    reportActualWorkDuration(long actualDurationNanos)
+    setThreads(int[] tids)
+    updateTargetWorkDuration(long targetDurationNanos)
+  class PersistableBundle
+    getPersistableBundle(java.lang.String key)
+    #ctor(android.os.PersistableBundle b)
+    #ctor(int capacity)
+    putPersistableBundle(java.lang.String key, android.os.PersistableBundle value)
+    readFromStream(java.io.InputStream inputStream)
+    writeToParcel(android.os.Parcel parcel, int flags)
+    writeToStream(java.io.OutputStream outputStream)
+  class PowerManager
+    addThermalStatusListener(android.os.PowerManager.OnThermalStatusChangedListener listener)
+    addThermalStatusListener(java.util.concurrent.Executor executor, android.os.PowerManager.OnThermalStatusChangedListener listener)
+    getThermalHeadroom(int forecastSeconds)
+    isIgnoringBatteryOptimizations(java.lang.String packageName)
+    isWakeLockLevelSupported(int level)
+    newWakeLock(int levelAndFlags, java.lang.String tag)
+    reboot(java.lang.String reason)
+    removeThermalStatusListener(android.os.PowerManager.OnThermalStatusChangedListener listener)
+  interface PowerManager.OnThermalStatusChangedListener
+    onThermalStatusChanged(int status)
+  class PowerManager.WakeLock
+    acquire(long timeout)
+    release(int flags)
+    setReferenceCounted(boolean value)
+    setStateListener(java.util.concurrent.Executor executor, android.os.PowerManager.WakeLockStateListener listener)
+    setWorkSource(android.os.WorkSource ws)
+  interface PowerManager.WakeLockStateListener
+    onStateChanged(boolean enabled)
+  class Process
+    getGidForName(java.lang.String name)
+    getThreadPriority(int tid)
+    getUidForName(java.lang.String name)
+    isApplicationUid(int uid)
+    isIsolatedUid(int uid)
+    killProcess(int pid)
+    sendSignal(int pid, int signal)
+    setThreadPriority(int priority)
+    setThreadPriority(int tid, int priority)
+  class ProxyFileDescriptorCallback
+    onRead(long offset, int size, byte[] data)
+    onWrite(long offset, int size, byte[] data)
+  class RecoverySystem
+    installPackage(android.content.Context context, java.io.File packageFile)
+    rebootWipeCache(android.content.Context context)
+    rebootWipeUserData(android.content.Context context)
+    verifyPackage(java.io.File packageFile, android.os.RecoverySystem.ProgressListener listener, java.io.File deviceCertsZipFile)
+  interface RecoverySystem.ProgressListener
+    onProgress(int progress)
+  class RemoteCallbackList<E>
+    getBroadcastCookie(int index)
+    getBroadcastItem(int index)
+    getRegisteredCallbackCookie(int index)
+    getRegisteredCallbackItem(int index)
+    onCallbackDied(E callback)
+    onCallbackDied(E callback, java.lang.Object cookie)
+    register(E callback)
+    register(E callback, java.lang.Object cookie)
+    unregister(E callback)
+  class RemoteException
+    #ctor(java.lang.String message)
+  class ResultReceiver
+    onReceiveResult(int resultCode, android.os.Bundle resultData)
+    #ctor(android.os.Handler handler)
+    send(int resultCode, android.os.Bundle resultData)
+    writeToParcel(android.os.Parcel out, int flags)
+  class SharedMemory
+    create(java.lang.String name, int size)
+    fromFileDescriptor(android.os.ParcelFileDescriptor fd)
+    map(int prot, int offset, int length)
+    setProtect(int prot)
+    unmap(java.nio.ByteBuffer buffer)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StatFs
+    restat(java.lang.String path)
+    #ctor(java.lang.String path)
+  class StrictMode
+    noteSlowCall(java.lang.String name)
+    setThreadPolicy(android.os.StrictMode.ThreadPolicy policy)
+    setVmPolicy(android.os.StrictMode.VmPolicy policy)
+  interface StrictMode.OnThreadViolationListener
+    onThreadViolation(android.os.strictmode.Violation v)
+  interface StrictMode.OnVmViolationListener
+    onVmViolation(android.os.strictmode.Violation v)
+  class StrictMode.ThreadPolicy.Builder
+    penaltyListener(java.util.concurrent.Executor executor, android.os.StrictMode.OnThreadViolationListener listener)
+    #ctor(android.os.StrictMode.ThreadPolicy policy)
+  class StrictMode.VmPolicy.Builder
+    penaltyListener(java.util.concurrent.Executor executor, android.os.StrictMode.OnVmViolationListener listener)
+    setClassInstanceLimit(java.lang.Class klass, int instanceLimit)
+    #ctor(android.os.StrictMode.VmPolicy base)
+  class SystemClock
+    setCurrentTimeMillis(long millis)
+    sleep(long ms)
+  class TestLooperManager
+    execute(android.os.Message message)
+    hasMessages(android.os.Handler h, java.lang.Object object, int what)
+    hasMessages(android.os.Handler h, java.lang.Object object, java.lang.Runnable r)
+    recycle(android.os.Message msg)
+  class TokenWatcher
+    acquire(android.os.IBinder token, java.lang.String tag)
+    cleanup(android.os.IBinder token, boolean unlink)
+    dump(java.io.PrintWriter pw)
+    release(android.os.IBinder token)
+    #ctor(android.os.Handler h, java.lang.String tag)
+  class Trace
+    beginAsyncSection(java.lang.String methodName, int cookie)
+    beginSection(java.lang.String sectionName)
+    endAsyncSection(java.lang.String methodName, int cookie)
+    setCounter(java.lang.String counterName, long counterValue)
+  class TransactionTooLargeException
+    #ctor(java.lang.String msg)
+  class UserHandle
+    equals(java.lang.Object obj)
+    getUserHandleForUid(int uid)
+    readFromParcel(android.os.Parcel in)
+    #ctor(android.os.Parcel in)
+    writeToParcel(android.os.Parcel out, int flags)
+    writeToParcel(android.os.UserHandle h, android.os.Parcel out)
+  class UserManager
+    createUserCreationIntent(java.lang.String userName, java.lang.String accountName, java.lang.String accountType, android.os.PersistableBundle accountOptions)
+    getApplicationRestrictions(java.lang.String packageName)
+    getSerialNumberForUser(android.os.UserHandle user)
+    getUserCreationTime(android.os.UserHandle userHandle)
+    getUserForSerialNumber(long serialNumber)
+    getUserProperties(android.os.UserHandle userHandle)
+    getUserRestrictions(android.os.UserHandle userHandle)
+    hasUserRestriction(java.lang.String restrictionKey)
+    isQuietModeEnabled(android.os.UserHandle userHandle)
+    isUserRunning(android.os.UserHandle user)
+    isUserRunningOrStopping(android.os.UserHandle user)
+    isUserUnlocked(android.os.UserHandle user)
+    requestQuietModeEnabled(boolean enableQuietMode, android.os.UserHandle userHandle)
+    requestQuietModeEnabled(boolean enableQuietMode, android.os.UserHandle userHandle, int flags)
+    setRestrictionsChallenge(java.lang.String newPin)
+    setUserRestriction(java.lang.String key, boolean value)
+    setUserRestrictions(android.os.Bundle restrictions)
+    setUserRestrictions(android.os.Bundle restrictions, android.os.UserHandle userHandle)
+  class VibrationAttributes
+    createForUsage(int usage)
+    equals(java.lang.Object o)
+    isFlagSet(int flag)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VibrationAttributes.Builder
+    setFlags(int flags, int mask)
+    setUsage(int usage)
+    #ctor(android.media.AudioAttributes audio)
+    #ctor(android.os.VibrationAttributes vib)
+  class VibrationEffect
+    createOneShot(long milliseconds, int amplitude)
+    createPredefined(int effectId)
+    createWaveform(long[] timings, int repeat)
+    createWaveform(long[] timings, int[] amplitudes, int repeat)
+  class VibrationEffect.Composition
+    addPrimitive(int primitiveId)
+    addPrimitive(int primitiveId, float scale)
+    addPrimitive(int primitiveId, float scale, int delay)
+  class Vibrator
+    areAllEffectsSupported(int... effectIds)
+    areAllPrimitivesSupported(int... primitiveIds)
+    areEffectsSupported(int... effectIds)
+    arePrimitivesSupported(int... primitiveIds)
+    getPrimitiveDurations(int... primitiveIds)
+    vibrate(android.os.VibrationEffect vibe)
+    vibrate(android.os.VibrationEffect vibe, android.media.AudioAttributes attributes)
+    vibrate(android.os.VibrationEffect vibe, android.os.VibrationAttributes attributes)
+    vibrate(long milliseconds)
+    vibrate(long milliseconds, android.media.AudioAttributes attributes)
+    vibrate(long[] pattern, int repeat)
+    vibrate(long[] pattern, int repeat, android.media.AudioAttributes attributes)
+  class VibratorManager
+    getVibrator(int vibratorId)
+    vibrate(android.os.CombinedVibration effect)
+    vibrate(android.os.CombinedVibration effect, android.os.VibrationAttributes attributes)
+  class WorkSource
+    add(android.os.WorkSource other)
+    diff(android.os.WorkSource other)
+    equals(java.lang.Object o)
+    remove(android.os.WorkSource other)
+    set(android.os.WorkSource other)
+    #ctor(android.os.WorkSource orig)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.os.ext
+;---------------------------------------
+  class SdkExtensions
+    getExtensionVersion(int extension)
+
+package android.os.health
+;---------------------------------------
+  class HealthStats
+    getMeasurement(int key)
+    getMeasurementKeyAt(int index)
+    getMeasurements(int key)
+    getMeasurementsKeyAt(int index)
+    getStats(int key)
+    getStatsKeyAt(int index)
+    getTimer(int key)
+    getTimerCount(int key)
+    getTimerKeyAt(int index)
+    getTimers(int key)
+    getTimersKeyAt(int index)
+    getTimerTime(int key)
+    hasMeasurement(int key)
+    hasMeasurements(int key)
+    hasStats(int key)
+    hasTimer(int key)
+    hasTimers(int key)
+  class SystemHealthManager
+    takeUidSnapshot(int uid)
+    takeUidSnapshots(int[] uids)
+  class TimerStat
+    setCount(int count)
+    setTime(long time)
+    #ctor(android.os.Parcel in)
+    #ctor(int count, long time)
+    writeToParcel(android.os.Parcel out, int flags)
+
+package android.os.storage
+;---------------------------------------
+  class OnObbStateChangeListener
+    onObbStateChange(java.lang.String path, int state)
+  class StorageManager
+    allocateBytes(java.io.FileDescriptor fd, long bytes)
+    allocateBytes(java.util.UUID storageUuid, long bytes)
+    getAllocatableBytes(java.util.UUID storageUuid)
+    getCacheQuotaBytes(java.util.UUID storageUuid)
+    getCacheSizeBytes(java.util.UUID storageUuid)
+    getManageSpaceActivityIntent(java.lang.String packageName, int requestCode)
+    getMountedObbPath(java.lang.String rawPath)
+    getStorageVolume(android.net.Uri uri)
+    getStorageVolume(java.io.File file)
+    getUuidForPath(java.io.File path)
+    isAllocationSupported(java.io.FileDescriptor fd)
+    isCacheBehaviorGroup(java.io.File path)
+    isCacheBehaviorTombstone(java.io.File path)
+    isEncrypted(java.io.File file)
+    isObbMounted(java.lang.String rawPath)
+    mountObb(java.lang.String rawPath, java.lang.String key, android.os.storage.OnObbStateChangeListener listener)
+    openProxyFileDescriptor(int mode, android.os.ProxyFileDescriptorCallback callback, android.os.Handler handler)
+    registerStorageVolumeCallback(java.util.concurrent.Executor executor, android.os.storage.StorageManager.StorageVolumeCallback callback)
+    setCacheBehaviorGroup(java.io.File path, boolean group)
+    setCacheBehaviorTombstone(java.io.File path, boolean tombstone)
+    unmountObb(java.lang.String rawPath, boolean force, android.os.storage.OnObbStateChangeListener listener)
+    unregisterStorageVolumeCallback(android.os.storage.StorageManager.StorageVolumeCallback callback)
+  class StorageManager.StorageVolumeCallback
+    onStateChanged(android.os.storage.StorageVolume volume)
+  class StorageVolume
+    createAccessIntent(java.lang.String directoryName)
+    equals(java.lang.Object obj)
+    getDescription(android.content.Context context)
+    writeToParcel(android.os.Parcel parcel, int flags)
+
+package android.os.strictmode
+;---------------------------------------
+  class IncorrectContextUseViolation
+    #ctor(java.lang.String message, java.lang.Throwable originStack)
+  class UnsafeIntentLaunchViolation
+    #ctor(android.content.Intent intent)
+  class Violation
+    initCause(java.lang.Throwable cause)
+    setStackTrace(java.lang.StackTraceElement[] stackTrace)
+
+package android.preference
+;---------------------------------------
+  class CheckBoxPreference
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onBindView(android.view.View view)
+  class DialogPreference
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onBindDialogView(android.view.View view)
+    onClick(android.content.DialogInterface dialog, int which)
+    onDialogClosed(boolean positiveResult)
+    onDismiss(android.content.DialogInterface dialog)
+    onPrepareDialogBuilder(android.app.AlertDialog.Builder builder)
+    onRestoreInstanceState(android.os.Parcelable state)
+    setDialogIcon(android.graphics.drawable.Drawable dialogIcon)
+    setDialogIcon(int dialogIconRes)
+    setDialogLayoutResource(int dialogLayoutResId)
+    setDialogMessage(int dialogMessageResId)
+    setDialogMessage(java.lang.CharSequence dialogMessage)
+    setDialogTitle(int dialogTitleResId)
+    setDialogTitle(java.lang.CharSequence dialogTitle)
+    setNegativeButtonText(int negativeButtonTextResId)
+    setNegativeButtonText(java.lang.CharSequence negativeButtonText)
+    setPositiveButtonText(int positiveButtonTextResId)
+    setPositiveButtonText(java.lang.CharSequence positiveButtonText)
+    showDialog(android.os.Bundle state)
+  class EditTextPreference
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onAddEditTextToDialogView(android.view.View dialogView, android.widget.EditText editText)
+    onBindDialogView(android.view.View view)
+    onDialogClosed(boolean positiveResult)
+    onGetDefaultValue(android.content.res.TypedArray a, int index)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSetInitialValue(boolean restoreValue, java.lang.Object defaultValue)
+    setText(java.lang.String text)
+    showDialog(android.os.Bundle state)
+  class ListPreference
+    findIndexOfValue(java.lang.String value)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onDialogClosed(boolean positiveResult)
+    onGetDefaultValue(android.content.res.TypedArray a, int index)
+    onPrepareDialogBuilder(android.app.AlertDialog.Builder builder)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSetInitialValue(boolean restoreValue, java.lang.Object defaultValue)
+    setEntries(int entriesResId)
+    setEntries(java.lang.CharSequence[] entries)
+    setEntryValues(int entryValuesResId)
+    setEntryValues(java.lang.CharSequence[] entryValues)
+    setSummary(java.lang.CharSequence summary)
+    setValue(java.lang.String value)
+    setValueIndex(int index)
+  class MultiSelectListPreference
+    findIndexOfValue(java.lang.String value)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onDialogClosed(boolean positiveResult)
+    onGetDefaultValue(android.content.res.TypedArray a, int index)
+    onPrepareDialogBuilder(android.app.AlertDialog.Builder builder)
+    onSetInitialValue(boolean restoreValue, java.lang.Object defaultValue)
+    setEntries(int entriesResId)
+    setEntries(java.lang.CharSequence[] entries)
+    setEntryValues(int entryValuesResId)
+    setEntryValues(java.lang.CharSequence[] entryValues)
+    setValues(java.util.Set<java.lang.String> values)
+  class Preference
+    callChangeListener(java.lang.Object newValue)
+    compareTo(android.preference.Preference another)
+    findPreferenceInHierarchy(java.lang.String key)
+    getPersistedBoolean(boolean defaultReturnValue)
+    getPersistedFloat(float defaultReturnValue)
+    getPersistedInt(int defaultReturnValue)
+    getPersistedLong(long defaultReturnValue)
+    getPersistedString(java.lang.String defaultReturnValue)
+    getPersistedStringSet(java.util.Set<java.lang.String> defaultReturnValue)
+    getView(android.view.View convertView, android.view.ViewGroup parent)
+    notifyDependencyChange(boolean disableDependents)
+    onAttachedToHierarchy(android.preference.PreferenceManager preferenceManager)
+    onBindView(android.view.View view)
+    onCreateView(android.view.ViewGroup parent)
+    onDependencyChanged(android.preference.Preference dependency, boolean disableDependent)
+    onGetDefaultValue(android.content.res.TypedArray a, int index)
+    onParentChanged(android.preference.Preference parent, boolean disableChild)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSetInitialValue(boolean restorePersistedValue, java.lang.Object defaultValue)
+    persistBoolean(boolean value)
+    persistFloat(float value)
+    persistInt(int value)
+    persistLong(long value)
+    persistString(java.lang.String value)
+    persistStringSet(java.util.Set<java.lang.String> values)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    restoreHierarchyState(android.os.Bundle container)
+    saveHierarchyState(android.os.Bundle container)
+    setDefaultValue(java.lang.Object defaultValue)
+    setDependency(java.lang.String dependencyKey)
+    setEnabled(boolean enabled)
+    setFragment(java.lang.String fragment)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int iconResId)
+    setIconSpaceReserved(boolean iconSpaceReserved)
+    setIntent(android.content.Intent intent)
+    setKey(java.lang.String key)
+    setLayoutResource(int layoutResId)
+    setOnPreferenceChangeListener(android.preference.Preference.OnPreferenceChangeListener onPreferenceChangeListener)
+    setOnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener onPreferenceClickListener)
+    setOrder(int order)
+    setPersistent(boolean persistent)
+    setPreferenceDataStore(android.preference.PreferenceDataStore dataStore)
+    setRecycleEnabled(boolean enabled)
+    setSelectable(boolean selectable)
+    setShouldDisableView(boolean shouldDisableView)
+    setSingleLineTitle(boolean singleLineTitle)
+    setSummary(int summaryResId)
+    setSummary(java.lang.CharSequence summary)
+    setTitle(int titleResId)
+    setTitle(java.lang.CharSequence title)
+    setWidgetLayoutResource(int widgetLayoutResId)
+  class Preference.BaseSavedState
+    #ctor(android.os.Parcel source)
+    #ctor(android.os.Parcelable superState)
+  interface Preference.OnPreferenceChangeListener
+    onPreferenceChange(android.preference.Preference preference, java.lang.Object newValue)
+  interface Preference.OnPreferenceClickListener
+    onPreferenceClick(android.preference.Preference preference)
+  class PreferenceActivity
+    addPreferencesFromIntent(android.content.Intent intent)
+    addPreferencesFromResource(int preferencesResId)
+    findPreference(java.lang.CharSequence key)
+    finishPreferencePanel(android.app.Fragment caller, int resultCode, android.content.Intent resultData)
+    isValidFragment(java.lang.String fragmentName)
+    loadHeadersFromResource(int resid, java.util.List<android.preference.PreferenceActivity.Header> target)
+    onActivityResult(int requestCode, int resultCode, android.content.Intent data)
+    onBuildHeaders(java.util.List<android.preference.PreferenceActivity.Header> target)
+    onBuildStartFragmentIntent(java.lang.String fragmentName, android.os.Bundle args, int titleRes, int shortTitleRes)
+    onCreate(android.os.Bundle savedInstanceState)
+    onHeaderClick(android.preference.PreferenceActivity.Header header, int position)
+    onListItemClick(android.widget.ListView l, android.view.View v, int position, long id)
+    onNewIntent(android.content.Intent intent)
+    onOptionsItemSelected(android.view.MenuItem item)
+    onPreferenceStartFragment(android.preference.PreferenceFragment caller, android.preference.Preference pref)
+    onPreferenceTreeClick(android.preference.PreferenceScreen preferenceScreen, android.preference.Preference preference)
+    onRestoreInstanceState(android.os.Bundle state)
+    onSaveInstanceState(android.os.Bundle outState)
+    setListFooter(android.view.View view)
+    setParentTitle(java.lang.CharSequence title, java.lang.CharSequence shortTitle, android.view.View.OnClickListener listener)
+    setPreferenceScreen(android.preference.PreferenceScreen preferenceScreen)
+    showBreadCrumbs(java.lang.CharSequence title, java.lang.CharSequence shortTitle)
+    startPreferenceFragment(android.app.Fragment fragment, boolean push)
+    startPreferencePanel(java.lang.String fragmentClass, android.os.Bundle args, int titleRes, java.lang.CharSequence titleText, android.app.Fragment resultTo, int resultRequestCode)
+    startWithFragment(java.lang.String fragmentName, android.os.Bundle args, android.app.Fragment resultTo, int resultRequestCode)
+    startWithFragment(java.lang.String fragmentName, android.os.Bundle args, android.app.Fragment resultTo, int resultRequestCode, int titleRes, int shortTitleRes)
+    switchToHeader(android.preference.PreferenceActivity.Header header)
+    switchToHeader(java.lang.String fragmentName, android.os.Bundle args)
+  class PreferenceActivity.Header
+    getBreadCrumbShortTitle(android.content.res.Resources res)
+    getBreadCrumbTitle(android.content.res.Resources res)
+    getSummary(android.content.res.Resources res)
+    getTitle(android.content.res.Resources res)
+    readFromParcel(android.os.Parcel in)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PreferenceCategory
+    onPrepareAddPreference(android.preference.Preference preference)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  interface PreferenceDataStore
+    getBoolean(java.lang.String key, boolean defValue)
+    getFloat(java.lang.String key, float defValue)
+    getInt(java.lang.String key, int defValue)
+    getLong(java.lang.String key, long defValue)
+    getString(java.lang.String key, java.lang.String defValue)
+    getStringSet(java.lang.String key, java.util.Set<java.lang.String> defValues)
+    putBoolean(java.lang.String key, boolean value)
+    putFloat(java.lang.String key, float value)
+    putInt(java.lang.String key, int value)
+    putLong(java.lang.String key, long value)
+    putString(java.lang.String key, java.lang.String value)
+    putStringSet(java.lang.String key, java.util.Set<java.lang.String> values)
+  class PreferenceFragment
+    addPreferencesFromIntent(android.content.Intent intent)
+    addPreferencesFromResource(int preferencesResId)
+    findPreference(java.lang.CharSequence key)
+    onActivityCreated(android.os.Bundle savedInstanceState)
+    onActivityResult(int requestCode, int resultCode, android.content.Intent data)
+    onCreate(android.os.Bundle savedInstanceState)
+    onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
+    onPreferenceTreeClick(android.preference.PreferenceScreen preferenceScreen, android.preference.Preference preference)
+    onSaveInstanceState(android.os.Bundle outState)
+    onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
+    setPreferenceScreen(android.preference.PreferenceScreen preferenceScreen)
+  interface PreferenceFragment.OnPreferenceStartFragmentCallback
+    onPreferenceStartFragment(android.preference.PreferenceFragment caller, android.preference.Preference pref)
+  class PreferenceGroup
+    addItemFromInflater(android.preference.Preference preference)
+    addPreference(android.preference.Preference preference)
+    dispatchRestoreInstanceState(android.os.Bundle container)
+    dispatchSaveInstanceState(android.os.Bundle container)
+    findPreference(java.lang.CharSequence key)
+    getPreference(int index)
+    notifyDependencyChange(boolean disableDependents)
+    onPrepareAddPreference(android.preference.Preference preference)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    removePreference(android.preference.Preference preference)
+    setOrderingAsAdded(boolean orderingAsAdded)
+  class PreferenceManager
+    createPreferenceScreen(android.content.Context context)
+    findPreference(java.lang.CharSequence key)
+    getDefaultSharedPreferences(android.content.Context context)
+    getDefaultSharedPreferencesName(android.content.Context context)
+    setDefaultValues(android.content.Context context, int resId, boolean readAgain)
+    setDefaultValues(android.content.Context context, java.lang.String sharedPreferencesName, int sharedPreferencesMode, int resId, boolean readAgain)
+    setPreferenceDataStore(android.preference.PreferenceDataStore dataStore)
+    setSharedPreferencesMode(int sharedPreferencesMode)
+    setSharedPreferencesName(java.lang.String sharedPreferencesName)
+  interface PreferenceManager.OnActivityResultListener
+    onActivityResult(int requestCode, int resultCode, android.content.Intent data)
+  class PreferenceScreen
+    bind(android.widget.ListView listView)
+    onDismiss(android.content.DialogInterface dialog)
+    onItemClick(android.widget.AdapterView parent, android.view.View view, int position, long id)
+    onRestoreInstanceState(android.os.Parcelable state)
+  class RingtonePreference
+    onActivityResult(int requestCode, int resultCode, android.content.Intent data)
+    onAttachedToHierarchy(android.preference.PreferenceManager preferenceManager)
+    onGetDefaultValue(android.content.res.TypedArray a, int index)
+    onPrepareRingtonePickerIntent(android.content.Intent ringtonePickerIntent)
+    onSaveRingtone(android.net.Uri ringtoneUri)
+    onSetInitialValue(boolean restorePersistedValue, java.lang.Object defaultValueObj)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setRingtoneType(int type)
+    setShowDefault(boolean showDefault)
+    setShowSilent(boolean showSilent)
+  class SwitchPreference
+    onBindView(android.view.View view)
+    setSwitchTextOff(int resId)
+    setSwitchTextOff(java.lang.CharSequence offText)
+    setSwitchTextOn(int resId)
+    setSwitchTextOn(java.lang.CharSequence onText)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class TwoStatePreference
+    onGetDefaultValue(android.content.res.TypedArray a, int index)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSetInitialValue(boolean restoreValue, java.lang.Object defaultValue)
+    setChecked(boolean checked)
+    setDisableDependentsState(boolean disableDependentsState)
+    setSummaryOff(int summaryResId)
+    setSummaryOff(java.lang.CharSequence summary)
+    setSummaryOn(int summaryResId)
+    setSummaryOn(java.lang.CharSequence summary)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+
+package android.print
+;---------------------------------------
+  class PageRange
+    equals(java.lang.Object obj)
+    #ctor(int start, int end)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrintAttributes
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrintAttributes.Builder
+    setColorMode(int colorMode)
+    setDuplexMode(int duplexMode)
+    setMediaSize(android.print.PrintAttributes.MediaSize mediaSize)
+    setMinMargins(android.print.PrintAttributes.Margins margins)
+    setResolution(android.print.PrintAttributes.Resolution resolution)
+  class PrintAttributes.Margins
+    equals(java.lang.Object obj)
+    #ctor(int leftMils, int topMils, int rightMils, int bottomMils)
+  class PrintAttributes.MediaSize
+    equals(java.lang.Object obj)
+    getLabel(android.content.pm.PackageManager packageManager)
+    #ctor(java.lang.String id, java.lang.String label, int widthMils, int heightMils)
+  class PrintAttributes.Resolution
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String id, java.lang.String label, int horizontalDpi, int verticalDpi)
+  class PrintDocumentAdapter
+    onLayout(android.print.PrintAttributes oldAttributes, android.print.PrintAttributes newAttributes, android.os.CancellationSignal cancellationSignal, android.print.PrintDocumentAdapter.LayoutResultCallback callback, android.os.Bundle extras)
+    onWrite(android.print.PageRange[] pages, android.os.ParcelFileDescriptor destination, android.os.CancellationSignal cancellationSignal, android.print.PrintDocumentAdapter.WriteResultCallback callback)
+  class PrintDocumentAdapter.LayoutResultCallback
+    onLayoutFailed(java.lang.CharSequence error)
+    onLayoutFinished(android.print.PrintDocumentInfo info, boolean changed)
+  class PrintDocumentAdapter.WriteResultCallback
+    onWriteFailed(java.lang.CharSequence error)
+    onWriteFinished(android.print.PageRange[] pages)
+  class PrintDocumentInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrintDocumentInfo.Builder
+    #ctor(java.lang.String name)
+    setContentType(int type)
+    setPageCount(int pageCount)
+  class PrinterCapabilitiesInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrinterCapabilitiesInfo.Builder
+    addMediaSize(android.print.PrintAttributes.MediaSize mediaSize, boolean isDefault)
+    addResolution(android.print.PrintAttributes.Resolution resolution, boolean isDefault)
+    #ctor(android.print.PrinterId printerId)
+    setColorModes(int colorModes, int defaultColorMode)
+    setDuplexModes(int duplexModes, int defaultDuplexMode)
+    setMinMargins(android.print.PrintAttributes.Margins margins)
+  class PrinterId
+    equals(java.lang.Object object)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrinterInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrinterInfo.Builder
+    #ctor(android.print.PrinterId printerId, java.lang.String name, int status)
+    #ctor(android.print.PrinterInfo other)
+    setCapabilities(android.print.PrinterCapabilitiesInfo capabilities)
+    setDescription(java.lang.String description)
+    setHasCustomPrinterIcon(boolean hasCustomPrinterIcon)
+    setIconResourceId(int iconResourceId)
+    setInfoIntent(android.app.PendingIntent infoIntent)
+    setName(java.lang.String name)
+    setStatus(int status)
+  class PrintJob
+    equals(java.lang.Object obj)
+  class PrintJobId
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrintJobInfo
+    getAdvancedIntOption(java.lang.String key)
+    getAdvancedStringOption(java.lang.String key)
+    hasAdvancedOption(java.lang.String key)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class PrintJobInfo.Builder
+    #ctor(android.print.PrintJobInfo prototype)
+    putAdvancedOption(java.lang.String key, int value)
+    putAdvancedOption(java.lang.String key, java.lang.String value)
+    setAttributes(android.print.PrintAttributes attributes)
+    setCopies(int copies)
+    setPages(android.print.PageRange[] pages)
+  class PrintManager
+    isPrintServiceEnabled(android.content.ComponentName service)
+    print(java.lang.String printJobName, android.print.PrintDocumentAdapter documentAdapter, android.print.PrintAttributes attributes)
+
+package android.print.pdf
+;---------------------------------------
+  class PrintedPdfDocument
+    #ctor(android.content.Context context, android.print.PrintAttributes attributes)
+    startPage(int pageNumber)
+
+package android.printservice
+;---------------------------------------
+  class CustomPrinterIconCallback
+    onCustomPrinterIconLoaded(android.graphics.drawable.Icon icon)
+  class PrinterDiscoverySession
+    addPrinters(java.util.List<android.print.PrinterInfo> printers)
+    onRequestCustomPrinterIcon(android.print.PrinterId printerId, android.os.CancellationSignal cancellationSignal, android.printservice.CustomPrinterIconCallback callback)
+    onStartPrinterDiscovery(java.util.List<android.print.PrinterId> priorityList)
+    onStartPrinterStateTracking(android.print.PrinterId printerId)
+    onStopPrinterStateTracking(android.print.PrinterId printerId)
+    onValidatePrinters(java.util.List<android.print.PrinterId> printerIds)
+    removePrinters(java.util.List<android.print.PrinterId> printerIds)
+  class PrintJob
+    block(java.lang.String reason)
+    equals(java.lang.Object obj)
+    fail(java.lang.String error)
+    getAdvancedIntOption(java.lang.String key)
+    getAdvancedStringOption(java.lang.String key)
+    hasAdvancedOption(java.lang.String key)
+    setProgress(float progress)
+    setStatus(int statusResId)
+    setStatus(java.lang.CharSequence status)
+    setTag(java.lang.String tag)
+  class PrintService
+    attachBaseContext(android.content.Context base)
+    generatePrinterId(java.lang.String localId)
+    onBind(android.content.Intent intent)
+    onPrintJobQueued(android.printservice.PrintJob printJob)
+    onRequestCancelPrintJob(android.printservice.PrintJob printJob)
+
+package android.provider
+;---------------------------------------
+  class BlockedNumberContract
+    canCurrentUserBlockNumbers(android.content.Context context)
+    isBlocked(android.content.Context context, java.lang.String phoneNumber)
+    unblock(android.content.Context context, java.lang.String phoneNumber)
+  class Browser
+    sendString(android.content.Context context, java.lang.String string)
+  class CalendarContract
+    startViewCalendarEventInManagedProfile(android.content.Context context, long eventId, long startMs, long endMs, boolean allDay, int flags)
+  class CalendarContract.Attendees
+    query(android.content.ContentResolver cr, long eventId, java.lang.String[] projection)
+  class CalendarContract.CalendarEntity
+    newEntityIterator(android.database.Cursor cursor)
+  class CalendarContract.EventDays
+    query(android.content.ContentResolver cr, int startDay, int numDays, java.lang.String[] projection)
+  class CalendarContract.EventsEntity
+    newEntityIterator(android.database.Cursor cursor, android.content.ContentProviderClient provider)
+    newEntityIterator(android.database.Cursor cursor, android.content.ContentResolver resolver)
+  class CalendarContract.Instances
+    query(android.content.ContentResolver cr, java.lang.String[] projection, long begin, long end)
+    query(android.content.ContentResolver cr, java.lang.String[] projection, long begin, long end, java.lang.String searchQuery)
+  class CalendarContract.Reminders
+    query(android.content.ContentResolver cr, long eventId, java.lang.String[] projection)
+  class CallLog.Calls
+    getLastOutgoingCall(android.content.Context context)
+  class CloudMediaProvider
+    attachInfo(android.content.Context context, android.content.pm.ProviderInfo info)
+    call(java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    canonicalize(android.net.Uri uri)
+    delete(android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs)
+    getType(android.net.Uri uri)
+    insert(android.net.Uri uri, android.content.ContentValues values)
+    onCreateCloudMediaSurfaceController(android.os.Bundle config, android.provider.CloudMediaProvider.CloudMediaSurfaceStateChangedCallback callback)
+    onGetMediaCollectionInfo(android.os.Bundle extras)
+    onOpenMedia(java.lang.String mediaId, android.os.Bundle extras, android.os.CancellationSignal signal)
+    onOpenPreview(java.lang.String mediaId, android.graphics.Point size, android.os.Bundle extras, android.os.CancellationSignal signal)
+    onQueryAlbums(android.os.Bundle extras)
+    onQueryDeletedMedia(android.os.Bundle extras)
+    onQueryMedia(android.os.Bundle extras)
+    openFile(android.net.Uri uri, java.lang.String mode)
+    openFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts, android.os.CancellationSignal signal)
+    query(android.net.Uri uri, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder, android.os.CancellationSignal cancellationSignal)
+    update(android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  class CloudMediaProvider.CloudMediaSurfaceController
+    onConfigChange(android.os.Bundle config)
+    onMediaPause(int surfaceId)
+    onMediaPlay(int surfaceId)
+    onMediaSeekTo(int surfaceId, long timestampMillis)
+    onSurfaceChanged(int surfaceId, int format, int width, int height)
+    onSurfaceCreated(int surfaceId, android.view.Surface surface, java.lang.String mediaId)
+    onSurfaceDestroyed(int surfaceId)
+  class CloudMediaProvider.CloudMediaSurfaceStateChangedCallback
+    setPlaybackState(int surfaceId, int playbackState, android.os.Bundle playbackStateInfo)
+  class Contacts.ContactMethods
+    addPostalLocation(android.content.Context context, long postalId, double latitude, double longitude)
+    decodeImProtocol(java.lang.String encodedString)
+    encodeCustomImProtocol(java.lang.String protocolString)
+    encodePredefinedImProtocol(int protocol)
+    getDisplayLabel(android.content.Context context, int kind, int type, java.lang.CharSequence label)
+  class Contacts.Organizations
+    getDisplayLabel(android.content.Context context, int type, java.lang.CharSequence label)
+  class Contacts.People
+    addToGroup(android.content.ContentResolver resolver, long personId, java.lang.String groupName)
+    addToGroup(android.content.ContentResolver resolver, long personId, long groupId)
+    addToMyContactsGroup(android.content.ContentResolver resolver, long personId)
+    createPersonInMyContactsGroup(android.content.ContentResolver resolver, android.content.ContentValues values)
+    loadContactPhoto(android.content.Context context, android.net.Uri person, int placeholderImageResource, android.graphics.BitmapFactory.Options options)
+    markAsContacted(android.content.ContentResolver resolver, long personId)
+    openContactPhotoInputStream(android.content.ContentResolver cr, android.net.Uri person)
+    queryGroups(android.content.ContentResolver resolver, long person)
+    setPhotoData(android.content.ContentResolver cr, android.net.Uri person, byte[] data)
+  class Contacts.Phones
+    getDisplayLabel(android.content.Context context, int type, java.lang.CharSequence label)
+    getDisplayLabel(android.content.Context context, int type, java.lang.CharSequence label, java.lang.CharSequence[] labelArray)
+  class Contacts.Settings
+    getSetting(android.content.ContentResolver cr, java.lang.String account, java.lang.String key)
+    setSetting(android.content.ContentResolver cr, java.lang.String account, java.lang.String key, java.lang.String value)
+  class ContactsContract
+    isProfileId(long id)
+  class ContactsContract.CommonDataKinds.Email
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.CommonDataKinds.Event
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeResource(java.lang.Integer type)
+  class ContactsContract.CommonDataKinds.Im
+    getProtocolLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getProtocolLabelResource(int type)
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.CommonDataKinds.Organization
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.CommonDataKinds.Phone
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.CommonDataKinds.Relation
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.CommonDataKinds.SipAddress
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.CommonDataKinds.StructuredPostal
+    getTypeLabel(android.content.res.Resources res, int type, java.lang.CharSequence label)
+    getTypeLabelResource(int type)
+  class ContactsContract.Contacts
+    getLookupUri(android.content.ContentResolver resolver, android.net.Uri contactUri)
+    getLookupUri(long contactId, java.lang.String lookupKey)
+    isEnterpriseContactId(long contactId)
+    lookupContact(android.content.ContentResolver resolver, android.net.Uri lookupUri)
+    markAsContacted(android.content.ContentResolver resolver, long contactId)
+    openContactPhotoInputStream(android.content.ContentResolver cr, android.net.Uri contactUri)
+    openContactPhotoInputStream(android.content.ContentResolver cr, android.net.Uri contactUri, boolean preferHighres)
+  class ContactsContract.Contacts.AggregationSuggestions.Builder
+    addNameParameter(java.lang.String name)
+    setContactId(long contactId)
+    setLimit(int limit)
+  class ContactsContract.Data
+    getContactLookupUri(android.content.ContentResolver resolver, android.net.Uri dataUri)
+  class ContactsContract.Directory
+    isEnterpriseDirectoryId(long directoryId)
+    isRemoteDirectoryId(long directoryId)
+    notifyDirectoryChange(android.content.ContentResolver resolver)
+  class ContactsContract.Groups
+    newEntityIterator(android.database.Cursor cursor)
+  class ContactsContract.PinnedPositions
+    pin(android.content.ContentResolver contentResolver, long contactId, int pinnedPosition)
+    undemote(android.content.ContentResolver contentResolver, long contactId)
+  class ContactsContract.ProfileSyncState
+    get(android.content.ContentProviderClient provider, android.accounts.Account account)
+    getWithUri(android.content.ContentProviderClient provider, android.accounts.Account account)
+    newSetOperation(android.accounts.Account account, byte[] data)
+    set(android.content.ContentProviderClient provider, android.accounts.Account account, byte[] data)
+  class ContactsContract.QuickContact
+    showQuickContact(android.content.Context context, android.graphics.Rect target, android.net.Uri lookupUri, int mode, java.lang.String[] excludeMimes)
+    showQuickContact(android.content.Context context, android.graphics.Rect target, android.net.Uri lookupUri, java.lang.String[] excludeMimes, java.lang.String prioritizedMimeType)
+    showQuickContact(android.content.Context context, android.view.View target, android.net.Uri lookupUri, int mode, java.lang.String[] excludeMimes)
+    showQuickContact(android.content.Context context, android.view.View target, android.net.Uri lookupUri, java.lang.String[] excludeMimes, java.lang.String prioritizedMimeType)
+  class ContactsContract.RawContacts
+    getContactLookupUri(android.content.ContentResolver resolver, android.net.Uri rawContactUri)
+    getLocalAccountName(android.content.Context context)
+    getLocalAccountType(android.content.Context context)
+    newEntityIterator(android.database.Cursor cursor)
+  class ContactsContract.Settings
+    getDefaultAccount(android.content.ContentResolver resolver)
+  class ContactsContract.SimAccount
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ContactsContract.SimContacts
+    getSimAccounts(android.content.ContentResolver contentResolver)
+  class ContactsContract.StatusUpdates
+    getPresenceIconResourceId(int status)
+    getPresencePrecedence(int status)
+  class ContactsContract.SyncState
+    get(android.content.ContentProviderClient provider, android.accounts.Account account)
+    getWithUri(android.content.ContentProviderClient provider, android.accounts.Account account)
+    newSetOperation(android.accounts.Account account, byte[] data)
+    set(android.content.ContentProviderClient provider, android.accounts.Account account, byte[] data)
+  class DocumentsContract
+    buildChildDocumentsUri(java.lang.String authority, java.lang.String parentDocumentId)
+    buildChildDocumentsUriUsingTree(android.net.Uri treeUri, java.lang.String parentDocumentId)
+    buildDocumentUri(java.lang.String authority, java.lang.String documentId)
+    buildDocumentUriUsingTree(android.net.Uri treeUri, java.lang.String documentId)
+    buildRecentDocumentsUri(java.lang.String authority, java.lang.String rootId)
+    buildRootsUri(java.lang.String authority)
+    buildRootUri(java.lang.String authority, java.lang.String rootId)
+    buildSearchDocumentsUri(java.lang.String authority, java.lang.String rootId, java.lang.String query)
+    buildTreeDocumentUri(java.lang.String authority, java.lang.String documentId)
+    copyDocument(android.content.ContentResolver content, android.net.Uri sourceDocumentUri, android.net.Uri targetParentDocumentUri)
+    createDocument(android.content.ContentResolver content, android.net.Uri parentDocumentUri, java.lang.String mimeType, java.lang.String displayName)
+    createWebLinkIntent(android.content.ContentResolver content, android.net.Uri uri, android.os.Bundle options)
+    deleteDocument(android.content.ContentResolver content, android.net.Uri documentUri)
+    ejectRoot(android.content.ContentResolver content, android.net.Uri rootUri)
+    findDocumentPath(android.content.ContentResolver content, android.net.Uri treeUri)
+    getDocumentId(android.net.Uri documentUri)
+    getDocumentMetadata(android.content.ContentResolver content, android.net.Uri documentUri)
+    getDocumentThumbnail(android.content.ContentResolver content, android.net.Uri documentUri, android.graphics.Point size, android.os.CancellationSignal signal)
+    getRootId(android.net.Uri rootUri)
+    getSearchDocumentsQuery(android.net.Uri searchDocumentsUri)
+    getTreeDocumentId(android.net.Uri documentUri)
+    isChildDocument(android.content.ContentResolver content, android.net.Uri parentDocumentUri, android.net.Uri childDocumentUri)
+    isDocumentUri(android.content.Context context, android.net.Uri uri)
+    isRootsUri(android.content.Context context, android.net.Uri uri)
+    isRootUri(android.content.Context context, android.net.Uri uri)
+    isTreeUri(android.net.Uri uri)
+    moveDocument(android.content.ContentResolver content, android.net.Uri sourceDocumentUri, android.net.Uri sourceParentDocumentUri, android.net.Uri targetParentDocumentUri)
+    removeDocument(android.content.ContentResolver content, android.net.Uri documentUri, android.net.Uri parentDocumentUri)
+    renameDocument(android.content.ContentResolver content, android.net.Uri documentUri, java.lang.String displayName)
+  class DocumentsContract.Path
+    #ctor(java.lang.String rootId, java.util.List<java.lang.String> path)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DocumentsProvider
+    attachInfo(android.content.Context context, android.content.pm.ProviderInfo info)
+    call(java.lang.String method, java.lang.String arg, android.os.Bundle extras)
+    canonicalize(android.net.Uri uri)
+    copyDocument(java.lang.String sourceDocumentId, java.lang.String targetParentDocumentId)
+    createDocument(java.lang.String parentDocumentId, java.lang.String mimeType, java.lang.String displayName)
+    createWebLinkIntent(java.lang.String documentId, android.os.Bundle options)
+    delete(android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs)
+    deleteDocument(java.lang.String documentId)
+    ejectRoot(java.lang.String rootId)
+    findDocumentPath(java.lang.String parentDocumentId, java.lang.String childDocumentId)
+    getDocumentMetadata(java.lang.String documentId)
+    getDocumentStreamTypes(java.lang.String documentId, java.lang.String mimeTypeFilter)
+    getDocumentType(java.lang.String documentId)
+    getStreamTypes(android.net.Uri uri, java.lang.String mimeTypeFilter)
+    getType(android.net.Uri uri)
+    insert(android.net.Uri uri, android.content.ContentValues values)
+    isChildDocument(java.lang.String parentDocumentId, java.lang.String documentId)
+    moveDocument(java.lang.String sourceDocumentId, java.lang.String sourceParentDocumentId, java.lang.String targetParentDocumentId)
+    openAssetFile(android.net.Uri uri, java.lang.String mode)
+    openAssetFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openDocument(java.lang.String documentId, java.lang.String mode, android.os.CancellationSignal signal)
+    openDocumentThumbnail(java.lang.String documentId, android.graphics.Point sizeHint, android.os.CancellationSignal signal)
+    openFile(android.net.Uri uri, java.lang.String mode)
+    openFile(android.net.Uri uri, java.lang.String mode, android.os.CancellationSignal signal)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts)
+    openTypedAssetFile(android.net.Uri uri, java.lang.String mimeTypeFilter, android.os.Bundle opts, android.os.CancellationSignal signal)
+    openTypedDocument(java.lang.String documentId, java.lang.String mimeTypeFilter, android.os.Bundle opts, android.os.CancellationSignal signal)
+    query(android.net.Uri uri, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal cancellationSignal)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder)
+    query(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder, android.os.CancellationSignal cancellationSignal)
+    queryChildDocuments(java.lang.String parentDocumentId, java.lang.String[] projection, android.os.Bundle queryArgs)
+    queryChildDocuments(java.lang.String parentDocumentId, java.lang.String[] projection, java.lang.String sortOrder)
+    queryDocument(java.lang.String documentId, java.lang.String[] projection)
+    queryRecentDocuments(java.lang.String rootId, java.lang.String[] projection)
+    queryRecentDocuments(java.lang.String rootId, java.lang.String[] projection, android.os.Bundle queryArgs, android.os.CancellationSignal signal)
+    queryRoots(java.lang.String[] projection)
+    querySearchDocuments(java.lang.String rootId, java.lang.String query, java.lang.String[] projection)
+    querySearchDocuments(java.lang.String rootId, java.lang.String[] projection, android.os.Bundle queryArgs)
+    removeDocument(java.lang.String documentId, java.lang.String parentDocumentId)
+    renameDocument(java.lang.String documentId, java.lang.String displayName)
+    revokeDocumentPermission(java.lang.String documentId)
+    update(android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs)
+  class FontRequest
+    #ctor(java.lang.String providerAuthority, java.lang.String providerPackage, java.lang.String query)
+    #ctor(java.lang.String providerAuthority, java.lang.String providerPackage, java.lang.String query, java.util.List<java.util.List<byte[]>> certificates)
+  class FontsContract
+    buildTypeface(android.content.Context context, android.os.CancellationSignal cancellationSignal, android.provider.FontsContract.FontInfo[] fonts)
+    fetchFonts(android.content.Context context, android.os.CancellationSignal cancellationSignal, android.provider.FontRequest request)
+    requestFonts(android.content.Context context, android.provider.FontRequest request, android.os.Handler handler, android.os.CancellationSignal cancellationSignal, android.provider.FontsContract.FontRequestCallback callback)
+  class FontsContract.FontRequestCallback
+    onTypefaceRequestFailed(int reason)
+    onTypefaceRetrieved(android.graphics.Typeface typeface)
+  class MediaStore
+    canManageMedia(android.content.Context context)
+    createDeleteRequest(android.content.ContentResolver resolver, java.util.Collection<android.net.Uri> uris)
+    createFavoriteRequest(android.content.ContentResolver resolver, java.util.Collection<android.net.Uri> uris, boolean value)
+    createTrashRequest(android.content.ContentResolver resolver, java.util.Collection<android.net.Uri> uris, boolean value)
+    createWriteRequest(android.content.ContentResolver resolver, java.util.Collection<android.net.Uri> uris)
+    getDocumentUri(android.content.Context context, android.net.Uri mediaUri)
+    getExternalVolumeNames(android.content.Context context)
+    getGeneration(android.content.Context context, java.lang.String volumeName)
+    getMediaUri(android.content.Context context, android.net.Uri documentUri)
+    getOriginalMediaFormatFileDescriptor(android.content.Context context, android.os.ParcelFileDescriptor fileDescriptor)
+    getRecentExternalVolumeNames(android.content.Context context)
+    getRedactedUri(android.content.ContentResolver resolver, android.net.Uri uri)
+    getRedactedUri(android.content.ContentResolver resolver, java.util.List<android.net.Uri> uris)
+    getRequireOriginal(android.net.Uri uri)
+    getVersion(android.content.Context context)
+    getVersion(android.content.Context context, java.lang.String volumeName)
+    getVolumeName(android.net.Uri uri)
+    isCurrentCloudMediaProviderAuthority(android.content.ContentResolver resolver, java.lang.String authority)
+    isCurrentSystemGallery(android.content.ContentResolver resolver, int uid, java.lang.String packageName)
+    isSupportedCloudMediaProviderAuthority(android.content.ContentResolver resolver, java.lang.String authority)
+    notifyCloudMediaChangedEvent(android.content.ContentResolver resolver, java.lang.String authority, java.lang.String currentMediaCollectionId)
+    setIncludePending(android.net.Uri uri)
+    setRequireOriginal(android.net.Uri uri)
+  class MediaStore.Audio
+    keyFor(java.lang.String name)
+  class MediaStore.Audio.Albums
+    getContentUri(java.lang.String volumeName)
+  class MediaStore.Audio.Artists
+    getContentUri(java.lang.String volumeName)
+  class MediaStore.Audio.Artists.Albums
+    getContentUri(java.lang.String volumeName, long artistId)
+  class MediaStore.Audio.Genres
+    getContentUri(java.lang.String volumeName)
+    getContentUriForAudioId(java.lang.String volumeName, int audioId)
+  class MediaStore.Audio.Genres.Members
+    getContentUri(java.lang.String volumeName, long genreId)
+  class MediaStore.Audio.Media
+    getContentUri(java.lang.String volumeName)
+    getContentUri(java.lang.String volumeName, long id)
+    getContentUriForPath(java.lang.String path)
+  class MediaStore.Audio.Playlists
+    getContentUri(java.lang.String volumeName)
+  class MediaStore.Audio.Playlists.Members
+    getContentUri(java.lang.String volumeName, long playlistId)
+    moveItem(android.content.ContentResolver res, long playlistId, int from, int to)
+  class MediaStore.Downloads
+    getContentUri(java.lang.String volumeName)
+    getContentUri(java.lang.String volumeName, long id)
+  class MediaStore.Files
+    getContentUri(java.lang.String volumeName)
+    getContentUri(java.lang.String volumeName, long rowId)
+  class MediaStore.Images.Media
+    getBitmap(android.content.ContentResolver cr, android.net.Uri url)
+    getContentUri(java.lang.String volumeName)
+    getContentUri(java.lang.String volumeName, long id)
+    insertImage(android.content.ContentResolver cr, android.graphics.Bitmap source, java.lang.String title, java.lang.String description)
+    insertImage(android.content.ContentResolver cr, java.lang.String imagePath, java.lang.String name, java.lang.String description)
+    query(android.content.ContentResolver cr, android.net.Uri uri, java.lang.String[] projection)
+    query(android.content.ContentResolver cr, android.net.Uri uri, java.lang.String[] projection, java.lang.String where, java.lang.String orderBy)
+    query(android.content.ContentResolver cr, android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String orderBy)
+  class MediaStore.Images.Thumbnails
+    cancelThumbnailRequest(android.content.ContentResolver cr, long origId)
+    cancelThumbnailRequest(android.content.ContentResolver cr, long origId, long groupId)
+    getContentUri(java.lang.String volumeName)
+    getKindSize(int kind)
+    getThumbnail(android.content.ContentResolver cr, long imageId, int kind, android.graphics.BitmapFactory.Options options)
+    getThumbnail(android.content.ContentResolver cr, long imageId, long groupId, int kind, android.graphics.BitmapFactory.Options options)
+    query(android.content.ContentResolver cr, android.net.Uri uri, java.lang.String[] projection)
+    queryMiniThumbnail(android.content.ContentResolver cr, long origId, int kind, java.lang.String[] projection)
+    queryMiniThumbnails(android.content.ContentResolver cr, android.net.Uri uri, int kind, java.lang.String[] projection)
+  class MediaStore.Video
+    query(android.content.ContentResolver cr, android.net.Uri uri, java.lang.String[] projection)
+  class MediaStore.Video.Media
+    getContentUri(java.lang.String volumeName)
+    getContentUri(java.lang.String volumeName, long id)
+  class MediaStore.Video.Thumbnails
+    cancelThumbnailRequest(android.content.ContentResolver cr, long origId)
+    cancelThumbnailRequest(android.content.ContentResolver cr, long videoId, long groupId)
+    getContentUri(java.lang.String volumeName)
+    getKindSize(int kind)
+    getThumbnail(android.content.ContentResolver cr, long videoId, int kind, android.graphics.BitmapFactory.Options options)
+    getThumbnail(android.content.ContentResolver cr, long videoId, long groupId, int kind, android.graphics.BitmapFactory.Options options)
+  class SearchRecentSuggestions
+    saveRecentQuery(java.lang.String queryString, java.lang.String line2)
+    #ctor(android.content.Context context, java.lang.String authority, int mode)
+    truncateHistory(android.content.ContentResolver cr, int maxEntries)
+  class Settings
+    canDrawOverlays(android.content.Context context)
+  class Settings.Global
+    getFloat(android.content.ContentResolver cr, java.lang.String name)
+    getFloat(android.content.ContentResolver cr, java.lang.String name, float def)
+    getInt(android.content.ContentResolver cr, java.lang.String name)
+    getInt(android.content.ContentResolver cr, java.lang.String name, int def)
+    getLong(android.content.ContentResolver cr, java.lang.String name)
+    getLong(android.content.ContentResolver cr, java.lang.String name, long def)
+    getString(android.content.ContentResolver resolver, java.lang.String name)
+    getUriFor(java.lang.String name)
+    putFloat(android.content.ContentResolver cr, java.lang.String name, float value)
+    putInt(android.content.ContentResolver cr, java.lang.String name, int value)
+    putLong(android.content.ContentResolver cr, java.lang.String name, long value)
+    putString(android.content.ContentResolver resolver, java.lang.String name, java.lang.String value)
+  class Settings.NameValueTable
+    getUriFor(android.net.Uri uri, java.lang.String name)
+    putString(android.content.ContentResolver resolver, android.net.Uri uri, java.lang.String name, java.lang.String value)
+  class Settings.Secure
+    getFloat(android.content.ContentResolver cr, java.lang.String name)
+    getFloat(android.content.ContentResolver cr, java.lang.String name, float def)
+    getInt(android.content.ContentResolver cr, java.lang.String name)
+    getInt(android.content.ContentResolver cr, java.lang.String name, int def)
+    getLong(android.content.ContentResolver cr, java.lang.String name)
+    getLong(android.content.ContentResolver cr, java.lang.String name, long def)
+    getString(android.content.ContentResolver resolver, java.lang.String name)
+    getUriFor(java.lang.String name)
+    isLocationProviderEnabled(android.content.ContentResolver cr, java.lang.String provider)
+    putFloat(android.content.ContentResolver cr, java.lang.String name, float value)
+    putInt(android.content.ContentResolver cr, java.lang.String name, int value)
+    putLong(android.content.ContentResolver cr, java.lang.String name, long value)
+    putString(android.content.ContentResolver resolver, java.lang.String name, java.lang.String value)
+    setLocationProviderEnabled(android.content.ContentResolver cr, java.lang.String provider, boolean enabled)
+  class Settings.SettingNotFoundException
+    #ctor(java.lang.String msg)
+  class Settings.System
+    canWrite(android.content.Context context)
+    getConfiguration(android.content.ContentResolver cr, android.content.res.Configuration outConfig)
+    getFloat(android.content.ContentResolver cr, java.lang.String name)
+    getFloat(android.content.ContentResolver cr, java.lang.String name, float def)
+    getInt(android.content.ContentResolver cr, java.lang.String name)
+    getInt(android.content.ContentResolver cr, java.lang.String name, int def)
+    getLong(android.content.ContentResolver cr, java.lang.String name)
+    getLong(android.content.ContentResolver cr, java.lang.String name, long def)
+    getShowGTalkServiceStatus(android.content.ContentResolver cr)
+    getString(android.content.ContentResolver resolver, java.lang.String name)
+    getUriFor(java.lang.String name)
+    putConfiguration(android.content.ContentResolver cr, android.content.res.Configuration config)
+    putFloat(android.content.ContentResolver cr, java.lang.String name, float value)
+    putInt(android.content.ContentResolver cr, java.lang.String name, int value)
+    putLong(android.content.ContentResolver cr, java.lang.String name, long value)
+    putString(android.content.ContentResolver resolver, java.lang.String name, java.lang.String value)
+    setShowGTalkServiceStatus(android.content.ContentResolver cr, boolean flag)
+  class SimPhonebookContract.ElementaryFiles
+    getItemUri(int subscriptionId, int efType)
+  class SimPhonebookContract.SimRecords
+    getContentUri(int subscriptionId, int efType)
+    getEncodedNameLength(android.content.ContentResolver resolver, java.lang.String name)
+    getItemUri(int subscriptionId, int efType, int recordNumber)
+  class SyncStateContract.Helpers
+    get(android.content.ContentProviderClient provider, android.net.Uri uri, android.accounts.Account account)
+    getWithUri(android.content.ContentProviderClient provider, android.net.Uri uri, android.accounts.Account account)
+    insert(android.content.ContentProviderClient provider, android.net.Uri uri, android.accounts.Account account, byte[] data)
+    newSetOperation(android.net.Uri uri, android.accounts.Account account, byte[] data)
+    newUpdateOperation(android.net.Uri uri, byte[] data)
+    set(android.content.ContentProviderClient provider, android.net.Uri uri, android.accounts.Account account, byte[] data)
+    update(android.content.ContentProviderClient provider, android.net.Uri uri, byte[] data)
+  class Telephony.CarrierId
+    getSpecificCarrierIdUriForSubscriptionId(int subscriptionId)
+    getUriForSubscriptionId(int subscriptionId)
+  class Telephony.Mms.Addr
+    getAddrUriForMessage(java.lang.String messageId)
+  class Telephony.Mms.Part
+    getPartUriForMessage(java.lang.String messageId)
+  class Telephony.ServiceStateTable
+    getUriForSubscriptionId(int subscriptionId)
+    getUriForSubscriptionIdAndField(int subscriptionId, java.lang.String field)
+  class Telephony.Sms
+    getDefaultSmsPackage(android.content.Context context)
+  class Telephony.Sms.Intents
+    getMessagesFromIntent(android.content.Intent intent)
+  class Telephony.Threads
+    getOrCreateThreadId(android.content.Context context, java.lang.String recipient)
+    getOrCreateThreadId(android.content.Context context, java.util.Set<java.lang.String> recipients)
+  class UserDictionary.Words
+    addWord(android.content.Context context, java.lang.String word, int frequency, int localeType)
+    addWord(android.content.Context context, java.lang.String word, int frequency, java.lang.String shortcut, java.util.Locale locale)
+  class VoicemailContract.Status
+    buildSourceUri(java.lang.String packageName)
+  class VoicemailContract.Voicemails
+    buildSourceUri(java.lang.String packageName)
+
+package android.renderscript
+;---------------------------------------
+  class Allocation
+    copy1DRangeFrom(int off, int count, android.renderscript.Allocation data, int dataOff)
+    copy1DRangeFrom(int off, int count, byte[] d)
+    copy1DRangeFrom(int off, int count, float[] d)
+    copy1DRangeFrom(int off, int count, int[] d)
+    copy1DRangeFrom(int off, int count, java.lang.Object array)
+    copy1DRangeFrom(int off, int count, short[] d)
+    copy1DRangeFromUnchecked(int off, int count, byte[] d)
+    copy1DRangeFromUnchecked(int off, int count, float[] d)
+    copy1DRangeFromUnchecked(int off, int count, int[] d)
+    copy1DRangeFromUnchecked(int off, int count, java.lang.Object array)
+    copy1DRangeFromUnchecked(int off, int count, short[] d)
+    copy1DRangeTo(int off, int count, byte[] d)
+    copy1DRangeTo(int off, int count, float[] d)
+    copy1DRangeTo(int off, int count, int[] d)
+    copy1DRangeTo(int off, int count, java.lang.Object array)
+    copy1DRangeTo(int off, int count, short[] d)
+    copy1DRangeToUnchecked(int off, int count, byte[] d)
+    copy1DRangeToUnchecked(int off, int count, float[] d)
+    copy1DRangeToUnchecked(int off, int count, int[] d)
+    copy1DRangeToUnchecked(int off, int count, java.lang.Object array)
+    copy1DRangeToUnchecked(int off, int count, short[] d)
+    copy2DRangeFrom(int xoff, int yoff, android.graphics.Bitmap data)
+    copy2DRangeFrom(int xoff, int yoff, int w, int h, android.renderscript.Allocation data, int dataXoff, int dataYoff)
+    copy2DRangeFrom(int xoff, int yoff, int w, int h, byte[] data)
+    copy2DRangeFrom(int xoff, int yoff, int w, int h, float[] data)
+    copy2DRangeFrom(int xoff, int yoff, int w, int h, int[] data)
+    copy2DRangeFrom(int xoff, int yoff, int w, int h, java.lang.Object array)
+    copy2DRangeFrom(int xoff, int yoff, int w, int h, short[] data)
+    copy2DRangeTo(int xoff, int yoff, int w, int h, byte[] data)
+    copy2DRangeTo(int xoff, int yoff, int w, int h, float[] data)
+    copy2DRangeTo(int xoff, int yoff, int w, int h, int[] data)
+    copy2DRangeTo(int xoff, int yoff, int w, int h, java.lang.Object array)
+    copy2DRangeTo(int xoff, int yoff, int w, int h, short[] data)
+    copy3DRangeFrom(int xoff, int yoff, int zoff, int w, int h, int d, android.renderscript.Allocation data, int dataXoff, int dataYoff, int dataZoff)
+    copy3DRangeFrom(int xoff, int yoff, int zoff, int w, int h, int d, java.lang.Object array)
+    copy3DRangeTo(int xoff, int yoff, int zoff, int w, int h, int d, java.lang.Object array)
+    copyFrom(android.graphics.Bitmap b)
+    copyFrom(android.renderscript.Allocation a)
+    copyFrom(android.renderscript.BaseObj[] d)
+    copyFrom(byte[] d)
+    copyFrom(float[] d)
+    copyFrom(int[] d)
+    copyFrom(java.lang.Object array)
+    copyFrom(short[] d)
+    copyFromUnchecked(byte[] d)
+    copyFromUnchecked(float[] d)
+    copyFromUnchecked(int[] d)
+    copyFromUnchecked(java.lang.Object array)
+    copyFromUnchecked(short[] d)
+    copyTo(android.graphics.Bitmap b)
+    copyTo(byte[] d)
+    copyTo(float[] d)
+    copyTo(int[] d)
+    copyTo(java.lang.Object array)
+    copyTo(short[] d)
+    createAllocations(android.renderscript.RenderScript rs, android.renderscript.Type t, int usage, int numAlloc)
+    createCubemapFromBitmap(android.renderscript.RenderScript rs, android.graphics.Bitmap b)
+    createCubemapFromBitmap(android.renderscript.RenderScript rs, android.graphics.Bitmap b, android.renderscript.Allocation.MipmapControl mips, int usage)
+    createCubemapFromCubeFaces(android.renderscript.RenderScript rs, android.graphics.Bitmap xpos, android.graphics.Bitmap xneg, android.graphics.Bitmap ypos, android.graphics.Bitmap yneg, android.graphics.Bitmap zpos, android.graphics.Bitmap zneg)
+    createCubemapFromCubeFaces(android.renderscript.RenderScript rs, android.graphics.Bitmap xpos, android.graphics.Bitmap xneg, android.graphics.Bitmap ypos, android.graphics.Bitmap yneg, android.graphics.Bitmap zpos, android.graphics.Bitmap zneg, android.renderscript.Allocation.MipmapControl mips, int usage)
+    createFromBitmap(android.renderscript.RenderScript rs, android.graphics.Bitmap b)
+    createFromBitmap(android.renderscript.RenderScript rs, android.graphics.Bitmap b, android.renderscript.Allocation.MipmapControl mips, int usage)
+    createFromBitmapResource(android.renderscript.RenderScript rs, android.content.res.Resources res, int id)
+    createFromBitmapResource(android.renderscript.RenderScript rs, android.content.res.Resources res, int id, android.renderscript.Allocation.MipmapControl mips, int usage)
+    createFromString(android.renderscript.RenderScript rs, java.lang.String str, int usage)
+    createSized(android.renderscript.RenderScript rs, android.renderscript.Element e, int count)
+    createSized(android.renderscript.RenderScript rs, android.renderscript.Element e, int count, int usage)
+    createTyped(android.renderscript.RenderScript rs, android.renderscript.Type type)
+    createTyped(android.renderscript.RenderScript rs, android.renderscript.Type type, android.renderscript.Allocation.MipmapControl mips, int usage)
+    createTyped(android.renderscript.RenderScript rs, android.renderscript.Type type, int usage)
+    resize(int dimX)
+    setAutoPadding(boolean useAutoPadding)
+    setFromFieldPacker(int xoff, android.renderscript.FieldPacker fp)
+    setFromFieldPacker(int xoff, int component_number, android.renderscript.FieldPacker fp)
+    setFromFieldPacker(int xoff, int yoff, int zoff, int component_number, android.renderscript.FieldPacker fp)
+    setOnBufferAvailableListener(android.renderscript.Allocation.OnBufferAvailableListener callback)
+    setSurface(android.view.Surface sur)
+    syncAll(int srcLocation)
+  interface Allocation.OnBufferAvailableListener
+    onBufferAvailable(android.renderscript.Allocation a)
+  class AllocationAdapter
+    create1D(android.renderscript.RenderScript rs, android.renderscript.Allocation a)
+    create2D(android.renderscript.RenderScript rs, android.renderscript.Allocation a)
+    createTyped(android.renderscript.RenderScript rs, android.renderscript.Allocation a, android.renderscript.Type t)
+    resize(int dimX)
+    setFace(android.renderscript.Type.CubemapFace cf)
+    setLOD(int lod)
+    setX(int x)
+    setY(int y)
+    setZ(int z)
+  class BaseObj
+    equals(java.lang.Object obj)
+    setName(java.lang.String name)
+  class Byte2
+    #ctor(byte initX, byte initY)
+  class Byte3
+    #ctor(byte initX, byte initY, byte initZ)
+  class Byte4
+    #ctor(byte initX, byte initY, byte initZ, byte initW)
+  class Double2
+    #ctor(double x, double y)
+  class Double3
+    #ctor(double x, double y, double z)
+  class Double4
+    #ctor(double x, double y, double z, double w)
+  class Element
+    A_8(android.renderscript.RenderScript rs)
+    ALLOCATION(android.renderscript.RenderScript rs)
+    BOOLEAN(android.renderscript.RenderScript rs)
+    createPixel(android.renderscript.RenderScript rs, android.renderscript.Element.DataType dt, android.renderscript.Element.DataKind dk)
+    createVector(android.renderscript.RenderScript rs, android.renderscript.Element.DataType dt, int size)
+    ELEMENT(android.renderscript.RenderScript rs)
+    F16(android.renderscript.RenderScript rs)
+    F16_2(android.renderscript.RenderScript rs)
+    F16_3(android.renderscript.RenderScript rs)
+    F16_4(android.renderscript.RenderScript rs)
+    F32(android.renderscript.RenderScript rs)
+    F32_2(android.renderscript.RenderScript rs)
+    F32_3(android.renderscript.RenderScript rs)
+    F32_4(android.renderscript.RenderScript rs)
+    F64(android.renderscript.RenderScript rs)
+    F64_2(android.renderscript.RenderScript rs)
+    F64_3(android.renderscript.RenderScript rs)
+    F64_4(android.renderscript.RenderScript rs)
+    FONT(android.renderscript.RenderScript rs)
+    getSubElement(int index)
+    getSubElementArraySize(int index)
+    getSubElementName(int index)
+    getSubElementOffsetBytes(int index)
+    I16(android.renderscript.RenderScript rs)
+    I16_2(android.renderscript.RenderScript rs)
+    I16_3(android.renderscript.RenderScript rs)
+    I16_4(android.renderscript.RenderScript rs)
+    I32(android.renderscript.RenderScript rs)
+    I32_2(android.renderscript.RenderScript rs)
+    I32_3(android.renderscript.RenderScript rs)
+    I32_4(android.renderscript.RenderScript rs)
+    I64(android.renderscript.RenderScript rs)
+    I64_2(android.renderscript.RenderScript rs)
+    I64_3(android.renderscript.RenderScript rs)
+    I64_4(android.renderscript.RenderScript rs)
+    I8(android.renderscript.RenderScript rs)
+    I8_2(android.renderscript.RenderScript rs)
+    I8_3(android.renderscript.RenderScript rs)
+    I8_4(android.renderscript.RenderScript rs)
+    isCompatible(android.renderscript.Element e)
+    MATRIX_2X2(android.renderscript.RenderScript rs)
+    MATRIX_3X3(android.renderscript.RenderScript rs)
+    MATRIX_4X4(android.renderscript.RenderScript rs)
+    MATRIX4X4(android.renderscript.RenderScript rs)
+    MESH(android.renderscript.RenderScript rs)
+    PROGRAM_FRAGMENT(android.renderscript.RenderScript rs)
+    PROGRAM_RASTER(android.renderscript.RenderScript rs)
+    PROGRAM_STORE(android.renderscript.RenderScript rs)
+    PROGRAM_VERTEX(android.renderscript.RenderScript rs)
+    RGB_565(android.renderscript.RenderScript rs)
+    RGB_888(android.renderscript.RenderScript rs)
+    RGBA_4444(android.renderscript.RenderScript rs)
+    RGBA_5551(android.renderscript.RenderScript rs)
+    RGBA_8888(android.renderscript.RenderScript rs)
+    SAMPLER(android.renderscript.RenderScript rs)
+    SCRIPT(android.renderscript.RenderScript rs)
+    TYPE(android.renderscript.RenderScript rs)
+    U16(android.renderscript.RenderScript rs)
+    U16_2(android.renderscript.RenderScript rs)
+    U16_3(android.renderscript.RenderScript rs)
+    U16_4(android.renderscript.RenderScript rs)
+    U32(android.renderscript.RenderScript rs)
+    U32_2(android.renderscript.RenderScript rs)
+    U32_3(android.renderscript.RenderScript rs)
+    U32_4(android.renderscript.RenderScript rs)
+    U64(android.renderscript.RenderScript rs)
+    U64_2(android.renderscript.RenderScript rs)
+    U64_3(android.renderscript.RenderScript rs)
+    U64_4(android.renderscript.RenderScript rs)
+    U8(android.renderscript.RenderScript rs)
+    U8_2(android.renderscript.RenderScript rs)
+    U8_3(android.renderscript.RenderScript rs)
+    U8_4(android.renderscript.RenderScript rs)
+    YUV(android.renderscript.RenderScript rs)
+  class Element.Builder
+    add(android.renderscript.Element element, java.lang.String name)
+    add(android.renderscript.Element element, java.lang.String name, int arraySize)
+    #ctor(android.renderscript.RenderScript rs)
+  class FieldPacker
+    addBoolean(boolean v)
+    addF32(android.renderscript.Float2 v)
+    addF32(android.renderscript.Float3 v)
+    addF32(android.renderscript.Float4 v)
+    addF32(float v)
+    addF64(android.renderscript.Double2 v)
+    addF64(android.renderscript.Double3 v)
+    addF64(android.renderscript.Double4 v)
+    addF64(double v)
+    addI16(android.renderscript.Short2 v)
+    addI16(android.renderscript.Short3 v)
+    addI16(android.renderscript.Short4 v)
+    addI16(short v)
+    addI32(android.renderscript.Int2 v)
+    addI32(android.renderscript.Int3 v)
+    addI32(android.renderscript.Int4 v)
+    addI32(int v)
+    addI64(android.renderscript.Long2 v)
+    addI64(android.renderscript.Long3 v)
+    addI64(android.renderscript.Long4 v)
+    addI64(long v)
+    addI8(android.renderscript.Byte2 v)
+    addI8(android.renderscript.Byte3 v)
+    addI8(android.renderscript.Byte4 v)
+    addI8(byte v)
+    addMatrix(android.renderscript.Matrix2f v)
+    addMatrix(android.renderscript.Matrix3f v)
+    addMatrix(android.renderscript.Matrix4f v)
+    addObj(android.renderscript.BaseObj obj)
+    addU16(android.renderscript.Int2 v)
+    addU16(android.renderscript.Int3 v)
+    addU16(android.renderscript.Int4 v)
+    addU16(int v)
+    addU32(android.renderscript.Long2 v)
+    addU32(android.renderscript.Long3 v)
+    addU32(android.renderscript.Long4 v)
+    addU32(long v)
+    addU64(android.renderscript.Long2 v)
+    addU64(android.renderscript.Long3 v)
+    addU64(android.renderscript.Long4 v)
+    addU64(long v)
+    addU8(android.renderscript.Short2 v)
+    addU8(android.renderscript.Short3 v)
+    addU8(android.renderscript.Short4 v)
+    addU8(short v)
+    align(int v)
+    #ctor(byte[] data)
+    #ctor(int len)
+    reset(int i)
+    skip(int i)
+    subalign(int v)
+  class Float2
+    #ctor(float x, float y)
+  class Float3
+    #ctor(float x, float y, float z)
+  class Float4
+    #ctor(float x, float y, float z, float w)
+  class Int2
+    #ctor(int x, int y)
+  class Int3
+    #ctor(int x, int y, int z)
+  class Int4
+    #ctor(int x, int y, int z, int w)
+  class Long2
+    #ctor(long x, long y)
+  class Long3
+    #ctor(long x, long y, long z)
+  class Long4
+    #ctor(long x, long y, long z, long w)
+  class Matrix2f
+    get(int x, int y)
+    load(android.renderscript.Matrix2f src)
+    loadMultiply(android.renderscript.Matrix2f lhs, android.renderscript.Matrix2f rhs)
+    loadRotate(float rot)
+    loadScale(float x, float y)
+    #ctor(float[] dataArray)
+    multiply(android.renderscript.Matrix2f rhs)
+    rotate(float rot)
+    scale(float x, float y)
+    set(int x, int y, float v)
+  class Matrix3f
+    get(int x, int y)
+    load(android.renderscript.Matrix3f src)
+    loadMultiply(android.renderscript.Matrix3f lhs, android.renderscript.Matrix3f rhs)
+    loadRotate(float rot)
+    loadRotate(float rot, float x, float y, float z)
+    loadScale(float x, float y)
+    loadScale(float x, float y, float z)
+    loadTranslate(float x, float y)
+    #ctor(float[] dataArray)
+    multiply(android.renderscript.Matrix3f rhs)
+    rotate(float rot)
+    rotate(float rot, float x, float y, float z)
+    scale(float x, float y)
+    scale(float x, float y, float z)
+    set(int x, int y, float v)
+    translate(float x, float y)
+  class Matrix4f
+    get(int x, int y)
+    load(android.renderscript.Matrix4f src)
+    loadFrustum(float l, float r, float b, float t, float n, float f)
+    loadMultiply(android.renderscript.Matrix4f lhs, android.renderscript.Matrix4f rhs)
+    loadOrtho(float l, float r, float b, float t, float n, float f)
+    loadOrthoWindow(int w, int h)
+    loadPerspective(float fovy, float aspect, float near, float far)
+    loadProjectionNormalized(int w, int h)
+    loadRotate(float rot, float x, float y, float z)
+    loadScale(float x, float y, float z)
+    loadTranslate(float x, float y, float z)
+    #ctor(float[] dataArray)
+    multiply(android.renderscript.Matrix4f rhs)
+    rotate(float rot, float x, float y, float z)
+    scale(float x, float y, float z)
+    set(int x, int y, float v)
+    translate(float x, float y, float z)
+  class RenderScript
+    create(android.content.Context ctx)
+    create(android.content.Context ctx, android.renderscript.RenderScript.ContextType ct)
+    create(android.content.Context ctx, android.renderscript.RenderScript.ContextType ct, int flags)
+    createMultiContext(android.content.Context ctx, android.renderscript.RenderScript.ContextType ct, int flags, int API_number)
+    sendMessage(int id, int[] data)
+    setErrorHandler(android.renderscript.RenderScript.RSErrorHandler msg)
+    setMessageHandler(android.renderscript.RenderScript.RSMessageHandler msg)
+    setPriority(android.renderscript.RenderScript.Priority p)
+  class RSDriverException
+    #ctor(java.lang.String string)
+  class RSIllegalArgumentException
+    #ctor(java.lang.String string)
+  class RSInvalidStateException
+    #ctor(java.lang.String string)
+  class RSRuntimeException
+    #ctor(java.lang.String string)
+  class Sampler
+    CLAMP_LINEAR(android.renderscript.RenderScript rs)
+    CLAMP_LINEAR_MIP_LINEAR(android.renderscript.RenderScript rs)
+    CLAMP_NEAREST(android.renderscript.RenderScript rs)
+    MIRRORED_REPEAT_LINEAR(android.renderscript.RenderScript rs)
+    MIRRORED_REPEAT_LINEAR_MIP_LINEAR(android.renderscript.RenderScript rs)
+    MIRRORED_REPEAT_NEAREST(android.renderscript.RenderScript rs)
+    WRAP_LINEAR(android.renderscript.RenderScript rs)
+    WRAP_LINEAR_MIP_LINEAR(android.renderscript.RenderScript rs)
+    WRAP_NEAREST(android.renderscript.RenderScript rs)
+  class Sampler.Builder
+    #ctor(android.renderscript.RenderScript rs)
+    setAnisotropy(float v)
+    setMagnification(android.renderscript.Sampler.Value v)
+    setMinification(android.renderscript.Sampler.Value v)
+    setWrapS(android.renderscript.Sampler.Value v)
+    setWrapT(android.renderscript.Sampler.Value v)
+  class Script
+    bindAllocation(android.renderscript.Allocation va, int slot)
+    createFieldID(int slot, android.renderscript.Element e)
+    createInvokeID(int slot)
+    createKernelID(int slot, int sig, android.renderscript.Element ein, android.renderscript.Element eout)
+    forEach(int slot, android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.FieldPacker v)
+    forEach(int slot, android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.FieldPacker v, android.renderscript.Script.LaunchOptions sc)
+    forEach(int slot, android.renderscript.Allocation[] ains, android.renderscript.Allocation aout, android.renderscript.FieldPacker v)
+    forEach(int slot, android.renderscript.Allocation[] ains, android.renderscript.Allocation aout, android.renderscript.FieldPacker v, android.renderscript.Script.LaunchOptions sc)
+    getVarB(int index)
+    getVarD(int index)
+    getVarF(int index)
+    getVarI(int index)
+    getVarJ(int index)
+    getVarV(int index, android.renderscript.FieldPacker v)
+    invoke(int slot)
+    invoke(int slot, android.renderscript.FieldPacker v)
+    reduce(int slot, android.renderscript.Allocation[] ains, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions sc)
+    setTimeZone(java.lang.String timeZone)
+    setVar(int index, android.renderscript.BaseObj o)
+    setVar(int index, android.renderscript.FieldPacker v)
+    setVar(int index, android.renderscript.FieldPacker v, android.renderscript.Element e, int[] dims)
+    setVar(int index, boolean v)
+    setVar(int index, double v)
+    setVar(int index, float v)
+    setVar(int index, int v)
+    setVar(int index, long v)
+  class Script.FieldBase
+    init(android.renderscript.RenderScript rs, int dimx)
+    init(android.renderscript.RenderScript rs, int dimx, int usages)
+  class Script.LaunchOptions
+    setX(int xstartArg, int xendArg)
+    setY(int ystartArg, int yendArg)
+    setZ(int zstartArg, int zendArg)
+  class ScriptC
+    #ctor(android.renderscript.RenderScript rs, android.content.res.Resources resources, int resourceID)
+    #ctor(android.renderscript.RenderScript rs, java.lang.String resName, byte[] bitcode32, byte[] bitcode64)
+    #ctor(int id, android.renderscript.RenderScript rs)
+    #ctor(long id, android.renderscript.RenderScript rs)
+  class ScriptGroup
+    execute(java.lang.Object... inputs)
+    setInput(android.renderscript.Script.KernelID s, android.renderscript.Allocation a)
+    setOutput(android.renderscript.Script.KernelID s, android.renderscript.Allocation a)
+  class ScriptGroup.Binding
+    #ctor(android.renderscript.Script.FieldID field, java.lang.Object value)
+  class ScriptGroup.Builder
+    addConnection(android.renderscript.Type t, android.renderscript.Script.KernelID from, android.renderscript.Script.FieldID to)
+    addConnection(android.renderscript.Type t, android.renderscript.Script.KernelID from, android.renderscript.Script.KernelID to)
+    addKernel(android.renderscript.Script.KernelID k)
+    #ctor(android.renderscript.RenderScript rs)
+  class ScriptGroup.Builder2
+    addInvoke(android.renderscript.Script.InvokeID invoke, java.lang.Object... argsAndBindings)
+    addKernel(android.renderscript.Script.KernelID k, android.renderscript.Type returnType, java.lang.Object... argsAndBindings)
+    create(java.lang.String name, android.renderscript.ScriptGroup.Future... outputs)
+    #ctor(android.renderscript.RenderScript rs)
+  class ScriptGroup.Closure
+    getGlobal(android.renderscript.Script.FieldID field)
+  class ScriptIntrinsic3DLUT
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setLUT(android.renderscript.Allocation lut)
+  class ScriptIntrinsicBLAS
+    BNNM(android.renderscript.Allocation A, int a_offset, android.renderscript.Allocation B, int b_offset, android.renderscript.Allocation C, int c_offset, int c_mult)
+    CGBMV(int TransA, int KL, int KU, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Float2 beta, android.renderscript.Allocation Y, int incY)
+    CGEMM(int TransA, int TransB, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Float2 beta, android.renderscript.Allocation C)
+    CGEMV(int TransA, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Float2 beta, android.renderscript.Allocation Y, int incY)
+    CGERC(android.renderscript.Float2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    CGERU(android.renderscript.Float2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    CHBMV(int Uplo, int K, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Float2 beta, android.renderscript.Allocation Y, int incY)
+    CHEMM(int Side, int Uplo, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Float2 beta, android.renderscript.Allocation C)
+    CHEMV(int Uplo, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Float2 beta, android.renderscript.Allocation Y, int incY)
+    CHER(int Uplo, float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation A)
+    CHER2(int Uplo, android.renderscript.Float2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    CHER2K(int Uplo, int Trans, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, float beta, android.renderscript.Allocation C)
+    CHERK(int Uplo, int Trans, float alpha, android.renderscript.Allocation A, float beta, android.renderscript.Allocation C)
+    CHPMV(int Uplo, android.renderscript.Float2 alpha, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX, android.renderscript.Float2 beta, android.renderscript.Allocation Y, int incY)
+    CHPR(int Uplo, float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Ap)
+    CHPR2(int Uplo, android.renderscript.Float2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation Ap)
+    create(android.renderscript.RenderScript rs)
+    CSYMM(int Side, int Uplo, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Float2 beta, android.renderscript.Allocation C)
+    CSYR2K(int Uplo, int Trans, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Float2 beta, android.renderscript.Allocation C)
+    CSYRK(int Uplo, int Trans, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Float2 beta, android.renderscript.Allocation C)
+    CTBMV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    CTBSV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    CTPMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    CTPSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    CTRMM(int Side, int Uplo, int TransA, int Diag, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    CTRMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    CTRSM(int Side, int Uplo, int TransA, int Diag, android.renderscript.Float2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    CTRSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    DGBMV(int TransA, int KL, int KU, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, double beta, android.renderscript.Allocation Y, int incY)
+    DGEMM(int TransA, int TransB, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, double beta, android.renderscript.Allocation C)
+    DGEMV(int TransA, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, double beta, android.renderscript.Allocation Y, int incY)
+    DGER(double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    DSBMV(int Uplo, int K, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, double beta, android.renderscript.Allocation Y, int incY)
+    DSPMV(int Uplo, double alpha, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX, double beta, android.renderscript.Allocation Y, int incY)
+    DSPR(int Uplo, double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Ap)
+    DSPR2(int Uplo, double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation Ap)
+    DSYMM(int Side, int Uplo, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, double beta, android.renderscript.Allocation C)
+    DSYMV(int Uplo, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, double beta, android.renderscript.Allocation Y, int incY)
+    DSYR(int Uplo, double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation A)
+    DSYR2(int Uplo, double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    DSYR2K(int Uplo, int Trans, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, double beta, android.renderscript.Allocation C)
+    DSYRK(int Uplo, int Trans, double alpha, android.renderscript.Allocation A, double beta, android.renderscript.Allocation C)
+    DTBMV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    DTBSV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    DTPMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    DTPSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    DTRMM(int Side, int Uplo, int TransA, int Diag, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    DTRMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    DTRSM(int Side, int Uplo, int TransA, int Diag, double alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    DTRSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    SGBMV(int TransA, int KL, int KU, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, float beta, android.renderscript.Allocation Y, int incY)
+    SGEMM(int TransA, int TransB, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, float beta, android.renderscript.Allocation C)
+    SGEMV(int TransA, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, float beta, android.renderscript.Allocation Y, int incY)
+    SGER(float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    SSBMV(int Uplo, int K, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, float beta, android.renderscript.Allocation Y, int incY)
+    SSPMV(int Uplo, float alpha, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX, float beta, android.renderscript.Allocation Y, int incY)
+    SSPR(int Uplo, float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Ap)
+    SSPR2(int Uplo, float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation Ap)
+    SSYMM(int Side, int Uplo, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, float beta, android.renderscript.Allocation C)
+    SSYMV(int Uplo, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, float beta, android.renderscript.Allocation Y, int incY)
+    SSYR(int Uplo, float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation A)
+    SSYR2(int Uplo, float alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    SSYR2K(int Uplo, int Trans, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, float beta, android.renderscript.Allocation C)
+    SSYRK(int Uplo, int Trans, float alpha, android.renderscript.Allocation A, float beta, android.renderscript.Allocation C)
+    STBMV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    STBSV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    STPMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    STPSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    STRMM(int Side, int Uplo, int TransA, int Diag, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    STRMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    STRSM(int Side, int Uplo, int TransA, int Diag, float alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    STRSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    ZGBMV(int TransA, int KL, int KU, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Double2 beta, android.renderscript.Allocation Y, int incY)
+    ZGEMM(int TransA, int TransB, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Double2 beta, android.renderscript.Allocation C)
+    ZGEMV(int TransA, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Double2 beta, android.renderscript.Allocation Y, int incY)
+    ZGERC(android.renderscript.Double2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    ZGERU(android.renderscript.Double2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    ZHBMV(int Uplo, int K, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Double2 beta, android.renderscript.Allocation Y, int incY)
+    ZHEMM(int Side, int Uplo, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Double2 beta, android.renderscript.Allocation C)
+    ZHEMV(int Uplo, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX, android.renderscript.Double2 beta, android.renderscript.Allocation Y, int incY)
+    ZHER(int Uplo, double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation A)
+    ZHER2(int Uplo, android.renderscript.Double2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation A)
+    ZHER2K(int Uplo, int Trans, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, double beta, android.renderscript.Allocation C)
+    ZHERK(int Uplo, int Trans, double alpha, android.renderscript.Allocation A, double beta, android.renderscript.Allocation C)
+    ZHPMV(int Uplo, android.renderscript.Double2 alpha, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX, android.renderscript.Double2 beta, android.renderscript.Allocation Y, int incY)
+    ZHPR(int Uplo, double alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Ap)
+    ZHPR2(int Uplo, android.renderscript.Double2 alpha, android.renderscript.Allocation X, int incX, android.renderscript.Allocation Y, int incY, android.renderscript.Allocation Ap)
+    ZSYMM(int Side, int Uplo, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Double2 beta, android.renderscript.Allocation C)
+    ZSYR2K(int Uplo, int Trans, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B, android.renderscript.Double2 beta, android.renderscript.Allocation C)
+    ZSYRK(int Uplo, int Trans, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Double2 beta, android.renderscript.Allocation C)
+    ZTBMV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    ZTBSV(int Uplo, int TransA, int Diag, int K, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    ZTPMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    ZTPSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation Ap, android.renderscript.Allocation X, int incX)
+    ZTRMM(int Side, int Uplo, int TransA, int Diag, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    ZTRMV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+    ZTRSM(int Side, int Uplo, int TransA, int Diag, android.renderscript.Double2 alpha, android.renderscript.Allocation A, android.renderscript.Allocation B)
+    ZTRSV(int Uplo, int TransA, int Diag, android.renderscript.Allocation A, android.renderscript.Allocation X, int incX)
+  class ScriptIntrinsicBlend
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEachAdd(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachAdd(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachClear(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachClear(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachDst(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachDst(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachDstAtop(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachDstAtop(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachDstIn(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachDstIn(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachDstOut(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachDstOut(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachDstOver(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachDstOver(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachMultiply(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachMultiply(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachSrc(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachSrc(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachSrcAtop(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachSrcAtop(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachSrcIn(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachSrcIn(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachSrcOut(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachSrcOut(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachSrcOver(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachSrcOver(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachSubtract(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachSubtract(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    forEachXor(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEachXor(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+  class ScriptIntrinsicBlur
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation aout)
+    forEach(android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setInput(android.renderscript.Allocation ain)
+    setRadius(float radius)
+  class ScriptIntrinsicColorMatrix
+    create(android.renderscript.RenderScript rs)
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setAdd(android.renderscript.Float4 f)
+    setAdd(float r, float g, float b, float a)
+    setColorMatrix(android.renderscript.Matrix3f m)
+    setColorMatrix(android.renderscript.Matrix4f m)
+  class ScriptIntrinsicConvolve3x3
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation aout)
+    forEach(android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setCoefficients(float[] v)
+    setInput(android.renderscript.Allocation ain)
+  class ScriptIntrinsicConvolve5x5
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation aout)
+    forEach(android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setCoefficients(float[] v)
+    setInput(android.renderscript.Allocation ain)
+  class ScriptIntrinsicHistogram
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation ain)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Script.LaunchOptions opt)
+    forEach_Dot(android.renderscript.Allocation ain)
+    forEach_Dot(android.renderscript.Allocation ain, android.renderscript.Script.LaunchOptions opt)
+    setDotCoefficients(float r, float g, float b, float a)
+    setOutput(android.renderscript.Allocation aout)
+  class ScriptIntrinsicLUT
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Allocation aout)
+    forEach(android.renderscript.Allocation ain, android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setAlpha(int index, int value)
+    setBlue(int index, int value)
+    setGreen(int index, int value)
+    setRed(int index, int value)
+  class ScriptIntrinsicResize
+    create(android.renderscript.RenderScript rs)
+    forEach_bicubic(android.renderscript.Allocation aout)
+    forEach_bicubic(android.renderscript.Allocation aout, android.renderscript.Script.LaunchOptions opt)
+    setInput(android.renderscript.Allocation ain)
+  class ScriptIntrinsicYuvToRGB
+    create(android.renderscript.RenderScript rs, android.renderscript.Element e)
+    forEach(android.renderscript.Allocation aout)
+    setInput(android.renderscript.Allocation ain)
+  class Short2
+    #ctor(short x, short y)
+  class Short3
+    #ctor(short x, short y, short z)
+  class Short4
+    #ctor(short x, short y, short z, short w)
+  class Type
+    createX(android.renderscript.RenderScript rs, android.renderscript.Element e, int dimX)
+    createXY(android.renderscript.RenderScript rs, android.renderscript.Element e, int dimX, int dimY)
+    createXYZ(android.renderscript.RenderScript rs, android.renderscript.Element e, int dimX, int dimY, int dimZ)
+  class Type.Builder
+    setFaces(boolean value)
+    setMipmaps(boolean value)
+    setX(int value)
+    setY(int value)
+    setYuvFormat(int yuvFormat)
+    setZ(int value)
+    #ctor(android.renderscript.RenderScript rs, android.renderscript.Element e)
+
+package android.sax
+;---------------------------------------
+  class Element
+    getChild(java.lang.String localName)
+    getChild(java.lang.String uri, java.lang.String localName)
+    requireChild(java.lang.String localName)
+    requireChild(java.lang.String uri, java.lang.String localName)
+    setElementListener(android.sax.ElementListener elementListener)
+    setEndElementListener(android.sax.EndElementListener endElementListener)
+    setEndTextElementListener(android.sax.EndTextElementListener endTextElementListener)
+    setStartElementListener(android.sax.StartElementListener startElementListener)
+    setTextElementListener(android.sax.TextElementListener elementListener)
+  interface EndTextElementListener
+    end(java.lang.String body)
+  class RootElement
+    #ctor(java.lang.String localName)
+    #ctor(java.lang.String uri, java.lang.String localName)
+  interface StartElementListener
+    start(org.xml.sax.Attributes attributes)
+
+package android.se.omapi
+;---------------------------------------
+  class Channel
+    transmit(byte[] command)
+  class SEService
+    getUiccReader(int slotNumber)
+    #ctor(android.content.Context context, java.util.concurrent.Executor executor, android.se.omapi.SEService.OnConnectedListener listener)
+  class Session
+    openBasicChannel(byte[] aid)
+    openBasicChannel(byte[] aid, byte p2)
+    openLogicalChannel(byte[] aid)
+    openLogicalChannel(byte[] aid, byte p2)
+
+package android.security
+;---------------------------------------
+  class AppUriAuthenticationPolicy
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AppUriAuthenticationPolicy.Builder
+    addAppAndUriMapping(java.lang.String appPackageName, android.net.Uri uri, java.lang.String alias)
+  class AttestedKeyPair
+    #ctor(java.security.KeyPair keyPair, java.util.List<java.security.cert.Certificate> attestationRecord)
+  class ConfirmationAlreadyPresentingException
+    #ctor(java.lang.String message)
+  class ConfirmationCallback
+    onConfirmed(byte[] dataThatWasConfirmed)
+    onError(java.lang.Throwable e)
+  class ConfirmationNotAvailableException
+    #ctor(java.lang.String message)
+  class ConfirmationPrompt
+    isSupported(android.content.Context context)
+    presentPrompt(java.util.concurrent.Executor executor, android.security.ConfirmationCallback callback)
+  class ConfirmationPrompt.Builder
+    #ctor(android.content.Context context)
+    setExtraData(byte[] extraData)
+    setPromptText(java.lang.CharSequence promptText)
+  class FileIntegrityManager
+    isAppSourceCertificateTrusted(java.security.cert.X509Certificate certificate)
+  class KeyChain
+    choosePrivateKeyAlias(android.app.Activity activity, android.security.KeyChainAliasCallback response, java.lang.String[] keyTypes, java.security.Principal[] issuers, android.net.Uri uri, java.lang.String alias)
+    choosePrivateKeyAlias(android.app.Activity activity, android.security.KeyChainAliasCallback response, java.lang.String[] keyTypes, java.security.Principal[] issuers, java.lang.String host, int port, java.lang.String alias)
+    createManageCredentialsIntent(android.security.AppUriAuthenticationPolicy policy)
+    getCertificateChain(android.content.Context context, java.lang.String alias)
+    getCredentialManagementAppPolicy(android.content.Context context)
+    getPrivateKey(android.content.Context context, java.lang.String alias)
+    isBoundKeyAlgorithm(java.lang.String algorithm)
+    isCredentialManagementApp(android.content.Context context)
+    isKeyAlgorithmSupported(java.lang.String algorithm)
+    removeCredentialManagementApp(android.content.Context context)
+  interface KeyChainAliasCallback
+    alias(java.lang.String alias)
+  class KeyChainException
+    #ctor(java.lang.String detailMessage)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class KeyPairGeneratorSpec.Builder
+    #ctor(android.content.Context context)
+    setAlgorithmParameterSpec(java.security.spec.AlgorithmParameterSpec spec)
+    setAlias(java.lang.String alias)
+    setEndDate(java.util.Date endDate)
+    setKeySize(int keySize)
+    setKeyType(java.lang.String keyType)
+    setSerialNumber(java.math.BigInteger serialNumber)
+    setStartDate(java.util.Date startDate)
+    setSubject(javax.security.auth.x500.X500Principal subject)
+  class KeyStoreParameter.Builder
+    #ctor(android.content.Context context)
+    setEncryptionRequired(boolean required)
+  class NetworkSecurityPolicy
+    isCleartextTrafficPermitted(java.lang.String hostname)
+
+package android.security.identity
+;---------------------------------------
+  class AccessControlProfile.Builder
+    #ctor(android.security.identity.AccessControlProfileId accessControlProfileId)
+    setReaderCertificate(java.security.cert.X509Certificate readerCertificate)
+    setUserAuthenticationRequired(boolean userAuthenticationRequired)
+    setUserAuthenticationTimeout(long userAuthenticationTimeoutMillis)
+  class AccessControlProfileId
+    #ctor(int id)
+  class AlreadyPersonalizedException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class CipherSuiteNotSupportedException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class CredentialDataRequest.Builder
+    setAllowUsingExhaustedKeys(boolean allowUsingExhaustedKeys)
+    setAllowUsingExpiredKeys(boolean allowUsingExpiredKeys)
+    setDeviceSignedEntriesToRequest(java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> entriesToRequest)
+    setIncrementUseCount(boolean incrementUseCount)
+    setIssuerSignedEntriesToRequest(java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> entriesToRequest)
+    setReaderSignature(byte[] readerSignature)
+    setRequestMessage(byte[] requestMessage)
+  interface CredentialDataResult.Entries
+    getEntry(java.lang.String namespaceName, java.lang.String name)
+    getEntryNames(java.lang.String namespaceName)
+    getRetrievedEntryNames(java.lang.String namespaceName)
+    getStatus(java.lang.String namespaceName, java.lang.String name)
+  class DocTypeNotSupportedException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class EphemeralPublicKeyNotFoundException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class IdentityCredential
+    decryptMessageFromReader(byte[] messageCiphertext)
+    delete(byte[] challenge)
+    encryptMessageToReader(byte[] messagePlaintext)
+    getEntries(byte[] requestMessage, java.util.Map<java.lang.String,java.util.Collection<java.lang.String>> entriesToRequest, byte[] sessionTranscript, byte[] readerSignature)
+    proveOwnership(byte[] challenge)
+    setAllowUsingExhaustedKeys(boolean allowUsingExhaustedKeys)
+    setAllowUsingExpiredKeys(boolean allowUsingExpiredKeys)
+    setAvailableAuthenticationKeys(int keyCount, int maxUsesPerKey)
+    setAvailableAuthenticationKeys(int keyCount, int maxUsesPerKey, long minValidTimeMillis)
+    setReaderEphemeralPublicKey(java.security.PublicKey readerEphemeralPublicKey)
+    storeStaticAuthenticationData(java.security.cert.X509Certificate authenticationKey, byte[] staticAuthData)
+    storeStaticAuthenticationData(java.security.cert.X509Certificate authenticationKey, java.time.Instant expirationDate, byte[] staticAuthData)
+    update(android.security.identity.PersonalizationData personalizationData)
+  class IdentityCredentialException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class IdentityCredentialStore
+    createCredential(java.lang.String credentialName, java.lang.String docType)
+    createPresentationSession(int cipherSuite)
+    deleteCredentialByName(java.lang.String credentialName)
+    getCredentialByName(java.lang.String credentialName, int cipherSuite)
+    getDirectAccessInstance(android.content.Context context)
+    getInstance(android.content.Context context)
+  class InvalidReaderSignatureException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class InvalidRequestMessageException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class MessageDecryptionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class NoAuthenticationKeyAvailableException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class PersonalizationData.Builder
+    addAccessControlProfile(android.security.identity.AccessControlProfile profile)
+    putEntry(java.lang.String namespace, java.lang.String name, java.util.Collection<android.security.identity.AccessControlProfileId> accessControlProfileIds, byte[] value)
+  class PresentationSession
+    getCredentialData(java.lang.String credentialName, android.security.identity.CredentialDataRequest request)
+    setReaderEphemeralPublicKey(java.security.PublicKey readerEphemeralPublicKey)
+    setSessionTranscript(byte[] sessionTranscript)
+  class ResultData
+    getEntry(java.lang.String namespaceName, java.lang.String name)
+    getEntryNames(java.lang.String namespaceName)
+    getRetrievedEntryNames(java.lang.String namespaceName)
+    getStatus(java.lang.String namespaceName, java.lang.String name)
+  class SessionTranscriptMismatchException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class UnknownAuthenticationKeyException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class WritableIdentityCredential
+    getCredentialKeyCertificateChain(byte[] challenge)
+    personalize(android.security.identity.PersonalizationData personalizationData)
+
+package android.security.keystore
+;---------------------------------------
+  class BackendBusyException
+    #ctor(long backOffHintMillis)
+    #ctor(long backOffHintMillis, java.lang.String message)
+    #ctor(long backOffHintMillis, java.lang.String message, java.lang.Throwable cause)
+  class KeyExpiredException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class KeyGenParameterSpec.Builder
+    #ctor(java.lang.String keystoreAlias, int purposes)
+    setAlgorithmParameterSpec(java.security.spec.AlgorithmParameterSpec spec)
+    setAttestationChallenge(byte[] attestationChallenge)
+    setAttestKeyAlias(java.lang.String attestKeyAlias)
+    setBlockModes(java.lang.String... blockModes)
+    setCertificateNotAfter(java.util.Date date)
+    setCertificateNotBefore(java.util.Date date)
+    setCertificateSerialNumber(java.math.BigInteger serialNumber)
+    setCertificateSubject(javax.security.auth.x500.X500Principal subject)
+    setDevicePropertiesAttestationIncluded(boolean devicePropertiesAttestationIncluded)
+    setDigests(java.lang.String... digests)
+    setEncryptionPaddings(java.lang.String... paddings)
+    setInvalidatedByBiometricEnrollment(boolean invalidateKey)
+    setIsStrongBoxBacked(boolean isStrongBoxBacked)
+    setKeySize(int keySize)
+    setKeyValidityEnd(java.util.Date endDate)
+    setKeyValidityForConsumptionEnd(java.util.Date endDate)
+    setKeyValidityForOriginationEnd(java.util.Date endDate)
+    setKeyValidityStart(java.util.Date startDate)
+    setMaxUsageCount(int maxUsageCount)
+    setRandomizedEncryptionRequired(boolean required)
+    setSignaturePaddings(java.lang.String... paddings)
+    setUnlockedDeviceRequired(boolean unlockedDeviceRequired)
+    setUserAuthenticationParameters(int timeout, int type)
+    setUserAuthenticationRequired(boolean required)
+    setUserAuthenticationValidityDurationSeconds(int seconds)
+    setUserAuthenticationValidWhileOnBody(boolean remainsValid)
+    setUserConfirmationRequired(boolean required)
+    setUserPresenceRequired(boolean required)
+  class KeyNotYetValidException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class KeyPermanentlyInvalidatedException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class KeyProtection.Builder
+    #ctor(int purposes)
+    setBlockModes(java.lang.String... blockModes)
+    setDigests(java.lang.String... digests)
+    setEncryptionPaddings(java.lang.String... paddings)
+    setInvalidatedByBiometricEnrollment(boolean invalidateKey)
+    setIsStrongBoxBacked(boolean isStrongBoxBacked)
+    setKeyValidityEnd(java.util.Date endDate)
+    setKeyValidityForConsumptionEnd(java.util.Date endDate)
+    setKeyValidityForOriginationEnd(java.util.Date endDate)
+    setKeyValidityStart(java.util.Date startDate)
+    setMaxUsageCount(int maxUsageCount)
+    setRandomizedEncryptionRequired(boolean required)
+    setSignaturePaddings(java.lang.String... paddings)
+    setUnlockedDeviceRequired(boolean unlockedDeviceRequired)
+    setUserAuthenticationParameters(int timeout, int type)
+    setUserAuthenticationRequired(boolean required)
+    setUserAuthenticationValidityDurationSeconds(int seconds)
+    setUserAuthenticationValidWhileOnBody(boolean remainsValid)
+    setUserConfirmationRequired(boolean required)
+    setUserPresenceRequired(boolean required)
+  class SecureKeyImportUnavailableException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class StrongBoxUnavailableException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class UserNotAuthenticatedException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class UserPresenceUnavailableException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class WrappedKeyEntry
+    #ctor(byte[] wrappedKeyBytes, java.lang.String wrappingKeyAlias, java.lang.String transformation, java.security.spec.AlgorithmParameterSpec algorithmParameterSpec)
+
+package android.service.autofill
+;---------------------------------------
+  class AutofillService
+    onBind(android.content.Intent intent)
+    onFillRequest(android.service.autofill.FillRequest request, android.os.CancellationSignal cancellationSignal, android.service.autofill.FillCallback callback)
+    onSavedDatasetsInfoRequest(android.service.autofill.SavedDatasetsInfoCallback callback)
+    onSaveRequest(android.service.autofill.SaveRequest request, android.service.autofill.SaveCallback callback)
+  class BatchUpdates
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BatchUpdates.Builder
+    transformChild(int id, android.service.autofill.Transformation transformation)
+    updateTemplate(android.widget.RemoteViews updates)
+  class CharSequenceTransformation
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class CharSequenceTransformation.Builder
+    addField(android.view.autofill.AutofillId id, java.util.regex.Pattern regex, java.lang.String subst)
+    #ctor(android.view.autofill.AutofillId id, java.util.regex.Pattern regex, java.lang.String subst)
+  class CustomDescription
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CustomDescription.Builder
+    addChild(int id, android.service.autofill.Transformation transformation)
+    addOnClickAction(int id, android.service.autofill.OnClickAction action)
+    batchUpdate(android.service.autofill.Validator condition, android.service.autofill.BatchUpdates updates)
+    #ctor(android.widget.RemoteViews parentPresentation)
+  class Dataset
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Dataset.Builder
+    #ctor(android.service.autofill.Presentations presentations)
+    #ctor(android.widget.RemoteViews presentation)
+    setAuthentication(android.content.IntentSender authentication)
+    setField(android.view.autofill.AutofillId id, android.service.autofill.Field field)
+    setId(java.lang.String id)
+    setInlinePresentation(android.service.autofill.InlinePresentation inlinePresentation)
+    setInlinePresentation(android.service.autofill.InlinePresentation inlinePresentation, android.service.autofill.InlinePresentation inlineTooltipPresentation)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, android.widget.RemoteViews presentation)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, android.widget.RemoteViews presentation, android.service.autofill.InlinePresentation inlinePresentation)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, android.widget.RemoteViews presentation, android.service.autofill.InlinePresentation inlinePresentation, android.service.autofill.InlinePresentation inlineTooltipPresentation)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, java.util.regex.Pattern filter)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, java.util.regex.Pattern filter, android.widget.RemoteViews presentation)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, java.util.regex.Pattern filter, android.widget.RemoteViews presentation, android.service.autofill.InlinePresentation inlinePresentation)
+    setValue(android.view.autofill.AutofillId id, android.view.autofill.AutofillValue value, java.util.regex.Pattern filter, android.widget.RemoteViews presentation, android.service.autofill.InlinePresentation inlinePresentation, android.service.autofill.InlinePresentation inlineTooltipPresentation)
+  class DateTransformation
+    #ctor(android.view.autofill.AutofillId id, android.icu.text.DateFormat dateFormat)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class DateValueSanitizer
+    #ctor(android.icu.text.DateFormat dateFormat)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Field.Builder
+    setFilter(java.util.regex.Pattern value)
+    setPresentations(android.service.autofill.Presentations value)
+    setValue(android.view.autofill.AutofillValue value)
+  class FillCallback
+    onFailure(java.lang.CharSequence message)
+    onSuccess(android.service.autofill.FillResponse response)
+  class FillContext
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FillEventHistory
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class FillRequest
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FillResponse
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class FillResponse.Builder
+    addDataset(android.service.autofill.Dataset dataset)
+    disableAutofill(long duration)
+    setAuthentication(android.view.autofill.AutofillId[] ids, android.content.IntentSender authentication, android.service.autofill.Presentations presentations)
+    setAuthentication(android.view.autofill.AutofillId[] ids, android.content.IntentSender authentication, android.widget.RemoteViews presentation)
+    setAuthentication(android.view.autofill.AutofillId[] ids, android.content.IntentSender authentication, android.widget.RemoteViews presentation, android.service.autofill.InlinePresentation inlinePresentation)
+    setAuthentication(android.view.autofill.AutofillId[] ids, android.content.IntentSender authentication, android.widget.RemoteViews presentation, android.service.autofill.InlinePresentation inlinePresentation, android.service.autofill.InlinePresentation inlineTooltipPresentation)
+    setClientState(android.os.Bundle clientState)
+    setDialogHeader(android.widget.RemoteViews header)
+    setFieldClassificationIds(android.view.autofill.AutofillId... ids)
+    setFillDialogTriggerIds(android.view.autofill.AutofillId... ids)
+    setFlags(int flags)
+    setFooter(android.widget.RemoteViews footer)
+    setHeader(android.widget.RemoteViews header)
+    setIgnoredIds(android.view.autofill.AutofillId... ids)
+    setPresentationCancelIds(int[] ids)
+    setSaveInfo(android.service.autofill.SaveInfo saveInfo)
+    setUserData(android.service.autofill.UserData userData)
+  class ImageTransformation
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ImageTransformation.Builder
+    addOption(java.util.regex.Pattern regex, int resId)
+    addOption(java.util.regex.Pattern regex, int resId, java.lang.CharSequence contentDescription)
+    #ctor(android.view.autofill.AutofillId id, java.util.regex.Pattern regex, int resId)
+    #ctor(android.view.autofill.AutofillId id, java.util.regex.Pattern regex, int resId, java.lang.CharSequence contentDescription)
+  class InlinePresentation
+    createTooltipPresentation(android.app.slice.Slice slice, android.widget.inline.InlinePresentationSpec spec)
+    equals(java.lang.Object o)
+    #ctor(android.app.slice.Slice slice, android.widget.inline.InlinePresentationSpec inlinePresentationSpec, boolean pinned)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class LuhnChecksumValidator
+    #ctor(android.view.autofill.AutofillId... ids)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class Presentations.Builder
+    setDialogPresentation(android.widget.RemoteViews value)
+    setInlinePresentation(android.service.autofill.InlinePresentation value)
+    setInlineTooltipPresentation(android.service.autofill.InlinePresentation value)
+    setMenuPresentation(android.widget.RemoteViews value)
+  class RegexValidator
+    #ctor(android.view.autofill.AutofillId id, java.util.regex.Pattern regex)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class SaveCallback
+    onFailure(java.lang.CharSequence message)
+    onSuccess(android.content.IntentSender intentSender)
+  class SavedDatasetsInfo
+    equals(java.lang.Object o)
+    #ctor(java.lang.String type, int count)
+  interface SavedDatasetsInfoCallback
+    onError(int error)
+    onSuccess(java.util.Set<android.service.autofill.SavedDatasetsInfo> results)
+  class SaveInfo
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class SaveInfo.Builder
+    addSanitizer(android.service.autofill.Sanitizer sanitizer, android.view.autofill.AutofillId... ids)
+    #ctor(int type)
+    #ctor(int type, android.view.autofill.AutofillId[] requiredIds)
+    setCustomDescription(android.service.autofill.CustomDescription customDescription)
+    setDescription(java.lang.CharSequence description)
+    setFlags(int flags)
+    setNegativeAction(int style, android.content.IntentSender listener)
+    setOptionalIds(android.view.autofill.AutofillId[] ids)
+    setPositiveAction(int style)
+    setTriggerId(android.view.autofill.AutofillId id)
+    setValidator(android.service.autofill.Validator validator)
+  class SaveRequest
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class TextValueSanitizer
+    #ctor(java.util.regex.Pattern regex, java.lang.String subst)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UserData
+    getFieldClassificationAlgorithmForCategory(java.lang.String categoryId)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class UserData.Builder
+    add(java.lang.String value, java.lang.String categoryId)
+    setFieldClassificationAlgorithm(java.lang.String name, android.os.Bundle args)
+    setFieldClassificationAlgorithmForCategory(java.lang.String categoryId, java.lang.String name, android.os.Bundle args)
+    #ctor(java.lang.String id, java.lang.String value, java.lang.String categoryId)
+  class Validators
+    and(android.service.autofill.Validator... validators)
+    not(android.service.autofill.Validator validator)
+    or(android.service.autofill.Validator... validators)
+  class VisibilitySetterAction
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class VisibilitySetterAction.Builder
+    setVisibility(int id, int visibility)
+    #ctor(int id, int visibility)
+
+package android.service.carrier
+;---------------------------------------
+  class CarrierIdentifier
+    #ctor(byte[] mccMnc, java.lang.String gid1, java.lang.String gid2)
+    #ctor(java.lang.String mcc, java.lang.String mnc, java.lang.String spn, java.lang.String imsi, java.lang.String gid1, java.lang.String gid2)
+    #ctor(java.lang.String mcc, java.lang.String mnc, java.lang.String spn, java.lang.String imsi, java.lang.String gid1, java.lang.String gid2, int carrierid, int specificCarrierId)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel out, int flags)
+  class CarrierMessagingClientService
+    onBind(android.content.Intent intent)
+  class CarrierMessagingService
+    onBind(android.content.Intent intent)
+    onDownloadMms(android.net.Uri contentUri, int subId, android.net.Uri location, android.service.carrier.CarrierMessagingService.ResultCallback<java.lang.Integer> callback)
+    onFilterSms(android.service.carrier.MessagePdu pdu, java.lang.String format, int destPort, int subId, android.service.carrier.CarrierMessagingService.ResultCallback<java.lang.Boolean> callback)
+    onReceiveTextSms(android.service.carrier.MessagePdu pdu, java.lang.String format, int destPort, int subId, android.service.carrier.CarrierMessagingService.ResultCallback<java.lang.Integer> callback)
+    onSendDataSms(byte[] data, int subId, java.lang.String destAddress, int destPort, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendSmsResult> callback)
+    onSendDataSms(byte[] data, int subId, java.lang.String destAddress, int destPort, int sendSmsFlag, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendSmsResult> callback)
+    onSendMms(android.net.Uri pduUri, int subId, android.net.Uri location, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendMmsResult> callback)
+    onSendMultipartTextSms(java.util.List<java.lang.String> parts, int subId, java.lang.String destAddress, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendMultipartSmsResult> callback)
+    onSendMultipartTextSms(java.util.List<java.lang.String> parts, int subId, java.lang.String destAddress, int sendSmsFlag, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendMultipartSmsResult> callback)
+    onSendTextSms(java.lang.String text, int subId, java.lang.String destAddress, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendSmsResult> callback)
+    onSendTextSms(java.lang.String text, int subId, java.lang.String destAddress, int sendSmsFlag, android.service.carrier.CarrierMessagingService.ResultCallback<android.service.carrier.CarrierMessagingService.SendSmsResult> callback)
+  interface CarrierMessagingService.ResultCallback<T>
+    onReceiveResult(T result)
+  class CarrierMessagingService.SendMmsResult
+    #ctor(int sendStatus, byte[] sendConfPdu)
+  class CarrierMessagingService.SendMultipartSmsResult
+    #ctor(int sendStatus, int[] messageRefs)
+  class CarrierMessagingService.SendSmsResult
+    #ctor(int sendStatus, int messageRef)
+  class CarrierService
+    notifyCarrierNetworkChange(boolean active)
+    notifyCarrierNetworkChange(int subscriptionId, boolean active)
+    onBind(android.content.Intent intent)
+    onLoadConfig(android.service.carrier.CarrierIdentifier id)
+    onLoadConfig(int subscriptionId, android.service.carrier.CarrierIdentifier id)
+  class MessagePdu
+    #ctor(java.util.List<byte[]> pduList)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.service.chooser
+;---------------------------------------
+  class ChooserTarget
+    #ctor(java.lang.CharSequence title, android.graphics.drawable.Icon icon, float score, android.content.ComponentName componentName, android.os.Bundle intentExtras)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ChooserTargetService
+    onBind(android.content.Intent intent)
+    onGetChooserTargets(android.content.ComponentName targetActivityName, android.content.IntentFilter matchedFilter)
+
+package android.service.controls
+;---------------------------------------
+  class Control
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Control.StatefulBuilder
+    #ctor(android.service.controls.Control control)
+    #ctor(java.lang.String controlId, android.app.PendingIntent appIntent)
+    setAppIntent(android.app.PendingIntent appIntent)
+    setAuthRequired(boolean authRequired)
+    setControlId(java.lang.String controlId)
+    setControlTemplate(android.service.controls.templates.ControlTemplate controlTemplate)
+    setCustomColor(android.content.res.ColorStateList customColor)
+    setCustomIcon(android.graphics.drawable.Icon customIcon)
+    setDeviceType(int deviceType)
+    setStatus(int status)
+    setStatusText(java.lang.CharSequence statusText)
+    setStructure(java.lang.CharSequence structure)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTitle(java.lang.CharSequence title)
+    setZone(java.lang.CharSequence zone)
+  class Control.StatelessBuilder
+    #ctor(android.service.controls.Control control)
+    #ctor(java.lang.String controlId, android.app.PendingIntent appIntent)
+    setAppIntent(android.app.PendingIntent appIntent)
+    setControlId(java.lang.String controlId)
+    setCustomColor(android.content.res.ColorStateList customColor)
+    setCustomIcon(android.graphics.drawable.Icon customIcon)
+    setDeviceType(int deviceType)
+    setStructure(java.lang.CharSequence structure)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTitle(java.lang.CharSequence title)
+    setZone(java.lang.CharSequence zone)
+  class ControlsProviderService
+    createPublisherFor(java.util.List<java.lang.String> controlIds)
+    onBind(android.content.Intent intent)
+    onUnbind(android.content.Intent intent)
+    performControlAction(java.lang.String controlId, android.service.controls.actions.ControlAction action, java.util.function.Consumer<java.lang.Integer> consumer)
+    requestAddControl(android.content.Context context, android.content.ComponentName componentName, android.service.controls.Control control)
+  class DeviceTypes
+    validDeviceType(int deviceType)
+
+package android.service.controls.actions
+;---------------------------------------
+  class BooleanAction
+    #ctor(java.lang.String templateId, boolean newState)
+    #ctor(java.lang.String templateId, boolean newState, java.lang.String challengeValue)
+  class CommandAction
+    #ctor(java.lang.String templateId)
+    #ctor(java.lang.String templateId, java.lang.String challengeValue)
+  class ControlAction
+    isValidResponse(int response)
+  class FloatAction
+    #ctor(java.lang.String templateId, float newValue)
+    #ctor(java.lang.String templateId, float newValue, java.lang.String challengeValue)
+  class ModeAction
+    #ctor(java.lang.String templateId, int newMode)
+    #ctor(java.lang.String templateId, int newMode, java.lang.String challengeValue)
+
+package android.service.controls.templates
+;---------------------------------------
+  class ControlButton
+    #ctor(boolean checked, java.lang.CharSequence actionDescription)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RangeTemplate
+    #ctor(java.lang.String templateId, float minValue, float maxValue, float currentValue, float stepValue, java.lang.CharSequence formatString)
+  class StatelessTemplate
+    #ctor(java.lang.String templateId)
+  class TemperatureControlTemplate
+    #ctor(java.lang.String templateId, android.service.controls.templates.ControlTemplate controlTemplate, int currentMode, int currentActiveMode, int modesFlag)
+  class ThumbnailTemplate
+    #ctor(java.lang.String templateId, boolean active, android.graphics.drawable.Icon thumbnail, java.lang.CharSequence contentDescription)
+  class ToggleRangeTemplate
+    #ctor(java.lang.String templateId, android.service.controls.templates.ControlButton button, android.service.controls.templates.RangeTemplate range)
+    #ctor(java.lang.String templateId, boolean checked, java.lang.CharSequence actionDescription, android.service.controls.templates.RangeTemplate range)
+  class ToggleTemplate
+    #ctor(java.lang.String templateId, android.service.controls.templates.ControlButton button)
+
+package android.service.credentials
+;---------------------------------------
+  class Action
+    #ctor(android.app.slice.Slice slice)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BeginCreateCredentialRequest
+    #ctor(android.service.credentials.CallingAppInfo callingAppInfo, java.lang.String type, android.os.Bundle data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BeginCreateCredentialResponse
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BeginCreateCredentialResponse.Builder
+    addCreateEntry(android.service.credentials.CreateEntry createEntry)
+    setCreateEntries(java.util.List<android.service.credentials.CreateEntry> createEntries)
+    setRemoteCreateEntry(android.service.credentials.CreateEntry remoteCreateEntry)
+  class BeginGetCredentialOption
+    #ctor(java.lang.String type, android.os.Bundle candidateQueryData)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BeginGetCredentialRequest
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BeginGetCredentialRequest.Builder
+    addBeginGetCredentialOption(android.service.credentials.BeginGetCredentialOption beginGetCredentialOption)
+    #ctor(android.service.credentials.CallingAppInfo callingAppInfo)
+    setBeginGetCredentialOptions(java.util.List<android.service.credentials.BeginGetCredentialOption> getBeginCredentialOptions)
+  class BeginGetCredentialResponse
+    createWithAuthentication(android.service.credentials.Action authenticationAction)
+    createWithResponseContent(android.service.credentials.CredentialsResponseContent credentialsResponseContent)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CallingAppInfo
+    #ctor(java.lang.String packageName, android.content.pm.SigningInfo signingInfo)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ClearCredentialStateRequest
+    #ctor(android.service.credentials.CallingAppInfo callingAppInfo, android.os.Bundle data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CreateCredentialRequest
+    #ctor(android.service.credentials.CallingAppInfo callingAppInfo, java.lang.String type, android.os.Bundle data)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CreateEntry
+    #ctor(android.app.slice.Slice slice)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CredentialEntry
+    #ctor(java.lang.String type, android.app.slice.Slice slice)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CredentialProviderService
+    onBeginCreateCredential(android.service.credentials.BeginCreateCredentialRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<android.service.credentials.BeginCreateCredentialResponse,android.credentials.CreateCredentialException> callback)
+    onBeginGetCredential(android.service.credentials.BeginGetCredentialRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<android.service.credentials.BeginGetCredentialResponse,android.credentials.GetCredentialException> callback)
+    onBind(android.content.Intent intent)
+    onClearCredentialState(android.service.credentials.ClearCredentialStateRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<java.lang.Void,android.credentials.ClearCredentialStateException> callback)
+  class CredentialsResponseContent
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CredentialsResponseContent.Builder
+    addAction(android.service.credentials.Action action)
+    addCredentialEntry(android.service.credentials.CredentialEntry credentialEntry)
+    setActions(java.util.List<android.service.credentials.Action> actions)
+    setCredentialEntries(java.util.List<android.service.credentials.CredentialEntry> credentialEntries)
+    setRemoteCredentialEntry(android.service.credentials.CredentialEntry remoteCredentialEntry)
+  class GetCredentialRequest
+    #ctor(android.service.credentials.CallingAppInfo callingAppInfo, android.credentials.GetCredentialOption getCredentialOption)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.service.dreams
+;---------------------------------------
+  class DreamService
+    addContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    dispatchGenericMotionEvent(android.view.MotionEvent event)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchKeyShortcutEvent(android.view.KeyEvent event)
+    dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    dispatchTouchEvent(android.view.MotionEvent event)
+    dispatchTrackballEvent(android.view.MotionEvent event)
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter pw, java.lang.String[] args)
+    <T> findViewById(int id)
+    onActionModeFinished(android.view.ActionMode mode)
+    onActionModeStarted(android.view.ActionMode mode)
+    onBind(android.content.Intent intent)
+    onCreatePanelMenu(int featureId, android.view.Menu menu)
+    onCreatePanelView(int featureId)
+    onMenuItemSelected(int featureId, android.view.MenuItem item)
+    onMenuOpened(int featureId, android.view.Menu menu)
+    onPanelClosed(int featureId, android.view.Menu menu)
+    onPreparePanel(int featureId, android.view.View view, android.view.Menu menu)
+    onSearchRequested(android.view.SearchEvent event)
+    onUnbind(android.content.Intent intent)
+    onWindowAttributesChanged(android.view.WindowManager.LayoutParams attrs)
+    onWindowFocusChanged(boolean hasFocus)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback, int type)
+    <T> requireViewById(int id)
+    setContentView(android.view.View view)
+    setContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    setContentView(int layoutResID)
+    setFullscreen(boolean fullscreen)
+    setInteractive(boolean interactive)
+    setScreenBright(boolean screenBright)
+
+package android.service.media
+;---------------------------------------
+  class CameraPrewarmService
+    onBind(android.content.Intent intent)
+    onCooldown(boolean cameraIntentFired)
+    onUnbind(android.content.Intent intent)
+  class MediaBrowserService
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    notifyChildrenChanged(java.lang.String parentId)
+    notifyChildrenChanged(java.lang.String parentId, android.os.Bundle options)
+    onBind(android.content.Intent intent)
+    onGetRoot(java.lang.String clientPackageName, int clientUid, android.os.Bundle rootHints)
+    onLoadChildren(java.lang.String parentId, android.service.media.MediaBrowserService.Result<java.util.List<android.media.browse.MediaBrowser.MediaItem>> result)
+    onLoadChildren(java.lang.String parentId, android.service.media.MediaBrowserService.Result<java.util.List<android.media.browse.MediaBrowser.MediaItem>> result, android.os.Bundle options)
+    onLoadItem(java.lang.String itemId, android.service.media.MediaBrowserService.Result<android.media.browse.MediaBrowser.MediaItem> result)
+    setSessionToken(android.media.session.MediaSession.Token token)
+  class MediaBrowserService.BrowserRoot
+    #ctor(java.lang.String rootId, android.os.Bundle extras)
+  class MediaBrowserService.Result<T>
+    sendResult(T result)
+
+package android.service.notification
+;---------------------------------------
+  class Condition
+    #ctor(android.net.Uri id, java.lang.String summary, int state)
+    #ctor(android.net.Uri id, java.lang.String summary, java.lang.String line1, java.lang.String line2, int icon, int state, int flags)
+    #ctor(android.os.Parcel source)
+    equals(java.lang.Object o)
+    isValidId(android.net.Uri id, java.lang.String pkg)
+    newId(android.content.Context context)
+    relevanceToString(int flags)
+    stateToString(int state)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ConditionProviderService
+    notifyCondition(android.service.notification.Condition condition)
+    notifyConditions(android.service.notification.Condition... conditions)
+    onBind(android.content.Intent intent)
+    onRequestConditions(int relevance)
+    onSubscribe(android.net.Uri conditionId)
+    onUnsubscribe(android.net.Uri conditionId)
+    requestRebind(android.content.ComponentName componentName)
+  class NotificationListenerService
+    attachBaseContext(android.content.Context base)
+    cancelNotification(java.lang.String key)
+    cancelNotification(java.lang.String pkg, java.lang.String tag, int id)
+    cancelNotifications(java.lang.String[] keys)
+    getActiveNotifications(java.lang.String[] keys)
+    getNotificationChannelGroups(java.lang.String pkg, android.os.UserHandle user)
+    getNotificationChannels(java.lang.String pkg, android.os.UserHandle user)
+    migrateNotificationFilter(int defaultTypes, java.util.List<java.lang.String> disallowedPkgs)
+    onBind(android.content.Intent intent)
+    onInterruptionFilterChanged(int interruptionFilter)
+    onListenerHintsChanged(int hints)
+    onNotificationChannelGroupModified(java.lang.String pkg, android.os.UserHandle user, android.app.NotificationChannelGroup group, int modificationType)
+    onNotificationChannelModified(java.lang.String pkg, android.os.UserHandle user, android.app.NotificationChannel channel, int modificationType)
+    onNotificationPosted(android.service.notification.StatusBarNotification sbn)
+    onNotificationPosted(android.service.notification.StatusBarNotification sbn, android.service.notification.NotificationListenerService.RankingMap rankingMap)
+    onNotificationRankingUpdate(android.service.notification.NotificationListenerService.RankingMap rankingMap)
+    onNotificationRemoved(android.service.notification.StatusBarNotification sbn)
+    onNotificationRemoved(android.service.notification.StatusBarNotification sbn, android.service.notification.NotificationListenerService.RankingMap rankingMap)
+    onNotificationRemoved(android.service.notification.StatusBarNotification sbn, android.service.notification.NotificationListenerService.RankingMap rankingMap, int reason)
+    onSilentStatusBarIconsVisibilityChanged(boolean hideSilentStatusIcons)
+    requestInterruptionFilter(int interruptionFilter)
+    requestListenerHints(int hints)
+    requestRebind(android.content.ComponentName componentName)
+    setNotificationsShown(java.lang.String[] keys)
+    snoozeNotification(java.lang.String key, long durationMs)
+    updateNotificationChannel(java.lang.String pkg, android.os.UserHandle user, android.app.NotificationChannel channel)
+  class NotificationListenerService.Ranking
+    equals(java.lang.Object o)
+  class NotificationListenerService.RankingMap
+    equals(java.lang.Object o)
+    getRanking(java.lang.String key, android.service.notification.NotificationListenerService.Ranking outRanking)
+    writeToParcel(android.os.Parcel out, int flags)
+  class StatusBarNotification
+    setOverrideGroupKey(java.lang.String overrideGroupKey)
+    #ctor(android.os.Parcel in)
+    #ctor(java.lang.String pkg, java.lang.String opPkg, int id, java.lang.String tag, int uid, int initialPid, int score, android.app.Notification notification, android.os.UserHandle user, long postTime)
+    writeToParcel(android.os.Parcel out, int flags)
+  class ZenPolicy
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ZenPolicy.Builder
+    allowAlarms(boolean allow)
+    allowCalls(int audienceType)
+    allowConversations(int audienceType)
+    allowEvents(boolean allow)
+    allowMedia(boolean allow)
+    allowMessages(int audienceType)
+    allowReminders(boolean allow)
+    allowRepeatCallers(boolean allow)
+    allowSystem(boolean allow)
+    showBadges(boolean show)
+    showFullScreenIntent(boolean show)
+    showInAmbientDisplay(boolean show)
+    showInNotificationList(boolean show)
+    showLights(boolean show)
+    showPeeking(boolean show)
+    showStatusBarIcons(boolean show)
+
+package android.service.quickaccesswallet
+;---------------------------------------
+  interface GetWalletCardsCallback
+    onFailure(android.service.quickaccesswallet.GetWalletCardsError error)
+    onSuccess(android.service.quickaccesswallet.GetWalletCardsResponse response)
+  class GetWalletCardsError
+    #ctor(android.graphics.drawable.Icon icon, java.lang.CharSequence message)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GetWalletCardsRequest
+    #ctor(int cardWidthPx, int cardHeightPx, int iconSizePx, int maxCards)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GetWalletCardsResponse
+    #ctor(java.util.List<android.service.quickaccesswallet.WalletCard> walletCards, int selectedIndex)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class QuickAccessWalletService
+    onBind(android.content.Intent intent)
+    onWalletCardSelected(android.service.quickaccesswallet.SelectWalletCardRequest request)
+    onWalletCardsRequested(android.service.quickaccesswallet.GetWalletCardsRequest request, android.service.quickaccesswallet.GetWalletCardsCallback callback)
+    sendWalletServiceEvent(android.service.quickaccesswallet.WalletServiceEvent serviceEvent)
+  class SelectWalletCardRequest
+    #ctor(java.lang.String cardId)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WalletCard
+    writeToParcel(android.os.Parcel dest, int flags)
+  class WalletCard.Builder
+    setCardIcon(android.graphics.drawable.Icon cardIcon)
+    setCardLabel(java.lang.CharSequence cardLabel)
+    #ctor(java.lang.String cardId, android.graphics.drawable.Icon cardImage, java.lang.CharSequence contentDescription, android.app.PendingIntent pendingIntent)
+  class WalletServiceEvent
+    #ctor(int eventType)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.service.quicksettings
+;---------------------------------------
+  class Tile
+    setActivityLaunchForClick(android.app.PendingIntent pendingIntent)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setIcon(android.graphics.drawable.Icon icon)
+    setLabel(java.lang.CharSequence label)
+    setState(int state)
+    setStateDescription(java.lang.CharSequence stateDescription)
+    setSubtitle(java.lang.CharSequence subtitle)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TileService
+    onBind(android.content.Intent intent)
+    requestListeningState(android.content.Context context, android.content.ComponentName component)
+    showDialog(android.app.Dialog dialog)
+    startActivityAndCollapse(android.app.PendingIntent pendingIntent)
+    startActivityAndCollapse(android.content.Intent intent)
+    unlockAndRun(java.lang.Runnable runnable)
+
+package android.service.restrictions
+;---------------------------------------
+  class RestrictionsReceiver
+    onReceive(android.content.Context context, android.content.Intent intent)
+    onRequestPermission(android.content.Context context, java.lang.String packageName, java.lang.String requestType, java.lang.String requestId, android.os.PersistableBundle request)
+
+package android.service.textservice
+;---------------------------------------
+  class SpellCheckerService
+    onBind(android.content.Intent intent)
+  class SpellCheckerService.Session
+    onGetSentenceSuggestionsMultiple(android.view.textservice.TextInfo[] textInfos, int suggestionsLimit)
+    onGetSuggestions(android.view.textservice.TextInfo textInfo, int suggestionsLimit)
+    onGetSuggestionsMultiple(android.view.textservice.TextInfo[] textInfos, int suggestionsLimit, boolean sequentialWords)
+
+package android.service.voice
+;---------------------------------------
+  class VisibleActivityInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VoiceInteractionService
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter pw, java.lang.String[] args)
+    isActiveService(android.content.Context context, android.content.ComponentName service)
+    onBind(android.content.Intent intent)
+    onGetSupportedVoiceActions(java.util.Set<java.lang.String> voiceActions)
+    setDisabledShowContext(int flags)
+    setUiHints(android.os.Bundle hints)
+    showSession(android.os.Bundle args, int flags)
+  class VoiceInteractionSession
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    onAssistStructureFailure(java.lang.Throwable failure)
+    onCancelRequest(android.service.voice.VoiceInteractionSession.Request request)
+    onComputeInsets(android.service.voice.VoiceInteractionSession.Insets outInsets)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onDirectActionsInvalidated(android.service.voice.VoiceInteractionSession.ActivityId activityId)
+    onGetSupportedCommands(java.lang.String[] commands)
+    onHandleAssist(android.os.Bundle data, android.app.assist.AssistStructure structure, android.app.assist.AssistContent content)
+    onHandleAssist(android.service.voice.VoiceInteractionSession.AssistState state)
+    onHandleAssistSecondary(android.os.Bundle data, android.app.assist.AssistStructure structure, android.app.assist.AssistContent content, int index, int count)
+    onHandleScreenshot(android.graphics.Bitmap screenshot)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int count, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onPrepareShow(android.os.Bundle args, int showFlags)
+    onRequestAbortVoice(android.service.voice.VoiceInteractionSession.AbortVoiceRequest request)
+    onRequestCommand(android.service.voice.VoiceInteractionSession.CommandRequest request)
+    onRequestCompleteVoice(android.service.voice.VoiceInteractionSession.CompleteVoiceRequest request)
+    onRequestConfirmation(android.service.voice.VoiceInteractionSession.ConfirmationRequest request)
+    onRequestPickOption(android.service.voice.VoiceInteractionSession.PickOptionRequest request)
+    onShow(android.os.Bundle args, int showFlags)
+    onTaskFinished(android.content.Intent intent, int taskId)
+    onTaskStarted(android.content.Intent intent, int taskId)
+    onTrimMemory(int level)
+    performDirectAction(android.app.DirectAction action, android.os.Bundle extras, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor resultExecutor, java.util.function.Consumer<android.os.Bundle> resultListener)
+    registerVisibleActivityCallback(java.util.concurrent.Executor executor, android.service.voice.VoiceInteractionSession.VisibleActivityCallback callback)
+    requestDirectActions(android.service.voice.VoiceInteractionSession.ActivityId activityId, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor resultExecutor, java.util.function.Consumer<java.util.List<android.app.DirectAction>> callback)
+    setContentView(android.view.View view)
+    setDisabledShowContext(int flags)
+    setKeepAwake(boolean keepAwake)
+    setTheme(int theme)
+    setUiEnabled(boolean enabled)
+    show(android.os.Bundle args, int flags)
+    startAssistantActivity(android.content.Intent intent)
+    startVoiceActivity(android.content.Intent intent)
+    unregisterVisibleActivityCallback(android.service.voice.VoiceInteractionSession.VisibleActivityCallback callback)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.os.Handler handler)
+  class VoiceInteractionSession.AbortVoiceRequest
+    sendAbortResult(android.os.Bundle result)
+  class VoiceInteractionSession.ActivityId
+    equals(java.lang.Object o)
+  class VoiceInteractionSession.CommandRequest
+    sendIntermediateResult(android.os.Bundle result)
+    sendResult(android.os.Bundle result)
+  class VoiceInteractionSession.CompleteVoiceRequest
+    sendCompleteResult(android.os.Bundle result)
+  class VoiceInteractionSession.ConfirmationRequest
+    sendConfirmationResult(boolean confirmed, android.os.Bundle result)
+  class VoiceInteractionSession.PickOptionRequest
+    sendIntermediatePickOptionResult(android.app.VoiceInteractor.PickOptionRequest.Option[] selections, android.os.Bundle result)
+    sendPickOptionResult(android.app.VoiceInteractor.PickOptionRequest.Option[] selections, android.os.Bundle result)
+  interface VoiceInteractionSession.VisibleActivityCallback
+    onInvisible(android.service.voice.VoiceInteractionSession.ActivityId activityId)
+    onVisible(android.service.voice.VisibleActivityInfo activityInfo)
+  class VoiceInteractionSessionService
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args)
+    onBind(android.content.Intent intent)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onNewSession(android.os.Bundle args)
+    onTrimMemory(int level)
+
+package android.service.vr
+;---------------------------------------
+  class VrListenerService
+    isVrModePackageEnabled(android.content.Context context, android.content.ComponentName requestedComponent)
+    onBind(android.content.Intent intent)
+    onCurrentVrActivityChanged(android.content.ComponentName component)
+
+package android.service.wallpaper
+;---------------------------------------
+  class WallpaperService
+    dump(java.io.FileDescriptor fd, java.io.PrintWriter out, java.lang.String[] args)
+    onBind(android.content.Intent intent)
+  class WallpaperService.Engine
+    dump(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter out, java.lang.String[] args)
+    onApplyWindowInsets(android.view.WindowInsets insets)
+    onCommand(java.lang.String action, int x, int y, int z, android.os.Bundle extras, boolean resultRequested)
+    onCreate(android.view.SurfaceHolder surfaceHolder)
+    onDesiredSizeChanged(int desiredWidth, int desiredHeight)
+    onOffsetsChanged(float xOffset, float yOffset, float xOffsetStep, float yOffsetStep, int xPixelOffset, int yPixelOffset)
+    onSurfaceChanged(android.view.SurfaceHolder holder, int format, int width, int height)
+    onSurfaceCreated(android.view.SurfaceHolder holder)
+    onSurfaceDestroyed(android.view.SurfaceHolder holder)
+    onSurfaceRedrawNeeded(android.view.SurfaceHolder holder)
+    onTouchEvent(android.view.MotionEvent event)
+    onVisibilityChanged(boolean visible)
+    onWallpaperFlagsChanged(int which)
+    onZoomChanged(float zoom)
+    setOffsetNotificationsEnabled(boolean enabled)
+    setTouchEventsEnabled(boolean enabled)
+
+package android.speech
+;---------------------------------------
+  class AlternativeSpan
+    #ctor(int startPosition, int endPosition, java.util.List<java.lang.String> alternatives)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AlternativeSpans
+    #ctor(java.util.List<android.speech.AlternativeSpan> spans)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface RecognitionListener
+    onBufferReceived(byte[] buffer)
+    onError(int error)
+    onEvent(int eventType, android.os.Bundle params)
+    onPartialResults(android.os.Bundle partialResults)
+    onReadyForSpeech(android.os.Bundle params)
+    onResults(android.os.Bundle results)
+    onRmsChanged(float rmsdB)
+    onSegmentResults(android.os.Bundle segmentResults)
+  class RecognitionService
+    createContext(android.content.ContextParams contextParams)
+    onBind(android.content.Intent intent)
+    onCancel(android.speech.RecognitionService.Callback listener)
+    onCheckRecognitionSupport(android.content.Intent recognizerIntent, android.speech.RecognitionService.SupportCallback supportCallback)
+    onStartListening(android.content.Intent recognizerIntent, android.speech.RecognitionService.Callback listener)
+    onStopListening(android.speech.RecognitionService.Callback listener)
+    onTriggerModelDownload(android.content.Intent recognizerIntent)
+  class RecognitionService.Callback
+    bufferReceived(byte[] buffer)
+    error(int error)
+    partialResults(android.os.Bundle partialResults)
+    readyForSpeech(android.os.Bundle params)
+    results(android.os.Bundle results)
+    rmsChanged(float rmsdB)
+    segmentResults(android.os.Bundle results)
+  class RecognitionService.SupportCallback
+    onError(int errorCode)
+    onSupportResult(android.speech.RecognitionSupport recognitionSupport)
+  class RecognitionSupport
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RecognitionSupport.Builder
+    addInstalledOnDeviceLanguage(java.lang.String value)
+    addOnlineLanguage(java.lang.String value)
+    addPendingOnDeviceLanguage(java.lang.String value)
+    addSupportedOnDeviceLanguage(java.lang.String value)
+    setInstalledOnDeviceLanguages(java.util.List<java.lang.String> value)
+    setOnlineLanguages(java.util.List<java.lang.String> value)
+    setPendingOnDeviceLanguages(java.util.List<java.lang.String> value)
+    setSupportedOnDeviceLanguages(java.util.List<java.lang.String> value)
+  interface RecognitionSupportCallback
+    onError(int error)
+    onSupportResult(android.speech.RecognitionSupport recognitionSupport)
+  class RecognizerIntent
+    getVoiceDetailsIntent(android.content.Context context)
+  class SpeechRecognizer
+    checkRecognitionSupport(android.content.Intent recognizerIntent, java.util.concurrent.Executor executor, android.speech.RecognitionSupportCallback supportListener)
+    createOnDeviceSpeechRecognizer(android.content.Context context)
+    createSpeechRecognizer(android.content.Context context)
+    createSpeechRecognizer(android.content.Context context, android.content.ComponentName serviceComponent)
+    isOnDeviceRecognitionAvailable(android.content.Context context)
+    isRecognitionAvailable(android.content.Context context)
+    setRecognitionListener(android.speech.RecognitionListener listener)
+    startListening(android.content.Intent recognizerIntent)
+    triggerModelDownload(android.content.Intent recognizerIntent)
+
+package android.speech.tts
+;---------------------------------------
+  interface SynthesisCallback
+    audioAvailable(byte[] buffer, int offset, int length)
+    error(int errorCode)
+    rangeStart(int markerInFrames, int start, int end)
+    start(int sampleRateInHz, int audioFormat, int channelCount)
+  class SynthesisRequest
+    #ctor(java.lang.CharSequence text, android.os.Bundle params)
+    #ctor(java.lang.String text, android.os.Bundle params)
+  class TextToSpeech
+    addEarcon(java.lang.String earcon, android.net.Uri uri)
+    addEarcon(java.lang.String earcon, java.io.File file)
+    addEarcon(java.lang.String earcon, java.lang.String filename)
+    addEarcon(java.lang.String earcon, java.lang.String packagename, int resourceId)
+    addSpeech(java.lang.CharSequence text, android.net.Uri uri)
+    addSpeech(java.lang.CharSequence text, java.io.File file)
+    addSpeech(java.lang.CharSequence text, java.lang.String packagename, int resourceId)
+    addSpeech(java.lang.String text, java.lang.String filename)
+    addSpeech(java.lang.String text, java.lang.String packagename, int resourceId)
+    getFeatures(java.util.Locale locale)
+    isLanguageAvailable(java.util.Locale loc)
+    playEarcon(java.lang.String earcon, int queueMode, android.os.Bundle params, java.lang.String utteranceId)
+    playEarcon(java.lang.String earcon, int queueMode, java.util.HashMap<java.lang.String,java.lang.String> params)
+    playSilence(long durationInMs, int queueMode, java.util.HashMap<java.lang.String,java.lang.String> params)
+    playSilentUtterance(long durationInMs, int queueMode, java.lang.String utteranceId)
+    setAudioAttributes(android.media.AudioAttributes audioAttributes)
+    setEngineByPackageName(java.lang.String enginePackageName)
+    setLanguage(java.util.Locale loc)
+    setOnUtteranceCompletedListener(android.speech.tts.TextToSpeech.OnUtteranceCompletedListener listener)
+    setOnUtteranceProgressListener(android.speech.tts.UtteranceProgressListener listener)
+    setPitch(float pitch)
+    setSpeechRate(float speechRate)
+    setVoice(android.speech.tts.Voice voice)
+    speak(java.lang.CharSequence text, int queueMode, android.os.Bundle params, java.lang.String utteranceId)
+    speak(java.lang.String text, int queueMode, java.util.HashMap<java.lang.String,java.lang.String> params)
+    synthesizeToFile(java.lang.CharSequence text, android.os.Bundle params, android.os.ParcelFileDescriptor fileDescriptor, java.lang.String utteranceId)
+    synthesizeToFile(java.lang.CharSequence text, android.os.Bundle params, java.io.File file, java.lang.String utteranceId)
+    synthesizeToFile(java.lang.String text, java.util.HashMap<java.lang.String,java.lang.String> params, java.lang.String filename)
+    #ctor(android.content.Context context, android.speech.tts.TextToSpeech.OnInitListener listener)
+    #ctor(android.content.Context context, android.speech.tts.TextToSpeech.OnInitListener listener, java.lang.String engine)
+  interface TextToSpeech.OnInitListener
+    onInit(int status)
+  interface TextToSpeech.OnUtteranceCompletedListener
+    onUtteranceCompleted(java.lang.String utteranceId)
+  class TextToSpeechService
+    onBind(android.content.Intent intent)
+    onGetDefaultVoiceNameFor(java.lang.String lang, java.lang.String country, java.lang.String variant)
+    onGetFeaturesForLanguage(java.lang.String lang, java.lang.String country, java.lang.String variant)
+    onIsLanguageAvailable(java.lang.String lang, java.lang.String country, java.lang.String variant)
+    onIsValidVoiceName(java.lang.String voiceName)
+    onLoadLanguage(java.lang.String lang, java.lang.String country, java.lang.String variant)
+    onLoadVoice(java.lang.String voiceName)
+    onSynthesizeText(android.speech.tts.SynthesisRequest request, android.speech.tts.SynthesisCallback callback)
+  class UtteranceProgressListener
+    onAudioAvailable(java.lang.String utteranceId, byte[] audio)
+    onBeginSynthesis(java.lang.String utteranceId, int sampleRateInHz, int audioFormat, int channelCount)
+    onDone(java.lang.String utteranceId)
+    onError(java.lang.String utteranceId)
+    onError(java.lang.String utteranceId, int errorCode)
+    onRangeStart(java.lang.String utteranceId, int start, int end, int frame)
+    onStart(java.lang.String utteranceId)
+    onStop(java.lang.String utteranceId, boolean interrupted)
+  class Voice
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String name, java.util.Locale locale, int quality, int latency, boolean requiresNetworkConnection, java.util.Set<java.lang.String> features)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.system
+;---------------------------------------
+  class ErrnoException
+    #ctor(java.lang.String functionName, int errno)
+    #ctor(java.lang.String functionName, int errno, java.lang.Throwable cause)
+  class Int64Ref
+    #ctor(long value)
+  class Os
+    accept(java.io.FileDescriptor fd, java.net.InetSocketAddress peerAddress)
+    access(java.lang.String path, int mode)
+    bind(java.io.FileDescriptor fd, java.net.InetAddress address, int port)
+    bind(java.io.FileDescriptor fd, java.net.SocketAddress address)
+    chmod(java.lang.String path, int mode)
+    chown(java.lang.String path, int uid, int gid)
+    close(java.io.FileDescriptor fd)
+    connect(java.io.FileDescriptor fd, java.net.InetAddress address, int port)
+    connect(java.io.FileDescriptor fd, java.net.SocketAddress address)
+    dup(java.io.FileDescriptor oldFd)
+    dup2(java.io.FileDescriptor oldFd, int newFd)
+    execv(java.lang.String filename, java.lang.String[] argv)
+    execve(java.lang.String filename, java.lang.String[] argv, java.lang.String[] envp)
+    fchmod(java.io.FileDescriptor fd, int mode)
+    fchown(java.io.FileDescriptor fd, int uid, int gid)
+    fcntlInt(java.io.FileDescriptor fd, int cmd, int arg)
+    fdatasync(java.io.FileDescriptor fd)
+    fstat(java.io.FileDescriptor fd)
+    fstatvfs(java.io.FileDescriptor fd)
+    fsync(java.io.FileDescriptor fd)
+    ftruncate(java.io.FileDescriptor fd, long length)
+    gai_strerror(int error)
+    getenv(java.lang.String name)
+    getpeername(java.io.FileDescriptor fd)
+    getsockname(java.io.FileDescriptor fd)
+    getsockoptTimeval(java.io.FileDescriptor fd, int level, int option)
+    getxattr(java.lang.String path, java.lang.String name)
+    if_indextoname(int index)
+    if_nametoindex(java.lang.String name)
+    inet_pton(int family, java.lang.String address)
+    isatty(java.io.FileDescriptor fd)
+    kill(int pid, int signal)
+    lchown(java.lang.String path, int uid, int gid)
+    link(java.lang.String oldPath, java.lang.String newPath)
+    listen(java.io.FileDescriptor fd, int backlog)
+    listxattr(java.lang.String path)
+    lseek(java.io.FileDescriptor fd, long offset, int whence)
+    lstat(java.lang.String path)
+    memfd_create(java.lang.String name, int flags)
+    mincore(long address, long byteCount, byte[] vector)
+    mkdir(java.lang.String path, int mode)
+    mkfifo(java.lang.String path, int mode)
+    mlock(long address, long byteCount)
+    mmap(long address, long byteCount, int prot, int flags, java.io.FileDescriptor fd, long offset)
+    msync(long address, long byteCount, int flags)
+    munlock(long address, long byteCount)
+    munmap(long address, long byteCount)
+    open(java.lang.String path, int flags, int mode)
+    poll(android.system.StructPollfd[] fds, int timeoutMs)
+    posix_fallocate(java.io.FileDescriptor fd, long offset, long length)
+    prctl(int option, long arg2, long arg3, long arg4, long arg5)
+    pread(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, long offset)
+    pread(java.io.FileDescriptor fd, java.nio.ByteBuffer buffer, long offset)
+    pwrite(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, long offset)
+    pwrite(java.io.FileDescriptor fd, java.nio.ByteBuffer buffer, long offset)
+    read(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount)
+    read(java.io.FileDescriptor fd, java.nio.ByteBuffer buffer)
+    readlink(java.lang.String path)
+    readv(java.io.FileDescriptor fd, java.lang.Object[] buffers, int[] offsets, int[] byteCounts)
+    recvfrom(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, int flags, java.net.InetSocketAddress srcAddress)
+    recvfrom(java.io.FileDescriptor fd, java.nio.ByteBuffer buffer, int flags, java.net.InetSocketAddress srcAddress)
+    recvmsg(java.io.FileDescriptor fd, android.system.StructMsghdr msg, int flags)
+    remove(java.lang.String path)
+    removexattr(java.lang.String path, java.lang.String name)
+    rename(java.lang.String oldPath, java.lang.String newPath)
+    sendfile(java.io.FileDescriptor outFd, java.io.FileDescriptor inFd, android.system.Int64Ref offset, long byteCount)
+    sendmsg(java.io.FileDescriptor fd, android.system.StructMsghdr msg, int flags)
+    sendto(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, int flags, java.net.InetAddress inetAddress, int port)
+    sendto(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, int flags, java.net.SocketAddress address)
+    sendto(java.io.FileDescriptor fd, java.nio.ByteBuffer buffer, int flags, java.net.InetAddress inetAddress, int port)
+    setegid(int egid)
+    setenv(java.lang.String name, java.lang.String value, boolean overwrite)
+    seteuid(int euid)
+    setgid(int gid)
+    setsockoptInt(java.io.FileDescriptor fd, int level, int option, int value)
+    setsockoptTimeval(java.io.FileDescriptor fd, int level, int option, android.system.StructTimeval value)
+    setuid(int uid)
+    setxattr(java.lang.String path, java.lang.String name, byte[] value, int flags)
+    shutdown(java.io.FileDescriptor fd, int how)
+    socket(int domain, int type, int protocol)
+    socketpair(int domain, int type, int protocol, java.io.FileDescriptor fd1, java.io.FileDescriptor fd2)
+    stat(java.lang.String path)
+    statvfs(java.lang.String path)
+    strerror(int errno)
+    strsignal(int signal)
+    symlink(java.lang.String oldPath, java.lang.String newPath)
+    sysconf(int name)
+    tcdrain(java.io.FileDescriptor fd)
+    tcsendbreak(java.io.FileDescriptor fd, int duration)
+    umask(int mask)
+    unsetenv(java.lang.String name)
+    write(java.io.FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount)
+    write(java.io.FileDescriptor fd, java.nio.ByteBuffer buffer)
+    writev(java.io.FileDescriptor fd, java.lang.Object[] buffers, int[] offsets, int[] byteCounts)
+  class OsConstants
+    errnoName(int errno)
+    gaiName(int error)
+    S_ISBLK(int mode)
+    S_ISCHR(int mode)
+    S_ISDIR(int mode)
+    S_ISFIFO(int mode)
+    S_ISLNK(int mode)
+    S_ISREG(int mode)
+    S_ISSOCK(int mode)
+    WCOREDUMP(int status)
+    WEXITSTATUS(int status)
+    WIFEXITED(int status)
+    WIFSIGNALED(int status)
+    WIFSTOPPED(int status)
+    WSTOPSIG(int status)
+    WTERMSIG(int status)
+  class StructCmsghdr
+    #ctor(int cmsg_level, int cmsg_type, byte[] value)
+    #ctor(int cmsg_level, int cmsg_type, short value)
+  class StructMsghdr
+    #ctor(java.net.SocketAddress msg_name, java.nio.ByteBuffer[] msg_iov, android.system.StructCmsghdr[] msg_control, int msg_flags)
+  class StructStat
+    #ctor(long st_dev, long st_ino, int st_mode, long st_nlink, int st_uid, int st_gid, long st_rdev, long st_size, android.system.StructTimespec st_atim, android.system.StructTimespec st_mtim, android.system.StructTimespec st_ctim, long st_blksize, long st_blocks)
+    #ctor(long st_dev, long st_ino, int st_mode, long st_nlink, int st_uid, int st_gid, long st_rdev, long st_size, long st_atime, long st_mtime, long st_ctime, long st_blksize, long st_blocks)
+  class StructStatVfs
+    #ctor(long f_bsize, long f_frsize, long f_blocks, long f_bfree, long f_bavail, long f_files, long f_ffree, long f_favail, long f_fsid, long f_flag, long f_namemax)
+  class StructTimespec
+    compareTo(android.system.StructTimespec other)
+    equals(java.lang.Object o)
+    #ctor(long tv_sec, long tv_nsec)
+  class StructTimeval
+    equals(java.lang.Object o)
+    fromMillis(long millis)
+  class StructUtsname
+    #ctor(java.lang.String sysname, java.lang.String nodename, java.lang.String release, java.lang.String version, java.lang.String machine)
+  class VmSocketAddress
+    #ctor(int svmPort, int svmCid)
+
+package android.telecom
+;---------------------------------------
+  class Call
+    addConferenceParticipants(java.util.List<android.net.Uri> participants)
+    answer(int videoState)
+    conference(android.telecom.Call callToConferenceWith)
+    deflect(android.net.Uri address)
+    handoverTo(android.telecom.PhoneAccountHandle toHandle, int videoState, android.os.Bundle extras)
+    phoneAccountSelected(android.telecom.PhoneAccountHandle accountHandle, boolean setDefault)
+    playDtmfTone(char digit)
+    postDialContinue(boolean proceed)
+    putExtras(android.os.Bundle extras)
+    registerCallback(android.telecom.Call.Callback callback)
+    registerCallback(android.telecom.Call.Callback callback, android.os.Handler handler)
+    reject(boolean rejectWithMessage, java.lang.String textMessage)
+    reject(int rejectReason)
+    removeExtras(java.lang.String... keys)
+    removeExtras(java.util.List<java.lang.String> keys)
+    respondToRttRequest(int id, boolean accept)
+    sendCallEvent(java.lang.String event, android.os.Bundle extras)
+    unregisterCallback(android.telecom.Call.Callback callback)
+  class Call.Callback
+    onCallDestroyed(android.telecom.Call call)
+    onCannedTextResponsesLoaded(android.telecom.Call call, java.util.List<java.lang.String> cannedTextResponses)
+    onChildrenChanged(android.telecom.Call call, java.util.List<android.telecom.Call> children)
+    onConferenceableCallsChanged(android.telecom.Call call, java.util.List<android.telecom.Call> conferenceableCalls)
+    onConnectionEvent(android.telecom.Call call, java.lang.String event, android.os.Bundle extras)
+    onDetailsChanged(android.telecom.Call call, android.telecom.Call.Details details)
+    onHandoverComplete(android.telecom.Call call)
+    onHandoverFailed(android.telecom.Call call, int failureReason)
+    onParentChanged(android.telecom.Call call, android.telecom.Call parent)
+    onPostDialWait(android.telecom.Call call, java.lang.String remainingPostDialSequence)
+    onRttInitiationFailure(android.telecom.Call call, int reason)
+    onRttModeChanged(android.telecom.Call call, int mode)
+    onRttRequest(android.telecom.Call call, int id)
+    onRttStatusChanged(android.telecom.Call call, boolean enabled, android.telecom.Call.RttCall rttCall)
+    onStateChanged(android.telecom.Call call, int state)
+    onVideoCallChanged(android.telecom.Call call, android.telecom.InCallService.VideoCall videoCall)
+  class Call.Details
+    can(int capability)
+    can(int capabilities, int capability)
+    capabilitiesToString(int capabilities)
+    equals(java.lang.Object o)
+    hasProperty(int property)
+    hasProperty(int properties, int property)
+    propertiesToString(int properties)
+  class Call.RttCall
+    setRttMode(int mode)
+    write(java.lang.String input)
+  class CallAttributes
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CallAttributes.Builder
+    #ctor(android.telecom.PhoneAccountHandle phoneAccountHandle, int callDirection, java.lang.CharSequence displayName, android.net.Uri address)
+    setCallCapabilities(int callCapabilities)
+    setCallType(int callType)
+  class CallAudioState
+    audioRouteToString(int route)
+    #ctor(boolean muted, int route, int supportedRouteMask)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel destination, int flags)
+  class CallControl
+    disconnect(android.telecom.DisconnectCause disconnectCause, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallException> callback)
+    rejectCall(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallException> callback)
+    requestCallEndpointChange(android.telecom.CallEndpoint callEndpoint, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallException> callback)
+    setActive(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallException> callback)
+    setInactive(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallException> callback)
+    startCallStreaming(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallException> callback)
+  class CallEndpoint
+    #ctor(java.lang.CharSequence name, int type, android.os.ParcelUuid id)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel destination, int flags)
+  class CallEndpointException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, int code)
+    #ctor(java.lang.String message, int code, java.lang.Throwable cause)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface CallEventCallback
+    onAnswer(int videoState, java.util.function.Consumer<java.lang.Boolean> wasCompleted)
+    onAvailableCallEndpointsChanged(java.util.List<android.telecom.CallEndpoint> availableEndpoints)
+    onCallEndpointChanged(android.telecom.CallEndpoint newCallEndpoint)
+    onCallStreamingFailed(int reason)
+    onCallStreamingStarted(java.util.function.Consumer<java.lang.Boolean> wasCompleted)
+    onDisconnect(java.util.function.Consumer<java.lang.Boolean> wasCompleted)
+    onMuteStateChanged(boolean isMuted)
+    onReject(java.util.function.Consumer<java.lang.Boolean> wasCompleted)
+    onSetActive(java.util.function.Consumer<java.lang.Boolean> wasCompleted)
+    onSetInactive(java.util.function.Consumer<java.lang.Boolean> wasCompleted)
+  class CallException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, int code)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CallRedirectionService
+    onBind(android.content.Intent intent)
+    onPlaceCall(android.net.Uri handle, android.telecom.PhoneAccountHandle initialPhoneAccount, boolean allowInteractiveResponse)
+    onUnbind(android.content.Intent intent)
+    redirectCall(android.net.Uri gatewayUri, android.telecom.PhoneAccountHandle targetPhoneAccount, boolean confirmFirst)
+  class CallScreeningService
+    onBind(android.content.Intent intent)
+    onScreenCall(android.telecom.Call.Details callDetails)
+    onUnbind(android.content.Intent intent)
+    respondToCall(android.telecom.Call.Details callDetails, android.telecom.CallScreeningService.CallResponse response)
+  class CallScreeningService.CallResponse
+    equals(java.lang.Object o)
+  class CallScreeningService.CallResponse.Builder
+    setCallComposerAttachmentsToShow(int callComposerAttachmentsToShow)
+    setDisallowCall(boolean shouldDisallowCall)
+    setRejectCall(boolean shouldRejectCall)
+    setSilenceCall(boolean shouldSilenceCall)
+    setSkipCallLog(boolean shouldSkipCallLog)
+    setSkipNotification(boolean shouldSkipNotification)
+  class CallStreamingService
+    onBind(android.content.Intent intent)
+    onCallStreamingStarted(android.telecom.StreamingCall call)
+    onCallStreamingStateChanged(int state)
+  class Conference
+    addConnection(android.telecom.Connection connection)
+    #ctor(android.telecom.PhoneAccountHandle phoneAccount)
+    createFailedConference(android.telecom.DisconnectCause disconnectCause, android.telecom.PhoneAccountHandle phoneAccount)
+    onAddConferenceParticipants(java.util.List<android.net.Uri> participants)
+    onAnswer(int videoState)
+    onAvailableCallEndpointsChanged(java.util.List<android.telecom.CallEndpoint> availableEndpoints)
+    onCallAudioStateChanged(android.telecom.CallAudioState state)
+    onCallEndpointChanged(android.telecom.CallEndpoint callEndpoint)
+    onConnectionAdded(android.telecom.Connection connection)
+    onExtrasChanged(android.os.Bundle extras)
+    onMerge(android.telecom.Connection connection)
+    onMuteStateChanged(boolean isMuted)
+    onPlayDtmfTone(char c)
+    onSeparate(android.telecom.Connection connection)
+    putExtras(android.os.Bundle extras)
+    removeConnection(android.telecom.Connection connection)
+    removeExtras(java.lang.String... keys)
+    removeExtras(java.util.List<java.lang.String> keys)
+    sendConferenceEvent(java.lang.String event, android.os.Bundle extras)
+    setConferenceableConnections(java.util.List<android.telecom.Connection> conferenceableConnections)
+    setConnectionCapabilities(int connectionCapabilities)
+    setConnectionProperties(int connectionProperties)
+    setConnectionStartElapsedRealTime(long connectionStartElapsedRealTime)
+    setConnectionStartElapsedRealtimeMillis(long connectionStartElapsedRealTime)
+    setConnectionTime(long connectionTimeMillis)
+    setDisconnected(android.telecom.DisconnectCause disconnectCause)
+    setExtras(android.os.Bundle extras)
+    setRingbackRequested(boolean ringback)
+    setStatusHints(android.telecom.StatusHints statusHints)
+    setVideoProvider(android.telecom.Connection c, android.telecom.Connection.VideoProvider videoProvider)
+    setVideoState(android.telecom.Connection c, int videoState)
+  class Connection
+    capabilitiesToString(int capabilities)
+    createFailedConnection(android.telecom.DisconnectCause disconnectCause)
+    handleRttUpgradeResponse(android.telecom.Connection.RttTextStream rttTextStream)
+    onAddConferenceParticipants(java.util.List<android.net.Uri> participants)
+    onAnswer(int videoState)
+    onAvailableCallEndpointsChanged(java.util.List<android.telecom.CallEndpoint> availableEndpoints)
+    onCallAudioStateChanged(android.telecom.CallAudioState state)
+    onCallEndpointChanged(android.telecom.CallEndpoint callEndpoint)
+    onCallEvent(java.lang.String event, android.os.Bundle extras)
+    onDeflect(android.net.Uri address)
+    onExtrasChanged(android.os.Bundle extras)
+    onMuteStateChanged(boolean isMuted)
+    onPlayDtmfTone(char c)
+    onPostDialContinue(boolean proceed)
+    onReject(int rejectReason)
+    onReject(java.lang.String replyMessage)
+    onStartRtt(android.telecom.Connection.RttTextStream rttTextStream)
+    onStateChanged(int state)
+    onTrackedByNonUiService(boolean isTracked)
+    onUsingAlternativeUi(boolean isUsingAlternativeUi)
+    propertiesToString(int properties)
+    putExtras(android.os.Bundle extras)
+    queryLocationForEmergency(long timeoutMillis, java.lang.String provider, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.location.Location,android.telecom.QueryLocationException> callback)
+    removeExtras(java.lang.String... keys)
+    removeExtras(java.util.List<java.lang.String> keys)
+    requestBluetoothAudio(android.bluetooth.BluetoothDevice bluetoothDevice)
+    requestCallEndpointChange(android.telecom.CallEndpoint endpoint, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallEndpointException> callback)
+    sendConnectionEvent(java.lang.String event, android.os.Bundle extras)
+    sendRttInitiationFailure(int reason)
+    setAddress(android.net.Uri address, int presentation)
+    setAudioModeIsVoip(boolean isVoip)
+    setAudioRoute(int route)
+    setCallerDisplayName(java.lang.String callerDisplayName, int presentation)
+    setCallerNumberVerificationStatus(int callerNumberVerificationStatus)
+    setConferenceableConnections(java.util.List<android.telecom.Connection> conferenceableConnections)
+    setConferenceables(java.util.List<android.telecom.Conferenceable> conferenceables)
+    setConnectionCapabilities(int connectionCapabilities)
+    setConnectionProperties(int connectionProperties)
+    setDisconnected(android.telecom.DisconnectCause disconnectCause)
+    setExtras(android.os.Bundle extras)
+    setNextPostDialChar(char nextChar)
+    setPostDialWait(java.lang.String remaining)
+    setRingbackRequested(boolean ringback)
+    setStatusHints(android.telecom.StatusHints statusHints)
+    setVideoProvider(android.telecom.Connection.VideoProvider videoProvider)
+    setVideoState(int videoState)
+    stateToString(int state)
+  class Connection.RttTextStream
+    write(java.lang.String input)
+  class Connection.VideoProvider
+    changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities cameraCapabilities)
+    changePeerDimensions(int width, int height)
+    changeVideoQuality(int videoQuality)
+    handleCallSessionEvent(int event)
+    onSendSessionModifyRequest(android.telecom.VideoProfile fromProfile, android.telecom.VideoProfile toProfile)
+    onSendSessionModifyResponse(android.telecom.VideoProfile responseProfile)
+    onSetCamera(java.lang.String cameraId)
+    onSetDeviceOrientation(int rotation)
+    onSetDisplaySurface(android.view.Surface surface)
+    onSetPauseImage(android.net.Uri uri)
+    onSetPreviewSurface(android.view.Surface surface)
+    onSetZoom(float value)
+    receiveSessionModifyRequest(android.telecom.VideoProfile videoProfile)
+    receiveSessionModifyResponse(int status, android.telecom.VideoProfile requestedProfile, android.telecom.VideoProfile responseProfile)
+    setCallDataUsage(long dataUsage)
+  class ConnectionRequest
+    #ctor(android.telecom.PhoneAccountHandle accountHandle, android.net.Uri handle, android.os.Bundle extras)
+    #ctor(android.telecom.PhoneAccountHandle accountHandle, android.net.Uri handle, android.os.Bundle extras, int videoState)
+    writeToParcel(android.os.Parcel destination, int flags)
+  class ConnectionService
+    addConference(android.telecom.Conference conference)
+    addExistingConnection(android.telecom.PhoneAccountHandle phoneAccountHandle, android.telecom.Connection connection)
+    conferenceRemoteConnections(android.telecom.RemoteConnection remoteConnection1, android.telecom.RemoteConnection remoteConnection2)
+    createRemoteIncomingConference(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    createRemoteIncomingConnection(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    createRemoteOutgoingConference(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    createRemoteOutgoingConnection(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onBind(android.content.Intent intent)
+    onConference(android.telecom.Connection connection1, android.telecom.Connection connection2)
+    onCreateIncomingConference(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateIncomingConferenceFailed(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateIncomingConnection(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateIncomingConnectionFailed(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateIncomingHandoverConnection(android.telecom.PhoneAccountHandle fromPhoneAccountHandle, android.telecom.ConnectionRequest request)
+    onCreateOutgoingConference(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateOutgoingConferenceFailed(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateOutgoingConnection(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateOutgoingConnectionFailed(android.telecom.PhoneAccountHandle connectionManagerPhoneAccount, android.telecom.ConnectionRequest request)
+    onCreateOutgoingHandoverConnection(android.telecom.PhoneAccountHandle fromPhoneAccountHandle, android.telecom.ConnectionRequest request)
+    onHandoverFailed(android.telecom.ConnectionRequest request, int error)
+    onRemoteConferenceAdded(android.telecom.RemoteConference conference)
+    onRemoteExistingConnectionAdded(android.telecom.RemoteConnection connection)
+    onUnbind(android.content.Intent intent)
+  class DisconnectCause
+    #ctor(int code)
+    #ctor(int code, java.lang.CharSequence label, java.lang.CharSequence description, java.lang.String reason)
+    #ctor(int code, java.lang.CharSequence label, java.lang.CharSequence description, java.lang.String reason, int toneToPlay)
+    #ctor(int code, java.lang.String reason)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel destination, int flags)
+  class GatewayInfo
+    #ctor(java.lang.String packageName, android.net.Uri gatewayUri, android.net.Uri originalAddress)
+    writeToParcel(android.os.Parcel destination, int flags)
+  class InCallService
+    onAvailableCallEndpointsChanged(java.util.List<android.telecom.CallEndpoint> availableEndpoints)
+    onBind(android.content.Intent intent)
+    onBringToForeground(boolean showDialpad)
+    onCallAdded(android.telecom.Call call)
+    onCallAudioStateChanged(android.telecom.CallAudioState audioState)
+    onCallEndpointChanged(android.telecom.CallEndpoint callEndpoint)
+    onCallRemoved(android.telecom.Call call)
+    onCanAddCallChanged(boolean canAddCall)
+    onConnectionEvent(android.telecom.Call call, java.lang.String event, android.os.Bundle extras)
+    onMuteStateChanged(boolean isMuted)
+    onUnbind(android.content.Intent intent)
+    requestBluetoothAudio(android.bluetooth.BluetoothDevice bluetoothDevice)
+    requestCallEndpointChange(android.telecom.CallEndpoint endpoint, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<java.lang.Void,android.telecom.CallEndpointException> callback)
+    setAudioRoute(int route)
+    setMuted(boolean state)
+  class InCallService.VideoCall
+    registerCallback(android.telecom.InCallService.VideoCall.Callback callback)
+    registerCallback(android.telecom.InCallService.VideoCall.Callback callback, android.os.Handler handler)
+    sendSessionModifyRequest(android.telecom.VideoProfile requestProfile)
+    sendSessionModifyResponse(android.telecom.VideoProfile responseProfile)
+    setCamera(java.lang.String cameraId)
+    setDeviceOrientation(int rotation)
+    setDisplaySurface(android.view.Surface surface)
+    setPauseImage(android.net.Uri uri)
+    setPreviewSurface(android.view.Surface surface)
+    setZoom(float value)
+    unregisterCallback(android.telecom.InCallService.VideoCall.Callback callback)
+  class InCallService.VideoCall.Callback
+    onCallDataUsageChanged(long dataUsage)
+    onCallSessionEvent(int event)
+    onCameraCapabilitiesChanged(android.telecom.VideoProfile.CameraCapabilities cameraCapabilities)
+    onPeerDimensionsChanged(int width, int height)
+    onSessionModifyRequestReceived(android.telecom.VideoProfile videoProfile)
+    onSessionModifyResponseReceived(int status, android.telecom.VideoProfile requestedProfile, android.telecom.VideoProfile responseProfile)
+    onVideoQualityChanged(int videoQuality)
+  class PhoneAccount
+    builder(android.telecom.PhoneAccountHandle accountHandle, java.lang.CharSequence label)
+    equals(java.lang.Object o)
+    hasCapabilities(int capability)
+    supportsUriScheme(java.lang.String uriScheme)
+    writeToParcel(android.os.Parcel out, int flags)
+  class PhoneAccount.Builder
+    addSupportedUriScheme(java.lang.String uriScheme)
+    #ctor(android.telecom.PhoneAccount phoneAccount)
+    #ctor(android.telecom.PhoneAccountHandle accountHandle, java.lang.CharSequence label)
+    setAddress(android.net.Uri value)
+    setCapabilities(int value)
+    setExtras(android.os.Bundle extras)
+    setHighlightColor(int value)
+    setIcon(android.graphics.drawable.Icon icon)
+    setShortDescription(java.lang.CharSequence value)
+    setSubscriptionAddress(android.net.Uri value)
+    setSupportedUriSchemes(java.util.List<java.lang.String> uriSchemes)
+  class PhoneAccountHandle
+    equals(java.lang.Object other)
+    #ctor(android.content.ComponentName componentName, java.lang.String id)
+    #ctor(android.content.ComponentName componentName, java.lang.String id, android.os.UserHandle userHandle)
+    writeToParcel(android.os.Parcel out, int flags)
+  class PhoneAccountSuggestion
+    equals(java.lang.Object o)
+    #ctor(android.telecom.PhoneAccountHandle handle, int reason, boolean shouldAutoSelect)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class QueryLocationException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, int code)
+    #ctor(java.lang.String message, int code, java.lang.Throwable cause)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RemoteConference
+    playDtmfTone(char digit)
+    registerCallback(android.telecom.RemoteConference.Callback callback)
+    registerCallback(android.telecom.RemoteConference.Callback callback, android.os.Handler handler)
+    separate(android.telecom.RemoteConnection connection)
+    setCallAudioState(android.telecom.CallAudioState state)
+    unregisterCallback(android.telecom.RemoteConference.Callback callback)
+  class RemoteConference.Callback
+    onConferenceableConnectionsChanged(android.telecom.RemoteConference conference, java.util.List<android.telecom.RemoteConnection> conferenceableConnections)
+    onConnectionAdded(android.telecom.RemoteConference conference, android.telecom.RemoteConnection connection)
+    onConnectionCapabilitiesChanged(android.telecom.RemoteConference conference, int connectionCapabilities)
+    onConnectionPropertiesChanged(android.telecom.RemoteConference conference, int connectionProperties)
+    onConnectionRemoved(android.telecom.RemoteConference conference, android.telecom.RemoteConnection connection)
+    onDestroyed(android.telecom.RemoteConference conference)
+    onDisconnected(android.telecom.RemoteConference conference, android.telecom.DisconnectCause disconnectCause)
+    onExtrasChanged(android.telecom.RemoteConference conference, android.os.Bundle extras)
+    onStateChanged(android.telecom.RemoteConference conference, int oldState, int newState)
+  class RemoteConnection
+    addConferenceParticipants(java.util.List<android.net.Uri> participants)
+    playDtmfTone(char digit)
+    postDialContinue(boolean proceed)
+    registerCallback(android.telecom.RemoteConnection.Callback callback)
+    registerCallback(android.telecom.RemoteConnection.Callback callback, android.os.Handler handler)
+    setCallAudioState(android.telecom.CallAudioState state)
+    unregisterCallback(android.telecom.RemoteConnection.Callback callback)
+  class RemoteConnection.Callback
+    onAddressChanged(android.telecom.RemoteConnection connection, android.net.Uri address, int presentation)
+    onCallerDisplayNameChanged(android.telecom.RemoteConnection connection, java.lang.String callerDisplayName, int presentation)
+    onConferenceableConnectionsChanged(android.telecom.RemoteConnection connection, java.util.List<android.telecom.RemoteConnection> conferenceableConnections)
+    onConferenceChanged(android.telecom.RemoteConnection connection, android.telecom.RemoteConference conference)
+    onConnectionCapabilitiesChanged(android.telecom.RemoteConnection connection, int connectionCapabilities)
+    onConnectionEvent(android.telecom.RemoteConnection connection, java.lang.String event, android.os.Bundle extras)
+    onConnectionPropertiesChanged(android.telecom.RemoteConnection connection, int connectionProperties)
+    onDestroyed(android.telecom.RemoteConnection connection)
+    onDisconnected(android.telecom.RemoteConnection connection, android.telecom.DisconnectCause disconnectCause)
+    onExtrasChanged(android.telecom.RemoteConnection connection, android.os.Bundle extras)
+    onPostDialChar(android.telecom.RemoteConnection connection, char nextChar)
+    onPostDialWait(android.telecom.RemoteConnection connection, java.lang.String remainingPostDialSequence)
+    onRingbackRequested(android.telecom.RemoteConnection connection, boolean ringback)
+    onStateChanged(android.telecom.RemoteConnection connection, int state)
+    onStatusHintsChanged(android.telecom.RemoteConnection connection, android.telecom.StatusHints statusHints)
+    onVideoProviderChanged(android.telecom.RemoteConnection connection, android.telecom.RemoteConnection.VideoProvider videoProvider)
+    onVideoStateChanged(android.telecom.RemoteConnection connection, int videoState)
+    onVoipAudioChanged(android.telecom.RemoteConnection connection, boolean isVoip)
+  class RemoteConnection.VideoProvider
+    registerCallback(android.telecom.RemoteConnection.VideoProvider.Callback l)
+    sendSessionModifyRequest(android.telecom.VideoProfile fromProfile, android.telecom.VideoProfile toProfile)
+    sendSessionModifyResponse(android.telecom.VideoProfile responseProfile)
+    setCamera(java.lang.String cameraId)
+    setDeviceOrientation(int rotation)
+    setDisplaySurface(android.view.Surface surface)
+    setPauseImage(android.net.Uri uri)
+    setPreviewSurface(android.view.Surface surface)
+    setZoom(float value)
+    unregisterCallback(android.telecom.RemoteConnection.VideoProvider.Callback l)
+  class RemoteConnection.VideoProvider.Callback
+    onCallDataUsageChanged(android.telecom.RemoteConnection.VideoProvider videoProvider, long dataUsage)
+    onCallSessionEvent(android.telecom.RemoteConnection.VideoProvider videoProvider, int event)
+    onCameraCapabilitiesChanged(android.telecom.RemoteConnection.VideoProvider videoProvider, android.telecom.VideoProfile.CameraCapabilities cameraCapabilities)
+    onPeerDimensionsChanged(android.telecom.RemoteConnection.VideoProvider videoProvider, int width, int height)
+    onSessionModifyRequestReceived(android.telecom.RemoteConnection.VideoProvider videoProvider, android.telecom.VideoProfile videoProfile)
+    onSessionModifyResponseReceived(android.telecom.RemoteConnection.VideoProvider videoProvider, int status, android.telecom.VideoProfile requestedProfile, android.telecom.VideoProfile responseProfile)
+    onVideoQualityChanged(android.telecom.RemoteConnection.VideoProvider videoProvider, int videoQuality)
+  class StatusHints
+    equals(java.lang.Object other)
+    #ctor(java.lang.CharSequence label, android.graphics.drawable.Icon icon, android.os.Bundle extras)
+    writeToParcel(android.os.Parcel out, int flags)
+  class StreamingCall
+    setStreamingState(int state)
+    #ctor(android.content.ComponentName componentName, java.lang.String displayName, android.net.Uri address, android.os.Bundle extras)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TelecomManager
+    acceptHandover(android.net.Uri srcAddr, int videoState, android.telecom.PhoneAccountHandle destAcct)
+    acceptRingingCall(int videoState)
+    addCall(android.telecom.CallAttributes callAttributes, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.telecom.CallControl,android.telecom.CallException> pendingControl, android.telecom.CallEventCallback callEventCallback)
+    addNewIncomingCall(android.telecom.PhoneAccountHandle phoneAccount, android.os.Bundle extras)
+    addNewIncomingConference(android.telecom.PhoneAccountHandle phoneAccount, android.os.Bundle extras)
+    getAdnUriForPhoneAccount(android.telecom.PhoneAccountHandle accountHandle)
+    getDefaultOutgoingPhoneAccount(java.lang.String uriScheme)
+    getLine1Number(android.telecom.PhoneAccountHandle accountHandle)
+    getPhoneAccount(android.telecom.PhoneAccountHandle account)
+    getSimCallManagerForSubscription(int subscriptionId)
+    getVoiceMailNumber(android.telecom.PhoneAccountHandle accountHandle)
+    handleMmi(java.lang.String dialString)
+    handleMmi(java.lang.String dialString, android.telecom.PhoneAccountHandle accountHandle)
+    isIncomingCallPermitted(android.telecom.PhoneAccountHandle phoneAccountHandle)
+    isOutgoingCallPermitted(android.telecom.PhoneAccountHandle phoneAccountHandle)
+    isVoiceMailNumber(android.telecom.PhoneAccountHandle accountHandle, java.lang.String number)
+    placeCall(android.net.Uri address, android.os.Bundle extras)
+    registerPhoneAccount(android.telecom.PhoneAccount account)
+    showInCallScreen(boolean showDialpad)
+    startConference(java.util.List<android.net.Uri> participants, android.os.Bundle extras)
+    unregisterPhoneAccount(android.telecom.PhoneAccountHandle accountHandle)
+  class VideoProfile
+    isAudioOnly(int videoState)
+    isBidirectional(int videoState)
+    isPaused(int videoState)
+    isReceptionEnabled(int videoState)
+    isTransmissionEnabled(int videoState)
+    isVideo(int videoState)
+    #ctor(int videoState)
+    #ctor(int videoState, int quality)
+    videoStateToString(int videoState)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VideoProfile.CameraCapabilities
+    #ctor(int width, int height)
+    #ctor(int width, int height, boolean zoomSupported, float maxZoom)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.telephony
+;---------------------------------------
+  class AvailableNetworkInfo
+    #ctor(int subId, int priority, java.util.List<java.lang.String> mccMncs, java.util.List<java.lang.Integer> bands)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AvailableNetworkInfo.Builder
+    #ctor(int subId)
+    setMccMncs(java.util.List<java.lang.String> mccMncs)
+    setPriority(int priority)
+    setRadioAccessSpecifiers(java.util.List<android.telephony.RadioAccessSpecifier> radioAccessSpecifiers)
+  class BarringInfo
+    equals(java.lang.Object rhs)
+    getBarringServiceInfo(int service)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BarringInfo.BarringServiceInfo
+    equals(java.lang.Object rhs)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CarrierConfigManager
+    getConfig(java.lang.String... keys)
+    getConfigByComponentForSubId(java.lang.String prefix, int subId)
+    getConfigForSubId(int subId)
+    getConfigForSubId(int subId, java.lang.String... keys)
+    isConfigForIdentifiedCarrier(android.os.PersistableBundle bundle)
+    notifyConfigChangedForSubId(int subId)
+    registerCarrierConfigChangeListener(java.util.concurrent.Executor executor, android.telephony.CarrierConfigManager.CarrierConfigChangeListener listener)
+    unregisterCarrierConfigChangeListener(android.telephony.CarrierConfigManager.CarrierConfigChangeListener listener)
+  interface CarrierConfigManager.CarrierConfigChangeListener
+    onCarrierConfigChanged(int logicalSlotIndex, int subscriptionId, int carrierId, int specificCarrierId)
+  class CellIdentity
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int type)
+  class CellIdentityCdma
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellIdentityGsm
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellIdentityLte
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellIdentityNr
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int type)
+  class CellIdentityTdscdma
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellIdentityWcdma
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfoCdma
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfoGsm
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfoLte
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfoNr
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfoTdscdma
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellInfoWcdma
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellSignalStrength
+    equals(java.lang.Object o)
+  class CellSignalStrengthCdma
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellSignalStrengthGsm
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellSignalStrengthLte
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellSignalStrengthNr
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellSignalStrengthTdscdma
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CellSignalStrengthWcdma
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ClosedSubscriberGroupInfo
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int type)
+  class IccOpenLogicalChannelResponse
+    writeToParcel(android.os.Parcel out, int flags)
+  class MbmsDownloadSession
+    addProgressListener(android.telephony.mbms.DownloadRequest request, java.util.concurrent.Executor executor, android.telephony.mbms.DownloadProgressListener listener)
+    addServiceAnnouncement(byte[] contents)
+    addStatusListener(android.telephony.mbms.DownloadRequest request, java.util.concurrent.Executor executor, android.telephony.mbms.DownloadStatusListener listener)
+    cancelDownload(android.telephony.mbms.DownloadRequest downloadRequest)
+    create(android.content.Context context, java.util.concurrent.Executor executor, android.telephony.mbms.MbmsDownloadSessionCallback callback)
+    create(android.content.Context context, java.util.concurrent.Executor executor, int subscriptionId, android.telephony.mbms.MbmsDownloadSessionCallback callback)
+    download(android.telephony.mbms.DownloadRequest request)
+    removeProgressListener(android.telephony.mbms.DownloadRequest request, android.telephony.mbms.DownloadProgressListener listener)
+    removeStatusListener(android.telephony.mbms.DownloadRequest request, android.telephony.mbms.DownloadStatusListener listener)
+    requestDownloadState(android.telephony.mbms.DownloadRequest downloadRequest, android.telephony.mbms.FileInfo fileInfo)
+    requestUpdateFileServices(java.util.List<java.lang.String> classList)
+    resetDownloadKnowledge(android.telephony.mbms.DownloadRequest downloadRequest)
+    setTempFileRootDirectory(java.io.File tempFileRootDirectory)
+  class MbmsGroupCallSession
+    create(android.content.Context context, int subscriptionId, java.util.concurrent.Executor executor, android.telephony.mbms.MbmsGroupCallSessionCallback callback)
+    create(android.content.Context context, java.util.concurrent.Executor executor, android.telephony.mbms.MbmsGroupCallSessionCallback callback)
+    startGroupCall(long tmgi, java.util.List<java.lang.Integer> saiList, java.util.List<java.lang.Integer> frequencyList, java.util.concurrent.Executor executor, android.telephony.mbms.GroupCallCallback callback)
+  class MbmsStreamingSession
+    create(android.content.Context context, java.util.concurrent.Executor executor, android.telephony.mbms.MbmsStreamingSessionCallback callback)
+    create(android.content.Context context, java.util.concurrent.Executor executor, int subscriptionId, android.telephony.mbms.MbmsStreamingSessionCallback callback)
+    requestUpdateStreamingServices(java.util.List<java.lang.String> serviceClassList)
+    startStreaming(android.telephony.mbms.StreamingServiceInfo serviceInfo, java.util.concurrent.Executor executor, android.telephony.mbms.StreamingServiceCallback callback)
+  class NeighboringCellInfo
+    #ctor(android.os.Parcel in)
+    #ctor(int rssi, int cid)
+    #ctor(int rssi, java.lang.String location, int radioType)
+    setCid(int cid)
+    setRssi(int rssi)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkRegistrationInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkScanRequest
+    equals(java.lang.Object o)
+    #ctor(int scanType, android.telephony.RadioAccessSpecifier[] specifiers, int searchPeriodicity, int maxSearchTime, boolean incrementalResults, int incrementalResultsPeriodicity, java.util.ArrayList<java.lang.String> mccMncs)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PhoneNumberFormattingTextWatcher
+    afterTextChanged(android.text.Editable s)
+    beforeTextChanged(java.lang.CharSequence s, int start, int count, int after)
+    onTextChanged(java.lang.CharSequence s, int start, int before, int count)
+    #ctor(java.lang.String countryCode)
+  class PhoneNumberUtils
+    addTtsSpan(android.text.Spannable s, int start, int endExclusive)
+    areSamePhoneNumber(java.lang.String number1, java.lang.String number2, java.lang.String defaultCountryIso)
+    calledPartyBCDFragmentToString(byte[] bytes, int offset, int length)
+    calledPartyBCDFragmentToString(byte[] bytes, int offset, int length, int bcdExtType)
+    calledPartyBCDToString(byte[] bytes, int offset, int length)
+    calledPartyBCDToString(byte[] bytes, int offset, int length, int bcdExtType)
+    compare(android.content.Context context, java.lang.String a, java.lang.String b)
+    compare(java.lang.String a, java.lang.String b)
+    convertKeypadLettersToDigits(java.lang.String input)
+    createTtsSpan(java.lang.String phoneNumberString)
+    createTtsSpannable(java.lang.CharSequence phoneNumber)
+    extractNetworkPortion(java.lang.String phoneNumber)
+    extractPostDialPortion(java.lang.String phoneNumber)
+    formatJapaneseNumber(android.text.Editable text)
+    formatNanpNumber(android.text.Editable text)
+    formatNumber(android.text.Editable text, int defaultFormattingType)
+    formatNumber(java.lang.String source)
+    formatNumber(java.lang.String phoneNumber, java.lang.String defaultCountryIso)
+    formatNumber(java.lang.String phoneNumber, java.lang.String phoneNumberE164, java.lang.String defaultCountryIso)
+    formatNumberToE164(java.lang.String phoneNumber, java.lang.String defaultCountryIso)
+    formatNumberToRFC3966(java.lang.String phoneNumber, java.lang.String defaultCountryIso)
+    getFormatTypeForLocale(java.util.Locale locale)
+    getNumberFromIntent(android.content.Intent intent, android.content.Context context)
+    getStrippedReversed(java.lang.String phoneNumber)
+    is12Key(char c)
+    isDialable(char c)
+    isEmergencyNumber(java.lang.String number)
+    isGlobalPhoneNumber(java.lang.String phoneNumber)
+    isISODigit(char c)
+    isLocalEmergencyNumber(android.content.Context context, java.lang.String number)
+    isNonSeparator(char c)
+    isReallyDialable(char c)
+    isStartsPostDial(char c)
+    isVoiceMailNumber(java.lang.String number)
+    isWellFormedSmsAddress(java.lang.String address)
+    networkPortionToCalledPartyBCD(java.lang.String s)
+    networkPortionToCalledPartyBCDWithLength(java.lang.String s)
+    normalizeNumber(java.lang.String phoneNumber)
+    numberToCalledPartyBCD(java.lang.String number)
+    numberToCalledPartyBCD(java.lang.String number, int bcdExtType)
+    replaceUnicodeDigits(java.lang.String number)
+    stringFromStringAndTOA(java.lang.String s, int TOA)
+    stripSeparators(java.lang.String phoneNumber)
+    toaFromString(java.lang.String s)
+    toCallerIDMinMatch(java.lang.String phoneNumber)
+  class PhoneStateListener
+    onActiveDataSubscriptionIdChanged(int subId)
+    onBarringInfoChanged(android.telephony.BarringInfo barringInfo)
+    onCallDisconnectCauseChanged(int disconnectCause, int preciseDisconnectCause)
+    onCallForwardingIndicatorChanged(boolean cfi)
+    onCallStateChanged(int state, java.lang.String phoneNumber)
+    onCellInfoChanged(java.util.List<android.telephony.CellInfo> cellInfo)
+    onCellLocationChanged(android.telephony.CellLocation location)
+    onDataActivity(int direction)
+    onDataConnectionStateChanged(int state)
+    onDataConnectionStateChanged(int state, int networkType)
+    onDisplayInfoChanged(android.telephony.TelephonyDisplayInfo telephonyDisplayInfo)
+    onEmergencyNumberListChanged(java.util.Map<java.lang.Integer,java.util.List<android.telephony.emergency.EmergencyNumber>> emergencyNumberList)
+    onImsCallDisconnectCauseChanged(android.telephony.ims.ImsReasonInfo imsReasonInfo)
+    onMessageWaitingIndicatorChanged(boolean mwi)
+    onPreciseDataConnectionStateChanged(android.telephony.PreciseDataConnectionState dataConnectionState)
+    onRegistrationFailed(android.telephony.CellIdentity cellIdentity, java.lang.String chosenPlmn, int domain, int causeCode, int additionalCauseCode)
+    onServiceStateChanged(android.telephony.ServiceState serviceState)
+    onSignalStrengthChanged(int asu)
+    onSignalStrengthsChanged(android.telephony.SignalStrength signalStrength)
+    onUserMobileDataStateChanged(boolean enabled)
+    #ctor(java.util.concurrent.Executor executor)
+  class PhysicalChannelConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class PreciseDataConnectionState
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class RadioAccessSpecifier
+    equals(java.lang.Object o)
+    #ctor(int ran, int[] bands, int[] channels)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ServiceState
+    copyFrom(android.telephony.ServiceState s)
+    equals(java.lang.Object o)
+    #ctor(android.os.Parcel in)
+    #ctor(android.telephony.ServiceState s)
+    setIsManualSelection(boolean isManual)
+    setOperatorName(java.lang.String longName, java.lang.String shortName, java.lang.String numeric)
+    setRoaming(boolean roaming)
+    setState(int state)
+    writeToParcel(android.os.Parcel out, int flags)
+  class SignalStrength
+    equals(java.lang.Object o)
+    <T> getCellSignalStrengths(java.lang.Class<T> clazz)
+    #ctor(android.telephony.SignalStrength s)
+    writeToParcel(android.os.Parcel out, int flags)
+  class SignalStrengthUpdateRequest
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SignalStrengthUpdateRequest.Builder
+    setReportingRequestedWhileIdle(boolean isReportingRequestedWhileIdle)
+    setSignalThresholdInfos(java.util.Collection<android.telephony.SignalThresholdInfo> signalThresholdInfos)
+  class SignalThresholdInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class SignalThresholdInfo.Builder
+    setHysteresisDb(int hysteresisDb)
+    setRadioAccessNetworkType(int ran)
+    setSignalMeasurementType(int signalMeasurementType)
+    setThresholds(int[] thresholds)
+  class SmsManager
+    createAppSpecificSmsToken(android.app.PendingIntent intent)
+    createAppSpecificSmsTokenWithPackageInfo(java.lang.String prefixes, android.app.PendingIntent intent)
+    createForSubscriptionId(int subId)
+    divideMessage(java.lang.String text)
+    downloadMultimediaMessage(android.content.Context context, java.lang.String locationUrl, android.net.Uri contentUri, android.os.Bundle configOverrides, android.app.PendingIntent downloadedIntent)
+    downloadMultimediaMessage(android.content.Context context, java.lang.String locationUrl, android.net.Uri contentUri, android.os.Bundle configOverrides, android.app.PendingIntent downloadedIntent, long messageId)
+    getSmsManagerForSubscriptionId(int subId)
+    getSmsMessagesForFinancialApp(android.os.Bundle params, java.util.concurrent.Executor executor, android.telephony.SmsManager.FinancialSmsCallback callback)
+    injectSmsPdu(byte[] pdu, java.lang.String format, android.app.PendingIntent receivedIntent)
+    sendDataMessage(java.lang.String destinationAddress, java.lang.String scAddress, short destinationPort, byte[] data, android.app.PendingIntent sentIntent, android.app.PendingIntent deliveryIntent)
+    sendMultimediaMessage(android.content.Context context, android.net.Uri contentUri, java.lang.String locationUrl, android.os.Bundle configOverrides, android.app.PendingIntent sentIntent)
+    sendMultimediaMessage(android.content.Context context, android.net.Uri contentUri, java.lang.String locationUrl, android.os.Bundle configOverrides, android.app.PendingIntent sentIntent, long messageId)
+    sendMultipartTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.util.ArrayList<java.lang.String> parts, java.util.ArrayList<android.app.PendingIntent> sentIntents, java.util.ArrayList<android.app.PendingIntent> deliveryIntents)
+    sendMultipartTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.util.List<java.lang.String> parts, java.util.List<android.app.PendingIntent> sentIntents, java.util.List<android.app.PendingIntent> deliveryIntents, java.lang.String packageName, java.lang.String attributionTag)
+    sendMultipartTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.util.List<java.lang.String> parts, java.util.List<android.app.PendingIntent> sentIntents, java.util.List<android.app.PendingIntent> deliveryIntents, long messageId)
+    sendTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.lang.String text, android.app.PendingIntent sentIntent, android.app.PendingIntent deliveryIntent)
+    sendTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.lang.String text, android.app.PendingIntent sentIntent, android.app.PendingIntent deliveryIntent, long messageId)
+    sendTextMessageWithoutPersisting(java.lang.String destinationAddress, java.lang.String scAddress, java.lang.String text, android.app.PendingIntent sentIntent, android.app.PendingIntent deliveryIntent)
+    setSmscAddress(java.lang.String smsc)
+  class SmsManager.FinancialSmsCallback
+    onFinancialSmsMessages(android.database.CursorWindow msgs)
+  class SmsMessage
+    calculateLength(java.lang.CharSequence msgBody, boolean use7bitOnly)
+    calculateLength(java.lang.String messageBody, boolean use7bitOnly)
+    createFromPdu(byte[] pdu)
+    createFromPdu(byte[] pdu, java.lang.String format)
+    getSubmitPdu(java.lang.String scAddress, java.lang.String destinationAddress, java.lang.String message, boolean statusReportRequested)
+    getSubmitPdu(java.lang.String scAddress, java.lang.String destinationAddress, short destinationPort, byte[] data, boolean statusReportRequested)
+    getTPLayerLengthForPDU(java.lang.String pdu)
+  class SubscriptionInfo
+    createIconBitmap(android.content.Context context)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SubscriptionManager
+    addOnOpportunisticSubscriptionsChangedListener(java.util.concurrent.Executor executor, android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener listener)
+    addOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener listener)
+    addOnSubscriptionsChangedListener(java.util.concurrent.Executor executor, android.telephony.SubscriptionManager.OnSubscriptionsChangedListener listener)
+    addSubscriptionsIntoGroup(java.util.List<java.lang.Integer> subIdList, android.os.ParcelUuid groupUuid)
+    canManageSubscription(android.telephony.SubscriptionInfo info)
+    createSubscriptionGroup(java.util.List<java.lang.Integer> subIdList)
+    from(android.content.Context context)
+    getActiveSubscriptionInfo(int subId)
+    getActiveSubscriptionInfoForSimSlotIndex(int slotIndex)
+    getDeviceToDeviceStatusSharingContacts(int subscriptionId)
+    getDeviceToDeviceStatusSharingPreference(int subscriptionId)
+    getPhoneNumber(int subscriptionId)
+    getPhoneNumber(int subscriptionId, int source)
+    getSlotIndex(int subscriptionId)
+    getSubscriptionId(int slotIndex)
+    getSubscriptionIds(int slotIndex)
+    getSubscriptionPlans(int subId)
+    getSubscriptionsInGroup(android.os.ParcelUuid groupUuid)
+    isActiveSubscriptionId(int subscriptionId)
+    isNetworkRoaming(int subId)
+    isUsableSubscriptionId(int subscriptionId)
+    isValidSubscriptionId(int subscriptionId)
+    removeOnOpportunisticSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener listener)
+    removeOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener listener)
+    removeSubscriptionsFromGroup(java.util.List<java.lang.Integer> subIdList, android.os.ParcelUuid groupUuid)
+    setCarrierPhoneNumber(int subscriptionId, java.lang.String number)
+    setDeviceToDeviceStatusSharingContacts(int subscriptionId, java.util.List<android.net.Uri> contacts)
+    setDeviceToDeviceStatusSharingPreference(int subscriptionId, int sharing)
+    setOpportunistic(boolean opportunistic, int subId)
+    setSubscriptionOverrideCongested(int subId, boolean overrideCongested, int[] networkTypes, long expirationDurationMillis)
+    setSubscriptionOverrideCongested(int subId, boolean overrideCongested, long expirationDurationMillis)
+    setSubscriptionOverrideUnmetered(int subId, boolean overrideUnmetered, int[] networkTypes, long expirationDurationMillis)
+    setSubscriptionOverrideUnmetered(int subId, boolean overrideUnmetered, long expirationDurationMillis)
+    setSubscriptionPlans(int subId, java.util.List<android.telephony.SubscriptionPlan> plans)
+    setSubscriptionPlans(int subId, java.util.List<android.telephony.SubscriptionPlan> plans, long expirationDurationMillis)
+    switchToSubscription(int subId, android.app.PendingIntent callbackIntent)
+  class SubscriptionPlan
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SubscriptionPlan.Builder
+    createNonrecurring(java.time.ZonedDateTime start, java.time.ZonedDateTime end)
+    createRecurring(java.time.ZonedDateTime start, java.time.Period period)
+    setDataLimit(long dataLimitBytes, int dataLimitBehavior)
+    setDataUsage(long dataUsageBytes, long dataUsageTime)
+    setNetworkTypes(int[] networkTypes)
+    setSummary(java.lang.CharSequence summary)
+    setTitle(java.lang.CharSequence title)
+  interface TelephonyCallback.ActiveDataSubscriptionIdListener
+    onActiveDataSubscriptionIdChanged(int subId)
+  interface TelephonyCallback.BarringInfoListener
+    onBarringInfoChanged(android.telephony.BarringInfo barringInfo)
+  interface TelephonyCallback.CallDisconnectCauseListener
+    onCallDisconnectCauseChanged(int disconnectCause, int preciseDisconnectCause)
+  interface TelephonyCallback.CallForwardingIndicatorListener
+    onCallForwardingIndicatorChanged(boolean cfi)
+  interface TelephonyCallback.CallStateListener
+    onCallStateChanged(int state)
+  interface TelephonyCallback.CarrierNetworkListener
+    onCarrierNetworkChange(boolean active)
+  interface TelephonyCallback.CellInfoListener
+    onCellInfoChanged(java.util.List<android.telephony.CellInfo> cellInfo)
+  interface TelephonyCallback.CellLocationListener
+    onCellLocationChanged(android.telephony.CellLocation location)
+  interface TelephonyCallback.DataActivationStateListener
+    onDataActivationStateChanged(int state)
+  interface TelephonyCallback.DataActivityListener
+    onDataActivity(int direction)
+  interface TelephonyCallback.DataConnectionStateListener
+    onDataConnectionStateChanged(int state, int networkType)
+  interface TelephonyCallback.DisplayInfoListener
+    onDisplayInfoChanged(android.telephony.TelephonyDisplayInfo telephonyDisplayInfo)
+  interface TelephonyCallback.EmergencyNumberListListener
+    onEmergencyNumberListChanged(java.util.Map<java.lang.Integer,java.util.List<android.telephony.emergency.EmergencyNumber>> emergencyNumberList)
+  interface TelephonyCallback.ImsCallDisconnectCauseListener
+    onImsCallDisconnectCauseChanged(android.telephony.ims.ImsReasonInfo imsReasonInfo)
+  interface TelephonyCallback.MessageWaitingIndicatorListener
+    onMessageWaitingIndicatorChanged(boolean mwi)
+  interface TelephonyCallback.PhysicalChannelConfigListener
+    onPhysicalChannelConfigChanged(java.util.List<android.telephony.PhysicalChannelConfig> configs)
+  interface TelephonyCallback.PreciseDataConnectionStateListener
+    onPreciseDataConnectionStateChanged(android.telephony.PreciseDataConnectionState dataConnectionState)
+  interface TelephonyCallback.RegistrationFailedListener
+    onRegistrationFailed(android.telephony.CellIdentity cellIdentity, java.lang.String chosenPlmn, int domain, int causeCode, int additionalCauseCode)
+  interface TelephonyCallback.ServiceStateListener
+    onServiceStateChanged(android.telephony.ServiceState serviceState)
+  interface TelephonyCallback.SignalStrengthsListener
+    onSignalStrengthsChanged(android.telephony.SignalStrength signalStrength)
+  interface TelephonyCallback.UserMobileDataStateListener
+    onUserMobileDataStateChanged(boolean enabled)
+  class TelephonyDisplayInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TelephonyManager
+    clearSignalStrengthUpdateRequest(android.telephony.SignalStrengthUpdateRequest request)
+    createForPhoneAccountHandle(android.telecom.PhoneAccountHandle phoneAccountHandle)
+    createForSubscriptionId(int subId)
+    getAllowedNetworkTypesForReason(int reason)
+    getDeviceId(int slotIndex)
+    getEmergencyNumberList(int categories)
+    getIccAuthentication(int appType, int authType, java.lang.String data)
+    getImei(int slotIndex)
+    getManufacturerCode(int slotIndex)
+    getMeid(int slotIndex)
+    getNetworkCountryIso(int slotIndex)
+    getNetworkSlicingConfiguration(java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.telephony.data.NetworkSlicingConfig,android.telephony.TelephonyManager.NetworkSlicingException> callback)
+    getServiceState(int includeLocationData)
+    getSimState(int slotIndex)
+    getSubscriptionId(android.telecom.PhoneAccountHandle phoneAccountHandle)
+    getTypeAllocationCode(int slotIndex)
+    getVoicemailRingtoneUri(android.telecom.PhoneAccountHandle accountHandle)
+    iccCloseLogicalChannel(int channel)
+    iccExchangeSimIO(int fileID, int command, int p1, int p2, int p3, java.lang.String filePath)
+    iccOpenLogicalChannel(java.lang.String AID)
+    iccOpenLogicalChannel(java.lang.String AID, int p2)
+    iccTransmitApduBasicChannel(int cla, int instruction, int p1, int p2, int p3, java.lang.String data)
+    iccTransmitApduLogicalChannel(int channel, int cla, int instruction, int p1, int p2, int p3, java.lang.String data)
+    isDataEnabledForReason(int reason)
+    isEmergencyNumber(java.lang.String number)
+    isModemEnabledForSlot(int slotIndex)
+    isPremiumCapabilityAvailableForPurchase(int capability)
+    isRadioInterfaceCapabilitySupported(java.lang.String capability)
+    isVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle accountHandle)
+    listen(android.telephony.PhoneStateListener listener, int events)
+    purchasePremiumCapability(int capability, java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> callback)
+    registerTelephonyCallback(int includeLocationData, java.util.concurrent.Executor executor, android.telephony.TelephonyCallback callback)
+    registerTelephonyCallback(java.util.concurrent.Executor executor, android.telephony.TelephonyCallback callback)
+    requestCellInfoUpdate(java.util.concurrent.Executor executor, android.telephony.TelephonyManager.CellInfoCallback callback)
+    requestNetworkScan(android.telephony.NetworkScanRequest request, java.util.concurrent.Executor executor, android.telephony.TelephonyScanManager.NetworkScanCallback callback)
+    requestNetworkScan(int includeLocationData, android.telephony.NetworkScanRequest request, java.util.concurrent.Executor executor, android.telephony.TelephonyScanManager.NetworkScanCallback callback)
+    sendDialerSpecialCode(java.lang.String inputCode)
+    sendEnvelopeWithStatus(java.lang.String content)
+    sendUssdRequest(java.lang.String ussdRequest, android.telephony.TelephonyManager.UssdResponseCallback callback, android.os.Handler handler)
+    sendVisualVoicemailSms(java.lang.String number, int port, java.lang.String text, android.app.PendingIntent sentIntent)
+    setAllowedNetworkTypesForReason(int reason, long allowedNetworkTypes)
+    setCallComposerStatus(int status)
+    setDataEnabled(boolean enable)
+    setDataEnabledForReason(int reason, boolean enabled)
+    setForbiddenPlmns(java.util.List<java.lang.String> fplmns)
+    setLine1NumberForDisplay(java.lang.String alphaTag, java.lang.String number)
+    setNetworkSelectionModeManual(java.lang.String operatorNumeric, boolean persistSelection)
+    setNetworkSelectionModeManual(java.lang.String operatorNumeric, boolean persistSelection, int ran)
+    setOperatorBrandOverride(java.lang.String brand)
+    setPreferredOpportunisticDataSubscription(int subId, boolean needValidation, java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> callback)
+    setSignalStrengthUpdateRequest(android.telephony.SignalStrengthUpdateRequest request)
+    setVisualVoicemailSmsFilterSettings(android.telephony.VisualVoicemailSmsFilterSettings settings)
+    setVoiceMailNumber(java.lang.String alphaTag, java.lang.String number)
+    setVoicemailRingtoneUri(android.telecom.PhoneAccountHandle phoneAccountHandle, android.net.Uri uri)
+    setVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle phoneAccountHandle, boolean enabled)
+    switchMultiSimConfig(int numOfSims)
+    unregisterTelephonyCallback(android.telephony.TelephonyCallback callback)
+    updateAvailableNetworks(java.util.List<android.telephony.AvailableNetworkInfo> availableNetworks, java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> callback)
+    uploadCallComposerPicture(java.io.InputStream pictureToUpload, java.lang.String contentType, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.os.ParcelUuid,android.telephony.TelephonyManager.CallComposerException> callback)
+    uploadCallComposerPicture(java.nio.file.Path pictureToUpload, java.lang.String contentType, java.util.concurrent.Executor executor, android.os.OutcomeReceiver<android.os.ParcelUuid,android.telephony.TelephonyManager.CallComposerException> callback)
+  class TelephonyManager.CallComposerException
+    #ctor(int errorCode, java.io.IOException ioException)
+  class TelephonyManager.CellInfoCallback
+    onCellInfo(java.util.List<android.telephony.CellInfo> cellInfo)
+    onError(int errorCode, java.lang.Throwable detail)
+  class TelephonyManager.UssdResponseCallback
+    onReceiveUssdResponse(android.telephony.TelephonyManager telephonyManager, java.lang.String request, java.lang.CharSequence response)
+    onReceiveUssdResponseFailed(android.telephony.TelephonyManager telephonyManager, java.lang.String request, int failureCode)
+  class TelephonyScanManager.NetworkScanCallback
+    onError(int error)
+    onResults(java.util.List<android.telephony.CellInfo> results)
+  class UiccCardInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class UiccPortInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VisualVoicemailService
+    onBind(android.content.Intent intent)
+    onCellServiceConnected(android.telephony.VisualVoicemailService.VisualVoicemailTask task, android.telecom.PhoneAccountHandle phoneAccountHandle)
+    onSimRemoved(android.telephony.VisualVoicemailService.VisualVoicemailTask task, android.telecom.PhoneAccountHandle phoneAccountHandle)
+    onSmsReceived(android.telephony.VisualVoicemailService.VisualVoicemailTask task, android.telephony.VisualVoicemailSms sms)
+    onStopped(android.telephony.VisualVoicemailService.VisualVoicemailTask task)
+  class VisualVoicemailService.VisualVoicemailTask
+    equals(java.lang.Object obj)
+  class VisualVoicemailSms
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VisualVoicemailSmsFilterSettings
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VisualVoicemailSmsFilterSettings.Builder
+    setClientPrefix(java.lang.String clientPrefix)
+    setDestinationPort(int destinationPort)
+    setOriginatingNumbers(java.util.List<java.lang.String> originatingNumbers)
+
+package android.telephony.cdma
+;---------------------------------------
+  class CdmaCellLocation
+    #ctor(android.os.Bundle bundle)
+    convertQuartSecToDecDegrees(int quartSec)
+    equals(java.lang.Object o)
+    fillInNotifierBundle(android.os.Bundle bundleToFill)
+    setCellLocationData(int baseStationId, int baseStationLatitude, int baseStationLongitude)
+    setCellLocationData(int baseStationId, int baseStationLatitude, int baseStationLongitude, int systemId, int networkId)
+
+package android.telephony.data
+;---------------------------------------
+  class ApnSetting
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ApnSetting.Builder
+    setApnName(java.lang.String apnName)
+    setApnTypeBitmask(int apnTypeBitmask)
+    setAuthType(int authType)
+    setCarrierEnabled(boolean carrierEnabled)
+    setCarrierId(int carrierId)
+    setEntryName(java.lang.String entryName)
+    setMmsc(android.net.Uri mmsc)
+    setMmsProxyAddress(java.lang.String mmsProxy)
+    setMmsProxyAddress(java.net.InetAddress mmsProxy)
+    setMmsProxyPort(int mmsPort)
+    setMtuV4(int mtuV4)
+    setMtuV6(int mtuV6)
+    setMvnoType(int mvnoType)
+    setNetworkTypeBitmask(int networkTypeBitmask)
+    setOperatorNumeric(java.lang.String operatorNumeric)
+    setPassword(java.lang.String password)
+    setPersistent(boolean isPersistent)
+    setProfileId(int profileId)
+    setProtocol(int protocol)
+    setProxyAddress(java.lang.String proxy)
+    setProxyAddress(java.net.InetAddress proxy)
+    setProxyPort(int port)
+    setRoamingProtocol(int roamingProtocol)
+    setUser(java.lang.String user)
+  class NetworkSliceInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class NetworkSliceInfo.Builder
+    setMappedHplmnSliceDifferentiator(int mappedHplmnSliceDifferentiator)
+    setMappedHplmnSliceServiceType(int mappedHplmnSliceServiceType)
+    setSliceDifferentiator(int sliceDifferentiator)
+    setSliceServiceType(int mSliceServiceType)
+    setStatus(int status)
+  class NetworkSlicingConfig
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RouteSelectionDescriptor
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TrafficDescriptor
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TrafficDescriptor.Builder
+    setDataNetworkName(java.lang.String dnn)
+    setOsAppId(byte[] osAppId)
+  class UrspRule
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.telephony.emergency
+;---------------------------------------
+  class EmergencyNumber
+    compareTo(android.telephony.emergency.EmergencyNumber emergencyNumber)
+    equals(java.lang.Object o)
+    isFromSources(int sources)
+    isInEmergencyServiceCategories(int categories)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.telephony.euicc
+;---------------------------------------
+  class DownloadableSubscription
+    forActivationCode(java.lang.String encodedActivationCode)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DownloadableSubscription.Builder
+    #ctor(android.telephony.euicc.DownloadableSubscription baseSubscription)
+    #ctor(java.lang.String encodedActivationCode)
+    setConfirmationCode(java.lang.String value)
+    setEncodedActivationCode(java.lang.String value)
+  class EuiccInfo
+    #ctor(java.lang.String osVersion)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class EuiccManager
+    createForCardId(int cardId)
+    deleteSubscription(int subscriptionId, android.app.PendingIntent callbackIntent)
+    downloadSubscription(android.telephony.euicc.DownloadableSubscription subscription, boolean switchAfterDownload, android.app.PendingIntent callbackIntent)
+    isSimPortAvailable(int portIndex)
+    startResolutionActivity(android.app.Activity activity, int requestCode, android.content.Intent resultIntent, android.app.PendingIntent callbackIntent)
+    switchToSubscription(int subscriptionId, android.app.PendingIntent callbackIntent)
+    switchToSubscription(int subscriptionId, int portIndex, android.app.PendingIntent callbackIntent)
+    updateSubscriptionNickname(int subscriptionId, java.lang.String nickname, android.app.PendingIntent callbackIntent)
+
+package android.telephony.gsm
+;---------------------------------------
+  class GsmCellLocation
+    equals(java.lang.Object o)
+    fillInNotifierBundle(android.os.Bundle m)
+    #ctor(android.os.Bundle bundle)
+    setLacAndCid(int lac, int cid)
+  class SmsManager
+    divideMessage(java.lang.String text)
+    sendDataMessage(java.lang.String destinationAddress, java.lang.String scAddress, short destinationPort, byte[] data, android.app.PendingIntent sentIntent, android.app.PendingIntent deliveryIntent)
+    sendMultipartTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.util.ArrayList<java.lang.String> parts, java.util.ArrayList<android.app.PendingIntent> sentIntents, java.util.ArrayList<android.app.PendingIntent> deliveryIntents)
+    sendTextMessage(java.lang.String destinationAddress, java.lang.String scAddress, java.lang.String text, android.app.PendingIntent sentIntent, android.app.PendingIntent deliveryIntent)
+  class SmsMessage
+    calculateLength(java.lang.CharSequence messageBody, boolean use7bitOnly)
+    calculateLength(java.lang.String messageBody, boolean use7bitOnly)
+    createFromPdu(byte[] pdu)
+    getSubmitPdu(java.lang.String scAddress, java.lang.String destinationAddress, java.lang.String message, boolean statusReportRequested)
+    getSubmitPdu(java.lang.String scAddress, java.lang.String destinationAddress, short destinationPort, byte[] data, boolean statusReportRequested)
+    getTPLayerLengthForPDU(java.lang.String pdu)
+
+package android.telephony.ims
+;---------------------------------------
+  class ImsManager
+    getImsMmTelManager(int subscriptionId)
+    getImsRcsManager(int subscriptionId)
+    getProvisioningManager(int subscriptionId)
+  class ImsMmTelManager
+    getRegistrationState(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> stateCallback)
+    getRegistrationTransportType(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> transportTypeCallback)
+    registerImsRegistrationCallback(java.util.concurrent.Executor executor, android.telephony.ims.RegistrationManager.RegistrationCallback c)
+    registerImsStateCallback(java.util.concurrent.Executor executor, android.telephony.ims.ImsStateCallback callback)
+    registerMmTelCapabilityCallback(java.util.concurrent.Executor executor, android.telephony.ims.ImsMmTelManager.CapabilityCallback c)
+    unregisterImsRegistrationCallback(android.telephony.ims.RegistrationManager.RegistrationCallback c)
+    unregisterImsStateCallback(android.telephony.ims.ImsStateCallback callback)
+    unregisterMmTelCapabilityCallback(android.telephony.ims.ImsMmTelManager.CapabilityCallback c)
+  class ImsMmTelManager.CapabilityCallback
+    onCapabilitiesStatusChanged(android.telephony.ims.feature.MmTelFeature.MmTelCapabilities capabilities)
+  class ImsRcsManager
+    getRegistrationState(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> stateCallback)
+    getRegistrationTransportType(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> transportTypeCallback)
+    registerImsRegistrationCallback(java.util.concurrent.Executor executor, android.telephony.ims.RegistrationManager.RegistrationCallback c)
+    registerImsStateCallback(java.util.concurrent.Executor executor, android.telephony.ims.ImsStateCallback callback)
+    unregisterImsRegistrationCallback(android.telephony.ims.RegistrationManager.RegistrationCallback c)
+    unregisterImsStateCallback(android.telephony.ims.ImsStateCallback callback)
+  class ImsReasonInfo
+    #ctor(int code, int extraCode, java.lang.String extraMessage)
+    writeToParcel(android.os.Parcel out, int flags)
+  class ImsRegistrationAttributes
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ImsStateCallback
+    onUnavailable(int reason)
+  class ProvisioningManager
+    getProvisioningStatusForCapability(int capability, int tech)
+    getRcsProvisioningStatusForCapability(int capability, int tech)
+    isProvisioningRequiredForCapability(int capability, int tech)
+    isRcsProvisioningRequiredForCapability(int capability, int tech)
+    registerFeatureProvisioningChangedCallback(java.util.concurrent.Executor executor, android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback callback)
+    setProvisioningStatusForCapability(int capability, int tech, boolean isProvisioned)
+    setRcsProvisioningStatusForCapability(int capability, int tech, boolean isProvisioned)
+    unregisterFeatureProvisioningChangedCallback(android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback callback)
+  class ProvisioningManager.FeatureProvisioningCallback
+    onFeatureProvisioningChanged(int capability, int tech, boolean isProvisioned)
+    onRcsFeatureProvisioningChanged(int capability, int tech, boolean isProvisioned)
+  interface RegistrationManager
+    getRegistrationState(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> stateCallback)
+    getRegistrationTransportType(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Integer> transportTypeCallback)
+    registerImsRegistrationCallback(java.util.concurrent.Executor executor, android.telephony.ims.RegistrationManager.RegistrationCallback c)
+    unregisterImsRegistrationCallback(android.telephony.ims.RegistrationManager.RegistrationCallback c)
+  class RegistrationManager.RegistrationCallback
+    onRegistered(android.telephony.ims.ImsRegistrationAttributes attributes)
+    onRegistered(int imsTransportType)
+    onRegistering(android.telephony.ims.ImsRegistrationAttributes attributes)
+    onRegistering(int imsTransportType)
+    onTechnologyChangeFailed(int imsTransportType, android.telephony.ims.ImsReasonInfo info)
+    onUnregistered(android.telephony.ims.ImsReasonInfo info)
+  class SipDetails
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.telephony.ims.feature
+;---------------------------------------
+  class MmTelFeature.MmTelCapabilities
+    equals(java.lang.Object o)
+    isCapable(int capabilities)
+
+package android.telephony.ims.stub
+;---------------------------------------
+
+package android.telephony.mbms
+;---------------------------------------
+  class DownloadProgressListener
+    onProgressUpdated(android.telephony.mbms.DownloadRequest request, android.telephony.mbms.FileInfo fileInfo, int currentDownloadSize, int fullDownloadSize, int currentDecodedSize, int fullDecodedSize)
+  class DownloadRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel out, int flags)
+  class DownloadRequest.Builder
+    #ctor(android.net.Uri sourceUri, android.net.Uri destinationUri)
+    fromDownloadRequest(android.telephony.mbms.DownloadRequest other)
+    fromSerializedRequest(byte[] data)
+    setAppIntent(android.content.Intent intent)
+    setServiceInfo(android.telephony.mbms.FileServiceInfo serviceInfo)
+    setSubscriptionId(int subscriptionId)
+  class DownloadStatusListener
+    onStatusUpdated(android.telephony.mbms.DownloadRequest request, android.telephony.mbms.FileInfo fileInfo, int status)
+  class FileInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FileServiceInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class GroupCall
+    updateGroupCall(java.util.List<java.lang.Integer> saiList, java.util.List<java.lang.Integer> frequencyList)
+  interface GroupCallCallback
+    onBroadcastSignalStrengthUpdated(int signalStrength)
+    onError(int errorCode, java.lang.String message)
+    onGroupCallStateChanged(int state, int reason)
+  class MbmsDownloadReceiver
+    onReceive(android.content.Context context, android.content.Intent intent)
+  class MbmsDownloadSessionCallback
+    onError(int errorCode, java.lang.String message)
+    onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo> services)
+  interface MbmsGroupCallSessionCallback
+    onAvailableSaisUpdated(java.util.List<java.lang.Integer> currentSais, java.util.List<java.util.List<java.lang.Integer>> availableSais)
+    onError(int errorCode, java.lang.String message)
+    onServiceInterfaceAvailable(java.lang.String interfaceName, int index)
+  class MbmsStreamingSessionCallback
+    onError(int errorCode, java.lang.String message)
+    onStreamingServicesUpdated(java.util.List<android.telephony.mbms.StreamingServiceInfo> services)
+  class ServiceInfo
+    equals(java.lang.Object o)
+    getNameForLocale(java.util.Locale locale)
+  class StreamingServiceCallback
+    onBroadcastSignalStrengthUpdated(int signalStrength)
+    onError(int errorCode, java.lang.String message)
+    onStreamMethodUpdated(int methodType)
+    onStreamStateUpdated(int state, int reason)
+  class StreamingServiceInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.text
+;---------------------------------------
+  class AlteredCharSequence
+    charAt(int off)
+    getChars(int start, int end, char[] dest, int off)
+    make(java.lang.CharSequence source, char[] sub, int substart, int subend)
+    subSequence(int start, int end)
+  class AndroidCharacter
+    getDirectionalities(char[] src, byte[] dest, int count)
+    getEastAsianWidth(char input)
+    getEastAsianWidths(char[] src, int start, int count, byte[] dest)
+    getMirror(char ch)
+    mirror(char[] text, int start, int count)
+  class Annotation
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String key, java.lang.String value)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AutoText
+    get(java.lang.CharSequence src, int start, int end, android.view.View view)
+    getSize(android.view.View view)
+  class BidiFormatter
+    getInstance(boolean rtlContext)
+    getInstance(java.util.Locale locale)
+    isRtl(java.lang.CharSequence str)
+    isRtl(java.lang.String str)
+    unicodeWrap(java.lang.CharSequence str)
+    unicodeWrap(java.lang.CharSequence str, android.text.TextDirectionHeuristic heuristic)
+    unicodeWrap(java.lang.CharSequence str, android.text.TextDirectionHeuristic heuristic, boolean isolate)
+    unicodeWrap(java.lang.CharSequence str, boolean isolate)
+    unicodeWrap(java.lang.String str)
+    unicodeWrap(java.lang.String str, android.text.TextDirectionHeuristic heuristic)
+    unicodeWrap(java.lang.String str, android.text.TextDirectionHeuristic heuristic, boolean isolate)
+    unicodeWrap(java.lang.String str, boolean isolate)
+  class BidiFormatter.Builder
+    #ctor(boolean rtlContext)
+    #ctor(java.util.Locale locale)
+    setTextDirectionHeuristic(android.text.TextDirectionHeuristic heuristic)
+    stereoReset(boolean stereoReset)
+  class BoringLayout
+    #ctor(java.lang.CharSequence source, android.text.TextPaint paint, int outerwidth, android.text.Layout.Alignment align, float spacingMult, float spacingAdd, android.text.BoringLayout.Metrics metrics, boolean includePad)
+    #ctor(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, float spacingMult, float spacingAdd, android.text.BoringLayout.Metrics metrics, boolean includePad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
+    #ctor(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, float spacingMult, float spacingAdd, android.text.BoringLayout.Metrics metrics, boolean includePad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth, boolean useFallbackLineSpacing)
+    draw(android.graphics.Canvas c, android.graphics.Path highlight, android.graphics.Paint highlightpaint, int cursorOffset)
+    ellipsized(int start, int end)
+    getEllipsisCount(int line)
+    getEllipsisStart(int line)
+    getLineContainsTab(int line)
+    getLineDescent(int line)
+    getLineDirections(int line)
+    getLineMax(int line)
+    getLineStart(int line)
+    getLineTop(int line)
+    getLineWidth(int line)
+    getParagraphDirection(int line)
+    isBoring(java.lang.CharSequence text, android.text.TextPaint paint)
+    isBoring(java.lang.CharSequence text, android.text.TextPaint paint, android.text.BoringLayout.Metrics metrics)
+    isBoring(java.lang.CharSequence text, android.text.TextPaint paint, android.text.TextDirectionHeuristic textDir, boolean useFallbackLineSpacing, android.text.BoringLayout.Metrics metrics)
+    make(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, android.text.BoringLayout.Metrics metrics, boolean includePad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth, boolean useFallbackLineSpacing)
+    make(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, float spacingMult, float spacingAdd, android.text.BoringLayout.Metrics metrics, boolean includePad)
+    make(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, float spacingmult, float spacingadd, android.text.BoringLayout.Metrics metrics, boolean includePad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
+    replaceOrMake(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, android.text.BoringLayout.Metrics metrics, boolean includePad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth, boolean useFallbackLineSpacing)
+    replaceOrMake(java.lang.CharSequence source, android.text.TextPaint paint, int outerwidth, android.text.Layout.Alignment align, float spacingMult, float spacingAdd, android.text.BoringLayout.Metrics metrics, boolean includePad)
+    replaceOrMake(java.lang.CharSequence source, android.text.TextPaint paint, int outerWidth, android.text.Layout.Alignment align, float spacingMult, float spacingAdd, android.text.BoringLayout.Metrics metrics, boolean includePad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
+  class ClipboardManager
+    setText(java.lang.CharSequence text)
+  class DynamicLayout
+    #ctor(java.lang.CharSequence base, android.text.TextPaint paint, int width, android.text.Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
+    #ctor(java.lang.CharSequence base, java.lang.CharSequence display, android.text.TextPaint paint, int width, android.text.Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
+    #ctor(java.lang.CharSequence base, java.lang.CharSequence display, android.text.TextPaint paint, int width, android.text.Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
+    getEllipsisCount(int line)
+    getEllipsisStart(int line)
+    getLineContainsTab(int line)
+    getLineDescent(int line)
+    getLineDirections(int line)
+    getLineStart(int line)
+    getLineTop(int line)
+    getParagraphDirection(int line)
+  class DynamicLayout.Builder
+    obtain(java.lang.CharSequence base, android.text.TextPaint paint, int width)
+    setAlignment(android.text.Layout.Alignment alignment)
+    setBreakStrategy(int breakStrategy)
+    setDisplayText(java.lang.CharSequence display)
+    setEllipsize(android.text.TextUtils.TruncateAt ellipsize)
+    setEllipsizedWidth(int ellipsizedWidth)
+    setHyphenationFrequency(int hyphenationFrequency)
+    setIncludePad(boolean includePad)
+    setJustificationMode(int justificationMode)
+    setLineSpacing(float spacingAdd, float spacingMult)
+    setTextDirection(android.text.TextDirectionHeuristic textDir)
+    setUseLineSpacingFromFallbacks(boolean useLineSpacingFromFallbacks)
+  interface Editable
+    append(char text)
+    append(java.lang.CharSequence text)
+    append(java.lang.CharSequence text, int start, int end)
+    delete(int st, int en)
+    insert(int where, java.lang.CharSequence text)
+    insert(int where, java.lang.CharSequence text, int start, int end)
+    replace(int st, int en, java.lang.CharSequence text)
+    replace(int st, int en, java.lang.CharSequence source, int start, int end)
+    setFilters(android.text.InputFilter[] filters)
+  class Editable.Factory
+    newEditable(java.lang.CharSequence source)
+  interface GetChars
+    getChars(int start, int end, char[] dest, int destoff)
+  class GraphemeClusterSegmentFinder
+    #ctor(java.lang.CharSequence text, android.text.TextPaint textPaint)
+    nextEndBoundary(int offset)
+    nextStartBoundary(int offset)
+    previousEndBoundary(int offset)
+    previousStartBoundary(int offset)
+  class Highlights
+    getPaint(int index)
+    getRanges(int index)
+  class Highlights.Builder
+    addRange(android.graphics.Paint paint, int start, int end)
+    addRanges(android.graphics.Paint paint, int... ranges)
+  class Html
+    escapeHtml(java.lang.CharSequence text)
+    fromHtml(java.lang.String source)
+    fromHtml(java.lang.String source, android.text.Html.ImageGetter imageGetter, android.text.Html.TagHandler tagHandler)
+    fromHtml(java.lang.String source, int flags)
+    fromHtml(java.lang.String source, int flags, android.text.Html.ImageGetter imageGetter, android.text.Html.TagHandler tagHandler)
+    toHtml(android.text.Spanned text)
+    toHtml(android.text.Spanned text, int option)
+  interface Html.ImageGetter
+    getDrawable(java.lang.String source)
+  interface Html.TagHandler
+    handleTag(boolean opening, java.lang.String tag, android.text.Editable output, org.xml.sax.XMLReader xmlReader)
+  interface InputFilter
+    filter(java.lang.CharSequence source, int start, int end, android.text.Spanned dest, int dstart, int dend)
+  class InputFilter.AllCaps
+    filter(java.lang.CharSequence source, int start, int end, android.text.Spanned dest, int dstart, int dend)
+    #ctor(java.util.Locale locale)
+  class InputFilter.LengthFilter
+    filter(java.lang.CharSequence source, int start, int end, android.text.Spanned dest, int dstart, int dend)
+    #ctor(int max)
+  class Layout
+    draw(android.graphics.Canvas c)
+    draw(android.graphics.Canvas canvas, android.graphics.Path selectionHighlight, android.graphics.Paint selectionHighlightPaint, int cursorOffsetVertical)
+    draw(android.graphics.Canvas canvas, java.util.List<android.graphics.Path> highlightPaths, java.util.List<android.graphics.Paint> highlightPaints, android.graphics.Path selectionPath, android.graphics.Paint selectionPaint, int cursorOffsetVertical)
+    drawBackground(android.graphics.Canvas canvas)
+    drawText(android.graphics.Canvas canvas)
+    fillCharacterBounds(int start, int end, float[] bounds, int boundsStart)
+    getCursorPath(int point, android.graphics.Path dest, java.lang.CharSequence editingBuffer)
+    getDesiredWidth(java.lang.CharSequence source, android.text.TextPaint paint)
+    getDesiredWidth(java.lang.CharSequence source, int start, int end, android.text.TextPaint paint)
+    getEllipsisCount(int line)
+    getEllipsisStart(int line)
+    getLineAscent(int line)
+    getLineBaseline(int line)
+    getLineBottom(int line)
+    getLineBottom(int line, boolean includeLineSpacing)
+    getLineBounds(int line, android.graphics.Rect bounds)
+    getLineContainsTab(int line)
+    getLineDescent(int line)
+    getLineDirections(int line)
+    getLineEnd(int line)
+    getLineForOffset(int offset)
+    getLineForVertical(int vertical)
+    getLineLeft(int line)
+    getLineMax(int line)
+    getLineRight(int line)
+    getLineStart(int line)
+    getLineTop(int line)
+    getLineVisibleEnd(int line)
+    getLineWidth(int line)
+    getOffsetForHorizontal(int line, float horiz)
+    getOffsetToLeftOf(int offset)
+    getOffsetToRightOf(int offset)
+    getParagraphAlignment(int line)
+    getParagraphDirection(int line)
+    getParagraphLeft(int line)
+    getParagraphRight(int line)
+    getPrimaryHorizontal(int offset)
+    getRangeForRect(android.graphics.RectF area, android.text.SegmentFinder segmentFinder, android.text.Layout.TextInclusionStrategy inclusionStrategy)
+    getSecondaryHorizontal(int offset)
+    getSelectionPath(int start, int end, android.graphics.Path dest)
+    increaseWidthTo(int wid)
+    isRtlCharAt(int offset)
+    #ctor(java.lang.CharSequence text, android.text.TextPaint paint, int width, android.text.Layout.Alignment align, float spacingMult, float spacingAdd)
+  interface Layout.TextInclusionStrategy
+    isSegmentInside(android.graphics.RectF segmentBounds, android.graphics.RectF area)
+  class LoginFilter
+    filter(java.lang.CharSequence source, int start, int end, android.text.Spanned dest, int dstart, int dend)
+    isAllowed(char c)
+    onInvalidCharacter(char c)
+  class LoginFilter.PasswordFilterGMail
+    isAllowed(char c)
+    #ctor(boolean appendInvalid)
+  class LoginFilter.UsernameFilterGeneric
+    isAllowed(char c)
+    #ctor(boolean appendInvalid)
+  class LoginFilter.UsernameFilterGMail
+    isAllowed(char c)
+    #ctor(boolean appendInvalid)
+  class PrecomputedText
+    charAt(int index)
+    create(java.lang.CharSequence text, android.text.PrecomputedText.Params params)
+    getBounds(int start, int end, android.graphics.Rect bounds)
+    getFontMetricsInt(int start, int end, android.graphics.Paint.FontMetricsInt outMetrics)
+    getParagraphEnd(int paraIndex)
+    getParagraphStart(int paraIndex)
+    getSpanEnd(java.lang.Object tag)
+    getSpanFlags(java.lang.Object tag)
+    <T> getSpans(int start, int end, java.lang.Class<T> type)
+    getSpanStart(java.lang.Object tag)
+    getWidth(int start, int end)
+    nextSpanTransition(int start, int limit, java.lang.Class type)
+    removeSpan(java.lang.Object what)
+    setSpan(java.lang.Object what, int start, int end, int flags)
+    subSequence(int start, int end)
+  class PrecomputedText.Params
+    equals(java.lang.Object o)
+  class PrecomputedText.Params.Builder
+    #ctor(android.text.PrecomputedText.Params params)
+    #ctor(android.text.TextPaint paint)
+    setBreakStrategy(int strategy)
+    setHyphenationFrequency(int frequency)
+    setLineBreakConfig(android.graphics.text.LineBreakConfig lineBreakConfig)
+    setTextDirection(android.text.TextDirectionHeuristic textDir)
+  class SegmentFinder
+    nextEndBoundary(int offset)
+    nextStartBoundary(int offset)
+    previousEndBoundary(int offset)
+    previousStartBoundary(int offset)
+  class SegmentFinder.PrescribedSegmentFinder
+    nextEndBoundary(int offset)
+    nextStartBoundary(int offset)
+    previousEndBoundary(int offset)
+    previousStartBoundary(int offset)
+    #ctor(int[] segments)
+  class Selection
+    extendDown(android.text.Spannable text, android.text.Layout layout)
+    extendLeft(android.text.Spannable text, android.text.Layout layout)
+    extendRight(android.text.Spannable text, android.text.Layout layout)
+    extendSelection(android.text.Spannable text, int index)
+    extendToLeftEdge(android.text.Spannable text, android.text.Layout layout)
+    extendToParagraphEnd(android.text.Spannable text)
+    extendToParagraphStart(android.text.Spannable text)
+    extendToRightEdge(android.text.Spannable text, android.text.Layout layout)
+    extendUp(android.text.Spannable text, android.text.Layout layout)
+    getSelectionEnd(java.lang.CharSequence text)
+    getSelectionStart(java.lang.CharSequence text)
+    moveDown(android.text.Spannable text, android.text.Layout layout)
+    moveLeft(android.text.Spannable text, android.text.Layout layout)
+    moveRight(android.text.Spannable text, android.text.Layout layout)
+    moveToLeftEdge(android.text.Spannable text, android.text.Layout layout)
+    moveToParagraphEnd(android.text.Spannable text, android.text.Layout layout)
+    moveToParagraphStart(android.text.Spannable text, android.text.Layout layout)
+    moveToRightEdge(android.text.Spannable text, android.text.Layout layout)
+    moveUp(android.text.Spannable text, android.text.Layout layout)
+    removeSelection(android.text.Spannable text)
+    selectAll(android.text.Spannable text)
+    setSelection(android.text.Spannable text, int index)
+    setSelection(android.text.Spannable text, int start, int stop)
+  interface Spannable
+    removeSpan(java.lang.Object what)
+    setSpan(java.lang.Object what, int start, int end, int flags)
+  class Spannable.Factory
+    newSpannable(java.lang.CharSequence source)
+  class SpannableString
+    charAt(int i)
+    equals(java.lang.Object o)
+    getChars(int start, int end, char[] dest, int off)
+    getSpanEnd(java.lang.Object what)
+    getSpanFlags(java.lang.Object what)
+    <T> getSpans(int queryStart, int queryEnd, java.lang.Class<T> kind)
+    getSpanStart(java.lang.Object what)
+    nextSpanTransition(int start, int limit, java.lang.Class kind)
+    removeSpan(java.lang.Object what)
+    setSpan(java.lang.Object what, int start, int end, int flags)
+    #ctor(java.lang.CharSequence source)
+    subSequence(int start, int end)
+    valueOf(java.lang.CharSequence source)
+  class SpannableStringBuilder
+    append(char text)
+    append(java.lang.CharSequence text)
+    append(java.lang.CharSequence text, int start, int end)
+    append(java.lang.CharSequence text, java.lang.Object what, int flags)
+    charAt(int where)
+    delete(int start, int end)
+    equals(java.lang.Object o)
+    getChars(int start, int end, char[] dest, int destoff)
+    getSpanEnd(java.lang.Object what)
+    getSpanFlags(java.lang.Object what)
+    <T> getSpans(int queryStart, int queryEnd, java.lang.Class<T> kind)
+    getSpanStart(java.lang.Object what)
+    getTextRunCursor(int contextStart, int contextEnd, int dir, int offset, int cursorOpt, android.graphics.Paint p)
+    insert(int where, java.lang.CharSequence tb)
+    insert(int where, java.lang.CharSequence tb, int start, int end)
+    nextSpanTransition(int start, int limit, java.lang.Class kind)
+    removeSpan(java.lang.Object what)
+    replace(int start, int end, java.lang.CharSequence tb)
+    replace(int start, int end, java.lang.CharSequence tb, int tbstart, int tbend)
+    setFilters(android.text.InputFilter[] filters)
+    setSpan(java.lang.Object what, int start, int end, int flags)
+    #ctor(java.lang.CharSequence text)
+    #ctor(java.lang.CharSequence text, int start, int end)
+    subSequence(int start, int end)
+    valueOf(java.lang.CharSequence source)
+  interface Spanned
+    getSpanEnd(java.lang.Object tag)
+    getSpanFlags(java.lang.Object tag)
+    <T> getSpans(int start, int end, java.lang.Class<T> type)
+    getSpanStart(java.lang.Object tag)
+    nextSpanTransition(int start, int limit, java.lang.Class type)
+  class SpannedString
+    charAt(int i)
+    equals(java.lang.Object o)
+    getChars(int start, int end, char[] dest, int off)
+    getSpanEnd(java.lang.Object what)
+    getSpanFlags(java.lang.Object what)
+    <T> getSpans(int queryStart, int queryEnd, java.lang.Class<T> kind)
+    getSpanStart(java.lang.Object what)
+    nextSpanTransition(int start, int limit, java.lang.Class kind)
+    #ctor(java.lang.CharSequence source)
+    subSequence(int start, int end)
+    valueOf(java.lang.CharSequence source)
+  interface SpanWatcher
+    onSpanAdded(android.text.Spannable text, java.lang.Object what, int start, int end)
+    onSpanChanged(android.text.Spannable text, java.lang.Object what, int ostart, int oend, int nstart, int nend)
+    onSpanRemoved(android.text.Spannable text, java.lang.Object what, int start, int end)
+  class StaticLayout
+    getEllipsisCount(int line)
+    getEllipsisStart(int line)
+    getLineContainsTab(int line)
+    getLineDescent(int line)
+    getLineDirections(int line)
+    getLineForVertical(int vertical)
+    getLineStart(int line)
+    getLineTop(int line)
+    getParagraphDirection(int line)
+    #ctor(java.lang.CharSequence source, android.text.TextPaint paint, int width, android.text.Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
+    #ctor(java.lang.CharSequence source, int bufstart, int bufend, android.text.TextPaint paint, int outerwidth, android.text.Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
+    #ctor(java.lang.CharSequence source, int bufstart, int bufend, android.text.TextPaint paint, int outerwidth, android.text.Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, android.text.TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
+  class StaticLayout.Builder
+    obtain(java.lang.CharSequence source, int start, int end, android.text.TextPaint paint, int width)
+    setAlignment(android.text.Layout.Alignment alignment)
+    setBreakStrategy(int breakStrategy)
+    setEllipsize(android.text.TextUtils.TruncateAt ellipsize)
+    setEllipsizedWidth(int ellipsizedWidth)
+    setHyphenationFrequency(int hyphenationFrequency)
+    setIncludePad(boolean includePad)
+    setIndents(int[] leftIndents, int[] rightIndents)
+    setJustificationMode(int justificationMode)
+    setLineBreakConfig(android.graphics.text.LineBreakConfig lineBreakConfig)
+    setLineSpacing(float spacingAdd, float spacingMult)
+    setMaxLines(int maxLines)
+    setText(java.lang.CharSequence source)
+    setTextDirection(android.text.TextDirectionHeuristic textDir)
+    setUseLineSpacingFromFallbacks(boolean useLineSpacingFromFallbacks)
+  interface TextDirectionHeuristic
+    isRtl(char[] array, int start, int count)
+    isRtl(java.lang.CharSequence cs, int start, int count)
+  class TextPaint
+    set(android.text.TextPaint tp)
+    #ctor(android.graphics.Paint p)
+    #ctor(int flags)
+  class TextShaper
+    shapeText(java.lang.CharSequence text, int start, int count, android.text.TextDirectionHeuristic dir, android.text.TextPaint paint, android.text.TextShaper.GlyphsConsumer consumer)
+  interface TextShaper.GlyphsConsumer
+    accept(int start, int count, android.graphics.text.PositionedGlyphs glyphs, android.text.TextPaint paint)
+  class TextUtils
+    commaEllipsize(java.lang.CharSequence text, android.text.TextPaint p, float avail, java.lang.String oneMore, java.lang.String more)
+    concat(java.lang.CharSequence... text)
+    copySpansFrom(android.text.Spanned source, int start, int end, java.lang.Class kind, android.text.Spannable dest, int destoff)
+    dumpSpans(java.lang.CharSequence cs, android.util.Printer printer, java.lang.String prefix)
+    ellipsize(java.lang.CharSequence text, android.text.TextPaint p, float avail, android.text.TextUtils.TruncateAt where)
+    ellipsize(java.lang.CharSequence text, android.text.TextPaint paint, float avail, android.text.TextUtils.TruncateAt where, boolean preserveLength, android.text.TextUtils.EllipsizeCallback callback)
+    equals(java.lang.CharSequence a, java.lang.CharSequence b)
+    expandTemplate(java.lang.CharSequence template, java.lang.CharSequence... values)
+    getCapsMode(java.lang.CharSequence cs, int off, int reqModes)
+    getChars(java.lang.CharSequence s, int start, int end, char[] dest, int destoff)
+    getLayoutDirectionFromLocale(java.util.Locale locale)
+    getOffsetAfter(java.lang.CharSequence text, int offset)
+    getOffsetBefore(java.lang.CharSequence text, int offset)
+    getReverse(java.lang.CharSequence source, int start, int end)
+    getTrimmedLength(java.lang.CharSequence s)
+    htmlEncode(java.lang.String s)
+    indexOf(java.lang.CharSequence s, char ch)
+    indexOf(java.lang.CharSequence s, char ch, int start)
+    indexOf(java.lang.CharSequence s, char ch, int start, int end)
+    indexOf(java.lang.CharSequence s, java.lang.CharSequence needle)
+    indexOf(java.lang.CharSequence s, java.lang.CharSequence needle, int start)
+    indexOf(java.lang.CharSequence s, java.lang.CharSequence needle, int start, int end)
+    isDigitsOnly(java.lang.CharSequence str)
+    isEmpty(java.lang.CharSequence str)
+    isGraphic(char c)
+    isGraphic(java.lang.CharSequence str)
+    join(java.lang.CharSequence delimiter, java.lang.Iterable tokens)
+    join(java.lang.CharSequence delimiter, java.lang.Object[] tokens)
+    lastIndexOf(java.lang.CharSequence s, char ch)
+    lastIndexOf(java.lang.CharSequence s, char ch, int last)
+    lastIndexOf(java.lang.CharSequence s, char ch, int start, int last)
+    listEllipsize(android.content.Context context, java.util.List<java.lang.CharSequence> elements, java.lang.String separator, android.text.TextPaint paint, float avail, int moreId)
+    makeSafeForPresentation(java.lang.String unclean, int maxCharactersToConsider, float ellipsizeDip, int flags)
+    regionMatches(java.lang.CharSequence one, int toffset, java.lang.CharSequence two, int ooffset, int len)
+    replace(java.lang.CharSequence template, java.lang.String[] sources, java.lang.CharSequence[] destinations)
+    split(java.lang.String text, java.lang.String expression)
+    split(java.lang.String text, java.util.regex.Pattern pattern)
+    stringOrSpannedString(java.lang.CharSequence source)
+    substring(java.lang.CharSequence source, int start, int end)
+    writeToParcel(java.lang.CharSequence cs, android.os.Parcel p, int parcelableFlags)
+  interface TextUtils.EllipsizeCallback
+    ellipsized(int start, int end)
+  class TextUtils.SimpleStringSplitter
+    setString(java.lang.String string)
+    #ctor(char delimiter)
+  interface TextUtils.StringSplitter
+    setString(java.lang.String string)
+  interface TextWatcher
+    afterTextChanged(android.text.Editable s)
+    beforeTextChanged(java.lang.CharSequence s, int start, int count, int after)
+    onTextChanged(java.lang.CharSequence s, int start, int before, int count)
+  class WordSegmentFinder
+    nextEndBoundary(int offset)
+    nextStartBoundary(int offset)
+    previousEndBoundary(int offset)
+    previousStartBoundary(int offset)
+    #ctor(java.lang.CharSequence text, android.icu.util.ULocale locale)
+
+package android.text.format
+;---------------------------------------
+  class DateFormat
+    format(java.lang.CharSequence inFormat, java.util.Calendar inDate)
+    format(java.lang.CharSequence inFormat, java.util.Date inDate)
+    format(java.lang.CharSequence inFormat, long inTimeInMillis)
+    getBestDateTimePattern(java.util.Locale locale, java.lang.String skeleton)
+    getDateFormat(android.content.Context context)
+    getDateFormatOrder(android.content.Context context)
+    getLongDateFormat(android.content.Context context)
+    getMediumDateFormat(android.content.Context context)
+    getTimeFormat(android.content.Context context)
+    is24HourFormat(android.content.Context context)
+  class DateUtils
+    formatDateRange(android.content.Context context, java.util.Formatter formatter, long startMillis, long endMillis, int flags)
+    formatDateRange(android.content.Context context, java.util.Formatter formatter, long startMillis, long endMillis, int flags, java.lang.String timeZone)
+    formatDateRange(android.content.Context context, long startMillis, long endMillis, int flags)
+    formatDateTime(android.content.Context context, long millis, int flags)
+    formatElapsedTime(java.lang.StringBuilder recycle, long elapsedSeconds)
+    formatElapsedTime(long elapsedSeconds)
+    formatSameDayTime(long then, long now, int dateStyle, int timeStyle)
+    getAMPMString(int ampm)
+    getDayOfWeekString(int dayOfWeek, int abbrev)
+    getMonthString(int month, int abbrev)
+    getRelativeDateTimeString(android.content.Context c, long time, long minResolution, long transitionResolution, int flags)
+    getRelativeTimeSpanString(android.content.Context c, long millis)
+    getRelativeTimeSpanString(android.content.Context c, long millis, boolean withPreposition)
+    getRelativeTimeSpanString(long startTime)
+    getRelativeTimeSpanString(long time, long now, long minResolution)
+    getRelativeTimeSpanString(long time, long now, long minResolution, int flags)
+    isToday(long when)
+  class Formatter
+    formatFileSize(android.content.Context context, long sizeBytes)
+    formatIpAddress(int ipv4Address)
+    formatShortFileSize(android.content.Context context, long sizeBytes)
+  class Time
+    after(android.text.format.Time that)
+    before(android.text.format.Time that)
+    clear(java.lang.String timezoneId)
+    compare(android.text.format.Time a, android.text.format.Time b)
+    format(java.lang.String format)
+    format3339(boolean allDay)
+    getActualMaximum(int field)
+    getJulianDay(long millis, long gmtoffSeconds)
+    getJulianMondayFromWeeksSinceEpoch(int week)
+    getWeeksSinceEpochFromJulianDay(int julianDay, int firstDayOfWeek)
+    isEpoch(android.text.format.Time time)
+    normalize(boolean ignoreDst)
+    parse(java.lang.String s)
+    parse3339(java.lang.String s)
+    set(android.text.format.Time that)
+    set(int monthDay, int month, int year)
+    set(int second, int minute, int hour, int monthDay, int month, int year)
+    set(long millis)
+    setJulianDay(int julianDay)
+    switchTimezone(java.lang.String timezone)
+    #ctor(android.text.format.Time other)
+    #ctor(java.lang.String timezoneId)
+    toMillis(boolean ignoreDst)
+
+package android.text.method
+;---------------------------------------
+  class ArrowKeyMovementMethod
+    bottom(android.widget.TextView widget, android.text.Spannable buffer)
+    down(android.widget.TextView widget, android.text.Spannable buffer)
+    end(android.widget.TextView widget, android.text.Spannable buffer)
+    handleMovementKey(android.widget.TextView widget, android.text.Spannable buffer, int keyCode, int movementMetaState, android.view.KeyEvent event)
+    home(android.widget.TextView widget, android.text.Spannable buffer)
+    initialize(android.widget.TextView widget, android.text.Spannable text)
+    left(android.widget.TextView widget, android.text.Spannable buffer)
+    lineEnd(android.widget.TextView widget, android.text.Spannable buffer)
+    lineStart(android.widget.TextView widget, android.text.Spannable buffer)
+    nextParagraph(android.widget.TextView widget, android.text.Spannable buffer)
+    onTakeFocus(android.widget.TextView view, android.text.Spannable text, int dir)
+    onTouchEvent(android.widget.TextView widget, android.text.Spannable buffer, android.view.MotionEvent event)
+    pageDown(android.widget.TextView widget, android.text.Spannable buffer)
+    pageUp(android.widget.TextView widget, android.text.Spannable buffer)
+    previousParagraph(android.widget.TextView widget, android.text.Spannable buffer)
+    right(android.widget.TextView widget, android.text.Spannable buffer)
+    top(android.widget.TextView widget, android.text.Spannable buffer)
+    up(android.widget.TextView widget, android.text.Spannable buffer)
+  class BaseKeyListener
+    backspace(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    forwardDelete(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    onKeyDown(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    onKeyOther(android.view.View view, android.text.Editable content, android.view.KeyEvent event)
+  class BaseMovementMethod
+    bottom(android.widget.TextView widget, android.text.Spannable buffer)
+    down(android.widget.TextView widget, android.text.Spannable buffer)
+    end(android.widget.TextView widget, android.text.Spannable buffer)
+    getMovementMetaState(android.text.Spannable buffer, android.view.KeyEvent event)
+    handleMovementKey(android.widget.TextView widget, android.text.Spannable buffer, int keyCode, int movementMetaState, android.view.KeyEvent event)
+    home(android.widget.TextView widget, android.text.Spannable buffer)
+    initialize(android.widget.TextView widget, android.text.Spannable text)
+    left(android.widget.TextView widget, android.text.Spannable buffer)
+    lineEnd(android.widget.TextView widget, android.text.Spannable buffer)
+    lineStart(android.widget.TextView widget, android.text.Spannable buffer)
+    nextParagraph(android.widget.TextView widget, android.text.Spannable buffer)
+    onGenericMotionEvent(android.widget.TextView widget, android.text.Spannable text, android.view.MotionEvent event)
+    onKeyDown(android.widget.TextView widget, android.text.Spannable text, int keyCode, android.view.KeyEvent event)
+    onKeyOther(android.widget.TextView widget, android.text.Spannable text, android.view.KeyEvent event)
+    onKeyUp(android.widget.TextView widget, android.text.Spannable text, int keyCode, android.view.KeyEvent event)
+    onTakeFocus(android.widget.TextView widget, android.text.Spannable text, int direction)
+    onTouchEvent(android.widget.TextView widget, android.text.Spannable text, android.view.MotionEvent event)
+    onTrackballEvent(android.widget.TextView widget, android.text.Spannable text, android.view.MotionEvent event)
+    pageDown(android.widget.TextView widget, android.text.Spannable buffer)
+    pageUp(android.widget.TextView widget, android.text.Spannable buffer)
+    previousParagraph(android.widget.TextView widget, android.text.Spannable buffer)
+    right(android.widget.TextView widget, android.text.Spannable buffer)
+    top(android.widget.TextView widget, android.text.Spannable buffer)
+    up(android.widget.TextView widget, android.text.Spannable buffer)
+  class CharacterPickerDialog
+    #ctor(android.content.Context context, android.view.View view, android.text.Editable text, java.lang.String options, boolean insert)
+    onClick(android.view.View v)
+    onCreate(android.os.Bundle savedInstanceState)
+    onItemClick(android.widget.AdapterView parent, android.view.View view, int position, long id)
+  class DateKeyListener
+    #ctor(java.util.Locale locale)
+    getInstance(java.util.Locale locale)
+  class DateTimeKeyListener
+    #ctor(java.util.Locale locale)
+    getInstance(java.util.Locale locale)
+  class DialerKeyListener
+    lookup(android.view.KeyEvent event, android.text.Spannable content)
+  class DigitsKeyListener
+    #ctor(boolean sign, boolean decimal)
+    #ctor(java.util.Locale locale)
+    #ctor(java.util.Locale locale, boolean sign, boolean decimal)
+    filter(java.lang.CharSequence source, int start, int end, android.text.Spanned dest, int dstart, int dend)
+    getInstance(boolean sign, boolean decimal)
+    getInstance(java.lang.String accepted)
+    getInstance(java.util.Locale locale)
+    getInstance(java.util.Locale locale, boolean sign, boolean decimal)
+  interface KeyListener
+    clearMetaKeyState(android.view.View view, android.text.Editable content, int states)
+    onKeyDown(android.view.View view, android.text.Editable text, int keyCode, android.view.KeyEvent event)
+    onKeyOther(android.view.View view, android.text.Editable text, android.view.KeyEvent event)
+    onKeyUp(android.view.View view, android.text.Editable text, int keyCode, android.view.KeyEvent event)
+  class LinkMovementMethod
+    down(android.widget.TextView widget, android.text.Spannable buffer)
+    handleMovementKey(android.widget.TextView widget, android.text.Spannable buffer, int keyCode, int movementMetaState, android.view.KeyEvent event)
+    initialize(android.widget.TextView widget, android.text.Spannable text)
+    left(android.widget.TextView widget, android.text.Spannable buffer)
+    onTakeFocus(android.widget.TextView view, android.text.Spannable text, int dir)
+    onTouchEvent(android.widget.TextView widget, android.text.Spannable buffer, android.view.MotionEvent event)
+    right(android.widget.TextView widget, android.text.Spannable buffer)
+    up(android.widget.TextView widget, android.text.Spannable buffer)
+  class MetaKeyKeyListener
+    adjustMetaAfterKeypress(android.text.Spannable content)
+    adjustMetaAfterKeypress(long state)
+    clearMetaKeyState(android.text.Editable content, int states)
+    clearMetaKeyState(android.view.View view, android.text.Editable content, int states)
+    clearMetaKeyState(long state, int which)
+    getMetaState(java.lang.CharSequence text)
+    getMetaState(java.lang.CharSequence text, android.view.KeyEvent event)
+    getMetaState(java.lang.CharSequence text, int meta)
+    getMetaState(java.lang.CharSequence text, int meta, android.view.KeyEvent event)
+    getMetaState(long state)
+    getMetaState(long state, int meta)
+    handleKeyDown(long state, int keyCode, android.view.KeyEvent event)
+    handleKeyUp(long state, int keyCode, android.view.KeyEvent event)
+    isMetaTracker(java.lang.CharSequence text, java.lang.Object what)
+    isSelectingMetaTracker(java.lang.CharSequence text, java.lang.Object what)
+    onKeyDown(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    onKeyUp(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    resetLockedMeta(android.text.Spannable content)
+    resetLockedMeta(long state)
+    resetMetaState(android.text.Spannable text)
+  interface MovementMethod
+    initialize(android.widget.TextView widget, android.text.Spannable text)
+    onGenericMotionEvent(android.widget.TextView widget, android.text.Spannable text, android.view.MotionEvent event)
+    onKeyDown(android.widget.TextView widget, android.text.Spannable text, int keyCode, android.view.KeyEvent event)
+    onKeyOther(android.widget.TextView view, android.text.Spannable text, android.view.KeyEvent event)
+    onKeyUp(android.widget.TextView widget, android.text.Spannable text, int keyCode, android.view.KeyEvent event)
+    onTakeFocus(android.widget.TextView widget, android.text.Spannable text, int direction)
+    onTouchEvent(android.widget.TextView widget, android.text.Spannable text, android.view.MotionEvent event)
+    onTrackballEvent(android.widget.TextView widget, android.text.Spannable text, android.view.MotionEvent event)
+  class MultiTapKeyListener
+    getInstance(boolean autotext, android.text.method.TextKeyListener.Capitalize cap)
+    #ctor(android.text.method.TextKeyListener.Capitalize cap, boolean autotext)
+    onKeyDown(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    onSpanAdded(android.text.Spannable s, java.lang.Object what, int start, int end)
+    onSpanChanged(android.text.Spannable buf, java.lang.Object what, int s, int e, int start, int stop)
+    onSpanRemoved(android.text.Spannable s, java.lang.Object what, int start, int end)
+  class NumberKeyListener
+    filter(java.lang.CharSequence source, int start, int end, android.text.Spanned dest, int dstart, int dend)
+    lookup(android.view.KeyEvent event, android.text.Spannable content)
+    ok(char[] accept, char c)
+    onKeyDown(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+  class PasswordTransformationMethod
+    afterTextChanged(android.text.Editable s)
+    beforeTextChanged(java.lang.CharSequence s, int start, int count, int after)
+    getTransformation(java.lang.CharSequence source, android.view.View view)
+    onFocusChanged(android.view.View view, java.lang.CharSequence sourceText, boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+    onTextChanged(java.lang.CharSequence s, int start, int before, int count)
+  class QwertyKeyListener
+    getInstance(boolean autoText, android.text.method.TextKeyListener.Capitalize cap)
+    markAsReplaced(android.text.Spannable content, int start, int end, java.lang.String original)
+    onKeyDown(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    #ctor(android.text.method.TextKeyListener.Capitalize cap, boolean autoText)
+  class ReplacementTransformationMethod
+    getTransformation(java.lang.CharSequence source, android.view.View v)
+    onFocusChanged(android.view.View view, java.lang.CharSequence sourceText, boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+  class ScrollingMovementMethod
+    bottom(android.widget.TextView widget, android.text.Spannable buffer)
+    down(android.widget.TextView widget, android.text.Spannable buffer)
+    end(android.widget.TextView widget, android.text.Spannable buffer)
+    home(android.widget.TextView widget, android.text.Spannable buffer)
+    left(android.widget.TextView widget, android.text.Spannable buffer)
+    lineEnd(android.widget.TextView widget, android.text.Spannable buffer)
+    lineStart(android.widget.TextView widget, android.text.Spannable buffer)
+    onTakeFocus(android.widget.TextView widget, android.text.Spannable text, int dir)
+    onTouchEvent(android.widget.TextView widget, android.text.Spannable buffer, android.view.MotionEvent event)
+    pageDown(android.widget.TextView widget, android.text.Spannable buffer)
+    pageUp(android.widget.TextView widget, android.text.Spannable buffer)
+    right(android.widget.TextView widget, android.text.Spannable buffer)
+    top(android.widget.TextView widget, android.text.Spannable buffer)
+    up(android.widget.TextView widget, android.text.Spannable buffer)
+  class TextKeyListener
+    clear(android.text.Editable e)
+    getInstance(boolean autotext, android.text.method.TextKeyListener.Capitalize cap)
+    onKeyDown(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    onKeyOther(android.view.View view, android.text.Editable content, android.view.KeyEvent event)
+    onKeyUp(android.view.View view, android.text.Editable content, int keyCode, android.view.KeyEvent event)
+    onSpanAdded(android.text.Spannable s, java.lang.Object what, int start, int end)
+    onSpanChanged(android.text.Spannable s, java.lang.Object what, int start, int end, int st, int en)
+    onSpanRemoved(android.text.Spannable s, java.lang.Object what, int start, int end)
+    shouldCap(android.text.method.TextKeyListener.Capitalize cap, java.lang.CharSequence cs, int off)
+    #ctor(android.text.method.TextKeyListener.Capitalize cap, boolean autotext)
+  class TimeKeyListener
+    getInstance(java.util.Locale locale)
+    #ctor(java.util.Locale locale)
+  class Touch
+    getInitialScrollX(android.widget.TextView widget, android.text.Spannable buffer)
+    getInitialScrollY(android.widget.TextView widget, android.text.Spannable buffer)
+    onTouchEvent(android.widget.TextView widget, android.text.Spannable buffer, android.view.MotionEvent event)
+    scrollTo(android.widget.TextView widget, android.text.Layout layout, int x, int y)
+  interface TransformationMethod
+    getTransformation(java.lang.CharSequence source, android.view.View view)
+    onFocusChanged(android.view.View view, java.lang.CharSequence sourceText, boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+
+package android.text.style
+;---------------------------------------
+  class AbsoluteSizeSpan
+    #ctor(android.os.Parcel src)
+    #ctor(int size)
+    #ctor(int size, boolean dip)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint ds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AlignmentSpan.Standard
+    #ctor(android.os.Parcel src)
+    #ctor(android.text.Layout.Alignment align)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BackgroundColorSpan
+    #ctor(android.os.Parcel src)
+    #ctor(int color)
+    updateDrawState(android.text.TextPaint textPaint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class BulletSpan
+    #ctor(android.os.Parcel src)
+    #ctor(int gapWidth)
+    #ctor(int gapWidth, int color)
+    #ctor(int gapWidth, int color, int bulletRadius)
+    drawLeadingMargin(android.graphics.Canvas canvas, android.graphics.Paint paint, int x, int dir, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, boolean first, android.text.Layout layout)
+    getLeadingMargin(boolean first)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CharacterStyle
+    updateDrawState(android.text.TextPaint tp)
+    wrap(android.text.style.CharacterStyle cs)
+  class ClickableSpan
+    onClick(android.view.View widget)
+    updateDrawState(android.text.TextPaint ds)
+  class DrawableMarginSpan
+    chooseHeight(java.lang.CharSequence text, int start, int end, int istartv, int v, android.graphics.Paint.FontMetricsInt fm)
+    #ctor(android.graphics.drawable.Drawable drawable)
+    #ctor(android.graphics.drawable.Drawable drawable, int pad)
+    drawLeadingMargin(android.graphics.Canvas c, android.graphics.Paint p, int x, int dir, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, boolean first, android.text.Layout layout)
+    getLeadingMargin(boolean first)
+  class DynamicDrawableSpan
+    draw(android.graphics.Canvas canvas, java.lang.CharSequence text, int start, int end, float x, int top, int y, int bottom, android.graphics.Paint paint)
+    #ctor(int verticalAlignment)
+    getSize(android.graphics.Paint paint, java.lang.CharSequence text, int start, int end, android.graphics.Paint.FontMetricsInt fm)
+  class EasyEditSpan
+    #ctor(android.app.PendingIntent pendingIntent)
+    #ctor(android.os.Parcel source)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ForegroundColorSpan
+    #ctor(android.os.Parcel src)
+    #ctor(int color)
+    updateDrawState(android.text.TextPaint textPaint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class IconMarginSpan
+    chooseHeight(java.lang.CharSequence text, int start, int end, int istartv, int v, android.graphics.Paint.FontMetricsInt fm)
+    drawLeadingMargin(android.graphics.Canvas c, android.graphics.Paint p, int x, int dir, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, boolean first, android.text.Layout layout)
+    getLeadingMargin(boolean first)
+    #ctor(android.graphics.Bitmap bitmap)
+    #ctor(android.graphics.Bitmap bitmap, int pad)
+  class ImageSpan
+    #ctor(android.content.Context context, android.graphics.Bitmap bitmap)
+    #ctor(android.content.Context context, android.graphics.Bitmap bitmap, int verticalAlignment)
+    #ctor(android.content.Context context, android.net.Uri uri)
+    #ctor(android.content.Context context, android.net.Uri uri, int verticalAlignment)
+    #ctor(android.content.Context context, int resourceId)
+    #ctor(android.content.Context context, int resourceId, int verticalAlignment)
+    #ctor(android.graphics.Bitmap b)
+    #ctor(android.graphics.Bitmap b, int verticalAlignment)
+    #ctor(android.graphics.drawable.Drawable drawable)
+    #ctor(android.graphics.drawable.Drawable drawable, int verticalAlignment)
+    #ctor(android.graphics.drawable.Drawable drawable, java.lang.String source)
+    #ctor(android.graphics.drawable.Drawable drawable, java.lang.String source, int verticalAlignment)
+  interface LeadingMarginSpan
+    drawLeadingMargin(android.graphics.Canvas c, android.graphics.Paint p, int x, int dir, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, boolean first, android.text.Layout layout)
+    getLeadingMargin(boolean first)
+  class LeadingMarginSpan.Standard
+    drawLeadingMargin(android.graphics.Canvas c, android.graphics.Paint p, int x, int dir, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, boolean first, android.text.Layout layout)
+    getLeadingMargin(boolean first)
+    #ctor(android.os.Parcel src)
+    #ctor(int every)
+    #ctor(int first, int rest)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface LineBackgroundSpan
+    drawBackground(android.graphics.Canvas canvas, android.graphics.Paint paint, int left, int right, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, int lineNumber)
+  class LineBackgroundSpan.Standard
+    drawBackground(android.graphics.Canvas canvas, android.graphics.Paint paint, int left, int right, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, int lineNumber)
+    #ctor(android.os.Parcel src)
+    #ctor(int color)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface LineHeightSpan
+    chooseHeight(java.lang.CharSequence text, int start, int end, int spanstartv, int lineHeight, android.graphics.Paint.FontMetricsInt fm)
+  class LineHeightSpan.Standard
+    chooseHeight(java.lang.CharSequence text, int start, int end, int spanstartv, int lineHeight, android.graphics.Paint.FontMetricsInt fm)
+    #ctor(android.os.Parcel src)
+    #ctor(int height)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface LineHeightSpan.WithDensity
+    chooseHeight(java.lang.CharSequence text, int start, int end, int spanstartv, int lineHeight, android.graphics.Paint.FontMetricsInt fm, android.text.TextPaint paint)
+  class LocaleSpan
+    #ctor(android.os.LocaleList locales)
+    #ctor(android.os.Parcel source)
+    #ctor(java.util.Locale locale)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint paint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class MaskFilterSpan
+    #ctor(android.graphics.MaskFilter filter)
+    updateDrawState(android.text.TextPaint ds)
+  class MetricAffectingSpan
+    updateMeasureState(android.text.TextPaint textPaint)
+  class QuoteSpan
+    drawLeadingMargin(android.graphics.Canvas c, android.graphics.Paint p, int x, int dir, int top, int baseline, int bottom, java.lang.CharSequence text, int start, int end, boolean first, android.text.Layout layout)
+    getLeadingMargin(boolean first)
+    #ctor(android.os.Parcel src)
+    #ctor(int color)
+    #ctor(int color, int stripeWidth, int gapWidth)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RelativeSizeSpan
+    #ctor(android.os.Parcel src)
+    #ctor(float proportion)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint ds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ReplacementSpan
+    draw(android.graphics.Canvas canvas, java.lang.CharSequence text, int start, int end, float x, int top, int y, int bottom, android.graphics.Paint paint)
+    getSize(android.graphics.Paint paint, java.lang.CharSequence text, int start, int end, android.graphics.Paint.FontMetricsInt fm)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint p)
+  class ScaleXSpan
+    #ctor(android.os.Parcel src)
+    #ctor(float proportion)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint ds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StrikethroughSpan
+    #ctor(android.os.Parcel src)
+    updateDrawState(android.text.TextPaint ds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class StyleSpan
+    #ctor(android.os.Parcel src)
+    #ctor(int style)
+    #ctor(int style, int fontWeightAdjustment)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint paint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SubscriptSpan
+    #ctor(android.os.Parcel src)
+    updateDrawState(android.text.TextPaint textPaint)
+    updateMeasureState(android.text.TextPaint textPaint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SuggestionRangeSpan
+    setBackgroundColor(int backgroundColor)
+    updateDrawState(android.text.TextPaint tp)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SuggestionSpan
+    equals(java.lang.Object o)
+    setFlags(int flags)
+    #ctor(android.content.Context context, java.lang.String[] suggestions, int flags)
+    #ctor(android.content.Context context, java.util.Locale locale, java.lang.String[] suggestions, int flags, java.lang.Class<?> notificationTargetClass)
+    #ctor(android.os.Parcel src)
+    #ctor(java.util.Locale locale, java.lang.String[] suggestions, int flags)
+    updateDrawState(android.text.TextPaint tp)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SuperscriptSpan
+    #ctor(android.os.Parcel src)
+    updateDrawState(android.text.TextPaint textPaint)
+    updateMeasureState(android.text.TextPaint textPaint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TabStopSpan.Standard
+    #ctor(int offset)
+  class TextAppearanceSpan
+    #ctor(android.content.Context context, int appearance)
+    #ctor(android.content.Context context, int appearance, int colorList)
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String family, int style, int size, android.content.res.ColorStateList color, android.content.res.ColorStateList linkColor)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint ds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TtsSpan
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String type, android.os.PersistableBundle args)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TtsSpan.Builder<C>
+    setIntArgument(java.lang.String arg, int value)
+    setLongArgument(java.lang.String arg, long value)
+    setStringArgument(java.lang.String arg, java.lang.String value)
+    #ctor(java.lang.String type)
+  class TtsSpan.CardinalBuilder
+    setNumber(java.lang.String number)
+    setNumber(long number)
+    #ctor(java.lang.String number)
+    #ctor(long number)
+  class TtsSpan.DateBuilder
+    setDay(int day)
+    setMonth(int month)
+    setWeekday(int weekday)
+    setYear(int year)
+    #ctor(java.lang.Integer weekday, java.lang.Integer day, java.lang.Integer month, java.lang.Integer year)
+  class TtsSpan.DecimalBuilder
+    setArgumentsFromDouble(double number, int minimumFractionDigits, int maximumFractionDigits)
+    setFractionalPart(java.lang.String fractionalPart)
+    setIntegerPart(java.lang.String integerPart)
+    setIntegerPart(long integerPart)
+    #ctor(double number, int minimumFractionDigits, int maximumFractionDigits)
+    #ctor(java.lang.String integerPart, java.lang.String fractionalPart)
+  class TtsSpan.DigitsBuilder
+    setDigits(java.lang.String digits)
+    #ctor(java.lang.String digits)
+  class TtsSpan.ElectronicBuilder
+    setDomain(java.lang.String domain)
+    setEmailArguments(java.lang.String username, java.lang.String domain)
+    setFragmentId(java.lang.String fragmentId)
+    setPassword(java.lang.String password)
+    setPath(java.lang.String path)
+    setPort(int port)
+    setProtocol(java.lang.String protocol)
+    setQueryString(java.lang.String queryString)
+    setUsername(java.lang.String username)
+  class TtsSpan.FractionBuilder
+    setDenominator(java.lang.String denominator)
+    setDenominator(long denominator)
+    setIntegerPart(java.lang.String integerPart)
+    setIntegerPart(long integerPart)
+    setNumerator(java.lang.String numerator)
+    setNumerator(long numerator)
+    #ctor(long integerPart, long numerator, long denominator)
+  class TtsSpan.MeasureBuilder
+    setDenominator(java.lang.String denominator)
+    setDenominator(long denominator)
+    setFractionalPart(java.lang.String fractionalPart)
+    setIntegerPart(java.lang.String integerPart)
+    setIntegerPart(long integerPart)
+    setNumber(java.lang.String number)
+    setNumber(long number)
+    setNumerator(java.lang.String numerator)
+    setNumerator(long numerator)
+    setUnit(java.lang.String unit)
+  class TtsSpan.MoneyBuilder
+    setCurrency(java.lang.String currency)
+    setFractionalPart(java.lang.String fractionalPart)
+    setIntegerPart(java.lang.String integerPart)
+    setIntegerPart(long integerPart)
+    setQuantity(java.lang.String quantity)
+  class TtsSpan.OrdinalBuilder
+    setNumber(java.lang.String number)
+    setNumber(long number)
+    #ctor(java.lang.String number)
+    #ctor(long number)
+  class TtsSpan.SemioticClassBuilder<C>
+    setAnimacy(java.lang.String animacy)
+    setCase(java.lang.String grammaticalCase)
+    setGender(java.lang.String gender)
+    setMultiplicity(java.lang.String multiplicity)
+    #ctor(java.lang.String type)
+  class TtsSpan.TelephoneBuilder
+    setCountryCode(java.lang.String countryCode)
+    setExtension(java.lang.String extension)
+    setNumberParts(java.lang.String numberParts)
+    #ctor(java.lang.String numberParts)
+  class TtsSpan.TextBuilder
+    setText(java.lang.String text)
+    #ctor(java.lang.String text)
+  class TtsSpan.TimeBuilder
+    setHours(int hours)
+    setMinutes(int minutes)
+    #ctor(int hours, int minutes)
+  class TtsSpan.VerbatimBuilder
+    setVerbatim(java.lang.String verbatim)
+    #ctor(java.lang.String verbatim)
+  class TypefaceSpan
+    #ctor(android.graphics.Typeface typeface)
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String family)
+    updateDrawState(android.text.TextPaint ds)
+    updateMeasureState(android.text.TextPaint paint)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class UnderlineSpan
+    #ctor(android.os.Parcel src)
+    updateDrawState(android.text.TextPaint ds)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class URLSpan
+    onClick(android.view.View widget)
+    #ctor(android.os.Parcel src)
+    #ctor(java.lang.String url)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.text.util
+;---------------------------------------
+  class Linkify
+    addLinks(android.text.Spannable text, int mask)
+    addLinks(android.text.Spannable text, int mask, java.util.function.Function<java.lang.String,android.text.style.URLSpan> urlSpanFactory)
+    addLinks(android.text.Spannable text, java.util.regex.Pattern pattern, java.lang.String scheme)
+    addLinks(android.text.Spannable spannable, java.util.regex.Pattern pattern, java.lang.String scheme, android.text.util.Linkify.MatchFilter matchFilter, android.text.util.Linkify.TransformFilter transformFilter)
+    addLinks(android.text.Spannable spannable, java.util.regex.Pattern pattern, java.lang.String defaultScheme, java.lang.String[] schemes, android.text.util.Linkify.MatchFilter matchFilter, android.text.util.Linkify.TransformFilter transformFilter)
+    addLinks(android.text.Spannable spannable, java.util.regex.Pattern pattern, java.lang.String defaultScheme, java.lang.String[] schemes, android.text.util.Linkify.MatchFilter matchFilter, android.text.util.Linkify.TransformFilter transformFilter, java.util.function.Function<java.lang.String,android.text.style.URLSpan> urlSpanFactory)
+    addLinks(android.widget.TextView text, int mask)
+    addLinks(android.widget.TextView text, java.util.regex.Pattern pattern, java.lang.String scheme)
+    addLinks(android.widget.TextView text, java.util.regex.Pattern pattern, java.lang.String scheme, android.text.util.Linkify.MatchFilter matchFilter, android.text.util.Linkify.TransformFilter transformFilter)
+    addLinks(android.widget.TextView text, java.util.regex.Pattern pattern, java.lang.String defaultScheme, java.lang.String[] schemes, android.text.util.Linkify.MatchFilter matchFilter, android.text.util.Linkify.TransformFilter transformFilter)
+  interface Linkify.MatchFilter
+    acceptMatch(java.lang.CharSequence s, int start, int end)
+  interface Linkify.TransformFilter
+    transformUrl(java.util.regex.Matcher match, java.lang.String url)
+  class Rfc822Token
+    equals(java.lang.Object o)
+    quoteComment(java.lang.String comment)
+    quoteName(java.lang.String name)
+    quoteNameIfNecessary(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String address, java.lang.String comment)
+    setAddress(java.lang.String address)
+    setComment(java.lang.String comment)
+    setName(java.lang.String name)
+  class Rfc822Tokenizer
+    findTokenEnd(java.lang.CharSequence text, int cursor)
+    findTokenStart(java.lang.CharSequence text, int cursor)
+    terminateToken(java.lang.CharSequence text)
+    tokenize(java.lang.CharSequence text)
+    tokenize(java.lang.CharSequence text, java.util.Collection<android.text.util.Rfc822Token> out)
+
+package android.transition
+;---------------------------------------
+  class ArcMotion
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    getPath(float startX, float startY, float endX, float endY)
+    setMaximumAngle(float angleInDegrees)
+    setMinimumHorizontalAngle(float angleInDegrees)
+    setMinimumVerticalAngle(float angleInDegrees)
+  class AutoTransition
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class ChangeBounds
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    setReparent(boolean reparent)
+    setResizeClip(boolean resizeClip)
+  class ChangeClipBounds
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+  class ChangeImageTransform
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+  class ChangeScroll
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+  class ChangeTransform
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    setReparent(boolean reparent)
+    setReparentWithOverlay(boolean reparentWithOverlay)
+  class CircularPropagation
+    getStartDelay(android.view.ViewGroup sceneRoot, android.transition.Transition transition, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    setPropagationSpeed(float propagationSpeed)
+  class Explode
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    onAppear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    onDisappear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+  class Fade
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(int fadingMode)
+    onAppear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    onDisappear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+  class PathMotion
+    getPath(float startX, float startY, float endX, float endY)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class PatternPathMotion
+    getPath(float startX, float startY, float endX, float endY)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.graphics.Path patternPath)
+    setPatternPath(android.graphics.Path patternPath)
+  class Scene
+    getCurrentScene(android.view.ViewGroup sceneRoot)
+    getSceneForLayout(android.view.ViewGroup sceneRoot, int layoutId, android.content.Context context)
+    #ctor(android.view.ViewGroup sceneRoot)
+    #ctor(android.view.ViewGroup sceneRoot, android.view.View layout)
+    #ctor(android.view.ViewGroup sceneRoot, android.view.ViewGroup layout)
+    setEnterAction(java.lang.Runnable action)
+    setExitAction(java.lang.Runnable action)
+  class SidePropagation
+    getStartDelay(android.view.ViewGroup sceneRoot, android.transition.Transition transition, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    setPropagationSpeed(float propagationSpeed)
+    setSide(int side)
+  class Slide
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    onAppear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    onDisappear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    setSlideEdge(int slideEdge)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(int slideEdge)
+  class Transition
+    addListener(android.transition.Transition.TransitionListener listener)
+    addTarget(android.view.View target)
+    addTarget(int targetId)
+    addTarget(java.lang.Class targetType)
+    addTarget(java.lang.String targetName)
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    excludeChildren(android.view.View target, boolean exclude)
+    excludeChildren(int targetId, boolean exclude)
+    excludeChildren(java.lang.Class type, boolean exclude)
+    excludeTarget(android.view.View target, boolean exclude)
+    excludeTarget(int targetId, boolean exclude)
+    excludeTarget(java.lang.Class type, boolean exclude)
+    excludeTarget(java.lang.String targetName, boolean exclude)
+    getTransitionValues(android.view.View view, boolean start)
+    isTransitionRequired(android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    removeListener(android.transition.Transition.TransitionListener listener)
+    removeTarget(android.view.View target)
+    removeTarget(int targetId)
+    removeTarget(java.lang.Class target)
+    removeTarget(java.lang.String targetName)
+    setDuration(long duration)
+    setEpicenterCallback(android.transition.Transition.EpicenterCallback epicenterCallback)
+    setInterpolator(android.animation.TimeInterpolator interpolator)
+    setMatchOrder(int... matches)
+    setPathMotion(android.transition.PathMotion pathMotion)
+    setPropagation(android.transition.TransitionPropagation transitionPropagation)
+    setStartDelay(long startDelay)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class Transition.EpicenterCallback
+    onGetEpicenter(android.transition.Transition transition)
+  interface Transition.TransitionListener
+    onTransitionCancel(android.transition.Transition transition)
+    onTransitionEnd(android.transition.Transition transition)
+    onTransitionPause(android.transition.Transition transition)
+    onTransitionResume(android.transition.Transition transition)
+    onTransitionStart(android.transition.Transition transition)
+  class TransitionInflater
+    from(android.content.Context context)
+    inflateTransition(int resource)
+    inflateTransitionManager(int resource, android.view.ViewGroup sceneRoot)
+  class TransitionListenerAdapter
+    onTransitionCancel(android.transition.Transition transition)
+    onTransitionEnd(android.transition.Transition transition)
+    onTransitionPause(android.transition.Transition transition)
+    onTransitionResume(android.transition.Transition transition)
+    onTransitionStart(android.transition.Transition transition)
+  class TransitionManager
+    beginDelayedTransition(android.view.ViewGroup sceneRoot)
+    beginDelayedTransition(android.view.ViewGroup sceneRoot, android.transition.Transition transition)
+    endTransitions(android.view.ViewGroup sceneRoot)
+    go(android.transition.Scene scene)
+    go(android.transition.Scene scene, android.transition.Transition transition)
+    setTransition(android.transition.Scene fromScene, android.transition.Scene toScene, android.transition.Transition transition)
+    setTransition(android.transition.Scene scene, android.transition.Transition transition)
+    transitionTo(android.transition.Scene scene)
+  class TransitionPropagation
+    captureValues(android.transition.TransitionValues transitionValues)
+    getStartDelay(android.view.ViewGroup sceneRoot, android.transition.Transition transition, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+  class TransitionSet
+    addListener(android.transition.Transition.TransitionListener listener)
+    addTarget(android.view.View target)
+    addTarget(int targetId)
+    addTarget(java.lang.Class targetType)
+    addTarget(java.lang.String targetName)
+    addTransition(android.transition.Transition transition)
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    excludeTarget(android.view.View target, boolean exclude)
+    excludeTarget(int targetId, boolean exclude)
+    excludeTarget(java.lang.Class type, boolean exclude)
+    excludeTarget(java.lang.String targetName, boolean exclude)
+    getTransitionAt(int index)
+    removeListener(android.transition.Transition.TransitionListener listener)
+    removeTarget(android.view.View target)
+    removeTarget(int targetId)
+    removeTarget(java.lang.Class target)
+    removeTarget(java.lang.String target)
+    removeTransition(android.transition.Transition transition)
+    setDuration(long duration)
+    setEpicenterCallback(android.transition.Transition.EpicenterCallback epicenterCallback)
+    setInterpolator(android.animation.TimeInterpolator interpolator)
+    setOrdering(int ordering)
+    setPathMotion(android.transition.PathMotion pathMotion)
+    setPropagation(android.transition.TransitionPropagation propagation)
+    setStartDelay(long startDelay)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class TransitionValues
+    equals(java.lang.Object other)
+    #ctor(android.view.View view)
+  class Visibility
+    captureEndValues(android.transition.TransitionValues transitionValues)
+    captureStartValues(android.transition.TransitionValues transitionValues)
+    createAnimator(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    isTransitionRequired(android.transition.TransitionValues startValues, android.transition.TransitionValues newValues)
+    isVisible(android.transition.TransitionValues values)
+    onAppear(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, int startVisibility, android.transition.TransitionValues endValues, int endVisibility)
+    onAppear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    onDisappear(android.view.ViewGroup sceneRoot, android.transition.TransitionValues startValues, int startVisibility, android.transition.TransitionValues endValues, int endVisibility)
+    onDisappear(android.view.ViewGroup sceneRoot, android.view.View view, android.transition.TransitionValues startValues, android.transition.TransitionValues endValues)
+    setMode(int mode)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class VisibilityPropagation
+    captureValues(android.transition.TransitionValues values)
+    getViewVisibility(android.transition.TransitionValues values)
+    getViewX(android.transition.TransitionValues values)
+    getViewY(android.transition.TransitionValues values)
+
+package android.util
+;---------------------------------------
+  class AndroidException
+    #ctor(java.lang.Exception cause)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.Throwable cause)
+  class AndroidRuntimeException
+    #ctor(java.lang.Exception cause)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.Throwable cause)
+  class ArrayMap<K,V>
+    #ctor(android.util.ArrayMap<K,V> map)
+    #ctor(int capacity)
+    containsAll(java.util.Collection<?> collection)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    ensureCapacity(int minimumCapacity)
+    equals(java.lang.Object object)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    indexOfKey(java.lang.Object key)
+    indexOfValue(java.lang.Object value)
+    keyAt(int index)
+    put(K key, V value)
+    putAll(android.util.ArrayMap<? extends K,? extends V> array)
+    putAll(java.util.Map<? extends K,? extends V> map)
+    remove(java.lang.Object key)
+    removeAll(java.util.Collection<?> collection)
+    removeAt(int index)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+    retainAll(java.util.Collection<?> collection)
+    setValueAt(int index, V value)
+    valueAt(int index)
+  class ArraySet<E>
+    add(E value)
+    addAll(android.util.ArraySet<? extends E> array)
+    addAll(java.util.Collection<? extends E> collection)
+    #ctor(android.util.ArraySet<E> set)
+    #ctor(E[] array)
+    #ctor(int capacity)
+    #ctor(java.util.Collection<? extends E> set)
+    contains(java.lang.Object key)
+    containsAll(java.util.Collection<?> collection)
+    ensureCapacity(int minimumCapacity)
+    equals(java.lang.Object object)
+    forEach(java.util.function.Consumer<? super E> action)
+    indexOf(java.lang.Object key)
+    remove(java.lang.Object object)
+    removeAll(android.util.ArraySet<? extends E> array)
+    removeAll(java.util.Collection<?> collection)
+    removeAt(int index)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> collection)
+    <T> toArray(T[] array)
+    valueAt(int index)
+  class AtomicFile
+    #ctor(java.io.File baseName)
+    failWrite(java.io.FileOutputStream str)
+    finishWrite(java.io.FileOutputStream str)
+  interface AttributeSet
+    getAttributeBooleanValue(int index, boolean defaultValue)
+    getAttributeBooleanValue(java.lang.String namespace, java.lang.String attribute, boolean defaultValue)
+    getAttributeFloatValue(int index, float defaultValue)
+    getAttributeFloatValue(java.lang.String namespace, java.lang.String attribute, float defaultValue)
+    getAttributeIntValue(int index, int defaultValue)
+    getAttributeIntValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)
+    getAttributeListValue(int index, java.lang.String[] options, int defaultValue)
+    getAttributeListValue(java.lang.String namespace, java.lang.String attribute, java.lang.String[] options, int defaultValue)
+    getAttributeName(int index)
+    getAttributeNameResource(int index)
+    getAttributeNamespace(int index)
+    getAttributeResourceValue(int index, int defaultValue)
+    getAttributeResourceValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)
+    getAttributeUnsignedIntValue(int index, int defaultValue)
+    getAttributeUnsignedIntValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)
+    getAttributeValue(int index)
+    getAttributeValue(java.lang.String namespace, java.lang.String name)
+    getIdAttributeResourceValue(int defaultValue)
+  class Base64
+    decode(byte[] input, int flags)
+    decode(byte[] input, int offset, int len, int flags)
+    decode(java.lang.String str, int flags)
+    encode(byte[] input, int flags)
+    encode(byte[] input, int offset, int len, int flags)
+    encodeToString(byte[] input, int flags)
+    encodeToString(byte[] input, int offset, int len, int flags)
+  class Base64DataException
+    #ctor(java.lang.String detailMessage)
+  class Base64InputStream
+    #ctor(java.io.InputStream in, int flags)
+    mark(int readlimit)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class Base64OutputStream
+    #ctor(java.io.OutputStream out, int flags)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class CloseGuard
+    open(java.lang.String closeMethodName)
+  class DebugUtils
+    isObjectSelected(java.lang.Object object)
+  class DisplayMetrics
+    equals(android.util.DisplayMetrics other)
+    equals(java.lang.Object o)
+    setTo(android.util.DisplayMetrics o)
+  interface Dumpable
+    dump(java.io.PrintWriter writer, java.lang.String[] args)
+  interface DumpableContainer
+    addDumpable(android.util.Dumpable dumpable)
+    removeDumpable(android.util.Dumpable dumpable)
+  class EventLog
+    getTagCode(java.lang.String name)
+    getTagName(int tag)
+    readEvents(int[] tags, java.util.Collection<android.util.EventLog.Event> output)
+    writeEvent(int tag, float value)
+    writeEvent(int tag, int value)
+    writeEvent(int tag, java.lang.Object... list)
+    writeEvent(int tag, java.lang.String str)
+    writeEvent(int tag, long value)
+  class EventLog.Event
+    equals(java.lang.Object o)
+  class EventLogTags
+    #ctor(java.io.BufferedReader input)
+    get(int tag)
+    get(java.lang.String name)
+  class FloatProperty<T>
+    #ctor(java.lang.String name)
+    set(T object, java.lang.Float value)
+    setValue(T object, float value)
+  class Half
+    abs(short h)
+    ceil(short h)
+    compare(short x, short y)
+    compareTo(android.util.Half h)
+    copySign(short magnitude, short sign)
+    equals(java.lang.Object o)
+    equals(short x, short y)
+    floor(short h)
+    getExponent(short h)
+    getSign(short h)
+    getSignificand(short h)
+    greater(short x, short y)
+    greaterEquals(short x, short y)
+    #ctor(double value)
+    #ctor(float value)
+    #ctor(java.lang.String value)
+    #ctor(short value)
+    halfToIntBits(short h)
+    halfToRawIntBits(short h)
+    halfToShortBits(short h)
+    hashCode(short h)
+    intBitsToHalf(int bits)
+    isInfinite(short h)
+    isNaN(short h)
+    isNormalized(short h)
+    less(short x, short y)
+    lessEquals(short x, short y)
+    max(short x, short y)
+    min(short x, short y)
+    parseHalf(java.lang.String s)
+    round(short h)
+    toFloat(short h)
+    toHalf(float f)
+    toHexString(short h)
+    toString(short h)
+    trunc(short h)
+    valueOf(float f)
+    valueOf(java.lang.String s)
+    valueOf(short h)
+  class IntProperty<T>
+    #ctor(java.lang.String name)
+    set(T object, java.lang.Integer value)
+    setValue(T object, int value)
+  class JsonReader
+    #ctor(java.io.Reader in)
+    setLenient(boolean lenient)
+  class JsonWriter
+    #ctor(java.io.Writer out)
+    name(java.lang.String name)
+    setIndent(java.lang.String indent)
+    setLenient(boolean lenient)
+    value(boolean value)
+    value(double value)
+    value(java.lang.Number value)
+    value(java.lang.String value)
+    value(long value)
+  class Log
+    d(java.lang.String tag, java.lang.String msg)
+    d(java.lang.String tag, java.lang.String msg, java.lang.Throwable tr)
+    e(java.lang.String tag, java.lang.String msg)
+    e(java.lang.String tag, java.lang.String msg, java.lang.Throwable tr)
+    getStackTraceString(java.lang.Throwable tr)
+    i(java.lang.String tag, java.lang.String msg)
+    i(java.lang.String tag, java.lang.String msg, java.lang.Throwable tr)
+    isLoggable(java.lang.String tag, int level)
+    println(int priority, java.lang.String tag, java.lang.String msg)
+    v(java.lang.String tag, java.lang.String msg)
+    v(java.lang.String tag, java.lang.String msg, java.lang.Throwable tr)
+    w(java.lang.String tag, java.lang.String msg)
+    w(java.lang.String tag, java.lang.String msg, java.lang.Throwable tr)
+    w(java.lang.String tag, java.lang.Throwable tr)
+    wtf(java.lang.String tag, java.lang.String msg)
+    wtf(java.lang.String tag, java.lang.String msg, java.lang.Throwable tr)
+    wtf(java.lang.String tag, java.lang.Throwable tr)
+  class LogPrinter
+    #ctor(int priority, java.lang.String tag)
+    println(java.lang.String x)
+  class LongSparseArray<E>
+    append(long key, E value)
+    delete(long key)
+    get(long key)
+    get(long key, E valueIfKeyNotFound)
+    indexOfKey(long key)
+    indexOfValue(E value)
+    keyAt(int index)
+    #ctor(int initialCapacity)
+    put(long key, E value)
+    remove(long key)
+    removeAt(int index)
+    setValueAt(int index, E value)
+    valueAt(int index)
+  class LruCache<K,V>
+    create(K key)
+    entryRemoved(boolean evicted, K key, V oldValue, V newValue)
+    get(K key)
+    #ctor(int maxSize)
+    put(K key, V value)
+    remove(K key)
+    resize(int maxSize)
+    sizeOf(K key, V value)
+    trimToSize(int maxSize)
+  class MalformedJsonException
+    #ctor(java.lang.String message)
+  class MonthDisplayHelper
+    getColumnOf(int day)
+    getDayAt(int row, int column)
+    getDigitsForRow(int row)
+    getRowOf(int day)
+    isWithinCurrentMonth(int row, int column)
+    #ctor(int year, int month)
+    #ctor(int year, int month, int weekStartDay)
+  class MutableBoolean
+    #ctor(boolean value)
+  class MutableByte
+    #ctor(byte value)
+  class MutableChar
+    #ctor(char value)
+  class MutableDouble
+    #ctor(double value)
+  class MutableFloat
+    #ctor(float value)
+  class MutableInt
+    #ctor(int value)
+  class MutableLong
+    #ctor(long value)
+  class MutableShort
+    #ctor(short value)
+  class NoSuchPropertyException
+    #ctor(java.lang.String s)
+  class Pair<F,S>
+    <A,B> create(A a, B b)
+    equals(java.lang.Object o)
+    #ctor(F first, S second)
+  class Patterns
+    concatGroups(java.util.regex.Matcher matcher)
+    digitsAndPlusOnly(java.util.regex.Matcher matcher)
+  interface Printer
+    println(java.lang.String x)
+  class PrintStreamPrinter
+    println(java.lang.String x)
+    #ctor(java.io.PrintStream pw)
+  class PrintWriterPrinter
+    println(java.lang.String x)
+    #ctor(java.io.PrintWriter pw)
+  class Property<T,V>
+    get(T object)
+    <T,V> of(java.lang.Class<T> hostType, java.lang.Class<V> valueType, java.lang.String name)
+    #ctor(java.lang.Class<V> type, java.lang.String name)
+    set(T object, V value)
+  class Range<T>
+    clamp(T value)
+    contains(android.util.Range<T> range)
+    contains(T value)
+    <T> create(T lower, T upper)
+    equals(java.lang.Object obj)
+    extend(android.util.Range<T> range)
+    extend(T value)
+    extend(T lower, T upper)
+    intersect(android.util.Range<T> range)
+    intersect(T lower, T upper)
+    #ctor(T lower, T upper)
+  class Rational
+    compareTo(android.util.Rational another)
+    equals(java.lang.Object obj)
+    parseRational(java.lang.String string)
+    #ctor(int numerator, int denominator)
+  class Size
+    equals(java.lang.Object obj)
+    parseSize(java.lang.String string)
+    #ctor(int width, int height)
+  class SizeF
+    equals(java.lang.Object obj)
+    parseSizeF(java.lang.String string)
+    #ctor(float width, float height)
+    writeToParcel(android.os.Parcel out, int flags)
+  class SparseArray<E>
+    append(int key, E value)
+    contains(int key)
+    contentEquals(android.util.SparseArray<?> other)
+    delete(int key)
+    get(int key)
+    get(int key, E valueIfKeyNotFound)
+    indexOfKey(int key)
+    indexOfValue(E value)
+    keyAt(int index)
+    put(int key, E value)
+    remove(int key)
+    removeAt(int index)
+    removeAtRange(int index, int size)
+    set(int key, E value)
+    setValueAt(int index, E value)
+    #ctor(int initialCapacity)
+    valueAt(int index)
+  class SparseBooleanArray
+    append(int key, boolean value)
+    delete(int key)
+    equals(java.lang.Object that)
+    get(int key)
+    get(int key, boolean valueIfKeyNotFound)
+    indexOfKey(int key)
+    indexOfValue(boolean value)
+    keyAt(int index)
+    put(int key, boolean value)
+    removeAt(int index)
+    setValueAt(int index, boolean value)
+    #ctor(int initialCapacity)
+    valueAt(int index)
+  class SparseIntArray
+    append(int key, int value)
+    delete(int key)
+    get(int key)
+    get(int key, int valueIfKeyNotFound)
+    indexOfKey(int key)
+    indexOfValue(int value)
+    keyAt(int index)
+    put(int key, int value)
+    removeAt(int index)
+    setValueAt(int index, int value)
+    #ctor(int initialCapacity)
+    valueAt(int index)
+  class SparseLongArray
+    append(int key, long value)
+    delete(int key)
+    get(int key)
+    get(int key, long valueIfKeyNotFound)
+    indexOfKey(int key)
+    indexOfValue(long value)
+    keyAt(int index)
+    put(int key, long value)
+    removeAt(int index)
+    #ctor(int initialCapacity)
+    valueAt(int index)
+  class StateSet
+    dump(int[] states)
+    isWildCard(int[] stateSetOrSpec)
+    stateSetMatches(int[] stateSpec, int state)
+    stateSetMatches(int[] stateSpec, int[] stateSet)
+    trimStateSet(int[] states, int newSize)
+  class StatsLog
+    logBinaryPushStateChanged(java.lang.String trainName, long trainVersionCode, int options, int state, long[] experimentIds)
+    logEvent(int label)
+    logStart(int label)
+    logStop(int label)
+  class StringBuilderPrinter
+    println(java.lang.String x)
+    #ctor(java.lang.StringBuilder builder)
+  class TimeUtils
+    getTimeZone(int offset, boolean dst, long when, java.lang.String country)
+    getTimeZoneIdsForCountryCode(java.lang.String countryCode)
+    isTimeBetween(java.time.LocalTime reference, java.time.LocalTime start, java.time.LocalTime end)
+  class TimingLogger
+    addSplit(java.lang.String splitLabel)
+    reset(java.lang.String tag, java.lang.String label)
+    #ctor(java.lang.String tag, java.lang.String label)
+  class TypedValue
+    applyDimension(int unit, float value, android.util.DisplayMetrics metrics)
+    coerceToString(int type, int data)
+    complexToDimension(int data, android.util.DisplayMetrics metrics)
+    complexToDimensionPixelOffset(int data, android.util.DisplayMetrics metrics)
+    complexToDimensionPixelSize(int data, android.util.DisplayMetrics metrics)
+    complexToFloat(int complex)
+    complexToFraction(int data, float base, float pbase)
+    deriveDimension(int unitToConvertTo, float pixelValue, android.util.DisplayMetrics metrics)
+    getDimension(android.util.DisplayMetrics metrics)
+    getFraction(float base, float pbase)
+    setTo(android.util.TypedValue other)
+  class Xml
+    asAttributeSet(org.xmlpull.v1.XmlPullParser parser)
+    findEncodingByName(java.lang.String encodingName)
+    parse(java.io.InputStream in, android.util.Xml.Encoding encoding, org.xml.sax.ContentHandler contentHandler)
+    parse(java.io.Reader in, org.xml.sax.ContentHandler contentHandler)
+    parse(java.lang.String xml, org.xml.sax.ContentHandler contentHandler)
+
+package android.util.proto
+;---------------------------------------
+  class ProtoOutputStream
+    checkFieldId(long fieldId, long expectedFlags)
+    dump(java.lang.String tag)
+    end(long token)
+    getFieldCountString(long fieldCount)
+    getFieldIdString(long fieldId)
+    getFieldTypeString(long fieldType)
+    getWireTypeString(int wireType)
+    makeFieldId(int id, long fieldFlags)
+    makeToken(int tagSize, boolean repeated, int depth, int objectId, int offset)
+    #ctor(int chunkSize)
+    #ctor(java.io.OutputStream stream)
+    start(long fieldId)
+    token2String(long token)
+    write(long fieldId, boolean val)
+    write(long fieldId, byte[] val)
+    write(long fieldId, double val)
+    write(long fieldId, float val)
+    write(long fieldId, int val)
+    write(long fieldId, java.lang.String val)
+    write(long fieldId, long val)
+    writeTag(int id, int wireType)
+
+package android.view
+;---------------------------------------
+  class AbsSavedState
+    #ctor(android.os.Parcel source)
+    #ctor(android.os.Parcel source, java.lang.ClassLoader loader)
+    #ctor(android.os.Parcelable superState)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ActionMode
+    hide(long duration)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    setCustomView(android.view.View view)
+    setSubtitle(int resId)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setTag(java.lang.Object tag)
+    setTitle(int resId)
+    setTitle(java.lang.CharSequence title)
+    setTitleOptionalHint(boolean titleOptional)
+    setType(int type)
+  interface ActionMode.Callback
+    onActionItemClicked(android.view.ActionMode mode, android.view.MenuItem item)
+    onCreateActionMode(android.view.ActionMode mode, android.view.Menu menu)
+    onDestroyActionMode(android.view.ActionMode mode)
+    onPrepareActionMode(android.view.ActionMode mode, android.view.Menu menu)
+  class ActionMode.Callback2
+    onGetContentRect(android.view.ActionMode mode, android.view.View view, android.graphics.Rect outRect)
+  class ActionProvider
+    #ctor(android.content.Context context)
+    onCreateActionView(android.view.MenuItem forItem)
+    onPrepareSubMenu(android.view.SubMenu subMenu)
+    setVisibilityListener(android.view.ActionProvider.VisibilityListener listener)
+  interface ActionProvider.VisibilityListener
+    onActionProviderVisibilityChanged(boolean isVisible)
+  interface AttachedSurfaceControl
+    addOnBufferTransformHintChangedListener(android.view.AttachedSurfaceControl.OnBufferTransformHintChangedListener listener)
+    applyTransactionOnDraw(android.view.SurfaceControl.Transaction t)
+    buildReparentTransaction(android.view.SurfaceControl child)
+    removeOnBufferTransformHintChangedListener(android.view.AttachedSurfaceControl.OnBufferTransformHintChangedListener listener)
+    setTouchableRegion(android.graphics.Region r)
+  interface AttachedSurfaceControl.OnBufferTransformHintChangedListener
+    onBufferTransformHintChanged(int hint)
+  class Choreographer
+    postFrameCallback(android.view.Choreographer.FrameCallback callback)
+    postFrameCallbackDelayed(android.view.Choreographer.FrameCallback callback, long delayMillis)
+    postVsyncCallback(android.view.Choreographer.VsyncCallback callback)
+    removeFrameCallback(android.view.Choreographer.FrameCallback callback)
+    removeVsyncCallback(android.view.Choreographer.VsyncCallback callback)
+  interface Choreographer.FrameCallback
+    doFrame(long frameTimeNanos)
+  interface Choreographer.VsyncCallback
+    onVsync(android.view.Choreographer.FrameData data)
+  class ContentInfo
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ContentInfo.Builder
+    #ctor(android.content.ClipData clip, int source)
+    #ctor(android.view.ContentInfo other)
+    setClip(android.content.ClipData clip)
+    setExtras(android.os.Bundle extras)
+    setFlags(int flags)
+    setLinkUri(android.net.Uri linkUri)
+    setSource(int source)
+  interface ContextMenu
+    setHeaderIcon(android.graphics.drawable.Drawable icon)
+    setHeaderIcon(int iconRes)
+    setHeaderTitle(int titleRes)
+    setHeaderTitle(java.lang.CharSequence title)
+    setHeaderView(android.view.View view)
+  class ContextThemeWrapper
+    applyOverrideConfiguration(android.content.res.Configuration overrideConfiguration)
+    attachBaseContext(android.content.Context newBase)
+    #ctor(android.content.Context base, android.content.res.Resources.Theme theme)
+    #ctor(android.content.Context base, int themeResId)
+    getSystemService(java.lang.String name)
+    onApplyThemeResource(android.content.res.Resources.Theme theme, int resId, boolean first)
+    setTheme(android.content.res.Resources.Theme theme)
+    setTheme(int resid)
+  class Display
+    getCurrentSizeRange(android.graphics.Point outSmallestSize, android.graphics.Point outLargestSize)
+    getMetrics(android.util.DisplayMetrics outMetrics)
+    getRealMetrics(android.util.DisplayMetrics outMetrics)
+    getRealSize(android.graphics.Point outSize)
+    getRectSize(android.graphics.Rect outSize)
+    getRoundedCorner(int position)
+    getSize(android.graphics.Point outSize)
+  class Display.HdrCapabilities
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Display.Mode
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel out, int parcelableFlags)
+  class DisplayCutout
+    #ctor(android.graphics.Insets safeInsets, android.graphics.Rect boundLeft, android.graphics.Rect boundTop, android.graphics.Rect boundRight, android.graphics.Rect boundBottom)
+    #ctor(android.graphics.Insets safeInsets, android.graphics.Rect boundLeft, android.graphics.Rect boundTop, android.graphics.Rect boundRight, android.graphics.Rect boundBottom, android.graphics.Insets waterfallInsets)
+    #ctor(android.graphics.Rect safeInsets, java.util.List<android.graphics.Rect> boundingRects)
+    equals(java.lang.Object o)
+  class DisplayCutout.Builder
+    setBoundingRectBottom(android.graphics.Rect boundingRectBottom)
+    setBoundingRectLeft(android.graphics.Rect boundingRectLeft)
+    setBoundingRectRight(android.graphics.Rect boundingRectRight)
+    setBoundingRectTop(android.graphics.Rect boundingRectTop)
+    setCutoutPath(android.graphics.Path cutoutPath)
+    setSafeInsets(android.graphics.Insets safeInsets)
+    setWaterfallInsets(android.graphics.Insets waterfallInsets)
+  class DisplayShape
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DragAndDropPermissions
+    writeToParcel(android.os.Parcel destination, int flags)
+  class DragEvent
+    writeToParcel(android.os.Parcel dest, int flags)
+  class FocusFinder
+    findNearestTouchable(android.view.ViewGroup root, int x, int y, int direction, int[] deltas)
+    findNextFocus(android.view.ViewGroup root, android.view.View focused, int direction)
+    findNextFocusFromRect(android.view.ViewGroup root, android.graphics.Rect focusedRect, int direction)
+    findNextKeyboardNavigationCluster(android.view.View root, android.view.View currentCluster, int direction)
+  class FrameMetrics
+    #ctor(android.view.FrameMetrics other)
+    getMetric(int id)
+  class FrameStats
+    getFramePresentedTimeNano(int index)
+  class GestureDetector
+    #ctor(android.content.Context context, android.view.GestureDetector.OnGestureListener listener)
+    #ctor(android.content.Context context, android.view.GestureDetector.OnGestureListener listener, android.os.Handler handler)
+    #ctor(android.content.Context context, android.view.GestureDetector.OnGestureListener listener, android.os.Handler handler, boolean unused)
+    #ctor(android.view.GestureDetector.OnGestureListener listener)
+    #ctor(android.view.GestureDetector.OnGestureListener listener, android.os.Handler handler)
+    onGenericMotionEvent(android.view.MotionEvent ev)
+    onTouchEvent(android.view.MotionEvent ev)
+    setContextClickListener(android.view.GestureDetector.OnContextClickListener onContextClickListener)
+    setIsLongpressEnabled(boolean isLongpressEnabled)
+    setOnDoubleTapListener(android.view.GestureDetector.OnDoubleTapListener onDoubleTapListener)
+  interface GestureDetector.OnContextClickListener
+    onContextClick(android.view.MotionEvent e)
+  interface GestureDetector.OnDoubleTapListener
+    onDoubleTap(android.view.MotionEvent e)
+    onDoubleTapEvent(android.view.MotionEvent e)
+    onSingleTapConfirmed(android.view.MotionEvent e)
+  interface GestureDetector.OnGestureListener
+    onDown(android.view.MotionEvent e)
+    onFling(android.view.MotionEvent e1, android.view.MotionEvent e2, float velocityX, float velocityY)
+    onLongPress(android.view.MotionEvent e)
+    onScroll(android.view.MotionEvent e1, android.view.MotionEvent e2, float distanceX, float distanceY)
+    onShowPress(android.view.MotionEvent e)
+    onSingleTapUp(android.view.MotionEvent e)
+  class GestureDetector.SimpleOnGestureListener
+    onContextClick(android.view.MotionEvent e)
+    onDoubleTap(android.view.MotionEvent e)
+    onDoubleTapEvent(android.view.MotionEvent e)
+    onDown(android.view.MotionEvent e)
+    onFling(android.view.MotionEvent e1, android.view.MotionEvent e2, float velocityX, float velocityY)
+    onLongPress(android.view.MotionEvent e)
+    onScroll(android.view.MotionEvent e1, android.view.MotionEvent e2, float distanceX, float distanceY)
+    onShowPress(android.view.MotionEvent e)
+    onSingleTapConfirmed(android.view.MotionEvent e)
+    onSingleTapUp(android.view.MotionEvent e)
+  class Gravity
+    apply(int gravity, int w, int h, android.graphics.Rect container, android.graphics.Rect outRect)
+    apply(int gravity, int w, int h, android.graphics.Rect container, android.graphics.Rect outRect, int layoutDirection)
+    apply(int gravity, int w, int h, android.graphics.Rect container, int xAdj, int yAdj, android.graphics.Rect outRect)
+    apply(int gravity, int w, int h, android.graphics.Rect container, int xAdj, int yAdj, android.graphics.Rect outRect, int layoutDirection)
+    applyDisplay(int gravity, android.graphics.Rect display, android.graphics.Rect inoutObj)
+    applyDisplay(int gravity, android.graphics.Rect display, android.graphics.Rect inoutObj, int layoutDirection)
+    getAbsoluteGravity(int gravity, int layoutDirection)
+    isHorizontal(int gravity)
+    isVertical(int gravity)
+  class HandwritingDelegateConfiguration
+    #ctor(int delegatorViewId, java.lang.Runnable initiationCallback)
+  class InflateException
+    #ctor(java.lang.String detailMessage)
+    #ctor(java.lang.String detailMessage, java.lang.Throwable throwable)
+    #ctor(java.lang.Throwable throwable)
+  class InputDevice
+    getDevice(int id)
+    getKeyCodeForKeyLocation(int locationKeyCode)
+    getMotionRange(int axis)
+    getMotionRange(int axis, int source)
+    hasKeys(int... keys)
+    supportsSource(int source)
+    writeToParcel(android.os.Parcel out, int flags)
+  class InputDevice.MotionRange
+    isFromSource(int source)
+  class InputEvent
+    isFromSource(int source)
+  interface InputQueue.Callback
+    onInputQueueCreated(android.view.InputQueue queue)
+    onInputQueueDestroyed(android.view.InputQueue queue)
+  class KeyboardShortcutGroup
+    addItem(android.view.KeyboardShortcutInfo item)
+    #ctor(java.lang.CharSequence label)
+    #ctor(java.lang.CharSequence label, java.util.List<android.view.KeyboardShortcutInfo> items)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class KeyboardShortcutInfo
+    #ctor(java.lang.CharSequence label, char baseCharacter, int modifiers)
+    #ctor(java.lang.CharSequence label, int keycode, int modifiers)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class KeyCharacterMap
+    deviceHasKey(int keyCode)
+    deviceHasKeys(int[] keyCodes)
+    equals(java.lang.Object obj)
+    get(int keyCode, int metaState)
+    getDeadChar(int accent, int c)
+    getDisplayLabel(int keyCode)
+    getEvents(char[] chars)
+    getKeyData(int keyCode, android.view.KeyCharacterMap.KeyData results)
+    getMatch(int keyCode, char[] chars)
+    getMatch(int keyCode, char[] chars, int metaState)
+    getNumber(int keyCode)
+    isPrintingKey(int keyCode)
+    load(int deviceId)
+    writeToParcel(android.os.Parcel out, int flags)
+  class KeyCharacterMap.UnavailableException
+    #ctor(java.lang.String msg)
+  class KeyEvent
+    changeAction(android.view.KeyEvent event, int action)
+    changeFlags(android.view.KeyEvent event, int flags)
+    changeTimeRepeat(android.view.KeyEvent event, long eventTime, int newRepeat)
+    changeTimeRepeat(android.view.KeyEvent event, long eventTime, int newRepeat, int newFlags)
+    dispatch(android.view.KeyEvent.Callback receiver)
+    dispatch(android.view.KeyEvent.Callback receiver, android.view.KeyEvent.DispatcherState state, java.lang.Object target)
+    getDeadChar(int accent, int c)
+    getKeyData(android.view.KeyCharacterMap.KeyData results)
+    getMatch(char[] chars)
+    getMatch(char[] chars, int metaState)
+    getUnicodeChar(int metaState)
+    hasModifiers(int modifiers)
+    isGamepadButton(int keyCode)
+    isMediaSessionKey(int keyCode)
+    isModifierKey(int keyCode)
+    keyCodeFromString(java.lang.String symbolicName)
+    keyCodeToString(int keyCode)
+    #ctor(android.view.KeyEvent origEvent)
+    #ctor(android.view.KeyEvent origEvent, long eventTime, int newRepeat)
+    #ctor(int action, int code)
+    #ctor(long time, java.lang.String characters, int deviceId, int flags)
+    #ctor(long downTime, long eventTime, int action, int code, int repeat)
+    #ctor(long downTime, long eventTime, int action, int code, int repeat, int metaState)
+    #ctor(long downTime, long eventTime, int action, int code, int repeat, int metaState, int deviceId, int scancode)
+    #ctor(long downTime, long eventTime, int action, int code, int repeat, int metaState, int deviceId, int scancode, int flags)
+    #ctor(long downTime, long eventTime, int action, int code, int repeat, int metaState, int deviceId, int scancode, int flags, int source)
+    metaStateHasModifiers(int metaState, int modifiers)
+    metaStateHasNoModifiers(int metaState)
+    normalizeMetaState(int metaState)
+    setSource(int source)
+    writeToParcel(android.os.Parcel out, int flags)
+  interface KeyEvent.Callback
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int count, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+  class KeyEvent.DispatcherState
+    handleUpEvent(android.view.KeyEvent event)
+    isTracking(android.view.KeyEvent event)
+    performedLongPress(android.view.KeyEvent event)
+    reset(java.lang.Object target)
+    startTracking(android.view.KeyEvent event, java.lang.Object target)
+  class LayoutInflater
+    cloneInContext(android.content.Context newContext)
+    createView(android.content.Context viewContext, java.lang.String name, java.lang.String prefix, android.util.AttributeSet attrs)
+    createView(java.lang.String name, java.lang.String prefix, android.util.AttributeSet attrs)
+    from(android.content.Context context)
+    inflate(int resource, android.view.ViewGroup root)
+    inflate(int resource, android.view.ViewGroup root, boolean attachToRoot)
+    inflate(org.xmlpull.v1.XmlPullParser parser, android.view.ViewGroup root)
+    inflate(org.xmlpull.v1.XmlPullParser parser, android.view.ViewGroup root, boolean attachToRoot)
+    #ctor(android.content.Context context)
+    #ctor(android.view.LayoutInflater original, android.content.Context newContext)
+    onCreateView(android.content.Context viewContext, android.view.View parent, java.lang.String name, android.util.AttributeSet attrs)
+    onCreateView(android.view.View parent, java.lang.String name, android.util.AttributeSet attrs)
+    onCreateView(java.lang.String name, android.util.AttributeSet attrs)
+    setFactory(android.view.LayoutInflater.Factory factory)
+    setFactory2(android.view.LayoutInflater.Factory2 factory)
+    setFilter(android.view.LayoutInflater.Filter filter)
+  interface LayoutInflater.Factory
+    onCreateView(java.lang.String name, android.content.Context context, android.util.AttributeSet attrs)
+  interface LayoutInflater.Factory2
+    onCreateView(android.view.View parent, java.lang.String name, android.content.Context context, android.util.AttributeSet attrs)
+  interface LayoutInflater.Filter
+    onLoadClass(java.lang.Class clazz)
+  interface Menu
+    add(int titleRes)
+    add(int groupId, int itemId, int order, int titleRes)
+    add(int groupId, int itemId, int order, java.lang.CharSequence title)
+    add(java.lang.CharSequence title)
+    addIntentOptions(int groupId, int itemId, int order, android.content.ComponentName caller, android.content.Intent[] specifics, android.content.Intent intent, int flags, android.view.MenuItem[] outSpecificItems)
+    addSubMenu(int titleRes)
+    addSubMenu(int groupId, int itemId, int order, int titleRes)
+    addSubMenu(int groupId, int itemId, int order, java.lang.CharSequence title)
+    addSubMenu(java.lang.CharSequence title)
+    findItem(int id)
+    getItem(int index)
+    isShortcutKey(int keyCode, android.view.KeyEvent event)
+    performIdentifierAction(int id, int flags)
+    performShortcut(int keyCode, android.view.KeyEvent event, int flags)
+    removeGroup(int groupId)
+    removeItem(int id)
+    setGroupCheckable(int group, boolean checkable, boolean exclusive)
+    setGroupDividerEnabled(boolean groupDividerEnabled)
+    setGroupEnabled(int group, boolean enabled)
+    setGroupVisible(int group, boolean visible)
+    setQwertyMode(boolean isQwerty)
+  class MenuInflater
+    inflate(int menuRes, android.view.Menu menu)
+    #ctor(android.content.Context context)
+  interface MenuItem
+    setActionProvider(android.view.ActionProvider actionProvider)
+    setActionView(android.view.View view)
+    setActionView(int resId)
+    setAlphabeticShortcut(char alphaChar)
+    setAlphabeticShortcut(char alphaChar, int alphaModifiers)
+    setCheckable(boolean checkable)
+    setChecked(boolean checked)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setEnabled(boolean enabled)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int iconRes)
+    setIconTintBlendMode(android.graphics.BlendMode blendMode)
+    setIconTintList(android.content.res.ColorStateList tint)
+    setIconTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setIntent(android.content.Intent intent)
+    setNumericShortcut(char numericChar)
+    setNumericShortcut(char numericChar, int numericModifiers)
+    setOnActionExpandListener(android.view.MenuItem.OnActionExpandListener listener)
+    setOnMenuItemClickListener(android.view.MenuItem.OnMenuItemClickListener menuItemClickListener)
+    setShortcut(char numericChar, char alphaChar)
+    setShortcut(char numericChar, char alphaChar, int numericModifiers, int alphaModifiers)
+    setShowAsAction(int actionEnum)
+    setShowAsActionFlags(int actionEnum)
+    setTitle(int title)
+    setTitle(java.lang.CharSequence title)
+    setTitleCondensed(java.lang.CharSequence title)
+    setTooltipText(java.lang.CharSequence tooltipText)
+    setVisible(boolean visible)
+  interface MenuItem.OnActionExpandListener
+    onMenuItemActionCollapse(android.view.MenuItem item)
+    onMenuItemActionExpand(android.view.MenuItem item)
+  interface MenuItem.OnMenuItemClickListener
+    onMenuItemClick(android.view.MenuItem item)
+  class MotionEvent
+    actionToString(int action)
+    addBatch(long eventTime, android.view.MotionEvent.PointerCoords[] pointerCoords, int metaState)
+    addBatch(long eventTime, float x, float y, float pressure, float size, int metaState)
+    axisFromString(java.lang.String symbolicName)
+    axisToString(int axis)
+    findPointerIndex(int pointerId)
+    getAxisValue(int axis)
+    getAxisValue(int axis, int pointerIndex)
+    getHistoricalAxisValue(int axis, int pos)
+    getHistoricalAxisValue(int axis, int pointerIndex, int pos)
+    getHistoricalEventTime(int pos)
+    getHistoricalOrientation(int pos)
+    getHistoricalOrientation(int pointerIndex, int pos)
+    getHistoricalPointerCoords(int pointerIndex, int pos, android.view.MotionEvent.PointerCoords outPointerCoords)
+    getHistoricalPressure(int pos)
+    getHistoricalPressure(int pointerIndex, int pos)
+    getHistoricalSize(int pos)
+    getHistoricalSize(int pointerIndex, int pos)
+    getHistoricalToolMajor(int pos)
+    getHistoricalToolMajor(int pointerIndex, int pos)
+    getHistoricalToolMinor(int pos)
+    getHistoricalToolMinor(int pointerIndex, int pos)
+    getHistoricalTouchMajor(int pos)
+    getHistoricalTouchMajor(int pointerIndex, int pos)
+    getHistoricalTouchMinor(int pos)
+    getHistoricalTouchMinor(int pointerIndex, int pos)
+    getHistoricalX(int pos)
+    getHistoricalX(int pointerIndex, int pos)
+    getHistoricalY(int pos)
+    getHistoricalY(int pointerIndex, int pos)
+    getOrientation(int pointerIndex)
+    getPointerCoords(int pointerIndex, android.view.MotionEvent.PointerCoords outPointerCoords)
+    getPointerId(int pointerIndex)
+    getPointerProperties(int pointerIndex, android.view.MotionEvent.PointerProperties outPointerProperties)
+    getPressure(int pointerIndex)
+    getRawX(int pointerIndex)
+    getRawY(int pointerIndex)
+    getSize(int pointerIndex)
+    getToolMajor(int pointerIndex)
+    getToolMinor(int pointerIndex)
+    getToolType(int pointerIndex)
+    getTouchMajor(int pointerIndex)
+    getTouchMinor(int pointerIndex)
+    getX(int pointerIndex)
+    getY(int pointerIndex)
+    isButtonPressed(int button)
+    obtain(android.view.MotionEvent other)
+    obtain(long downTime, long eventTime, int action, float x, float y, float pressure, float size, int metaState, float xPrecision, float yPrecision, int deviceId, int edgeFlags)
+    obtain(long downTime, long eventTime, int action, float x, float y, int metaState)
+    obtain(long downTime, long eventTime, int action, int pointerCount, android.view.MotionEvent.PointerProperties[] pointerProperties, android.view.MotionEvent.PointerCoords[] pointerCoords, int metaState, int buttonState, float xPrecision, float yPrecision, int deviceId, int edgeFlags, int source, int flags)
+    obtain(long downTime, long eventTime, int action, int pointerCount, android.view.MotionEvent.PointerProperties[] pointerProperties, android.view.MotionEvent.PointerCoords[] pointerCoords, int metaState, int buttonState, float xPrecision, float yPrecision, int deviceId, int edgeFlags, int source, int displayId, int flags, int classification)
+    obtain(long downTime, long eventTime, int action, int pointerCount, float x, float y, float pressure, float size, int metaState, float xPrecision, float yPrecision, int deviceId, int edgeFlags)
+    obtain(long downTime, long eventTime, int action, int pointerCount, int[] pointerIds, android.view.MotionEvent.PointerCoords[] pointerCoords, int metaState, float xPrecision, float yPrecision, int deviceId, int edgeFlags, int source, int flags)
+    obtainNoHistory(android.view.MotionEvent other)
+    offsetLocation(float deltaX, float deltaY)
+    setAction(int action)
+    setEdgeFlags(int flags)
+    setLocation(float x, float y)
+    setSource(int source)
+    transform(android.graphics.Matrix matrix)
+    writeToParcel(android.os.Parcel out, int flags)
+  class MotionEvent.PointerCoords
+    copyFrom(android.view.MotionEvent.PointerCoords other)
+    getAxisValue(int axis)
+    #ctor(android.view.MotionEvent.PointerCoords other)
+    setAxisValue(int axis, float value)
+  class MotionEvent.PointerProperties
+    copyFrom(android.view.MotionEvent.PointerProperties other)
+    equals(java.lang.Object other)
+    #ctor(android.view.MotionEvent.PointerProperties other)
+  interface OnReceiveContentListener
+    onReceiveContent(android.view.View view, android.view.ContentInfo payload)
+  class OrientationEventListener
+    onOrientationChanged(int orientation)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, int rate)
+  class OrientationListener
+    onAccuracyChanged(int sensor, int accuracy)
+    onOrientationChanged(int orientation)
+    onSensorChanged(int sensor, float[] values)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, int rate)
+  class PixelCopy
+    request(android.view.PixelCopy.Request request, java.util.concurrent.Executor callbackExecutor, java.util.function.Consumer<android.view.PixelCopy.Result> listener)
+    request(android.view.Surface source, android.graphics.Bitmap dest, android.view.PixelCopy.OnPixelCopyFinishedListener listener, android.os.Handler listenerThread)
+    request(android.view.Surface source, android.graphics.Rect srcRect, android.graphics.Bitmap dest, android.view.PixelCopy.OnPixelCopyFinishedListener listener, android.os.Handler listenerThread)
+    request(android.view.SurfaceView source, android.graphics.Bitmap dest, android.view.PixelCopy.OnPixelCopyFinishedListener listener, android.os.Handler listenerThread)
+    request(android.view.SurfaceView source, android.graphics.Rect srcRect, android.graphics.Bitmap dest, android.view.PixelCopy.OnPixelCopyFinishedListener listener, android.os.Handler listenerThread)
+    request(android.view.Window source, android.graphics.Bitmap dest, android.view.PixelCopy.OnPixelCopyFinishedListener listener, android.os.Handler listenerThread)
+    request(android.view.Window source, android.graphics.Rect srcRect, android.graphics.Bitmap dest, android.view.PixelCopy.OnPixelCopyFinishedListener listener, android.os.Handler listenerThread)
+  interface PixelCopy.OnPixelCopyFinishedListener
+    onPixelCopyFinished(int copyResult)
+  class PixelCopy.Request.Builder
+    ofSurface(android.view.Surface source)
+    ofSurface(android.view.SurfaceView source)
+    ofWindow(android.view.View source)
+    ofWindow(android.view.Window source)
+    setDestinationBitmap(android.graphics.Bitmap destination)
+    setSourceRect(android.graphics.Rect srcRect)
+  class PointerIcon
+    create(android.graphics.Bitmap bitmap, float hotSpotX, float hotSpotY)
+    equals(java.lang.Object other)
+    getSystemIcon(android.content.Context context, int type)
+    load(android.content.res.Resources resources, int resourceId)
+    writeToParcel(android.os.Parcel out, int flags)
+  class RoundedCorner
+    equals(java.lang.Object o)
+    #ctor(int position, int radius, int centerX, int centerY)
+    writeToParcel(android.os.Parcel out, int flags)
+  class ScaleGestureDetector
+    onTouchEvent(android.view.MotionEvent event)
+    #ctor(android.content.Context context, android.view.ScaleGestureDetector.OnScaleGestureListener listener)
+    #ctor(android.content.Context context, android.view.ScaleGestureDetector.OnScaleGestureListener listener, android.os.Handler handler)
+    setQuickScaleEnabled(boolean scales)
+    setStylusScaleEnabled(boolean scales)
+  interface ScaleGestureDetector.OnScaleGestureListener
+    onScale(android.view.ScaleGestureDetector detector)
+    onScaleBegin(android.view.ScaleGestureDetector detector)
+    onScaleEnd(android.view.ScaleGestureDetector detector)
+  class ScaleGestureDetector.SimpleOnScaleGestureListener
+    onScale(android.view.ScaleGestureDetector detector)
+    onScaleBegin(android.view.ScaleGestureDetector detector)
+    onScaleEnd(android.view.ScaleGestureDetector detector)
+  interface ScrollCaptureCallback
+    onScrollCaptureEnd(java.lang.Runnable onReady)
+    onScrollCaptureImageRequest(android.view.ScrollCaptureSession session, android.os.CancellationSignal signal, android.graphics.Rect captureArea, java.util.function.Consumer<android.graphics.Rect> onComplete)
+    onScrollCaptureSearch(android.os.CancellationSignal signal, java.util.function.Consumer<android.graphics.Rect> onReady)
+    onScrollCaptureStart(android.view.ScrollCaptureSession session, android.os.CancellationSignal signal, java.lang.Runnable onReady)
+  class ScrollCaptureSession
+    #ctor(android.view.Surface surface, android.graphics.Rect scrollBounds, android.graphics.Point positionInWindow)
+  class ScrollCaptureTarget
+    #ctor(android.view.View scrollTarget, android.graphics.Rect localVisibleRect, android.graphics.Point positionInWindow, android.view.ScrollCaptureCallback callback)
+    setScrollBounds(android.graphics.Rect scrollBounds)
+  class SearchEvent
+    #ctor(android.view.InputDevice inputDevice)
+  class SoundEffectConstants
+    getConstantForFocusDirection(int direction, boolean repeating)
+    getContantForFocusDirection(int direction)
+  interface SubMenu
+    setHeaderIcon(android.graphics.drawable.Drawable icon)
+    setHeaderIcon(int iconRes)
+    setHeaderTitle(int titleRes)
+    setHeaderTitle(java.lang.CharSequence title)
+    setHeaderView(android.view.View view)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setIcon(int iconRes)
+  class Surface
+    lockCanvas(android.graphics.Rect inOutDirty)
+    readFromParcel(android.os.Parcel source)
+    setFrameRate(float frameRate, int compatibility)
+    setFrameRate(float frameRate, int compatibility, int changeFrameRateStrategy)
+    #ctor(android.graphics.SurfaceTexture surfaceTexture)
+    #ctor(android.view.SurfaceControl from)
+    unlockCanvas(android.graphics.Canvas canvas)
+    unlockCanvasAndPost(android.graphics.Canvas canvas)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Surface.OutOfResourcesException
+    #ctor(java.lang.String name)
+  class SurfaceControl
+    readFromParcel(android.os.Parcel in)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SurfaceControl.Builder
+    setBufferSize(int width, int height)
+    setFormat(int format)
+    setHidden(boolean hidden)
+    setName(java.lang.String name)
+    setOpaque(boolean opaque)
+    setParent(android.view.SurfaceControl parent)
+  class SurfaceControl.Transaction
+    addTransactionCommittedListener(java.util.concurrent.Executor executor, android.view.SurfaceControl.TransactionCommittedListener listener)
+    clearFrameRate(android.view.SurfaceControl sc)
+    merge(android.view.SurfaceControl.Transaction other)
+    reparent(android.view.SurfaceControl sc, android.view.SurfaceControl newParent)
+    setAlpha(android.view.SurfaceControl sc, float alpha)
+    setBuffer(android.view.SurfaceControl sc, android.hardware.HardwareBuffer buffer)
+    setBuffer(android.view.SurfaceControl sc, android.hardware.HardwareBuffer buffer, android.hardware.SyncFence fence)
+    setBuffer(android.view.SurfaceControl sc, android.hardware.HardwareBuffer buffer, android.hardware.SyncFence fence, java.util.function.Consumer<android.hardware.SyncFence> releaseCallback)
+    setBufferSize(android.view.SurfaceControl sc, int w, int h)
+    setBufferTransform(android.view.SurfaceControl sc, int transform)
+    setCrop(android.view.SurfaceControl sc, android.graphics.Rect crop)
+    setDamageRegion(android.view.SurfaceControl sc, android.graphics.Region region)
+    setDataSpace(android.view.SurfaceControl sc, int dataspace)
+    setFrameRate(android.view.SurfaceControl sc, float frameRate, int compatibility)
+    setFrameRate(android.view.SurfaceControl sc, float frameRate, int compatibility, int changeFrameRateStrategy)
+    setGeometry(android.view.SurfaceControl sc, android.graphics.Rect sourceCrop, android.graphics.Rect destFrame, int orientation)
+    setLayer(android.view.SurfaceControl sc, int z)
+    setOpaque(android.view.SurfaceControl sc, boolean isOpaque)
+    setPosition(android.view.SurfaceControl sc, float x, float y)
+    setScale(android.view.SurfaceControl sc, float scaleX, float scaleY)
+    setVisibility(android.view.SurfaceControl sc, boolean visible)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SurfaceControlViewHost
+    relayout(int width, int height)
+    setView(android.view.View view, int width, int height)
+    #ctor(android.content.Context context, android.view.Display display, android.os.IBinder hostToken)
+  class SurfaceControlViewHost.SurfacePackage
+    notifyConfigurationChanged(android.content.res.Configuration c)
+    #ctor(android.view.SurfaceControlViewHost.SurfacePackage other)
+    writeToParcel(android.os.Parcel out, int flags)
+  interface SurfaceHolder
+    addCallback(android.view.SurfaceHolder.Callback callback)
+    lockCanvas(android.graphics.Rect dirty)
+    removeCallback(android.view.SurfaceHolder.Callback callback)
+    setFixedSize(int width, int height)
+    setFormat(int format)
+    setKeepScreenOn(boolean screenOn)
+    setType(int type)
+    unlockCanvasAndPost(android.graphics.Canvas canvas)
+  class SurfaceHolder.BadSurfaceTypeException
+    #ctor(java.lang.String name)
+  interface SurfaceHolder.Callback
+    surfaceChanged(android.view.SurfaceHolder holder, int format, int width, int height)
+    surfaceCreated(android.view.SurfaceHolder holder)
+    surfaceDestroyed(android.view.SurfaceHolder holder)
+  interface SurfaceHolder.Callback2
+    surfaceRedrawNeeded(android.view.SurfaceHolder holder)
+    surfaceRedrawNeededAsync(android.view.SurfaceHolder holder, java.lang.Runnable drawingFinished)
+  class SurfaceView
+    dispatchDraw(android.graphics.Canvas canvas)
+    draw(android.graphics.Canvas canvas)
+    gatherTransparentRegion(android.graphics.Region region)
+    onFocusChanged(boolean gainFocus, int direction, android.graphics.Rect previouslyFocusedRect)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onSetAlpha(int alpha)
+    onWindowVisibilityChanged(int visibility)
+    setAlpha(float alpha)
+    setChildSurfacePackage(android.view.SurfaceControlViewHost.SurfacePackage p)
+    setClipBounds(android.graphics.Rect clipBounds)
+    setSecure(boolean isSecure)
+    setVisibility(int visibility)
+    setZOrderMediaOverlay(boolean isMediaOverlay)
+    setZOrderOnTop(boolean onTop)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class TextureView
+    draw(android.graphics.Canvas canvas)
+    getBitmap(android.graphics.Bitmap bitmap)
+    getBitmap(int width, int height)
+    getTransform(android.graphics.Matrix transform)
+    lockCanvas(android.graphics.Rect dirty)
+    onDraw(android.graphics.Canvas canvas)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    setBackgroundDrawable(android.graphics.drawable.Drawable background)
+    setForeground(android.graphics.drawable.Drawable foreground)
+    setLayerPaint(android.graphics.Paint paint)
+    setLayerType(int layerType, android.graphics.Paint paint)
+    setOpaque(boolean opaque)
+    setSurfaceTexture(android.graphics.SurfaceTexture surfaceTexture)
+    setSurfaceTextureListener(android.view.TextureView.SurfaceTextureListener listener)
+    setTransform(android.graphics.Matrix transform)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    unlockCanvasAndPost(android.graphics.Canvas canvas)
+  interface TextureView.SurfaceTextureListener
+    onSurfaceTextureAvailable(android.graphics.SurfaceTexture surface, int width, int height)
+    onSurfaceTextureDestroyed(android.graphics.SurfaceTexture surface)
+    onSurfaceTextureSizeChanged(android.graphics.SurfaceTexture surface, int width, int height)
+    onSurfaceTextureUpdated(android.graphics.SurfaceTexture surface)
+  class TouchDelegate
+    onTouchEvent(android.view.MotionEvent event)
+    onTouchExplorationHoverEvent(android.view.MotionEvent event)
+    #ctor(android.graphics.Rect bounds, android.view.View delegateView)
+  class VelocityTracker
+    addMovement(android.view.MotionEvent event)
+    computeCurrentVelocity(int units)
+    computeCurrentVelocity(int units, float maxVelocity)
+    getAxisVelocity(int axis)
+    getAxisVelocity(int axis, int id)
+    getXVelocity(int id)
+    getYVelocity(int id)
+    isAxisSupported(int axis)
+  class VerifiedInputEvent
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VerifiedKeyEvent
+    equals(java.lang.Object o)
+    getFlag(int flag)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class VerifiedMotionEvent
+    equals(java.lang.Object o)
+    getFlag(int flag)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class View
+    addChildrenForAccessibility(java.util.ArrayList<android.view.View> outChildren)
+    addExtraDataToAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo info, java.lang.String extraDataKey, android.os.Bundle arguments)
+    addFocusables(java.util.ArrayList<android.view.View> views, int direction)
+    addFocusables(java.util.ArrayList<android.view.View> views, int direction, int focusableMode)
+    addKeyboardNavigationClusters(java.util.Collection<android.view.View> views, int direction)
+    addOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener listener)
+    addOnLayoutChangeListener(android.view.View.OnLayoutChangeListener listener)
+    addOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener listener)
+    addTouchables(java.util.ArrayList<android.view.View> views)
+    announceForAccessibility(java.lang.CharSequence text)
+    autofill(android.util.SparseArray<android.view.autofill.AutofillValue> values)
+    autofill(android.view.autofill.AutofillValue value)
+    awakenScrollBars(int startDelay)
+    awakenScrollBars(int startDelay, boolean invalidate)
+    buildDrawingCache(boolean autoScale)
+    canScrollHorizontally(int direction)
+    canScrollVertically(int direction)
+    checkInputConnectionProxy(android.view.View view)
+    combineMeasuredStates(int curState, int newState)
+    computeSystemWindowInsets(android.view.WindowInsets in, android.graphics.Rect outLocalInsets)
+    createContextMenu(android.view.ContextMenu menu)
+    dispatchApplyWindowInsets(android.view.WindowInsets insets)
+    dispatchCapturedPointerEvent(android.view.MotionEvent event)
+    dispatchConfigurationChanged(android.content.res.Configuration newConfig)
+    dispatchCreateViewTranslationRequest(java.util.Map<android.view.autofill.AutofillId,long[]> viewIds, int[] supportedFormats, android.view.translation.TranslationCapability capability, java.util.List<android.view.translation.ViewTranslationRequest> requests)
+    dispatchDisplayHint(int hint)
+    dispatchDragEvent(android.view.DragEvent event)
+    dispatchDraw(android.graphics.Canvas canvas)
+    dispatchDrawableHotspotChanged(float x, float y)
+    dispatchGenericFocusedEvent(android.view.MotionEvent event)
+    dispatchGenericMotionEvent(android.view.MotionEvent event)
+    dispatchGenericPointerEvent(android.view.MotionEvent event)
+    dispatchHoverEvent(android.view.MotionEvent event)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchKeyEventPreIme(android.view.KeyEvent event)
+    dispatchKeyShortcutEvent(android.view.KeyEvent event)
+    dispatchNestedFling(float velocityX, float velocityY, boolean consumed)
+    dispatchNestedPreFling(float velocityX, float velocityY)
+    dispatchNestedPrePerformAccessibilityAction(int action, android.os.Bundle arguments)
+    dispatchNestedPreScroll(int dx, int dy, int[] consumed, int[] offsetInWindow)
+    dispatchNestedScroll(int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed, int[] offsetInWindow)
+    dispatchPointerCaptureChanged(boolean hasCapture)
+    dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    dispatchProvideAutofillStructure(android.view.ViewStructure structure, int flags)
+    dispatchProvideStructure(android.view.ViewStructure structure)
+    dispatchRestoreInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchSaveInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchScrollCaptureSearch(android.graphics.Rect localVisibleRect, android.graphics.Point windowOffset, java.util.function.Consumer<android.view.ScrollCaptureTarget> targets)
+    dispatchSetActivated(boolean activated)
+    dispatchSetPressed(boolean pressed)
+    dispatchSetSelected(boolean selected)
+    dispatchSystemUiVisibilityChanged(int visibility)
+    dispatchTouchEvent(android.view.MotionEvent event)
+    dispatchTrackballEvent(android.view.MotionEvent event)
+    dispatchUnhandledMove(android.view.View focused, int direction)
+    dispatchVisibilityChanged(android.view.View changedView, int visibility)
+    dispatchWindowFocusChanged(boolean hasFocus)
+    dispatchWindowInsetsAnimationEnd(android.view.WindowInsetsAnimation animation)
+    dispatchWindowInsetsAnimationPrepare(android.view.WindowInsetsAnimation animation)
+    dispatchWindowInsetsAnimationProgress(android.view.WindowInsets insets, java.util.List<android.view.WindowInsetsAnimation> runningAnimations)
+    dispatchWindowInsetsAnimationStart(android.view.WindowInsetsAnimation animation, android.view.WindowInsetsAnimation.Bounds bounds)
+    dispatchWindowSystemUiVisiblityChanged(int visible)
+    dispatchWindowVisibilityChanged(int visibility)
+    draw(android.graphics.Canvas canvas)
+    drawableHotspotChanged(float x, float y)
+    <T> findViewById(int id)
+    findViewsWithText(java.util.ArrayList<android.view.View> outViews, java.lang.CharSequence searched, int flags)
+    <T> findViewWithTag(java.lang.Object tag)
+    fitSystemWindows(android.graphics.Rect insets)
+    focusSearch(int direction)
+    forceHasOverlappingRendering(boolean hasOverlappingRendering)
+    gatherTransparentRegion(android.graphics.Region region)
+    generateDisplayHash(java.lang.String hashAlgorithm, android.graphics.Rect bounds, java.util.concurrent.Executor executor, android.view.displayhash.DisplayHashResultCallback callback)
+    getAttributeResolutionStack(int attribute)
+    getClipBounds(android.graphics.Rect outRect)
+    getDefaultSize(int size, int measureSpec)
+    getDrawingCache(boolean autoScale)
+    getDrawingRect(android.graphics.Rect outRect)
+    getFocusables(int direction)
+    getFocusedRect(android.graphics.Rect r)
+    getGlobalVisibleRect(android.graphics.Rect r)
+    getGlobalVisibleRect(android.graphics.Rect r, android.graphics.Point globalOffset)
+    getHitRect(android.graphics.Rect outRect)
+    getLocalVisibleRect(android.graphics.Rect r)
+    getLocationInSurface(int[] location)
+    getLocationInWindow(int[] outLocation)
+    getLocationOnScreen(int[] outLocation)
+    getTag(int key)
+    getWindowVisibleDisplayFrame(android.graphics.Rect outRect)
+    inflate(android.content.Context context, int resource, android.view.ViewGroup root)
+    invalidate(android.graphics.Rect dirty)
+    invalidate(int l, int t, int r, int b)
+    invalidateDrawable(android.graphics.drawable.Drawable drawable)
+    isVisibleToUserForAutofill(int virtualId)
+    keyboardNavigationClusterSearch(android.view.View currentCluster, int direction)
+    layout(int l, int t, int r, int b)
+    measure(int widthMeasureSpec, int heightMeasureSpec)
+    mergeDrawableStates(int[] baseState, int[] additionalState)
+    offsetLeftAndRight(int offset)
+    offsetTopAndBottom(int offset)
+    onApplyWindowInsets(android.view.WindowInsets insets)
+    onCapturedPointerEvent(android.view.MotionEvent event)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onCreateContextMenu(android.view.ContextMenu menu)
+    onCreateDrawableState(int extraSpace)
+    onCreateInputConnection(android.view.inputmethod.EditorInfo outAttrs)
+    onCreateViewTranslationRequest(int[] supportedFormats, java.util.function.Consumer<android.view.translation.ViewTranslationRequest> requestsCollector)
+    onCreateVirtualViewTranslationRequests(long[] virtualIds, int[] supportedFormats, java.util.function.Consumer<android.view.translation.ViewTranslationRequest> requestsCollector)
+    onDisplayHint(int hint)
+    onDragEvent(android.view.DragEvent event)
+    onDraw(android.graphics.Canvas canvas)
+    onDrawForeground(android.graphics.Canvas canvas)
+    onDrawScrollBars(android.graphics.Canvas canvas)
+    onFilterTouchEventForSecurity(android.view.MotionEvent event)
+    onFocusChanged(boolean gainFocus, int direction, android.graphics.Rect previouslyFocusedRect)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onHoverChanged(boolean hovered)
+    onHoverEvent(android.view.MotionEvent event)
+    onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo info)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyLongPress(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyPreIme(int keyCode, android.view.KeyEvent event)
+    onKeyShortcut(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)
+    onPointerCaptureChange(boolean hasCapture)
+    onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    onProvideAutofillStructure(android.view.ViewStructure structure, int flags)
+    onProvideAutofillVirtualStructure(android.view.ViewStructure structure, int flags)
+    onProvideContentCaptureStructure(android.view.ViewStructure structure, int flags)
+    onProvideStructure(android.view.ViewStructure structure)
+    onProvideVirtualStructure(android.view.ViewStructure structure)
+    onReceiveContent(android.view.ContentInfo payload)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onRtlPropertiesChanged(int layoutDirection)
+    onScreenStateChanged(int screenState)
+    onScrollCaptureSearch(android.graphics.Rect localVisibleRect, android.graphics.Point windowOffset, java.util.function.Consumer<android.view.ScrollCaptureTarget> targets)
+    onScrollChanged(int l, int t, int oldl, int oldt)
+    onSetAlpha(int alpha)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onViewTranslationResponse(android.view.translation.ViewTranslationResponse response)
+    onVirtualViewTranslationResponses(android.util.LongSparseArray<android.view.translation.ViewTranslationResponse> response)
+    onVisibilityAggregated(boolean isVisible)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    onWindowSystemUiVisibilityChanged(int visible)
+    onWindowVisibilityChanged(int visibility)
+    overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent)
+    performAccessibilityAction(int action, android.os.Bundle arguments)
+    performContextClick(float x, float y)
+    performHapticFeedback(int feedbackConstant)
+    performHapticFeedback(int feedbackConstant, int flags)
+    performLongClick(float x, float y)
+    performReceiveContent(android.view.ContentInfo payload)
+    playSoundEffect(int soundConstant)
+    post(java.lang.Runnable action)
+    postDelayed(java.lang.Runnable action, long delayMillis)
+    postInvalidate(int left, int top, int right, int bottom)
+    postInvalidateDelayed(long delayMilliseconds)
+    postInvalidateDelayed(long delayMilliseconds, int left, int top, int right, int bottom)
+    postInvalidateOnAnimation(int left, int top, int right, int bottom)
+    postOnAnimation(java.lang.Runnable action)
+    postOnAnimationDelayed(java.lang.Runnable action, long delayMillis)
+    removeCallbacks(java.lang.Runnable action)
+    removeOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener listener)
+    removeOnLayoutChangeListener(android.view.View.OnLayoutChangeListener listener)
+    removeOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener listener)
+    requestFocus(int direction)
+    requestFocus(int direction, android.graphics.Rect previouslyFocusedRect)
+    requestRectangleOnScreen(android.graphics.Rect rectangle)
+    requestRectangleOnScreen(android.graphics.Rect rectangle, boolean immediate)
+    requestUnbufferedDispatch(android.view.MotionEvent event)
+    requestUnbufferedDispatch(int source)
+    <T> requireViewById(int id)
+    resolveSize(int size, int measureSpec)
+    resolveSizeAndState(int size, int measureSpec, int childMeasuredState)
+    restoreHierarchyState(android.util.SparseArray<android.os.Parcelable> container)
+    saveAttributeDataForStyleable(android.content.Context context, int[] styleable, android.util.AttributeSet attrs, android.content.res.TypedArray t, int defStyleAttr, int defStyleRes)
+    saveHierarchyState(android.util.SparseArray<android.os.Parcelable> container)
+    scheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what, long when)
+    scrollBy(int x, int y)
+    scrollTo(int x, int y)
+    sendAccessibilityEvent(int eventType)
+    sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent event)
+    setAccessibilityDataPrivate(int accessibilityDataPrivate)
+    setAccessibilityDelegate(android.view.View.AccessibilityDelegate delegate)
+    setAccessibilityHeading(boolean isHeading)
+    setAccessibilityLiveRegion(int mode)
+    setAccessibilityPaneTitle(java.lang.CharSequence accessibilityPaneTitle)
+    setAccessibilityTraversalAfter(int afterId)
+    setAccessibilityTraversalBefore(int beforeId)
+    setActivated(boolean activated)
+    setAllowClickWhenDisabled(boolean clickableWhenDisabled)
+    setAlpha(float alpha)
+    setAnimation(android.view.animation.Animation animation)
+    setAnimationMatrix(android.graphics.Matrix matrix)
+    setAutofillHints(java.lang.String... autofillHints)
+    setAutofillId(android.view.autofill.AutofillId id)
+    setAutoHandwritingEnabled(boolean enabled)
+    setBackground(android.graphics.drawable.Drawable background)
+    setBackgroundColor(int color)
+    setBackgroundDrawable(android.graphics.drawable.Drawable background)
+    setBackgroundResource(int resid)
+    setBackgroundTintBlendMode(android.graphics.BlendMode blendMode)
+    setBackgroundTintList(android.content.res.ColorStateList tint)
+    setBackgroundTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setBottom(int bottom)
+    setCameraDistance(float distance)
+    setClickable(boolean clickable)
+    setClipBounds(android.graphics.Rect clipBounds)
+    setClipToOutline(boolean clipToOutline)
+    setContentCaptureSession(android.view.contentcapture.ContentCaptureSession contentCaptureSession)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setContextClickable(boolean contextClickable)
+    setDefaultFocusHighlightEnabled(boolean defaultFocusHighlightEnabled)
+    setDrawingCacheBackgroundColor(int color)
+    setDrawingCacheEnabled(boolean enabled)
+    setDrawingCacheQuality(int quality)
+    setDuplicateParentStateEnabled(boolean enabled)
+    setElevation(float elevation)
+    setEnabled(boolean enabled)
+    setFadingEdgeLength(int length)
+    setFilterTouchesWhenObscured(boolean enabled)
+    setFitsSystemWindows(boolean fitSystemWindows)
+    setFocusable(boolean focusable)
+    setFocusable(int focusable)
+    setFocusableInTouchMode(boolean focusableInTouchMode)
+    setFocusedByDefault(boolean isFocusedByDefault)
+    setForceDarkAllowed(boolean allow)
+    setForeground(android.graphics.drawable.Drawable foreground)
+    setForegroundGravity(int gravity)
+    setForegroundTintBlendMode(android.graphics.BlendMode blendMode)
+    setForegroundTintList(android.content.res.ColorStateList tint)
+    setForegroundTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setHandwritingBoundsOffsets(float offsetLeft, float offsetTop, float offsetRight, float offsetBottom)
+    setHandwritingDelegateConfiguration(android.view.HandwritingDelegateConfiguration configuration)
+    setHapticFeedbackEnabled(boolean hapticFeedbackEnabled)
+    setHasTransientState(boolean hasTransientState)
+    setHorizontalFadingEdgeEnabled(boolean horizontalFadingEdgeEnabled)
+    setHorizontalScrollBarEnabled(boolean horizontalScrollBarEnabled)
+    setHorizontalScrollbarThumbDrawable(android.graphics.drawable.Drawable drawable)
+    setHorizontalScrollbarTrackDrawable(android.graphics.drawable.Drawable drawable)
+    setHovered(boolean hovered)
+    setId(int id)
+    setImportantForAccessibility(int mode)
+    setImportantForAutofill(int mode)
+    setImportantForContentCapture(int mode)
+    setIsCredential(boolean isCredential)
+    setKeepScreenOn(boolean keepScreenOn)
+    setKeyboardNavigationCluster(boolean isCluster)
+    setLabelFor(int id)
+    setLayerPaint(android.graphics.Paint paint)
+    setLayerType(int layerType, android.graphics.Paint paint)
+    setLayoutDirection(int layoutDirection)
+    setLayoutParams(android.view.ViewGroup.LayoutParams params)
+    setLeft(int left)
+    setLeftTopRightBottom(int left, int top, int right, int bottom)
+    setLongClickable(boolean longClickable)
+    setMeasuredDimension(int measuredWidth, int measuredHeight)
+    setMinimumHeight(int minHeight)
+    setMinimumWidth(int minWidth)
+    setNestedScrollingEnabled(boolean enabled)
+    setNextClusterForwardId(int nextClusterForwardId)
+    setNextFocusDownId(int nextFocusDownId)
+    setNextFocusForwardId(int nextFocusForwardId)
+    setNextFocusLeftId(int nextFocusLeftId)
+    setNextFocusRightId(int nextFocusRightId)
+    setNextFocusUpId(int nextFocusUpId)
+    setOnApplyWindowInsetsListener(android.view.View.OnApplyWindowInsetsListener listener)
+    setOnCapturedPointerListener(android.view.View.OnCapturedPointerListener l)
+    setOnClickListener(android.view.View.OnClickListener l)
+    setOnContextClickListener(android.view.View.OnContextClickListener l)
+    setOnCreateContextMenuListener(android.view.View.OnCreateContextMenuListener l)
+    setOnDragListener(android.view.View.OnDragListener l)
+    setOnFocusChangeListener(android.view.View.OnFocusChangeListener l)
+    setOnGenericMotionListener(android.view.View.OnGenericMotionListener l)
+    setOnHoverListener(android.view.View.OnHoverListener l)
+    setOnKeyListener(android.view.View.OnKeyListener l)
+    setOnLongClickListener(android.view.View.OnLongClickListener l)
+    setOnReceiveContentListener(java.lang.String[] mimeTypes, android.view.OnReceiveContentListener listener)
+    setOnScrollChangeListener(android.view.View.OnScrollChangeListener l)
+    setOnSystemUiVisibilityChangeListener(android.view.View.OnSystemUiVisibilityChangeListener l)
+    setOnTouchListener(android.view.View.OnTouchListener l)
+    setOutlineAmbientShadowColor(int color)
+    setOutlineProvider(android.view.ViewOutlineProvider provider)
+    setOutlineSpotShadowColor(int color)
+    setOverScrollMode(int overScrollMode)
+    setPadding(int left, int top, int right, int bottom)
+    setPaddingRelative(int start, int top, int end, int bottom)
+    setPivotX(float pivotX)
+    setPivotY(float pivotY)
+    setPointerIcon(android.view.PointerIcon pointerIcon)
+    setPreferKeepClear(boolean preferKeepClear)
+    setPreferKeepClearRects(java.util.List<android.graphics.Rect> rects)
+    setPressed(boolean pressed)
+    setRenderEffect(android.graphics.RenderEffect renderEffect)
+    setRevealOnFocusHint(boolean revealOnFocus)
+    setRight(int right)
+    setRotation(float rotation)
+    setRotationX(float rotationX)
+    setRotationY(float rotationY)
+    setSaveEnabled(boolean enabled)
+    setSaveFromParentEnabled(boolean enabled)
+    setScaleX(float scaleX)
+    setScaleY(float scaleY)
+    setScreenReaderFocusable(boolean screenReaderFocusable)
+    setScrollBarDefaultDelayBeforeFade(int scrollBarDefaultDelayBeforeFade)
+    setScrollBarFadeDuration(int scrollBarFadeDuration)
+    setScrollbarFadingEnabled(boolean fadeScrollbars)
+    setScrollBarSize(int scrollBarSize)
+    setScrollBarStyle(int style)
+    setScrollCaptureCallback(android.view.ScrollCaptureCallback callback)
+    setScrollCaptureHint(int hint)
+    setScrollContainer(boolean isScrollContainer)
+    setScrollIndicators(int indicators)
+    setScrollIndicators(int indicators, int mask)
+    setScrollX(int value)
+    setScrollY(int value)
+    setSelected(boolean selected)
+    setSoundEffectsEnabled(boolean soundEffectsEnabled)
+    setStateDescription(java.lang.CharSequence stateDescription)
+    setStateListAnimator(android.animation.StateListAnimator stateListAnimator)
+    setSystemGestureExclusionRects(java.util.List<android.graphics.Rect> rects)
+    setSystemUiVisibility(int visibility)
+    setTag(int key, java.lang.Object tag)
+    setTag(java.lang.Object tag)
+    setTextAlignment(int textAlignment)
+    setTextDirection(int textDirection)
+    setTooltipText(java.lang.CharSequence tooltipText)
+    setTop(int top)
+    setTouchDelegate(android.view.TouchDelegate delegate)
+    setTransitionAlpha(float alpha)
+    setTransitionName(java.lang.String transitionName)
+    setTransitionVisibility(int visibility)
+    setTranslationX(float translationX)
+    setTranslationY(float translationY)
+    setTranslationZ(float translationZ)
+    setVerticalFadingEdgeEnabled(boolean verticalFadingEdgeEnabled)
+    setVerticalScrollBarEnabled(boolean verticalScrollBarEnabled)
+    setVerticalScrollbarPosition(int position)
+    setVerticalScrollbarThumbDrawable(android.graphics.drawable.Drawable drawable)
+    setVerticalScrollbarTrackDrawable(android.graphics.drawable.Drawable drawable)
+    setViewTranslationCallback(android.view.translation.ViewTranslationCallback callback)
+    setVisibility(int visibility)
+    setWillNotCacheDrawing(boolean willNotCacheDrawing)
+    setWillNotDraw(boolean willNotDraw)
+    setWindowInsetsAnimationCallback(android.view.WindowInsetsAnimation.Callback callback)
+    setX(float x)
+    setY(float y)
+    setZ(float z)
+    showContextMenu(float x, float y)
+    startActionMode(android.view.ActionMode.Callback callback)
+    startActionMode(android.view.ActionMode.Callback callback, int type)
+    startAnimation(android.view.animation.Animation animation)
+    startDrag(android.content.ClipData data, android.view.View.DragShadowBuilder shadowBuilder, java.lang.Object myLocalState, int flags)
+    startDragAndDrop(android.content.ClipData data, android.view.View.DragShadowBuilder shadowBuilder, java.lang.Object myLocalState, int flags)
+    startNestedScroll(int axes)
+    transformMatrixToGlobal(android.graphics.Matrix matrix)
+    transformMatrixToLocal(android.graphics.Matrix matrix)
+    unscheduleDrawable(android.graphics.drawable.Drawable who)
+    unscheduleDrawable(android.graphics.drawable.Drawable who, java.lang.Runnable what)
+    updateDragShadow(android.view.View.DragShadowBuilder shadowBuilder)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class View.AccessibilityDelegate
+    addExtraDataToAccessibilityNodeInfo(android.view.View host, android.view.accessibility.AccessibilityNodeInfo info, java.lang.String extraDataKey, android.os.Bundle arguments)
+    dispatchPopulateAccessibilityEvent(android.view.View host, android.view.accessibility.AccessibilityEvent event)
+    getAccessibilityNodeProvider(android.view.View host)
+    onInitializeAccessibilityEvent(android.view.View host, android.view.accessibility.AccessibilityEvent event)
+    onInitializeAccessibilityNodeInfo(android.view.View host, android.view.accessibility.AccessibilityNodeInfo info)
+    onPopulateAccessibilityEvent(android.view.View host, android.view.accessibility.AccessibilityEvent event)
+    onRequestSendAccessibilityEvent(android.view.ViewGroup host, android.view.View child, android.view.accessibility.AccessibilityEvent event)
+    performAccessibilityAction(android.view.View host, int action, android.os.Bundle args)
+    sendAccessibilityEvent(android.view.View host, int eventType)
+    sendAccessibilityEventUnchecked(android.view.View host, android.view.accessibility.AccessibilityEvent event)
+  class View.BaseSavedState
+    #ctor(android.os.Parcel source)
+    #ctor(android.os.Parcel source, java.lang.ClassLoader loader)
+    #ctor(android.os.Parcelable superState)
+    writeToParcel(android.os.Parcel out, int flags)
+  class View.DragShadowBuilder
+    onDrawShadow(android.graphics.Canvas canvas)
+    onProvideShadowMetrics(android.graphics.Point outShadowSize, android.graphics.Point outShadowTouchPoint)
+    #ctor(android.view.View view)
+  class View.MeasureSpec
+    getMode(int measureSpec)
+    getSize(int measureSpec)
+    makeMeasureSpec(int size, int mode)
+    toString(int measureSpec)
+  interface View.OnApplyWindowInsetsListener
+    onApplyWindowInsets(android.view.View v, android.view.WindowInsets insets)
+  interface View.OnAttachStateChangeListener
+    onViewAttachedToWindow(android.view.View v)
+    onViewDetachedFromWindow(android.view.View v)
+  interface View.OnCapturedPointerListener
+    onCapturedPointer(android.view.View view, android.view.MotionEvent event)
+  interface View.OnClickListener
+    onClick(android.view.View v)
+  interface View.OnContextClickListener
+    onContextClick(android.view.View v)
+  interface View.OnCreateContextMenuListener
+    onCreateContextMenu(android.view.ContextMenu menu, android.view.View v, android.view.ContextMenu.ContextMenuInfo menuInfo)
+  interface View.OnDragListener
+    onDrag(android.view.View v, android.view.DragEvent event)
+  interface View.OnFocusChangeListener
+    onFocusChange(android.view.View v, boolean hasFocus)
+  interface View.OnGenericMotionListener
+    onGenericMotion(android.view.View v, android.view.MotionEvent event)
+  interface View.OnHoverListener
+    onHover(android.view.View v, android.view.MotionEvent event)
+  interface View.OnKeyListener
+    onKey(android.view.View v, int keyCode, android.view.KeyEvent event)
+  interface View.OnLayoutChangeListener
+    onLayoutChange(android.view.View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom)
+  interface View.OnLongClickListener
+    onLongClick(android.view.View v)
+  interface View.OnScrollChangeListener
+    onScrollChange(android.view.View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY)
+  interface View.OnSystemUiVisibilityChangeListener
+    onSystemUiVisibilityChange(int visibility)
+  interface View.OnTouchListener
+    onTouch(android.view.View v, android.view.MotionEvent event)
+  interface View.OnUnhandledKeyEventListener
+    onUnhandledKeyEvent(android.view.View v, android.view.KeyEvent event)
+  class ViewAnimationUtils
+    createCircularReveal(android.view.View view, int centerX, int centerY, float startRadius, float endRadius)
+  class ViewConfiguration
+    get(android.content.Context context)
+  class ViewDebug
+    dumpCapturedView(java.lang.String tag, java.lang.Object view)
+    startHierarchyTracing(java.lang.String prefix, android.view.View view)
+    startRecyclerTracing(java.lang.String prefix, android.view.View view)
+    trace(android.view.View view, android.view.ViewDebug.HierarchyTraceType type)
+    trace(android.view.View view, android.view.ViewDebug.RecyclerTraceType type, int... parameters)
+  class ViewGroup
+    addChildrenForAccessibility(java.util.ArrayList<android.view.View> outChildren)
+    addExtraDataToAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo info, java.lang.String extraDataKey, android.os.Bundle arguments)
+    addFocusables(java.util.ArrayList<android.view.View> views, int direction, int focusableMode)
+    addKeyboardNavigationClusters(java.util.Collection<android.view.View> views, int direction)
+    addTouchables(java.util.ArrayList<android.view.View> views)
+    addView(android.view.View child)
+    addView(android.view.View child, android.view.ViewGroup.LayoutParams params)
+    addView(android.view.View child, int index)
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    addView(android.view.View child, int width, int height)
+    addViewInLayout(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    addViewInLayout(android.view.View child, int index, android.view.ViewGroup.LayoutParams params, boolean preventRequestLayout)
+    attachLayoutAnimationParameters(android.view.View child, android.view.ViewGroup.LayoutParams params, int index, int count)
+    attachViewToParent(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    bringChildToFront(android.view.View child)
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    childDrawableStateChanged(android.view.View child)
+    childHasTransientStateChanged(android.view.View child, boolean childHasTransientState)
+    cleanupLayoutState(android.view.View child)
+    clearChildFocus(android.view.View child)
+    debug(int depth)
+    detachViewFromParent(android.view.View child)
+    detachViewFromParent(int index)
+    detachViewsFromParent(int start, int count)
+    dispatchApplyWindowInsets(android.view.WindowInsets insets)
+    dispatchCapturedPointerEvent(android.view.MotionEvent event)
+    dispatchConfigurationChanged(android.content.res.Configuration newConfig)
+    dispatchCreateViewTranslationRequest(java.util.Map<android.view.autofill.AutofillId,long[]> viewIds, int[] supportedFormats, android.view.translation.TranslationCapability capability, java.util.List<android.view.translation.ViewTranslationRequest> requests)
+    dispatchDisplayHint(int hint)
+    dispatchDragEvent(android.view.DragEvent event)
+    dispatchDraw(android.graphics.Canvas canvas)
+    dispatchDrawableHotspotChanged(float x, float y)
+    dispatchFreezeSelfOnly(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchGenericFocusedEvent(android.view.MotionEvent event)
+    dispatchGenericPointerEvent(android.view.MotionEvent event)
+    dispatchHoverEvent(android.view.MotionEvent event)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchKeyEventPreIme(android.view.KeyEvent event)
+    dispatchKeyShortcutEvent(android.view.KeyEvent event)
+    dispatchPointerCaptureChanged(boolean hasCapture)
+    dispatchProvideAutofillStructure(android.view.ViewStructure structure, int flags)
+    dispatchProvideStructure(android.view.ViewStructure structure)
+    dispatchRestoreInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchSaveInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchScrollCaptureSearch(android.graphics.Rect localVisibleRect, android.graphics.Point windowOffset, java.util.function.Consumer<android.view.ScrollCaptureTarget> targets)
+    dispatchSetActivated(boolean activated)
+    dispatchSetPressed(boolean pressed)
+    dispatchSetSelected(boolean selected)
+    dispatchSystemUiVisibilityChanged(int visible)
+    dispatchThawSelfOnly(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchTouchEvent(android.view.MotionEvent ev)
+    dispatchTrackballEvent(android.view.MotionEvent event)
+    dispatchUnhandledMove(android.view.View focused, int direction)
+    dispatchVisibilityChanged(android.view.View changedView, int visibility)
+    dispatchWindowFocusChanged(boolean hasFocus)
+    dispatchWindowInsetsAnimationEnd(android.view.WindowInsetsAnimation animation)
+    dispatchWindowInsetsAnimationPrepare(android.view.WindowInsetsAnimation animation)
+    dispatchWindowInsetsAnimationProgress(android.view.WindowInsets insets, java.util.List<android.view.WindowInsetsAnimation> runningAnimations)
+    dispatchWindowInsetsAnimationStart(android.view.WindowInsetsAnimation animation, android.view.WindowInsetsAnimation.Bounds bounds)
+    dispatchWindowSystemUiVisiblityChanged(int visible)
+    dispatchWindowVisibilityChanged(int visibility)
+    drawChild(android.graphics.Canvas canvas, android.view.View child, long drawingTime)
+    endViewTransition(android.view.View view)
+    findOnBackInvokedDispatcherForChild(android.view.View child, android.view.View requester)
+    findViewsWithText(java.util.ArrayList<android.view.View> outViews, java.lang.CharSequence text, int flags)
+    focusableViewAvailable(android.view.View v)
+    focusSearch(android.view.View focused, int direction)
+    gatherTransparentRegion(android.graphics.Region region)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    getChildAt(int index)
+    getChildDrawingOrder(int drawingPosition)
+    getChildDrawingOrder(int childCount, int drawingPosition)
+    getChildMeasureSpec(int spec, int padding, int childDimension)
+    getChildStaticTransformation(android.view.View child, android.view.animation.Transformation t)
+    getChildVisibleRect(android.view.View child, android.graphics.Rect r, android.graphics.Point offset)
+    indexOfChild(android.view.View child)
+    invalidateChild(android.view.View child, android.graphics.Rect dirty)
+    invalidateChildInParent(int[] location, android.graphics.Rect dirty)
+    layout(int l, int t, int r, int b)
+    measureChild(android.view.View child, int parentWidthMeasureSpec, int parentHeightMeasureSpec)
+    measureChildren(int widthMeasureSpec, int heightMeasureSpec)
+    measureChildWithMargins(android.view.View child, int parentWidthMeasureSpec, int widthUsed, int parentHeightMeasureSpec, int heightUsed)
+    notifySubtreeAccessibilityStateChanged(android.view.View child, android.view.View source, int changeType)
+    offsetDescendantRectToMyCoords(android.view.View descendant, android.graphics.Rect rect)
+    offsetRectIntoDescendantCoords(android.view.View descendant, android.graphics.Rect rect)
+    onCreateDrawableState(int extraSpace)
+    onDescendantInvalidated(android.view.View child, android.view.View target)
+    onInterceptHoverEvent(android.view.MotionEvent event)
+    onInterceptTouchEvent(android.view.MotionEvent ev)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onNestedFling(android.view.View target, float velocityX, float velocityY, boolean consumed)
+    onNestedPreFling(android.view.View target, float velocityX, float velocityY)
+    onNestedPrePerformAccessibilityAction(android.view.View target, int action, android.os.Bundle args)
+    onNestedPreScroll(android.view.View target, int dx, int dy, int[] consumed)
+    onNestedScroll(android.view.View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed)
+    onNestedScrollAccepted(android.view.View child, android.view.View target, int axes)
+    onRequestFocusInDescendants(int direction, android.graphics.Rect previouslyFocusedRect)
+    onRequestSendAccessibilityEvent(android.view.View child, android.view.accessibility.AccessibilityEvent event)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onStartNestedScroll(android.view.View child, android.view.View target, int nestedScrollAxes)
+    onStopNestedScroll(android.view.View child)
+    onViewAdded(android.view.View child)
+    onViewRemoved(android.view.View child)
+    recomputeViewAttributes(android.view.View child)
+    removeDetachedView(android.view.View child, boolean animate)
+    removeView(android.view.View view)
+    removeViewAt(int index)
+    removeViewInLayout(android.view.View view)
+    removeViews(int start, int count)
+    removeViewsInLayout(int start, int count)
+    requestChildFocus(android.view.View child, android.view.View focused)
+    requestChildRectangleOnScreen(android.view.View child, android.graphics.Rect rectangle, boolean immediate)
+    requestDisallowInterceptTouchEvent(boolean disallowIntercept)
+    requestFocus(int direction, android.graphics.Rect previouslyFocusedRect)
+    requestSendAccessibilityEvent(android.view.View child, android.view.accessibility.AccessibilityEvent event)
+    requestTransparentRegion(android.view.View child)
+    setAddStatesFromChildren(boolean addsStates)
+    setAlwaysDrawnWithCacheEnabled(boolean always)
+    setAnimationCacheEnabled(boolean enabled)
+    setChildrenDrawingCacheEnabled(boolean enabled)
+    setChildrenDrawingOrderEnabled(boolean enabled)
+    setChildrenDrawnWithCacheEnabled(boolean enabled)
+    setClipChildren(boolean clipChildren)
+    setClipToPadding(boolean clipToPadding)
+    setDescendantFocusability(int focusability)
+    setLayoutAnimation(android.view.animation.LayoutAnimationController controller)
+    setLayoutAnimationListener(android.view.animation.Animation.AnimationListener animationListener)
+    setLayoutMode(int layoutMode)
+    setLayoutTransition(android.animation.LayoutTransition transition)
+    setMotionEventSplittingEnabled(boolean split)
+    setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener listener)
+    setPersistentDrawingCache(int drawingCacheToKeep)
+    setStaticTransformationsEnabled(boolean enabled)
+    setTouchscreenBlocksFocus(boolean touchscreenBlocksFocus)
+    setTransitionGroup(boolean isTransitionGroup)
+    setWindowInsetsAnimationCallback(android.view.WindowInsetsAnimation.Callback callback)
+    showContextMenuForChild(android.view.View originalView)
+    showContextMenuForChild(android.view.View originalView, float x, float y)
+    startActionModeForChild(android.view.View originalView, android.view.ActionMode.Callback callback)
+    startActionModeForChild(android.view.View originalView, android.view.ActionMode.Callback callback, int type)
+    startViewTransition(android.view.View view)
+    suppressLayout(boolean suppress)
+    updateViewLayout(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class ViewGroup.LayoutParams
+    resolveLayoutDirection(int layoutDirection)
+    setBaseAttributes(android.content.res.TypedArray a, int widthAttr, int heightAttr)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(int width, int height)
+  class ViewGroup.MarginLayoutParams
+    resolveLayoutDirection(int layoutDirection)
+    setLayoutDirection(int layoutDirection)
+    setMarginEnd(int end)
+    setMargins(int left, int top, int right, int bottom)
+    setMarginStart(int start)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(int width, int height)
+  interface ViewGroup.OnHierarchyChangeListener
+    onChildViewAdded(android.view.View parent, android.view.View child)
+    onChildViewRemoved(android.view.View parent, android.view.View child)
+  class ViewGroupOverlay
+    add(android.view.View view)
+    remove(android.view.View view)
+  interface ViewManager
+    addView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    removeView(android.view.View view)
+    updateViewLayout(android.view.View view, android.view.ViewGroup.LayoutParams params)
+  class ViewOutlineProvider
+    getOutline(android.view.View view, android.graphics.Outline outline)
+  class ViewOverlay
+    add(android.graphics.drawable.Drawable drawable)
+    remove(android.graphics.drawable.Drawable drawable)
+  interface ViewParent
+    bringChildToFront(android.view.View child)
+    childDrawableStateChanged(android.view.View child)
+    childHasTransientStateChanged(android.view.View child, boolean hasTransientState)
+    clearChildFocus(android.view.View child)
+    createContextMenu(android.view.ContextMenu menu)
+    findOnBackInvokedDispatcherForChild(android.view.View child, android.view.View requester)
+    focusableViewAvailable(android.view.View v)
+    focusSearch(android.view.View v, int direction)
+    getChildVisibleRect(android.view.View child, android.graphics.Rect r, android.graphics.Point offset)
+    invalidateChild(android.view.View child, android.graphics.Rect r)
+    invalidateChildInParent(int[] location, android.graphics.Rect r)
+    keyboardNavigationClusterSearch(android.view.View currentCluster, int direction)
+    notifySubtreeAccessibilityStateChanged(android.view.View child, android.view.View source, int changeType)
+    onDescendantInvalidated(android.view.View child, android.view.View target)
+    onNestedFling(android.view.View target, float velocityX, float velocityY, boolean consumed)
+    onNestedPreFling(android.view.View target, float velocityX, float velocityY)
+    onNestedPrePerformAccessibilityAction(android.view.View target, int action, android.os.Bundle arguments)
+    onNestedPreScroll(android.view.View target, int dx, int dy, int[] consumed)
+    onNestedScroll(android.view.View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed)
+    onNestedScrollAccepted(android.view.View child, android.view.View target, int nestedScrollAxes)
+    onStartNestedScroll(android.view.View child, android.view.View target, int nestedScrollAxes)
+    onStopNestedScroll(android.view.View target)
+    recomputeViewAttributes(android.view.View child)
+    requestChildFocus(android.view.View child, android.view.View focused)
+    requestChildRectangleOnScreen(android.view.View child, android.graphics.Rect rectangle, boolean immediate)
+    requestDisallowInterceptTouchEvent(boolean disallowIntercept)
+    requestSendAccessibilityEvent(android.view.View child, android.view.accessibility.AccessibilityEvent event)
+    requestTransparentRegion(android.view.View child)
+    showContextMenuForChild(android.view.View originalView)
+    showContextMenuForChild(android.view.View originalView, float x, float y)
+    startActionModeForChild(android.view.View originalView, android.view.ActionMode.Callback callback)
+    startActionModeForChild(android.view.View originalView, android.view.ActionMode.Callback callback, int type)
+  class ViewPropertyAnimator
+    alpha(float value)
+    alphaBy(float value)
+    rotation(float value)
+    rotationBy(float value)
+    rotationX(float value)
+    rotationXBy(float value)
+    rotationY(float value)
+    rotationYBy(float value)
+    scaleX(float value)
+    scaleXBy(float value)
+    scaleY(float value)
+    scaleYBy(float value)
+    setDuration(long duration)
+    setInterpolator(android.animation.TimeInterpolator interpolator)
+    setListener(android.animation.Animator.AnimatorListener listener)
+    setStartDelay(long startDelay)
+    setUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener listener)
+    translationX(float value)
+    translationXBy(float value)
+    translationY(float value)
+    translationYBy(float value)
+    translationZ(float value)
+    translationZBy(float value)
+    withEndAction(java.lang.Runnable runnable)
+    withStartAction(java.lang.Runnable runnable)
+    x(float value)
+    xBy(float value)
+    y(float value)
+    yBy(float value)
+    z(float value)
+    zBy(float value)
+  class ViewStructure
+    addChildCount(int num)
+    asyncNewChild(int index)
+    newChild(int index)
+    newHtmlInfoBuilder(java.lang.String tagName)
+    setAccessibilityFocused(boolean state)
+    setActivated(boolean state)
+    setAlpha(float alpha)
+    setAutofillHints(java.lang.String[] hint)
+    setAutofillId(android.view.autofill.AutofillId id)
+    setAutofillId(android.view.autofill.AutofillId parentId, int virtualId)
+    setAutofillOptions(java.lang.CharSequence[] options)
+    setAutofillType(int type)
+    setAutofillValue(android.view.autofill.AutofillValue value)
+    setCheckable(boolean state)
+    setChecked(boolean state)
+    setChildCount(int num)
+    setClassName(java.lang.String className)
+    setClickable(boolean state)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setContextClickable(boolean state)
+    setDataIsSensitive(boolean sensitive)
+    setDimens(int left, int top, int scrollX, int scrollY, int width, int height)
+    setElevation(float elevation)
+    setEnabled(boolean state)
+    setFocusable(boolean state)
+    setFocused(boolean state)
+    setHint(java.lang.CharSequence hint)
+    setHintIdEntry(java.lang.String entryName)
+    setHtmlInfo(android.view.ViewStructure.HtmlInfo htmlInfo)
+    setId(int id, java.lang.String packageName, java.lang.String typeName, java.lang.String entryName)
+    setImportantForAutofill(int mode)
+    setInputType(int inputType)
+    setLocaleList(android.os.LocaleList localeList)
+    setLongClickable(boolean state)
+    setMaxTextEms(int maxEms)
+    setMaxTextLength(int maxLength)
+    setMinTextEms(int minEms)
+    setOpaque(boolean opaque)
+    setReceiveContentMimeTypes(java.lang.String[] mimeTypes)
+    setSelected(boolean state)
+    setText(java.lang.CharSequence text)
+    setText(java.lang.CharSequence text, int selectionStart, int selectionEnd)
+    setTextIdEntry(java.lang.String entryName)
+    setTextLines(int[] charOffsets, int[] baselines)
+    setTextStyle(float size, int fgColor, int bgColor, int style)
+    setTransformation(android.graphics.Matrix matrix)
+    setVisibility(int visibility)
+    setWebDomain(java.lang.String domain)
+  class ViewStructure.HtmlInfo.Builder
+    addAttribute(java.lang.String name, java.lang.String value)
+  class ViewStub
+    dispatchDraw(android.graphics.Canvas canvas)
+    draw(android.graphics.Canvas canvas)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setInflatedId(int inflatedId)
+    setLayoutInflater(android.view.LayoutInflater inflater)
+    setLayoutResource(int layoutResource)
+    setOnInflateListener(android.view.ViewStub.OnInflateListener inflateListener)
+    setVisibility(int visibility)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    #ctor(android.content.Context context, int layoutResource)
+  interface ViewStub.OnInflateListener
+    onInflate(android.view.ViewStub stub, android.view.View inflated)
+  class ViewTreeObserver
+    addOnDrawListener(android.view.ViewTreeObserver.OnDrawListener listener)
+    addOnGlobalFocusChangeListener(android.view.ViewTreeObserver.OnGlobalFocusChangeListener listener)
+    addOnGlobalLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener listener)
+    addOnPreDrawListener(android.view.ViewTreeObserver.OnPreDrawListener listener)
+    addOnScrollChangedListener(android.view.ViewTreeObserver.OnScrollChangedListener listener)
+    addOnSystemGestureExclusionRectsChangedListener(java.util.function.Consumer<java.util.List<android.graphics.Rect>> listener)
+    addOnTouchModeChangeListener(android.view.ViewTreeObserver.OnTouchModeChangeListener listener)
+    addOnWindowAttachListener(android.view.ViewTreeObserver.OnWindowAttachListener listener)
+    addOnWindowFocusChangeListener(android.view.ViewTreeObserver.OnWindowFocusChangeListener listener)
+    addOnWindowVisibilityChangeListener(android.view.ViewTreeObserver.OnWindowVisibilityChangeListener listener)
+    registerFrameCommitCallback(java.lang.Runnable callback)
+    removeGlobalOnLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener victim)
+    removeOnDrawListener(android.view.ViewTreeObserver.OnDrawListener victim)
+    removeOnGlobalFocusChangeListener(android.view.ViewTreeObserver.OnGlobalFocusChangeListener victim)
+    removeOnGlobalLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener victim)
+    removeOnPreDrawListener(android.view.ViewTreeObserver.OnPreDrawListener victim)
+    removeOnScrollChangedListener(android.view.ViewTreeObserver.OnScrollChangedListener victim)
+    removeOnSystemGestureExclusionRectsChangedListener(java.util.function.Consumer<java.util.List<android.graphics.Rect>> listener)
+    removeOnTouchModeChangeListener(android.view.ViewTreeObserver.OnTouchModeChangeListener victim)
+    removeOnWindowAttachListener(android.view.ViewTreeObserver.OnWindowAttachListener victim)
+    removeOnWindowFocusChangeListener(android.view.ViewTreeObserver.OnWindowFocusChangeListener victim)
+    removeOnWindowVisibilityChangeListener(android.view.ViewTreeObserver.OnWindowVisibilityChangeListener victim)
+    unregisterFrameCommitCallback(java.lang.Runnable callback)
+  interface ViewTreeObserver.OnGlobalFocusChangeListener
+    onGlobalFocusChanged(android.view.View oldFocus, android.view.View newFocus)
+  interface ViewTreeObserver.OnTouchModeChangeListener
+    onTouchModeChanged(boolean isInTouchMode)
+  interface ViewTreeObserver.OnWindowFocusChangeListener
+    onWindowFocusChanged(boolean hasFocus)
+  interface ViewTreeObserver.OnWindowVisibilityChangeListener
+    onWindowVisibilityChanged(int visibility)
+  class Window
+    addContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    addFlags(int flags)
+    addOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener listener, android.os.Handler handler)
+    clearFlags(int flags)
+    closePanel(int featureId)
+    <T> findViewById(int id)
+    getDefaultFeatures(android.content.Context context)
+    hasFeature(int feature)
+    injectInputEvent(android.view.InputEvent event)
+    invalidatePanelMenu(int featureId)
+    isShortcutKey(int keyCode, android.view.KeyEvent event)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    openPanel(int featureId, android.view.KeyEvent event)
+    performContextMenuIdentifierAction(int id, int flags)
+    performPanelIdentifierAction(int featureId, int id, int flags)
+    performPanelShortcut(int featureId, int keyCode, android.view.KeyEvent event, int flags)
+    registerScrollCaptureCallback(android.view.ScrollCaptureCallback callback)
+    removeOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener listener)
+    requestFeature(int featureId)
+    <T> requireViewById(int id)
+    restoreHierarchyState(android.os.Bundle savedInstanceState)
+    setAllowEnterTransitionOverlap(boolean allow)
+    setAllowReturnTransitionOverlap(boolean allow)
+    setAttributes(android.view.WindowManager.LayoutParams a)
+    setBackgroundBlurRadius(int blurRadius)
+    setBackgroundDrawable(android.graphics.drawable.Drawable drawable)
+    setBackgroundDrawableResource(int resId)
+    setCallback(android.view.Window.Callback callback)
+    setChildDrawable(int featureId, android.graphics.drawable.Drawable drawable)
+    setChildInt(int featureId, int value)
+    setClipToOutline(boolean clipToOutline)
+    setColorMode(int colorMode)
+    setContainer(android.view.Window container)
+    setContentView(android.view.View view)
+    setContentView(android.view.View view, android.view.ViewGroup.LayoutParams params)
+    setContentView(int layoutResID)
+    setDecorCaptionShade(int decorCaptionShade)
+    setDecorFitsSystemWindows(boolean decorFitsSystemWindows)
+    setDefaultWindowFormat(int format)
+    setDimAmount(float amount)
+    setElevation(float elevation)
+    setEnterTransition(android.transition.Transition transition)
+    setExitTransition(android.transition.Transition transition)
+    setFeatureDrawable(int featureId, android.graphics.drawable.Drawable drawable)
+    setFeatureDrawableAlpha(int featureId, int alpha)
+    setFeatureDrawableResource(int featureId, int resId)
+    setFeatureDrawableUri(int featureId, android.net.Uri uri)
+    setFeatureInt(int featureId, int value)
+    setFlags(int flags, int mask)
+    setFormat(int format)
+    setGravity(int gravity)
+    setHideOverlayWindows(boolean hide)
+    setIcon(int resId)
+    setLayout(int width, int height)
+    setLocalFocus(boolean hasFocus, boolean inTouchMode)
+    setLogo(int resId)
+    setMediaController(android.media.session.MediaController controller)
+    setNavigationBarColor(int color)
+    setNavigationBarContrastEnforced(boolean enforceContrast)
+    setNavigationBarDividerColor(int dividerColor)
+    setPreferMinimalPostProcessing(boolean isPreferred)
+    setReenterTransition(android.transition.Transition transition)
+    setResizingCaptionDrawable(android.graphics.drawable.Drawable drawable)
+    setRestrictedCaptionAreaListener(android.view.Window.OnRestrictedCaptionAreaChangedListener listener)
+    setReturnTransition(android.transition.Transition transition)
+    setSharedElementEnterTransition(android.transition.Transition transition)
+    setSharedElementExitTransition(android.transition.Transition transition)
+    setSharedElementReenterTransition(android.transition.Transition transition)
+    setSharedElementReturnTransition(android.transition.Transition transition)
+    setSharedElementsUseOverlay(boolean sharedElementsUseOverlay)
+    setSoftInputMode(int mode)
+    setStatusBarColor(int color)
+    setStatusBarContrastEnforced(boolean ensureContrast)
+    setSustainedPerformanceMode(boolean enable)
+    setSystemGestureExclusionRects(java.util.List<android.graphics.Rect> rects)
+    setTitle(java.lang.CharSequence title)
+    setTitleColor(int textColor)
+    setTransitionBackgroundFadeDuration(long fadeDurationMillis)
+    setTransitionManager(android.transition.TransitionManager tm)
+    setType(int type)
+    setUiOptions(int uiOptions)
+    setUiOptions(int uiOptions, int mask)
+    setVolumeControlStream(int streamType)
+    setWindowAnimations(int resId)
+    setWindowManager(android.view.WindowManager wm, android.os.IBinder appToken, java.lang.String appName)
+    setWindowManager(android.view.WindowManager wm, android.os.IBinder appToken, java.lang.String appName, boolean hardwareAccelerated)
+    superDispatchGenericMotionEvent(android.view.MotionEvent event)
+    superDispatchKeyEvent(android.view.KeyEvent event)
+    superDispatchKeyShortcutEvent(android.view.KeyEvent event)
+    superDispatchTouchEvent(android.view.MotionEvent event)
+    superDispatchTrackballEvent(android.view.MotionEvent event)
+    takeInputQueue(android.view.InputQueue.Callback callback)
+    takeKeyEvents(boolean get)
+    takeSurface(android.view.SurfaceHolder.Callback2 callback)
+    togglePanel(int featureId, android.view.KeyEvent event)
+    unregisterScrollCaptureCallback(android.view.ScrollCaptureCallback callback)
+    #ctor(android.content.Context context)
+  interface Window.Callback
+    dispatchGenericMotionEvent(android.view.MotionEvent event)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchKeyShortcutEvent(android.view.KeyEvent event)
+    dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+    dispatchTouchEvent(android.view.MotionEvent event)
+    dispatchTrackballEvent(android.view.MotionEvent event)
+    onActionModeFinished(android.view.ActionMode mode)
+    onActionModeStarted(android.view.ActionMode mode)
+    onCreatePanelMenu(int featureId, android.view.Menu menu)
+    onCreatePanelView(int featureId)
+    onMenuItemSelected(int featureId, android.view.MenuItem item)
+    onMenuOpened(int featureId, android.view.Menu menu)
+    onPanelClosed(int featureId, android.view.Menu menu)
+    onPointerCaptureChanged(boolean hasCapture)
+    onPreparePanel(int featureId, android.view.View view, android.view.Menu menu)
+    onProvideKeyboardShortcuts(java.util.List<android.view.KeyboardShortcutGroup> data, android.view.Menu menu, int deviceId)
+    onSearchRequested(android.view.SearchEvent searchEvent)
+    onWindowAttributesChanged(android.view.WindowManager.LayoutParams attrs)
+    onWindowFocusChanged(boolean hasFocus)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback)
+    onWindowStartingActionMode(android.view.ActionMode.Callback callback, int type)
+  interface Window.OnFrameMetricsAvailableListener
+    onFrameMetricsAvailable(android.view.Window window, android.view.FrameMetrics frameMetrics, int dropCountSinceLastInvocation)
+  interface Window.OnRestrictedCaptionAreaChangedListener
+    onRestrictedCaptionAreaChanged(android.graphics.Rect rect)
+  class WindowAnimationFrameStats
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class WindowContentFrameStats
+    getFramePostedTimeNano(int index)
+    getFrameReadyTimeNano(int index)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class WindowId
+    equals(java.lang.Object otherObj)
+    registerFocusObserver(android.view.WindowId.FocusObserver observer)
+    unregisterFocusObserver(android.view.WindowId.FocusObserver observer)
+    writeToParcel(android.os.Parcel out, int flags)
+  class WindowId.FocusObserver
+    onFocusGained(android.view.WindowId token)
+    onFocusLost(android.view.WindowId token)
+  class WindowInsets
+    equals(java.lang.Object o)
+    getInsets(int typeMask)
+    getInsetsIgnoringVisibility(int typeMask)
+    getRoundedCorner(int position)
+    inset(android.graphics.Insets insets)
+    inset(int left, int top, int right, int bottom)
+    isVisible(int typeMask)
+    replaceSystemWindowInsets(android.graphics.Rect systemWindowInsets)
+    replaceSystemWindowInsets(int left, int top, int right, int bottom)
+    #ctor(android.view.WindowInsets src)
+  class WindowInsets.Builder
+    setDisplayCutout(android.view.DisplayCutout displayCutout)
+    setDisplayShape(android.view.DisplayShape displayShape)
+    setInsets(int typeMask, android.graphics.Insets insets)
+    setInsetsIgnoringVisibility(int typeMask, android.graphics.Insets insets)
+    setMandatorySystemGestureInsets(android.graphics.Insets insets)
+    setPrivacyIndicatorBounds(android.graphics.Rect bounds)
+    setRoundedCorner(int position, android.view.RoundedCorner roundedCorner)
+    setStableInsets(android.graphics.Insets stableInsets)
+    setSystemGestureInsets(android.graphics.Insets insets)
+    setSystemWindowInsets(android.graphics.Insets systemWindowInsets)
+    setTappableElementInsets(android.graphics.Insets insets)
+    setVisible(int typeMask, boolean visible)
+    #ctor(android.view.WindowInsets insets)
+  class WindowInsetsAnimation
+    setAlpha(float alpha)
+    setFraction(float fraction)
+    #ctor(int typeMask, android.view.animation.Interpolator interpolator, long durationMillis)
+  class WindowInsetsAnimation.Bounds
+    inset(android.graphics.Insets insets)
+    #ctor(android.graphics.Insets lowerBound, android.graphics.Insets upperBound)
+  class WindowInsetsAnimation.Callback
+    onEnd(android.view.WindowInsetsAnimation animation)
+    onPrepare(android.view.WindowInsetsAnimation animation)
+    onProgress(android.view.WindowInsets insets, java.util.List<android.view.WindowInsetsAnimation> runningAnimations)
+    onStart(android.view.WindowInsetsAnimation animation, android.view.WindowInsetsAnimation.Bounds bounds)
+    #ctor(int dispatchMode)
+  interface WindowInsetsAnimationController
+    finish(boolean shown)
+    setInsetsAndAlpha(android.graphics.Insets insets, float alpha, float fraction)
+  interface WindowInsetsAnimationControlListener
+    onCancelled(android.view.WindowInsetsAnimationController controller)
+    onFinished(android.view.WindowInsetsAnimationController controller)
+    onReady(android.view.WindowInsetsAnimationController controller, int types)
+  interface WindowInsetsController
+    addOnControllableInsetsChangedListener(android.view.WindowInsetsController.OnControllableInsetsChangedListener listener)
+    controlWindowInsetsAnimation(int types, long durationMillis, android.view.animation.Interpolator interpolator, android.os.CancellationSignal cancellationSignal, android.view.WindowInsetsAnimationControlListener listener)
+    hide(int types)
+    removeOnControllableInsetsChangedListener(android.view.WindowInsetsController.OnControllableInsetsChangedListener listener)
+    setSystemBarsAppearance(int appearance, int mask)
+    setSystemBarsBehavior(int behavior)
+    show(int types)
+  interface WindowInsetsController.OnControllableInsetsChangedListener
+    onControllableInsetsChanged(android.view.WindowInsetsController controller, int typeMask)
+  interface WindowManager
+    addCrossWindowBlurEnabledListener(java.util.concurrent.Executor executor, java.util.function.Consumer<java.lang.Boolean> listener)
+    addCrossWindowBlurEnabledListener(java.util.function.Consumer<java.lang.Boolean> listener)
+    removeCrossWindowBlurEnabledListener(java.util.function.Consumer<java.lang.Boolean> listener)
+    removeViewImmediate(android.view.View view)
+  class WindowManager.BadTokenException
+    #ctor(java.lang.String name)
+  class WindowManager.InvalidDisplayException
+    #ctor(java.lang.String name)
+  class WindowManager.LayoutParams
+    copyFrom(android.view.WindowManager.LayoutParams o)
+    debug(java.lang.String output)
+    mayUseInputMethod(int flags)
+    setBlurBehindRadius(int blurBehindRadius)
+    setColorMode(int colorMode)
+    setFitInsetsIgnoringVisibility(boolean ignore)
+    setFitInsetsSides(int sides)
+    setFitInsetsTypes(int types)
+    setTitle(java.lang.CharSequence title)
+    setWallpaperTouchEventsEnabled(boolean enable)
+    #ctor(android.os.Parcel in)
+    #ctor(int _type)
+    #ctor(int _type, int _flags)
+    #ctor(int _type, int _flags, int _format)
+    #ctor(int w, int h, int _type, int _flags, int _format)
+    #ctor(int w, int h, int xpos, int ypos, int _type, int _flags, int _format)
+    writeToParcel(android.os.Parcel out, int parcelableFlags)
+  class WindowMetrics
+    #ctor(android.graphics.Rect bounds, android.view.WindowInsets windowInsets)
+    #ctor(android.graphics.Rect bounds, android.view.WindowInsets windowInsets, float density)
+
+package android.view.accessibility
+;---------------------------------------
+  class AccessibilityEvent
+    #ctor(android.view.accessibility.AccessibilityEvent event)
+    #ctor(int eventType)
+    appendRecord(android.view.accessibility.AccessibilityRecord record)
+    eventTypeToString(int eventType)
+    getRecord(int index)
+    initFromParcel(android.os.Parcel parcel)
+    obtain(android.view.accessibility.AccessibilityEvent event)
+    obtain(int eventType)
+    setAccessibilityDataPrivate(boolean accessibilityDataPrivate)
+    setAction(int action)
+    setContentChangeTypes(int changeTypes)
+    setEventTime(long eventTime)
+    setEventType(int eventType)
+    setMovementGranularity(int granularity)
+    setPackageName(java.lang.CharSequence packageName)
+    setSpeechStateChangeTypes(int state)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  interface AccessibilityEventSource
+    sendAccessibilityEvent(int eventType)
+    sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent event)
+  class AccessibilityManager
+    addAccessibilityRequestPreparer(android.view.accessibility.AccessibilityRequestPreparer preparer)
+    addAccessibilityServicesStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener listener)
+    addAccessibilityServicesStateChangeListener(java.util.concurrent.Executor executor, android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener listener)
+    addAccessibilityStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener listener)
+    addAccessibilityStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener listener, android.os.Handler handler)
+    addAudioDescriptionRequestedChangeListener(java.util.concurrent.Executor executor, android.view.accessibility.AccessibilityManager.AudioDescriptionRequestedChangeListener listener)
+    addTouchExplorationStateChangeListener(android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener listener)
+    addTouchExplorationStateChangeListener(android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener listener, android.os.Handler handler)
+    addUiContrastChangeListener(java.util.concurrent.Executor executor, android.view.accessibility.AccessibilityManager.UiContrastChangeListener listener)
+    getEnabledAccessibilityServiceList(int feedbackTypeFlags)
+    getRecommendedTimeoutMillis(int originalTimeout, int uiContentFlags)
+    removeAccessibilityRequestPreparer(android.view.accessibility.AccessibilityRequestPreparer preparer)
+    removeAccessibilityServicesStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener listener)
+    removeAccessibilityStateChangeListener(android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener listener)
+    removeAudioDescriptionRequestedChangeListener(android.view.accessibility.AccessibilityManager.AudioDescriptionRequestedChangeListener listener)
+    removeTouchExplorationStateChangeListener(android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener listener)
+    removeUiContrastChangeListener(android.view.accessibility.AccessibilityManager.UiContrastChangeListener listener)
+    sendAccessibilityEvent(android.view.accessibility.AccessibilityEvent event)
+  interface AccessibilityManager.AccessibilityServicesStateChangeListener
+    onAccessibilityServicesStateChanged(android.view.accessibility.AccessibilityManager manager)
+  interface AccessibilityManager.AccessibilityStateChangeListener
+    onAccessibilityStateChanged(boolean enabled)
+  interface AccessibilityManager.AudioDescriptionRequestedChangeListener
+    onAudioDescriptionRequestedChanged(boolean enabled)
+  interface AccessibilityManager.TouchExplorationStateChangeListener
+    onTouchExplorationStateChanged(boolean enabled)
+  interface AccessibilityManager.UiContrastChangeListener
+    onUiContrastChanged(float uiContrast)
+  class AccessibilityNodeInfo
+    #ctor(android.view.accessibility.AccessibilityNodeInfo info)
+    #ctor(android.view.View source)
+    #ctor(android.view.View root, int virtualDescendantId)
+    addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction action)
+    addAction(int action)
+    addChild(android.view.View child)
+    addChild(android.view.View root, int virtualDescendantId)
+    equals(java.lang.Object object)
+    findAccessibilityNodeInfosByText(java.lang.String text)
+    findAccessibilityNodeInfosByViewId(java.lang.String viewId)
+    findFocus(int focus)
+    focusSearch(int direction)
+    getBoundsInParent(android.graphics.Rect outBounds)
+    getBoundsInScreen(android.graphics.Rect outBounds)
+    getChild(int index)
+    getChild(int index, int prefetchingStrategy)
+    getParent(int prefetchingStrategy)
+    obtain(android.view.accessibility.AccessibilityNodeInfo info)
+    obtain(android.view.View source)
+    obtain(android.view.View root, int virtualDescendantId)
+    performAction(int action)
+    performAction(int action, android.os.Bundle arguments)
+    refreshWithExtraData(java.lang.String extraDataKey, android.os.Bundle args)
+    removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction action)
+    removeAction(int action)
+    removeChild(android.view.View child)
+    removeChild(android.view.View root, int virtualDescendantId)
+    setAccessibilityFocused(boolean focused)
+    setAvailableExtraData(java.util.List<java.lang.String> extraDataKeys)
+    setBoundsInParent(android.graphics.Rect bounds)
+    setBoundsInScreen(android.graphics.Rect bounds)
+    setCanOpenPopup(boolean opensPopup)
+    setCheckable(boolean checkable)
+    setChecked(boolean checked)
+    setClassName(java.lang.CharSequence className)
+    setClickable(boolean clickable)
+    setCollectionInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionInfo collectionInfo)
+    setCollectionItemInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo collectionItemInfo)
+    setContainerTitle(java.lang.CharSequence containerTitle)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setContentInvalid(boolean contentInvalid)
+    setContextClickable(boolean contextClickable)
+    setDismissable(boolean dismissable)
+    setDrawingOrder(int drawingOrderInParent)
+    setEditable(boolean editable)
+    setEnabled(boolean enabled)
+    setError(java.lang.CharSequence error)
+    setFocusable(boolean focusable)
+    setFocused(boolean focused)
+    setHeading(boolean isHeading)
+    setHintText(java.lang.CharSequence hintText)
+    setImportantForAccessibility(boolean important)
+    setInputType(int inputType)
+    setLabeledBy(android.view.View label)
+    setLabeledBy(android.view.View root, int virtualDescendantId)
+    setLabelFor(android.view.View labeled)
+    setLabelFor(android.view.View root, int virtualDescendantId)
+    setLiveRegion(int mode)
+    setLongClickable(boolean longClickable)
+    setMaxTextLength(int max)
+    setMinDurationBetweenContentChanges(java.time.Duration minDurationBetweenContentChanges)
+    setMovementGranularities(int granularities)
+    setMultiLine(boolean multiLine)
+    setPackageName(java.lang.CharSequence packageName)
+    setPaneTitle(java.lang.CharSequence paneTitle)
+    setParent(android.view.View parent)
+    setParent(android.view.View root, int virtualDescendantId)
+    setPassword(boolean password)
+    setQueryFromAppProcessEnabled(android.view.View view, boolean enabled)
+    setRangeInfo(android.view.accessibility.AccessibilityNodeInfo.RangeInfo rangeInfo)
+    setRequestInitialAccessibilityFocus(boolean requestInitialAccessibilityFocus)
+    setScreenReaderFocusable(boolean screenReaderFocusable)
+    setScrollable(boolean scrollable)
+    setSelected(boolean selected)
+    setShowingHintText(boolean showingHintText)
+    setSource(android.view.View source)
+    setSource(android.view.View root, int virtualDescendantId)
+    setStateDescription(java.lang.CharSequence stateDescription)
+    setText(java.lang.CharSequence text)
+    setTextEntryKey(boolean isTextEntryKey)
+    setTextSelectable(boolean selectableText)
+    setTextSelection(int start, int end)
+    setTooltipText(java.lang.CharSequence tooltipText)
+    setTouchDelegateInfo(android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo delegatedInfo)
+    setTraversalAfter(android.view.View view)
+    setTraversalAfter(android.view.View root, int virtualDescendantId)
+    setTraversalBefore(android.view.View view)
+    setTraversalBefore(android.view.View root, int virtualDescendantId)
+    setUniqueId(java.lang.String uniqueId)
+    setViewIdResourceName(java.lang.String viewIdResName)
+    setVisibleToUser(boolean visibleToUser)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class AccessibilityNodeInfo.AccessibilityAction
+    #ctor(int actionId, java.lang.CharSequence label)
+    equals(java.lang.Object other)
+    writeToParcel(android.os.Parcel out, int flags)
+  class AccessibilityNodeInfo.CollectionInfo
+    #ctor(int rowCount, int columnCount, boolean hierarchical)
+    #ctor(int rowCount, int columnCount, boolean hierarchical, int selectionMode)
+    obtain(int rowCount, int columnCount, boolean hierarchical)
+    obtain(int rowCount, int columnCount, boolean hierarchical, int selectionMode)
+  class AccessibilityNodeInfo.CollectionItemInfo
+    #ctor(int rowIndex, int rowSpan, int columnIndex, int columnSpan, boolean heading)
+    #ctor(int rowIndex, int rowSpan, int columnIndex, int columnSpan, boolean heading, boolean selected)
+    obtain(int rowIndex, int rowSpan, int columnIndex, int columnSpan, boolean heading)
+    obtain(int rowIndex, int rowSpan, int columnIndex, int columnSpan, boolean heading, boolean selected)
+  class AccessibilityNodeInfo.CollectionItemInfo.Builder
+    setColumnIndex(int columnIndex)
+    setColumnSpan(int columnSpan)
+    setColumnTitle(java.lang.String columnTitle)
+    setHeading(boolean heading)
+    setRowIndex(int rowIndex)
+    setRowSpan(int rowSpan)
+    setRowTitle(java.lang.String rowTitle)
+    setSelected(boolean selected)
+  class AccessibilityNodeInfo.RangeInfo
+    #ctor(int type, float min, float max, float current)
+    obtain(int type, float min, float max, float current)
+  class AccessibilityNodeInfo.TouchDelegateInfo
+    #ctor(java.util.Map<android.graphics.Region,android.view.View> targetMap)
+    getRegionAt(int index)
+    getTargetForRegion(android.graphics.Region region)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class AccessibilityNodeProvider
+    addExtraDataToAccessibilityNodeInfo(int virtualViewId, android.view.accessibility.AccessibilityNodeInfo info, java.lang.String extraDataKey, android.os.Bundle arguments)
+    createAccessibilityNodeInfo(int virtualViewId)
+    findAccessibilityNodeInfosByText(java.lang.String text, int virtualViewId)
+    findFocus(int focus)
+    performAction(int virtualViewId, int action, android.os.Bundle arguments)
+  class AccessibilityRecord
+    #ctor(android.view.accessibility.AccessibilityRecord record)
+    getSource(int prefetchingStrategy)
+    obtain(android.view.accessibility.AccessibilityRecord record)
+    setAddedCount(int addedCount)
+    setBeforeText(java.lang.CharSequence beforeText)
+    setChecked(boolean isChecked)
+    setClassName(java.lang.CharSequence className)
+    setContentDescription(java.lang.CharSequence contentDescription)
+    setCurrentItemIndex(int currentItemIndex)
+    setEnabled(boolean isEnabled)
+    setFromIndex(int fromIndex)
+    setFullScreen(boolean isFullScreen)
+    setItemCount(int itemCount)
+    setMaxScrollX(int maxScrollX)
+    setMaxScrollY(int maxScrollY)
+    setParcelableData(android.os.Parcelable parcelableData)
+    setPassword(boolean isPassword)
+    setRemovedCount(int removedCount)
+    setScrollable(boolean scrollable)
+    setScrollDeltaX(int scrollDeltaX)
+    setScrollDeltaY(int scrollDeltaY)
+    setScrollX(int scrollX)
+    setScrollY(int scrollY)
+    setSource(android.view.View source)
+    setSource(android.view.View root, int virtualDescendantId)
+    setToIndex(int toIndex)
+  class AccessibilityRequestPreparer
+    #ctor(android.view.View view, int requestTypes)
+    onPrepareExtraData(int virtualViewId, java.lang.String extraDataKey, android.os.Bundle args, android.os.Message preparationFinishedMessage)
+  class AccessibilityWindowInfo
+    #ctor(android.view.accessibility.AccessibilityWindowInfo info)
+    equals(java.lang.Object obj)
+    getBoundsInScreen(android.graphics.Rect outBounds)
+    getChild(int index)
+    getRegionInScreen(android.graphics.Region outRegion)
+    getRoot(int prefetchingStrategy)
+    obtain(android.view.accessibility.AccessibilityWindowInfo info)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class CaptioningManager
+    addCaptioningChangeListener(android.view.accessibility.CaptioningManager.CaptioningChangeListener listener)
+    removeCaptioningChangeListener(android.view.accessibility.CaptioningManager.CaptioningChangeListener listener)
+  class CaptioningManager.CaptioningChangeListener
+    onEnabledChanged(boolean enabled)
+    onFontScaleChanged(float fontScale)
+    onLocaleChanged(java.util.Locale locale)
+    onSystemAudioCaptioningChanged(boolean enabled)
+    onSystemAudioCaptioningUiChanged(boolean enabled)
+    onUserStyleChanged(android.view.accessibility.CaptioningManager.CaptionStyle userStyle)
+
+package android.view.animation
+;---------------------------------------
+  class AccelerateDecelerateInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    getInterpolation(float input)
+  class AccelerateInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float factor)
+    getInterpolation(float input)
+  class AlphaAnimation
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float fromAlpha, float toAlpha)
+    applyTransformation(float interpolatedTime, android.view.animation.Transformation t)
+  class Animation
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    applyTransformation(float interpolatedTime, android.view.animation.Transformation t)
+    getTransformation(long currentTime, android.view.animation.Transformation outTransformation)
+    getTransformation(long currentTime, android.view.animation.Transformation outTransformation, float scale)
+    initialize(int width, int height, int parentWidth, int parentHeight)
+    resolveSize(int type, float value, int size, int parentSize)
+    restrictDuration(long durationMillis)
+    scaleCurrentDuration(float scale)
+    setAnimationListener(android.view.animation.Animation.AnimationListener listener)
+    setBackdropColor(int backdropColor)
+    setBackgroundColor(int bg)
+    setDetachWallpaper(boolean detachWallpaper)
+    setDuration(long durationMillis)
+    setFillAfter(boolean fillAfter)
+    setFillBefore(boolean fillBefore)
+    setFillEnabled(boolean fillEnabled)
+    setInterpolator(android.content.Context context, int resID)
+    setInterpolator(android.view.animation.Interpolator i)
+    setRepeatCount(int repeatCount)
+    setRepeatMode(int repeatMode)
+    setShowBackdrop(boolean showBackdrop)
+    setStartOffset(long startOffset)
+    setStartTime(long startTimeMillis)
+    setZAdjustment(int zAdjustment)
+  interface Animation.AnimationListener
+    onAnimationEnd(android.view.animation.Animation animation)
+    onAnimationRepeat(android.view.animation.Animation animation)
+    onAnimationStart(android.view.animation.Animation animation)
+  class AnimationSet
+    addAnimation(android.view.animation.Animation a)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(boolean shareInterpolator)
+    getTransformation(long currentTime, android.view.animation.Transformation t)
+    initialize(int width, int height, int parentWidth, int parentHeight)
+    restrictDuration(long durationMillis)
+    scaleCurrentDuration(float scale)
+    setDuration(long durationMillis)
+    setFillAfter(boolean fillAfter)
+    setFillBefore(boolean fillBefore)
+    setRepeatMode(int repeatMode)
+    setStartOffset(long startOffset)
+    setStartTime(long startTimeMillis)
+  class AnimationUtils
+    loadAnimation(android.content.Context context, int id)
+    loadInterpolator(android.content.Context context, int id)
+    loadLayoutAnimation(android.content.Context context, int id)
+    makeInAnimation(android.content.Context c, boolean fromLeft)
+    makeInChildBottomAnimation(android.content.Context c)
+    makeOutAnimation(android.content.Context c, boolean toRight)
+  class AnticipateInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float tension)
+    getInterpolation(float t)
+  class AnticipateOvershootInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float tension)
+    #ctor(float tension, float extraTension)
+    getInterpolation(float t)
+  class BounceInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    getInterpolation(float t)
+  class CycleInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float cycles)
+    getInterpolation(float input)
+  class DecelerateInterpolator
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float factor)
+    getInterpolation(float input)
+  class GridLayoutAnimationController
+    getDelayForView(android.view.View view)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.view.animation.Animation animation)
+    #ctor(android.view.animation.Animation animation, float columnDelay, float rowDelay)
+    setColumnDelay(float columnDelay)
+    setDirection(int direction)
+    setDirectionPriority(int directionPriority)
+    setRowDelay(float rowDelay)
+  class LayoutAnimationController
+    getAnimationForView(android.view.View view)
+    getDelayForView(android.view.View view)
+    getTransformedIndex(android.view.animation.LayoutAnimationController.AnimationParameters params)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.view.animation.Animation animation)
+    #ctor(android.view.animation.Animation animation, float delay)
+    setAnimation(android.content.Context context, int resourceID)
+    setAnimation(android.view.animation.Animation animation)
+    setDelay(float delay)
+    setInterpolator(android.content.Context context, int resourceID)
+    setInterpolator(android.view.animation.Interpolator interpolator)
+    setOrder(int order)
+  class LinearInterpolator
+    getInterpolation(float input)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class OvershootInterpolator
+    getInterpolation(float t)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float tension)
+  class PathInterpolator
+    getInterpolation(float t)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.graphics.Path path)
+    #ctor(float controlX, float controlY)
+    #ctor(float controlX1, float controlY1, float controlX2, float controlY2)
+  class RotateAnimation
+    applyTransformation(float interpolatedTime, android.view.animation.Transformation t)
+    initialize(int width, int height, int parentWidth, int parentHeight)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float fromDegrees, float toDegrees)
+    #ctor(float fromDegrees, float toDegrees, float pivotX, float pivotY)
+    #ctor(float fromDegrees, float toDegrees, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)
+  class ScaleAnimation
+    applyTransformation(float interpolatedTime, android.view.animation.Transformation t)
+    initialize(int width, int height, int parentWidth, int parentHeight)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float fromX, float toX, float fromY, float toY)
+    #ctor(float fromX, float toX, float fromY, float toY, float pivotX, float pivotY)
+    #ctor(float fromX, float toX, float fromY, float toY, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)
+  class Transformation
+    compose(android.view.animation.Transformation t)
+    set(android.view.animation.Transformation t)
+    setAlpha(float alpha)
+    setTransformationType(int transformationType)
+  class TranslateAnimation
+    applyTransformation(float interpolatedTime, android.view.animation.Transformation t)
+    initialize(int width, int height, int parentWidth, int parentHeight)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta)
+    #ctor(int fromXType, float fromXValue, int toXType, float toXValue, int fromYType, float fromYValue, int toYType, float toYValue)
+
+package android.view.autofill
+;---------------------------------------
+  class AutofillId
+    create(android.view.View host, int virtualId)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class AutofillManager
+    notifyValueChanged(android.view.View view)
+    notifyValueChanged(android.view.View view, int virtualId, android.view.autofill.AutofillValue value)
+    notifyViewClicked(android.view.View view)
+    notifyViewClicked(android.view.View view, int virtualId)
+    notifyViewEntered(android.view.View view)
+    notifyViewEntered(android.view.View view, int virtualId, android.graphics.Rect absBounds)
+    notifyViewExited(android.view.View view)
+    notifyViewExited(android.view.View view, int virtualId)
+    notifyViewVisibilityChanged(android.view.View view, boolean isVisible)
+    notifyViewVisibilityChanged(android.view.View view, int virtualId, boolean isVisible)
+    registerCallback(android.view.autofill.AutofillManager.AutofillCallback callback)
+    requestAutofill(android.view.View view)
+    requestAutofill(android.view.View view, int virtualId, android.graphics.Rect absBounds)
+    setAutofillRequestCallback(java.util.concurrent.Executor executor, android.view.autofill.AutofillRequestCallback callback)
+    setUserData(android.service.autofill.UserData userData)
+    showAutofillDialog(android.view.View view)
+    showAutofillDialog(android.view.View view, int virtualId)
+    unregisterCallback(android.view.autofill.AutofillManager.AutofillCallback callback)
+  class AutofillManager.AutofillCallback
+    onAutofillEvent(android.view.View view, int event)
+    onAutofillEvent(android.view.View view, int virtualId, int event)
+  interface AutofillRequestCallback
+    onFillRequest(android.view.inputmethod.InlineSuggestionsRequest inlineSuggestionsRequest, android.os.CancellationSignal cancellationSignal, android.service.autofill.FillCallback callback)
+  class AutofillValue
+    equals(java.lang.Object obj)
+    forDate(long value)
+    forList(int value)
+    forText(java.lang.CharSequence value)
+    forToggle(boolean value)
+    writeToParcel(android.os.Parcel parcel, int flags)
+
+package android.view.contentcapture
+;---------------------------------------
+  class ContentCaptureCondition
+    #ctor(android.content.LocusId locusId, int flags)
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ContentCaptureContext
+    forLocusId(java.lang.String id)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ContentCaptureContext.Builder
+    #ctor(android.content.LocusId id)
+    setExtras(android.os.Bundle extras)
+  class ContentCaptureManager
+    removeData(android.view.contentcapture.DataRemovalRequest request)
+    setContentCaptureEnabled(boolean enabled)
+    shareData(android.view.contentcapture.DataShareRequest request, java.util.concurrent.Executor executor, android.view.contentcapture.DataShareWriteAdapter dataShareWriteAdapter)
+  class ContentCaptureSession
+    createContentCaptureSession(android.view.contentcapture.ContentCaptureContext context)
+    newAutofillId(android.view.autofill.AutofillId hostId, long virtualChildId)
+    newViewStructure(android.view.View view)
+    newVirtualViewStructure(android.view.autofill.AutofillId parentId, long virtualId)
+    notifyViewAppeared(android.view.ViewStructure node)
+    notifyViewDisappeared(android.view.autofill.AutofillId id)
+    notifyViewInsetsChanged(android.graphics.Insets viewInsets)
+    notifyViewsDisappeared(android.view.autofill.AutofillId hostId, long[] virtualIds)
+    notifyViewTextChanged(android.view.autofill.AutofillId id, java.lang.CharSequence text)
+    setContentCaptureContext(android.view.contentcapture.ContentCaptureContext context)
+  class ContentCaptureSessionId
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class DataRemovalRequest
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class DataRemovalRequest.Builder
+    addLocusId(android.content.LocusId locusId, int flags)
+  class DataShareRequest
+    #ctor(android.content.LocusId locusId, java.lang.String mimeType)
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface DataShareWriteAdapter
+    onError(int errorCode)
+    onWrite(android.os.ParcelFileDescriptor destination)
+
+package android.view.displayhash
+;---------------------------------------
+  class DisplayHash
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DisplayHashManager
+    verifyDisplayHash(android.view.displayhash.DisplayHash displayHash)
+  interface DisplayHashResultCallback
+    onDisplayHashError(int errorCode)
+    onDisplayHashResult(android.view.displayhash.DisplayHash displayHash)
+  class VerifiedDisplayHash
+    #ctor(long timeMillis, android.graphics.Rect boundsInWindow, java.lang.String hashAlgorithm, byte[] imageHash)
+    writeToParcel(android.os.Parcel dest, int flags)
+
+package android.view.inputmethod
+;---------------------------------------
+  class BaseInputConnection
+    #ctor(android.view.View targetView, boolean fullEditor)
+    clearMetaKeyStates(int states)
+    commitCompletion(android.view.inputmethod.CompletionInfo text)
+    commitContent(android.view.inputmethod.InputContentInfo inputContentInfo, int flags, android.os.Bundle opts)
+    commitCorrection(android.view.inputmethod.CorrectionInfo correctionInfo)
+    commitText(java.lang.CharSequence text, int newCursorPosition)
+    deleteSurroundingText(int beforeLength, int afterLength)
+    deleteSurroundingTextInCodePoints(int beforeLength, int afterLength)
+    getComposingSpanEnd(android.text.Spannable text)
+    getComposingSpanStart(android.text.Spannable text)
+    getCursorCapsMode(int reqModes)
+    getExtractedText(android.view.inputmethod.ExtractedTextRequest request, int flags)
+    getSelectedText(int flags)
+    getSurroundingText(int beforeLength, int afterLength, int flags)
+    getTextAfterCursor(int length, int flags)
+    getTextBeforeCursor(int length, int flags)
+    performContextMenuAction(int id)
+    performEditorAction(int actionCode)
+    performPrivateCommand(java.lang.String action, android.os.Bundle data)
+    removeComposingSpans(android.text.Spannable text)
+    replaceText(int start, int end, java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    reportFullscreenMode(boolean enabled)
+    requestCursorUpdates(int cursorUpdateMode)
+    sendKeyEvent(android.view.KeyEvent event)
+    setComposingRegion(int start, int end)
+    setComposingSpans(android.text.Spannable text)
+    setComposingText(java.lang.CharSequence text, int newCursorPosition)
+    setSelection(int start, int end)
+  class CompletionInfo
+    #ctor(long id, int index, java.lang.CharSequence text)
+    #ctor(long id, int index, java.lang.CharSequence text, java.lang.CharSequence label)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CorrectionInfo
+    #ctor(int offset, java.lang.CharSequence oldText, java.lang.CharSequence newText)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CursorAnchorInfo
+    #ctor(android.os.Parcel source)
+    equals(java.lang.Object obj)
+    getCharacterBounds(int index)
+    getCharacterBoundsFlags(int index)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class CursorAnchorInfo.Builder
+    addCharacterBounds(int index, float left, float top, float right, float bottom, int flags)
+    addVisibleLineBounds(float left, float top, float right, float bottom)
+    setComposingText(int composingTextStart, java.lang.CharSequence composingText)
+    setEditorBoundsInfo(android.view.inputmethod.EditorBoundsInfo bounds)
+    setInsertionMarkerLocation(float horizontalPosition, float lineTop, float lineBaseline, float lineBottom, int flags)
+    setMatrix(android.graphics.Matrix matrix)
+    setSelectionRange(int newStart, int newEnd)
+    setTextAppearanceInfo(android.view.inputmethod.TextAppearanceInfo textAppearanceInfo)
+  class DeleteGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DeleteGesture.Builder
+    setDeletionArea(android.graphics.RectF area)
+    setFallbackText(java.lang.String fallbackText)
+    setGranularity(int granularity)
+  class DeleteRangeGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class DeleteRangeGesture.Builder
+    setDeletionEndArea(android.graphics.RectF endArea)
+    setDeletionStartArea(android.graphics.RectF startArea)
+    setFallbackText(java.lang.String fallbackText)
+    setGranularity(int granularity)
+  class EditorBoundsInfo
+    equals(java.lang.Object obj)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class EditorBoundsInfo.Builder
+    setEditorBounds(android.graphics.RectF bounds)
+    setHandwritingBounds(android.graphics.RectF bounds)
+  class EditorInfo
+    dump(android.util.Printer pw, java.lang.String prefix)
+    getInitialSelectedText(int flags)
+    getInitialSurroundingText(int beforeLength, int afterLength, int flags)
+    getInitialTextAfterCursor(int length, int flags)
+    getInitialTextBeforeCursor(int length, int flags)
+    makeCompatible(int targetSdkVersion)
+    setInitialSurroundingSubText(java.lang.CharSequence subText, int subTextStart)
+    setInitialSurroundingText(java.lang.CharSequence sourceText)
+    setInitialToolType(int toolType)
+    setSupportedHandwritingGesturePreviews(java.util.Set<java.lang.Class<? extends android.view.inputmethod.PreviewableHandwritingGesture>> gestures)
+    setSupportedHandwritingGestures(java.util.List<java.lang.Class<? extends android.view.inputmethod.HandwritingGesture>> gestures)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ExtractedText
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ExtractedTextRequest
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InlineSuggestion
+    equals(java.lang.Object o)
+    inflate(android.content.Context context, android.util.Size size, java.util.concurrent.Executor callbackExecutor, java.util.function.Consumer<android.widget.inline.InlineContentView> callback)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InlineSuggestionInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InlineSuggestionsRequest
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InlineSuggestionsRequest.Builder
+    addInlinePresentationSpecs(android.widget.inline.InlinePresentationSpec value)
+    #ctor(java.util.List<android.widget.inline.InlinePresentationSpec> inlinePresentationSpecs)
+    setClientSupported(boolean value)
+    setExtras(android.os.Bundle value)
+    setInlinePresentationSpecs(java.util.List<android.widget.inline.InlinePresentationSpec> value)
+    setInlineTooltipPresentationSpec(android.widget.inline.InlinePresentationSpec value)
+    setMaxSuggestionCount(int value)
+    setServiceSupported(boolean value)
+    setSupportedLocales(android.os.LocaleList value)
+  class InlineSuggestionsResponse
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InputBinding
+    #ctor(android.view.inputmethod.InputConnection conn, android.os.IBinder connToken, int uid, int pid)
+    #ctor(android.view.inputmethod.InputConnection conn, android.view.inputmethod.InputBinding binding)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface InputConnection
+    clearMetaKeyStates(int states)
+    commitCompletion(android.view.inputmethod.CompletionInfo text)
+    commitContent(android.view.inputmethod.InputContentInfo inputContentInfo, int flags, android.os.Bundle opts)
+    commitCorrection(android.view.inputmethod.CorrectionInfo correctionInfo)
+    commitText(java.lang.CharSequence text, int newCursorPosition)
+    commitText(java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    deleteSurroundingText(int beforeLength, int afterLength)
+    deleteSurroundingTextInCodePoints(int beforeLength, int afterLength)
+    getCursorCapsMode(int reqModes)
+    getExtractedText(android.view.inputmethod.ExtractedTextRequest request, int flags)
+    getSelectedText(int flags)
+    getSurroundingText(int beforeLength, int afterLength, int flags)
+    getTextAfterCursor(int n, int flags)
+    getTextBeforeCursor(int n, int flags)
+    performContextMenuAction(int id)
+    performEditorAction(int editorAction)
+    performHandwritingGesture(android.view.inputmethod.HandwritingGesture gesture, java.util.concurrent.Executor executor, java.util.function.IntConsumer consumer)
+    performPrivateCommand(java.lang.String action, android.os.Bundle data)
+    previewHandwritingGesture(android.view.inputmethod.PreviewableHandwritingGesture gesture, android.os.CancellationSignal cancellationSignal)
+    replaceText(int start, int end, java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    reportFullscreenMode(boolean enabled)
+    requestCursorUpdates(int cursorUpdateMode)
+    requestCursorUpdates(int cursorUpdateMode, int cursorUpdateFilter)
+    requestTextBoundsInfo(android.graphics.RectF bounds, java.util.concurrent.Executor executor, java.util.function.Consumer<android.view.inputmethod.TextBoundsInfoResult> consumer)
+    sendKeyEvent(android.view.KeyEvent event)
+    setComposingRegion(int start, int end)
+    setComposingRegion(int start, int end, android.view.inputmethod.TextAttribute textAttribute)
+    setComposingText(java.lang.CharSequence text, int newCursorPosition)
+    setComposingText(java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    setImeConsumesInput(boolean imeConsumesInput)
+    setSelection(int start, int end)
+  class InputConnectionWrapper
+    clearMetaKeyStates(int states)
+    commitCompletion(android.view.inputmethod.CompletionInfo text)
+    commitContent(android.view.inputmethod.InputContentInfo inputContentInfo, int flags, android.os.Bundle opts)
+    commitCorrection(android.view.inputmethod.CorrectionInfo correctionInfo)
+    commitText(java.lang.CharSequence text, int newCursorPosition)
+    commitText(java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    deleteSurroundingText(int beforeLength, int afterLength)
+    deleteSurroundingTextInCodePoints(int beforeLength, int afterLength)
+    getCursorCapsMode(int reqModes)
+    getExtractedText(android.view.inputmethod.ExtractedTextRequest request, int flags)
+    getSelectedText(int flags)
+    getSurroundingText(int beforeLength, int afterLength, int flags)
+    getTextAfterCursor(int n, int flags)
+    getTextBeforeCursor(int n, int flags)
+    #ctor(android.view.inputmethod.InputConnection target, boolean mutable)
+    performContextMenuAction(int id)
+    performEditorAction(int editorAction)
+    performHandwritingGesture(android.view.inputmethod.HandwritingGesture gesture, java.util.concurrent.Executor executor, java.util.function.IntConsumer consumer)
+    performPrivateCommand(java.lang.String action, android.os.Bundle data)
+    previewHandwritingGesture(android.view.inputmethod.PreviewableHandwritingGesture gesture, android.os.CancellationSignal cancellationSignal)
+    reportFullscreenMode(boolean enabled)
+    requestCursorUpdates(int cursorUpdateMode)
+    requestTextBoundsInfo(android.graphics.RectF bounds, java.util.concurrent.Executor executor, java.util.function.Consumer<android.view.inputmethod.TextBoundsInfoResult> consumer)
+    sendKeyEvent(android.view.KeyEvent event)
+    setComposingRegion(int start, int end)
+    setComposingRegion(int start, int end, android.view.inputmethod.TextAttribute textAttribute)
+    setComposingText(java.lang.CharSequence text, int newCursorPosition)
+    setComposingText(java.lang.CharSequence text, int newCursorPosition, android.view.inputmethod.TextAttribute textAttribute)
+    setImeConsumesInput(boolean imeConsumesInput)
+    setSelection(int start, int end)
+    setTarget(android.view.inputmethod.InputConnection target)
+  class InputContentInfo
+    #ctor(android.net.Uri contentUri, android.content.ClipDescription description)
+    #ctor(android.net.Uri contentUri, android.content.ClipDescription description, android.net.Uri linkUri)
+    writeToParcel(android.os.Parcel dest, int flags)
+  interface InputMethod
+    attachToken(android.os.IBinder token)
+    bindInput(android.view.inputmethod.InputBinding binding)
+    changeInputMethodSubtype(android.view.inputmethod.InputMethodSubtype subtype)
+    createSession(android.view.inputmethod.InputMethod.SessionCallback callback)
+    hideSoftInput(int flags, android.os.ResultReceiver resultReceiver)
+    restartInput(android.view.inputmethod.InputConnection inputConnection, android.view.inputmethod.EditorInfo editorInfo)
+    revokeSession(android.view.inputmethod.InputMethodSession session)
+    setSessionEnabled(android.view.inputmethod.InputMethodSession session, boolean enabled)
+    showSoftInput(int flags, android.os.ResultReceiver resultReceiver)
+    startInput(android.view.inputmethod.InputConnection inputConnection, android.view.inputmethod.EditorInfo editorInfo)
+  interface InputMethod.SessionCallback
+    sessionCreated(android.view.inputmethod.InputMethodSession session)
+  class InputMethodInfo
+    dump(android.util.Printer pw, java.lang.String prefix)
+    equals(java.lang.Object o)
+    getSubtypeAt(int index)
+    #ctor(android.content.Context context, android.content.pm.ResolveInfo service)
+    #ctor(java.lang.String packageName, java.lang.String className, java.lang.CharSequence label, java.lang.String settingsActivity)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InputMethodManager
+    dispatchKeyEventFromInputMethod(android.view.View targetView, android.view.KeyEvent event)
+    displayCompletions(android.view.View view, android.view.inputmethod.CompletionInfo[] completions)
+    getEnabledInputMethodSubtypeList(android.view.inputmethod.InputMethodInfo imi, boolean allowsImplicitlyEnabledSubtypes)
+    hideSoftInputFromInputMethod(android.os.IBinder token, int flags)
+    hideSoftInputFromWindow(android.os.IBinder windowToken, int flags)
+    hideSoftInputFromWindow(android.os.IBinder windowToken, int flags, android.os.ResultReceiver resultReceiver)
+    hideStatusIcon(android.os.IBinder imeToken)
+    invalidateInput(android.view.View view)
+    isActive(android.view.View view)
+    isWatchingCursor(android.view.View view)
+    restartInput(android.view.View view)
+    sendAppPrivateCommand(android.view.View view, java.lang.String action, android.os.Bundle data)
+    setAdditionalInputMethodSubtypes(java.lang.String imiId, android.view.inputmethod.InputMethodSubtype[] subtypes)
+    setCurrentInputMethodSubtype(android.view.inputmethod.InputMethodSubtype subtype)
+    setExplicitlyEnabledInputMethodSubtypes(java.lang.String imiId, int[] subtypeHashCodes)
+    setInputMethod(android.os.IBinder token, java.lang.String id)
+    setInputMethodAndSubtype(android.os.IBinder token, java.lang.String id, android.view.inputmethod.InputMethodSubtype subtype)
+    shouldOfferSwitchingToNextInputMethod(android.os.IBinder imeToken)
+    showInputMethodAndSubtypeEnabler(java.lang.String imiId)
+    showSoftInput(android.view.View view, int flags)
+    showSoftInput(android.view.View view, int flags, android.os.ResultReceiver resultReceiver)
+    showSoftInputFromInputMethod(android.os.IBinder token, int flags)
+    showStatusIcon(android.os.IBinder imeToken, java.lang.String packageName, int iconId)
+    startStylusHandwriting(android.view.View view)
+    switchToLastInputMethod(android.os.IBinder imeToken)
+    switchToNextInputMethod(android.os.IBinder imeToken, boolean onlyCurrentIme)
+    toggleSoftInput(int showFlags, int hideFlags)
+    toggleSoftInputFromWindow(android.os.IBinder windowToken, int showFlags, int hideFlags)
+    updateCursor(android.view.View view, int left, int top, int right, int bottom)
+    updateCursorAnchorInfo(android.view.View view, android.view.inputmethod.CursorAnchorInfo cursorAnchorInfo)
+    updateExtractedText(android.view.View view, int token, android.view.inputmethod.ExtractedText text)
+    updateSelection(android.view.View view, int selStart, int selEnd, int candidatesStart, int candidatesEnd)
+    viewClicked(android.view.View view)
+  interface InputMethodSession
+    appPrivateCommand(java.lang.String action, android.os.Bundle data)
+    dispatchGenericMotionEvent(int seq, android.view.MotionEvent event, android.view.inputmethod.InputMethodSession.EventCallback callback)
+    dispatchKeyEvent(int seq, android.view.KeyEvent event, android.view.inputmethod.InputMethodSession.EventCallback callback)
+    dispatchTrackballEvent(int seq, android.view.MotionEvent event, android.view.inputmethod.InputMethodSession.EventCallback callback)
+    displayCompletions(android.view.inputmethod.CompletionInfo[] completions)
+    toggleSoftInput(int showFlags, int hideFlags)
+    updateCursor(android.graphics.Rect newCursor)
+    updateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo cursorAnchorInfo)
+    updateExtractedText(int token, android.view.inputmethod.ExtractedText text)
+    updateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd, int candidatesStart, int candidatesEnd)
+    viewClicked(boolean focusChanged)
+  interface InputMethodSession.EventCallback
+    finishedEvent(int seq, boolean handled)
+  class InputMethodSubtype
+    containsExtraValueKey(java.lang.String key)
+    equals(java.lang.Object o)
+    getDisplayName(android.content.Context context, java.lang.String packageName, android.content.pm.ApplicationInfo appInfo)
+    getExtraValueOf(java.lang.String key)
+    #ctor(int nameId, int iconId, java.lang.String locale, java.lang.String mode, java.lang.String extraValue, boolean isAuxiliary, boolean overridesImplicitlyEnabledSubtype)
+    #ctor(int nameId, int iconId, java.lang.String locale, java.lang.String mode, java.lang.String extraValue, boolean isAuxiliary, boolean overridesImplicitlyEnabledSubtype, int id)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class InputMethodSubtype.InputMethodSubtypeBuilder
+    setIsAsciiCapable(boolean isAsciiCapable)
+    setIsAuxiliary(boolean isAuxiliary)
+    setLanguageTag(java.lang.String languageTag)
+    setOverridesImplicitlyEnabledSubtype(boolean overridesImplicitlyEnabledSubtype)
+    setPhysicalKeyboardHint(android.icu.util.ULocale languageTag, java.lang.String layoutType)
+    setSubtypeExtraValue(java.lang.String subtypeExtraValue)
+    setSubtypeIconResId(int subtypeIconResId)
+    setSubtypeId(int subtypeId)
+    setSubtypeLocale(java.lang.String subtypeLocale)
+    setSubtypeMode(java.lang.String subtypeMode)
+    setSubtypeNameOverride(java.lang.CharSequence nameOverride)
+    setSubtypeNameResId(int subtypeNameResId)
+  class InsertGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InsertGesture.Builder
+    setFallbackText(java.lang.String fallbackText)
+    setInsertionPoint(android.graphics.PointF point)
+    setTextToInsert(java.lang.String text)
+  class JoinOrSplitGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class JoinOrSplitGesture.Builder
+    setFallbackText(java.lang.String fallbackText)
+    setJoinOrSplitPoint(android.graphics.PointF point)
+  class RemoveSpaceGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RemoveSpaceGesture.Builder
+    setFallbackText(java.lang.String fallbackText)
+    setPoints(android.graphics.PointF startPoint, android.graphics.PointF endPoint)
+  class SelectGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SelectGesture.Builder
+    setFallbackText(java.lang.String fallbackText)
+    setGranularity(int granularity)
+    setSelectionArea(android.graphics.RectF area)
+  class SelectRangeGesture
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SelectRangeGesture.Builder
+    setFallbackText(java.lang.String fallbackText)
+    setGranularity(int granularity)
+    setSelectionEndArea(android.graphics.RectF endArea)
+    setSelectionStartArea(android.graphics.RectF startArea)
+  class SurroundingText
+    #ctor(java.lang.CharSequence text, int selectionStart, int selectionEnd, int offset)
+    writeToParcel(android.os.Parcel out, int flags)
+  class TextAppearanceInfo
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextAppearanceInfo.Builder
+    setAllCaps(boolean allCaps)
+    setElegantTextHeight(boolean elegantTextHeight)
+    setFallbackLineSpacing(boolean fallbackLineSpacing)
+    setFontFeatureSettings(java.lang.String fontFeatureSettings)
+    setFontVariationSettings(java.lang.String fontVariationSettings)
+    setHighlightTextColor(int highlightTextColor)
+    setHintTextColor(int hintTextColor)
+    setLetterSpacing(float letterSpacing)
+    setLineBreakStyle(int lineBreakStyle)
+    setLineBreakWordStyle(int lineBreakWordStyle)
+    setLinkTextColor(int linkTextColor)
+    setShadowColor(int shadowColor)
+    setShadowDx(float shadowDx)
+    setShadowDy(float shadowDy)
+    setShadowRadius(float shadowRadius)
+    setSystemFontFamilyName(java.lang.String systemFontFamilyName)
+    setTextColor(int textColor)
+    setTextFontWeight(int textFontWeight)
+    setTextLocales(android.os.LocaleList textLocales)
+    setTextScaleX(float textScaleX)
+    setTextSize(float textSize)
+    setTextStyle(int textStyle)
+  class TextAttribute
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextAttribute.Builder
+    setExtras(android.os.PersistableBundle extras)
+    setTextConversionSuggestions(java.util.List<java.lang.String> textConversionSuggestions)
+  class TextBoundsInfo
+    getCharacterBidiLevel(int index)
+    getCharacterBounds(int index, android.graphics.RectF bounds)
+    getCharacterFlags(int index)
+    getMatrix(android.graphics.Matrix matrix)
+    getOffsetForPosition(float x, float y)
+    getRangeForRect(android.graphics.RectF area, android.text.SegmentFinder segmentFinder, android.text.Layout.TextInclusionStrategy inclusionStrategy)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextBoundsInfo.Builder
+    setCharacterBidiLevel(int[] characterBidiLevels)
+    setCharacterBounds(float[] characterBounds)
+    setCharacterFlags(int[] characterFlags)
+    setGraphemeSegmentFinder(android.text.SegmentFinder graphemeSegmentFinder)
+    setLineSegmentFinder(android.text.SegmentFinder lineSegmentFinder)
+    setMatrix(android.graphics.Matrix matrix)
+    setStartAndEnd(int start, int end)
+    setWordSegmentFinder(android.text.SegmentFinder wordSegmentFinder)
+    #ctor(int start, int end)
+  class TextBoundsInfoResult
+    #ctor(int resultCode)
+    #ctor(int resultCode, android.view.inputmethod.TextBoundsInfo textBoundsInfo)
+  class TextSnapshot
+    #ctor(android.view.inputmethod.SurroundingText surroundingText, int compositionStart, int compositionEnd, int cursorCapsMode)
+
+package android.view.inspector
+;---------------------------------------
+  interface InspectionCompanion<T>
+    mapProperties(android.view.inspector.PropertyMapper propertyMapper)
+    readProperties(T inspectable, android.view.inspector.PropertyReader propertyReader)
+  interface InspectionCompanionProvider
+    <T> provide(java.lang.Class<T> cls)
+  class IntFlagMapping
+    add(int mask, int target, java.lang.String name)
+    get(int value)
+  interface PropertyMapper
+    mapBoolean(java.lang.String name, int attributeId)
+    mapByte(java.lang.String name, int attributeId)
+    mapChar(java.lang.String name, int attributeId)
+    mapColor(java.lang.String name, int attributeId)
+    mapDouble(java.lang.String name, int attributeId)
+    mapFloat(java.lang.String name, int attributeId)
+    mapGravity(java.lang.String name, int attributeId)
+    mapInt(java.lang.String name, int attributeId)
+    mapIntEnum(java.lang.String name, int attributeId, java.util.function.IntFunction<java.lang.String> mapping)
+    mapIntFlag(java.lang.String name, int attributeId, java.util.function.IntFunction<java.util.Set<java.lang.String>> mapping)
+    mapLong(java.lang.String name, int attributeId)
+    mapObject(java.lang.String name, int attributeId)
+    mapResourceId(java.lang.String name, int attributeId)
+    mapShort(java.lang.String name, int attributeId)
+  class PropertyMapper.PropertyConflictException
+    #ctor(java.lang.String name, java.lang.String newPropertyType, java.lang.String existingPropertyType)
+  interface PropertyReader
+    readBoolean(int id, boolean value)
+    readByte(int id, byte value)
+    readChar(int id, char value)
+    readColor(int id, android.graphics.Color value)
+    readColor(int id, int value)
+    readColor(int id, long value)
+    readDouble(int id, double value)
+    readFloat(int id, float value)
+    readGravity(int id, int value)
+    readInt(int id, int value)
+    readIntEnum(int id, int value)
+    readIntFlag(int id, int value)
+    readLong(int id, long value)
+    readObject(int id, java.lang.Object value)
+    readResourceId(int id, int value)
+    readShort(int id, short value)
+  class PropertyReader.PropertyTypeMismatchException
+    #ctor(int id, java.lang.String expectedPropertyType, java.lang.String actualPropertyType)
+    #ctor(int id, java.lang.String expectedPropertyType, java.lang.String actualPropertyType, java.lang.String propertyName)
+  class StaticInspectionCompanionProvider
+    <T> provide(java.lang.Class<T> cls)
+
+package android.view.textclassifier
+;---------------------------------------
+  class ConversationAction
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ConversationAction.Builder
+    #ctor(java.lang.String actionType)
+    setAction(android.app.RemoteAction action)
+    setConfidenceScore(float score)
+    setExtras(android.os.Bundle extras)
+    setTextReply(java.lang.CharSequence textReply)
+  class ConversationActions
+    #ctor(java.util.List<android.view.textclassifier.ConversationAction> conversationActions, java.lang.String id)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ConversationActions.Message
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ConversationActions.Message.Builder
+    #ctor(android.app.Person author)
+    setExtras(android.os.Bundle bundle)
+    setReferenceTime(java.time.ZonedDateTime referenceTime)
+    setText(java.lang.CharSequence text)
+  class ConversationActions.Request
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class ConversationActions.Request.Builder
+    #ctor(java.util.List<android.view.textclassifier.ConversationActions.Message> conversation)
+    setExtras(android.os.Bundle bundle)
+    setHints(java.util.List<java.lang.String> hints)
+    setMaxSuggestions(int maxSuggestions)
+    setTypeConfig(android.view.textclassifier.TextClassifier.EntityConfig typeConfig)
+  class SelectionEvent
+    createSelectionActionEvent(int start, int end, int actionType)
+    createSelectionActionEvent(int start, int end, int actionType, android.view.textclassifier.TextClassification classification)
+    createSelectionModifiedEvent(int start, int end)
+    createSelectionModifiedEvent(int start, int end, android.view.textclassifier.TextClassification classification)
+    createSelectionModifiedEvent(int start, int end, android.view.textclassifier.TextSelection selection)
+    createSelectionStartedEvent(int invocationMethod, int start)
+    equals(java.lang.Object obj)
+    isTerminal(int eventType)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextClassification
+    getConfidenceScore(java.lang.String entity)
+    getEntity(int index)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextClassification.Builder
+    addAction(android.app.RemoteAction action)
+    setEntityType(java.lang.String type, float confidenceScore)
+    setExtras(android.os.Bundle extras)
+    setIcon(android.graphics.drawable.Drawable icon)
+    setId(java.lang.String id)
+    setIntent(android.content.Intent intent)
+    setLabel(java.lang.String label)
+    setOnClickListener(android.view.View.OnClickListener onClickListener)
+    setText(java.lang.String text)
+  class TextClassification.Request
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextClassification.Request.Builder
+    setDefaultLocales(android.os.LocaleList defaultLocales)
+    setExtras(android.os.Bundle extras)
+    setReferenceTime(java.time.ZonedDateTime referenceTime)
+    #ctor(java.lang.CharSequence text, int startIndex, int endIndex)
+  class TextClassificationContext
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class TextClassificationContext.Builder
+    setWidgetVersion(java.lang.String widgetVersion)
+    #ctor(java.lang.String packageName, java.lang.String widgetType)
+  class TextClassificationManager
+    createTextClassificationSession(android.view.textclassifier.TextClassificationContext classificationContext)
+    setTextClassificationSessionFactory(android.view.textclassifier.TextClassificationSessionFactory factory)
+    setTextClassifier(android.view.textclassifier.TextClassifier textClassifier)
+  interface TextClassificationSessionFactory
+    createTextClassificationSession(android.view.textclassifier.TextClassificationContext classificationContext)
+  class TextClassificationSessionId
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  interface TextClassifier
+    classifyText(android.view.textclassifier.TextClassification.Request request)
+    classifyText(java.lang.CharSequence text, int startIndex, int endIndex, android.os.LocaleList defaultLocales)
+    detectLanguage(android.view.textclassifier.TextLanguage.Request request)
+    generateLinks(android.view.textclassifier.TextLinks.Request request)
+    onSelectionEvent(android.view.textclassifier.SelectionEvent event)
+    onTextClassifierEvent(android.view.textclassifier.TextClassifierEvent event)
+    suggestConversationActions(android.view.textclassifier.ConversationActions.Request request)
+    suggestSelection(android.view.textclassifier.TextSelection.Request request)
+    suggestSelection(java.lang.CharSequence text, int selectionStartIndex, int selectionEndIndex, android.os.LocaleList defaultLocales)
+  class TextClassifier.EntityConfig
+    create(java.util.Collection<java.lang.String> hints, java.util.Collection<java.lang.String> includedEntityTypes, java.util.Collection<java.lang.String> excludedEntityTypes)
+    createWithExplicitEntityList(java.util.Collection<java.lang.String> entityTypes)
+    createWithHints(java.util.Collection<java.lang.String> hints)
+    resolveEntityListModifications(java.util.Collection<java.lang.String> entityTypes)
+    writeToParcel(android.os.Parcel parcel, int flags)
+  class TextClassifier.EntityConfig.Builder
+    includeTypesFromTextClassifier(boolean includeTypesFromTextClassifier)
+    setExcludedTypes(java.util.Collection<java.lang.String> excludedTypes)
+    setHints(java.util.Collection<java.lang.String> hints)
+    setIncludedTypes(java.util.Collection<java.lang.String> includedTypes)
+  class TextClassifierEvent
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextClassifierEvent.Builder<T>
+    setActionIndices(int... actionIndices)
+    setEntityTypes(java.lang.String... entityTypes)
+    setEventContext(android.view.textclassifier.TextClassificationContext eventContext)
+    setEventIndex(int eventIndex)
+    setExtras(android.os.Bundle extras)
+    setLocale(android.icu.util.ULocale locale)
+    setModelName(java.lang.String modelVersion)
+    setResultId(java.lang.String resultId)
+    setScores(float... scores)
+  class TextClassifierEvent.ConversationActionsEvent.Builder
+    #ctor(int eventType)
+  class TextClassifierEvent.LanguageDetectionEvent.Builder
+    #ctor(int eventType)
+  class TextClassifierEvent.TextLinkifyEvent.Builder
+    #ctor(int eventType)
+  class TextClassifierEvent.TextSelectionEvent
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextClassifierEvent.TextSelectionEvent.Builder
+    setRelativeSuggestedWordEndIndex(int relativeSuggestedWordEndIndex)
+    setRelativeSuggestedWordStartIndex(int relativeSuggestedWordStartIndex)
+    setRelativeWordEndIndex(int relativeWordEndIndex)
+    setRelativeWordStartIndex(int relativeWordStartIndex)
+    #ctor(int eventType)
+  class TextLanguage
+    getConfidenceScore(android.icu.util.ULocale locale)
+    getLocale(int index)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextLanguage.Builder
+    putLocale(android.icu.util.ULocale locale, float confidenceScore)
+    setExtras(android.os.Bundle bundle)
+    setId(java.lang.String id)
+  class TextLanguage.Request
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextLanguage.Request.Builder
+    setExtras(android.os.Bundle bundle)
+    #ctor(java.lang.CharSequence text)
+  class TextLinks
+    apply(android.text.Spannable text, int applyStrategy, java.util.function.Function<android.view.textclassifier.TextLinks.TextLink,android.view.textclassifier.TextLinks.TextLinkSpan> spanFactory)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextLinks.Builder
+    addLink(int start, int end, java.util.Map<java.lang.String,java.lang.Float> entityScores)
+    addLink(int start, int end, java.util.Map<java.lang.String,java.lang.Float> entityScores, android.os.Bundle extras)
+    setExtras(android.os.Bundle extras)
+    #ctor(java.lang.String fullText)
+  class TextLinks.Request
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextLinks.Request.Builder
+    setDefaultLocales(android.os.LocaleList defaultLocales)
+    setEntityConfig(android.view.textclassifier.TextClassifier.EntityConfig entityConfig)
+    setExtras(android.os.Bundle extras)
+    setReferenceTime(java.time.ZonedDateTime referenceTime)
+    #ctor(java.lang.CharSequence text)
+  class TextLinks.TextLink
+    getConfidenceScore(java.lang.String entityType)
+    getEntity(int index)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextLinks.TextLinkSpan
+    onClick(android.view.View widget)
+    #ctor(android.view.textclassifier.TextLinks.TextLink textLink)
+  class TextSelection
+    getConfidenceScore(java.lang.String entity)
+    getEntity(int index)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextSelection.Builder
+    setEntityType(java.lang.String type, float confidenceScore)
+    setExtras(android.os.Bundle extras)
+    setId(java.lang.String id)
+    setTextClassification(android.view.textclassifier.TextClassification textClassification)
+    #ctor(int startIndex, int endIndex)
+  class TextSelection.Request
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextSelection.Request.Builder
+    setDefaultLocales(android.os.LocaleList defaultLocales)
+    setExtras(android.os.Bundle extras)
+    setIncludeTextClassification(boolean includeTextClassification)
+    #ctor(java.lang.CharSequence text, int startIndex, int endIndex)
+
+package android.view.textservice
+;---------------------------------------
+  class SentenceSuggestionsInfo
+    getLengthAt(int i)
+    getOffsetAt(int i)
+    getSuggestionsInfoAt(int i)
+    #ctor(android.os.Parcel source)
+    #ctor(android.view.textservice.SuggestionsInfo[] suggestionsInfos, int[] offsets, int[] lengths)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SpellCheckerInfo
+    getSubtypeAt(int index)
+    loadIcon(android.content.pm.PackageManager pm)
+    loadLabel(android.content.pm.PackageManager pm)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class SpellCheckerSession
+    getSentenceSuggestions(android.view.textservice.TextInfo[] textInfos, int suggestionsLimit)
+    getSuggestions(android.view.textservice.TextInfo textInfo, int suggestionsLimit)
+    getSuggestions(android.view.textservice.TextInfo[] textInfos, int suggestionsLimit, boolean sequentialWords)
+  interface SpellCheckerSession.SpellCheckerSessionListener
+    onGetSentenceSuggestions(android.view.textservice.SentenceSuggestionsInfo[] results)
+    onGetSuggestions(android.view.textservice.SuggestionsInfo[] results)
+  class SpellCheckerSession.SpellCheckerSessionParams.Builder
+    setExtras(android.os.Bundle extras)
+    setLocale(java.util.Locale locale)
+    setShouldReferToSpellCheckerLanguageSettings(boolean shouldReferToSpellCheckerLanguageSettings)
+    setSupportedAttributes(int supportedAttributes)
+  class SpellCheckerSubtype
+    containsExtraValueKey(java.lang.String key)
+    equals(java.lang.Object o)
+    getDisplayName(android.content.Context context, java.lang.String packageName, android.content.pm.ApplicationInfo appInfo)
+    getExtraValueOf(java.lang.String key)
+    #ctor(int nameId, java.lang.String locale, java.lang.String extraValue)
+    writeToParcel(android.os.Parcel dest, int parcelableFlags)
+  class SuggestionsInfo
+    getSuggestionAt(int i)
+    setCookieAndSequence(int cookie, int sequence)
+    #ctor(android.os.Parcel source)
+    #ctor(int suggestionsAttributes, java.lang.String[] suggestions)
+    #ctor(int suggestionsAttributes, java.lang.String[] suggestions, int cookie, int sequence)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextInfo
+    #ctor(android.os.Parcel source)
+    #ctor(java.lang.CharSequence charSequence, int start, int end, int cookie, int sequenceNumber)
+    #ctor(java.lang.String text)
+    #ctor(java.lang.String text, int cookie, int sequenceNumber)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TextServicesManager
+    newSpellCheckerSession(android.os.Bundle bundle, java.util.Locale locale, android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener listener, boolean referToSpellCheckerLanguageSettings)
+    newSpellCheckerSession(android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams params, java.util.concurrent.Executor executor, android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener listener)
+
+package android.view.translation
+;---------------------------------------
+  class TranslationCapability
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TranslationContext
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TranslationContext.Builder
+    setTranslationFlags(int value)
+    #ctor(android.view.translation.TranslationSpec sourceSpec, android.view.translation.TranslationSpec targetSpec)
+  class TranslationManager
+    addOnDeviceTranslationCapabilityUpdateListener(java.util.concurrent.Executor executor, java.util.function.Consumer<android.view.translation.TranslationCapability> capabilityListener)
+    createOnDeviceTranslator(android.view.translation.TranslationContext translationContext, java.util.concurrent.Executor executor, java.util.function.Consumer<android.view.translation.Translator> callback)
+    getOnDeviceTranslationCapabilities(int sourceFormat, int targetFormat)
+    removeOnDeviceTranslationCapabilityUpdateListener(java.util.function.Consumer<android.view.translation.TranslationCapability> capabilityListener)
+  class TranslationRequest
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TranslationRequest.Builder
+    setFlags(int value)
+    setTranslationRequestValues(java.util.List<android.view.translation.TranslationRequestValue> value)
+    setViewTranslationRequests(java.util.List<android.view.translation.ViewTranslationRequest> value)
+  class TranslationRequestValue
+    equals(java.lang.Object o)
+    forText(java.lang.CharSequence text)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TranslationResponse
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TranslationResponse.Builder
+    setFinalResponse(boolean value)
+    setTranslationResponseValue(int index, android.view.translation.TranslationResponseValue value)
+    setTranslationResponseValues(android.util.SparseArray<android.view.translation.TranslationResponseValue> value)
+    setViewTranslationResponse(int index, android.view.translation.ViewTranslationResponse response)
+    setViewTranslationResponses(android.util.SparseArray<android.view.translation.ViewTranslationResponse> value)
+    #ctor(int translationStatus)
+  class TranslationResponseValue
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class TranslationResponseValue.Builder
+    setExtras(android.os.Bundle value)
+    setText(java.lang.CharSequence value)
+    setTransliteration(java.lang.CharSequence value)
+    #ctor(int statusCode)
+  class TranslationSpec
+    equals(java.lang.Object o)
+    #ctor(android.icu.util.ULocale locale, int dataFormat)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class Translator
+    translate(android.view.translation.TranslationRequest request, android.os.CancellationSignal cancellationSignal, java.util.concurrent.Executor executor, java.util.function.Consumer<android.view.translation.TranslationResponse> callback)
+  class UiTranslationManager
+    registerUiTranslationStateCallback(java.util.concurrent.Executor executor, android.view.translation.UiTranslationStateCallback callback)
+    unregisterUiTranslationStateCallback(android.view.translation.UiTranslationStateCallback callback)
+  interface UiTranslationStateCallback
+    onFinished(java.lang.String packageName)
+    onPaused(java.lang.String packageName)
+    onResumed(android.icu.util.ULocale sourceLocale, android.icu.util.ULocale targetLocale)
+    onResumed(android.icu.util.ULocale sourceLocale, android.icu.util.ULocale targetLocale, java.lang.String packageName)
+    onStarted(android.icu.util.ULocale sourceLocale, android.icu.util.ULocale targetLocale)
+    onStarted(android.icu.util.ULocale sourceLocale, android.icu.util.ULocale targetLocale, java.lang.String packageName)
+  interface ViewTranslationCallback
+    onClearTranslation(android.view.View view)
+    onHideTranslation(android.view.View view)
+    onShowTranslation(android.view.View view)
+  class ViewTranslationRequest
+    equals(java.lang.Object o)
+    getValue(java.lang.String key)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ViewTranslationRequest.Builder
+    setValue(java.lang.String key, android.view.translation.TranslationRequestValue value)
+    #ctor(android.view.autofill.AutofillId autofillId)
+    #ctor(android.view.autofill.AutofillId autofillId, long virtualChildId)
+  class ViewTranslationResponse
+    equals(java.lang.Object o)
+    getValue(java.lang.String key)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class ViewTranslationResponse.Builder
+    setValue(java.lang.String key, android.view.translation.TranslationResponseValue value)
+    #ctor(android.view.autofill.AutofillId autofillId)
+
+package android.webkit
+;---------------------------------------
+  class ClientCertRequest
+    proceed(java.security.PrivateKey privateKey, java.security.cert.X509Certificate[] chain)
+  class ConsoleMessage
+    #ctor(java.lang.String message, java.lang.String sourceId, int lineNumber, android.webkit.ConsoleMessage.MessageLevel msgLevel)
+  class CookieManager
+    acceptThirdPartyCookies(android.webkit.WebView webview)
+    getCookie(java.lang.String url)
+    removeAllCookies(android.webkit.ValueCallback<java.lang.Boolean> callback)
+    removeSessionCookies(android.webkit.ValueCallback<java.lang.Boolean> callback)
+    setAcceptCookie(boolean accept)
+    setAcceptFileSchemeCookies(boolean accept)
+    setAcceptThirdPartyCookies(android.webkit.WebView webview, boolean accept)
+    setCookie(java.lang.String url, java.lang.String value)
+    setCookie(java.lang.String url, java.lang.String value, android.webkit.ValueCallback<java.lang.Boolean> callback)
+  class CookieSyncManager
+    createInstance(android.content.Context context)
+  class DateSorter
+    #ctor(android.content.Context context)
+    getBoundary(int index)
+    getIndex(long time)
+    getLabel(int index)
+  interface DownloadListener
+    onDownloadStart(java.lang.String url, java.lang.String userAgent, java.lang.String contentDisposition, java.lang.String mimetype, long contentLength)
+  class GeolocationPermissions
+    allow(java.lang.String origin)
+    clear(java.lang.String origin)
+    getAllowed(java.lang.String origin, android.webkit.ValueCallback<java.lang.Boolean> callback)
+    getOrigins(android.webkit.ValueCallback<java.util.Set<java.lang.String>> callback)
+  interface GeolocationPermissions.Callback
+    invoke(java.lang.String origin, boolean allow, boolean retain)
+  class HttpAuthHandler
+    proceed(java.lang.String username, java.lang.String password)
+  class JsPromptResult
+    confirm(java.lang.String result)
+  class MimeTypeMap
+    getExtensionFromMimeType(java.lang.String mimeType)
+    getFileExtensionFromUrl(java.lang.String url)
+    getMimeTypeFromExtension(java.lang.String extension)
+    hasExtension(java.lang.String extension)
+    hasMimeType(java.lang.String mimeType)
+  class PermissionRequest
+    grant(java.lang.String[] resources)
+  interface PluginStub
+    getEmbeddedView(int NPP, android.content.Context context)
+    getFullScreenView(int NPP, android.content.Context context)
+  class SafeBrowsingResponse
+    backToSafety(boolean report)
+    proceed(boolean report)
+    showInterstitial(boolean allowReporting)
+  class ServiceWorkerClient
+    shouldInterceptRequest(android.webkit.WebResourceRequest request)
+  class ServiceWorkerController
+    setServiceWorkerClient(android.webkit.ServiceWorkerClient client)
+  class ServiceWorkerWebSettings
+    setAllowContentAccess(boolean allow)
+    setAllowFileAccess(boolean allow)
+    setBlockNetworkLoads(boolean flag)
+    setCacheMode(int mode)
+  class TracingConfig.Builder
+    addCategories(int... predefinedCategories)
+    addCategories(java.lang.String... categories)
+    addCategories(java.util.Collection<java.lang.String> categories)
+    setTracingMode(int tracingMode)
+  class TracingController
+    start(android.webkit.TracingConfig tracingConfig)
+    stop(java.io.OutputStream outputStream, java.util.concurrent.Executor executor)
+  class URLUtil
+    composeSearchUrl(java.lang.String inQuery, java.lang.String template, java.lang.String queryPlaceHolder)
+    decode(byte[] url)
+    guessFileName(java.lang.String url, java.lang.String contentDisposition, java.lang.String mimeType)
+    guessUrl(java.lang.String inUrl)
+    isAboutUrl(java.lang.String url)
+    isAssetUrl(java.lang.String url)
+    isContentUrl(java.lang.String url)
+    isCookielessProxyUrl(java.lang.String url)
+    isDataUrl(java.lang.String url)
+    isFileUrl(java.lang.String url)
+    isHttpsUrl(java.lang.String url)
+    isHttpUrl(java.lang.String url)
+    isJavaScriptUrl(java.lang.String url)
+    isNetworkUrl(java.lang.String url)
+    isValidUrl(java.lang.String url)
+    stripAnchor(java.lang.String url)
+  interface ValueCallback<T>
+    onReceiveValue(T value)
+  class WebBackForwardList
+    getItemAtIndex(int index)
+  class WebChromeClient
+    getVisitedHistory(android.webkit.ValueCallback<java.lang.String[]> callback)
+    onCloseWindow(android.webkit.WebView window)
+    onConsoleMessage(android.webkit.ConsoleMessage consoleMessage)
+    onConsoleMessage(java.lang.String message, int lineNumber, java.lang.String sourceID)
+    onCreateWindow(android.webkit.WebView view, boolean isDialog, boolean isUserGesture, android.os.Message resultMsg)
+    onExceededDatabaseQuota(java.lang.String url, java.lang.String databaseIdentifier, long quota, long estimatedDatabaseSize, long totalQuota, android.webkit.WebStorage.QuotaUpdater quotaUpdater)
+    onGeolocationPermissionsShowPrompt(java.lang.String origin, android.webkit.GeolocationPermissions.Callback callback)
+    onJsAlert(android.webkit.WebView view, java.lang.String url, java.lang.String message, android.webkit.JsResult result)
+    onJsBeforeUnload(android.webkit.WebView view, java.lang.String url, java.lang.String message, android.webkit.JsResult result)
+    onJsConfirm(android.webkit.WebView view, java.lang.String url, java.lang.String message, android.webkit.JsResult result)
+    onJsPrompt(android.webkit.WebView view, java.lang.String url, java.lang.String message, java.lang.String defaultValue, android.webkit.JsPromptResult result)
+    onPermissionRequest(android.webkit.PermissionRequest request)
+    onPermissionRequestCanceled(android.webkit.PermissionRequest request)
+    onProgressChanged(android.webkit.WebView view, int newProgress)
+    onReceivedIcon(android.webkit.WebView view, android.graphics.Bitmap icon)
+    onReceivedTitle(android.webkit.WebView view, java.lang.String title)
+    onReceivedTouchIconUrl(android.webkit.WebView view, java.lang.String url, boolean precomposed)
+    onRequestFocus(android.webkit.WebView view)
+    onShowCustomView(android.view.View view, android.webkit.WebChromeClient.CustomViewCallback callback)
+    onShowCustomView(android.view.View view, int requestedOrientation, android.webkit.WebChromeClient.CustomViewCallback callback)
+    onShowFileChooser(android.webkit.WebView webView, android.webkit.ValueCallback<android.net.Uri[]> filePathCallback, android.webkit.WebChromeClient.FileChooserParams fileChooserParams)
+  class WebChromeClient.FileChooserParams
+    parseResult(int resultCode, android.content.Intent data)
+  class WebIconDatabase
+    open(java.lang.String path)
+    releaseIconForPageUrl(java.lang.String url)
+    requestIconForPageUrl(java.lang.String url, android.webkit.WebIconDatabase.IconListener listener)
+    retainIconForPageUrl(java.lang.String url)
+  interface WebIconDatabase.IconListener
+    onReceivedIcon(java.lang.String url, android.graphics.Bitmap icon)
+  class WebMessage
+    #ctor(java.lang.String data)
+    #ctor(java.lang.String data, android.webkit.WebMessagePort[] ports)
+  class WebMessagePort
+    postMessage(android.webkit.WebMessage message)
+    setWebMessageCallback(android.webkit.WebMessagePort.WebMessageCallback callback)
+    setWebMessageCallback(android.webkit.WebMessagePort.WebMessageCallback callback, android.os.Handler handler)
+  class WebMessagePort.WebMessageCallback
+    onMessage(android.webkit.WebMessagePort port, android.webkit.WebMessage message)
+  class WebResourceResponse
+    setData(java.io.InputStream data)
+    setEncoding(java.lang.String encoding)
+    setMimeType(java.lang.String mimeType)
+    setResponseHeaders(java.util.Map<java.lang.String,java.lang.String> headers)
+    setStatusCodeAndReasonPhrase(int statusCode, java.lang.String reasonPhrase)
+    #ctor(java.lang.String mimeType, java.lang.String encoding, int statusCode, java.lang.String reasonPhrase, java.util.Map<java.lang.String,java.lang.String> responseHeaders, java.io.InputStream data)
+    #ctor(java.lang.String mimeType, java.lang.String encoding, java.io.InputStream data)
+  class WebSettings
+    getDefaultUserAgent(android.content.Context context)
+    setAlgorithmicDarkeningAllowed(boolean allow)
+    setAllowContentAccess(boolean allow)
+    setAllowFileAccess(boolean allow)
+    setAllowFileAccessFromFileURLs(boolean flag)
+    setAllowUniversalAccessFromFileURLs(boolean flag)
+    setBlockNetworkImage(boolean flag)
+    setBlockNetworkLoads(boolean flag)
+    setBuiltInZoomControls(boolean enabled)
+    setCacheMode(int mode)
+    setCursiveFontFamily(java.lang.String font)
+    setDatabaseEnabled(boolean flag)
+    setDatabasePath(java.lang.String databasePath)
+    setDefaultFixedFontSize(int size)
+    setDefaultFontSize(int size)
+    setDefaultTextEncodingName(java.lang.String encoding)
+    setDefaultZoom(android.webkit.WebSettings.ZoomDensity zoom)
+    setDisabledActionModeMenuItems(int menuItems)
+    setDisplayZoomControls(boolean enabled)
+    setDomStorageEnabled(boolean flag)
+    setEnableSmoothTransition(boolean enable)
+    setFantasyFontFamily(java.lang.String font)
+    setFixedFontFamily(java.lang.String font)
+    setForceDark(int forceDark)
+    setGeolocationDatabasePath(java.lang.String databasePath)
+    setGeolocationEnabled(boolean flag)
+    setJavaScriptCanOpenWindowsAutomatically(boolean flag)
+    setJavaScriptEnabled(boolean flag)
+    setLayoutAlgorithm(android.webkit.WebSettings.LayoutAlgorithm l)
+    setLightTouchEnabled(boolean enabled)
+    setLoadsImagesAutomatically(boolean flag)
+    setLoadWithOverviewMode(boolean overview)
+    setMediaPlaybackRequiresUserGesture(boolean require)
+    setMinimumFontSize(int size)
+    setMinimumLogicalFontSize(int size)
+    setMixedContentMode(int mode)
+    setNeedInitialFocus(boolean flag)
+    setOffscreenPreRaster(boolean enabled)
+    setPluginState(android.webkit.WebSettings.PluginState state)
+    setRenderPriority(android.webkit.WebSettings.RenderPriority priority)
+    setSafeBrowsingEnabled(boolean enabled)
+    setSansSerifFontFamily(java.lang.String font)
+    setSaveFormData(boolean save)
+    setSavePassword(boolean save)
+    setSerifFontFamily(java.lang.String font)
+    setStandardFontFamily(java.lang.String font)
+    setSupportMultipleWindows(boolean support)
+    setSupportZoom(boolean support)
+    setTextSize(android.webkit.WebSettings.TextSize t)
+    setTextZoom(int textZoom)
+    setUserAgentString(java.lang.String ua)
+    setUseWideViewPort(boolean use)
+  class WebStorage
+    deleteOrigin(java.lang.String origin)
+    getOrigins(android.webkit.ValueCallback<java.util.Map> callback)
+    getQuotaForOrigin(java.lang.String origin, android.webkit.ValueCallback<java.lang.Long> callback)
+    getUsageForOrigin(java.lang.String origin, android.webkit.ValueCallback<java.lang.Long> callback)
+    setQuotaForOrigin(java.lang.String origin, long quota)
+  interface WebStorage.QuotaUpdater
+    updateQuota(long newQuota)
+  class WebView
+    addJavascriptInterface(java.lang.Object object, java.lang.String name)
+    autofill(android.util.SparseArray<android.view.autofill.AutofillValue> values)
+    canGoBackOrForward(int steps)
+    clearCache(boolean includeDiskFiles)
+    clearClientCertPreferences(java.lang.Runnable onCleared)
+    createPrintDocumentAdapter(java.lang.String documentName)
+    dispatchCreateViewTranslationRequest(java.util.Map<android.view.autofill.AutofillId,long[]> viewIds, int[] supportedFormats, android.view.translation.TranslationCapability capability, java.util.List<android.view.translation.ViewTranslationRequest> requests)
+    dispatchDraw(android.graphics.Canvas canvas)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    documentHasImages(android.os.Message response)
+    evaluateJavascript(java.lang.String script, android.webkit.ValueCallback<java.lang.String> resultCallback)
+    findAddress(java.lang.String addr)
+    findAll(java.lang.String find)
+    findAllAsync(java.lang.String find)
+    findNext(boolean forward)
+    flingScroll(int vx, int vy)
+    getHttpAuthUsernamePassword(java.lang.String host, java.lang.String realm)
+    goBackOrForward(int steps)
+    isVisibleToUserForAutofill(int virtualId)
+    loadData(java.lang.String data, java.lang.String mimeType, java.lang.String encoding)
+    loadDataWithBaseURL(java.lang.String baseUrl, java.lang.String data, java.lang.String mimeType, java.lang.String encoding, java.lang.String historyUrl)
+    loadUrl(java.lang.String url)
+    loadUrl(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> additionalHttpHeaders)
+    onApplyWindowInsets(android.view.WindowInsets insets)
+    onChildViewAdded(android.view.View parent, android.view.View child)
+    onChildViewRemoved(android.view.View p, android.view.View child)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onCreateInputConnection(android.view.inputmethod.EditorInfo outAttrs)
+    onCreateVirtualViewTranslationRequests(long[] virtualIds, int[] supportedFormats, java.util.function.Consumer<android.view.translation.ViewTranslationRequest> requestsCollector)
+    onDragEvent(android.view.DragEvent event)
+    onDraw(android.graphics.Canvas canvas)
+    onFocusChanged(boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onGlobalFocusChanged(android.view.View oldFocus, android.view.View newFocus)
+    onHoverEvent(android.view.MotionEvent event)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)
+    onProvideAutofillVirtualStructure(android.view.ViewStructure structure, int flags)
+    onProvideContentCaptureStructure(android.view.ViewStructure structure, int flags)
+    onProvideVirtualStructure(android.view.ViewStructure structure)
+    onScrollChanged(int l, int t, int oldl, int oldt)
+    onSizeChanged(int w, int h, int ow, int oh)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onVirtualViewTranslationResponses(android.util.LongSparseArray<android.view.translation.ViewTranslationResponse> response)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    onWindowVisibilityChanged(int visibility)
+    pageDown(boolean bottom)
+    pageUp(boolean top)
+    postUrl(java.lang.String url, byte[] postData)
+    postVisualStateCallback(long requestId, android.webkit.WebView.VisualStateCallback callback)
+    postWebMessage(android.webkit.WebMessage message, android.net.Uri targetOrigin)
+    removeJavascriptInterface(java.lang.String name)
+    requestChildRectangleOnScreen(android.view.View child, android.graphics.Rect rect, boolean immediate)
+    requestFocus(int direction, android.graphics.Rect previouslyFocusedRect)
+    requestFocusNodeHref(android.os.Message hrefMsg)
+    requestImageRef(android.os.Message msg)
+    restoreState(android.os.Bundle inState)
+    savePassword(java.lang.String host, java.lang.String username, java.lang.String password)
+    saveState(android.os.Bundle outState)
+    saveWebArchive(java.lang.String filename)
+    saveWebArchive(java.lang.String basename, boolean autoname, android.webkit.ValueCallback<java.lang.String> callback)
+    setBackgroundColor(int color)
+    setCertificate(android.net.http.SslCertificate certificate)
+    setDataDirectorySuffix(java.lang.String suffix)
+    setDownloadListener(android.webkit.DownloadListener listener)
+    setFindListener(android.webkit.WebView.FindListener listener)
+    setHorizontalScrollbarOverlay(boolean overlay)
+    setHttpAuthUsernamePassword(java.lang.String host, java.lang.String realm, java.lang.String username, java.lang.String password)
+    setInitialScale(int scaleInPercent)
+    setLayerType(int layerType, android.graphics.Paint paint)
+    setLayoutParams(android.view.ViewGroup.LayoutParams params)
+    setMapTrackballToArrowKeys(boolean setMap)
+    setNetworkAvailable(boolean networkUp)
+    setOverScrollMode(int mode)
+    setPictureListener(android.webkit.WebView.PictureListener listener)
+    setRendererPriorityPolicy(int rendererRequestedPriority, boolean waivedWhenNotVisible)
+    setSafeBrowsingWhitelist(java.util.List<java.lang.String> hosts, android.webkit.ValueCallback<java.lang.Boolean> callback)
+    setScrollBarStyle(int style)
+    setTextClassifier(android.view.textclassifier.TextClassifier textClassifier)
+    setVerticalScrollbarOverlay(boolean overlay)
+    setWebChromeClient(android.webkit.WebChromeClient client)
+    setWebContentsDebuggingEnabled(boolean enabled)
+    setWebViewClient(android.webkit.WebViewClient client)
+    setWebViewRenderProcessClient(android.webkit.WebViewRenderProcessClient webViewRenderProcessClient)
+    setWebViewRenderProcessClient(java.util.concurrent.Executor executor, android.webkit.WebViewRenderProcessClient webViewRenderProcessClient)
+    showFindDialog(java.lang.String text, boolean showIme)
+    startSafeBrowsing(android.content.Context context, android.webkit.ValueCallback<java.lang.Boolean> callback)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, boolean privateBrowsing)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    zoomBy(float zoomFactor)
+  interface WebView.FindListener
+    onFindResultReceived(int activeMatchOrdinal, int numberOfMatches, boolean isDoneCounting)
+  interface WebView.PictureListener
+    onNewPicture(android.webkit.WebView view, android.graphics.Picture picture)
+  class WebView.VisualStateCallback
+    onComplete(long requestId)
+  class WebView.WebViewTransport
+    setWebView(android.webkit.WebView webview)
+  class WebViewClient
+    doUpdateVisitedHistory(android.webkit.WebView view, java.lang.String url, boolean isReload)
+    onFormResubmission(android.webkit.WebView view, android.os.Message dontResend, android.os.Message resend)
+    onLoadResource(android.webkit.WebView view, java.lang.String url)
+    onPageCommitVisible(android.webkit.WebView view, java.lang.String url)
+    onPageFinished(android.webkit.WebView view, java.lang.String url)
+    onPageStarted(android.webkit.WebView view, java.lang.String url, android.graphics.Bitmap favicon)
+    onReceivedClientCertRequest(android.webkit.WebView view, android.webkit.ClientCertRequest request)
+    onReceivedError(android.webkit.WebView view, android.webkit.WebResourceRequest request, android.webkit.WebResourceError error)
+    onReceivedError(android.webkit.WebView view, int errorCode, java.lang.String description, java.lang.String failingUrl)
+    onReceivedHttpAuthRequest(android.webkit.WebView view, android.webkit.HttpAuthHandler handler, java.lang.String host, java.lang.String realm)
+    onReceivedHttpError(android.webkit.WebView view, android.webkit.WebResourceRequest request, android.webkit.WebResourceResponse errorResponse)
+    onReceivedLoginRequest(android.webkit.WebView view, java.lang.String realm, java.lang.String account, java.lang.String args)
+    onReceivedSslError(android.webkit.WebView view, android.webkit.SslErrorHandler handler, android.net.http.SslError error)
+    onRenderProcessGone(android.webkit.WebView view, android.webkit.RenderProcessGoneDetail detail)
+    onSafeBrowsingHit(android.webkit.WebView view, android.webkit.WebResourceRequest request, int threatType, android.webkit.SafeBrowsingResponse callback)
+    onScaleChanged(android.webkit.WebView view, float oldScale, float newScale)
+    onTooManyRedirects(android.webkit.WebView view, android.os.Message cancelMsg, android.os.Message continueMsg)
+    onUnhandledKeyEvent(android.webkit.WebView view, android.view.KeyEvent event)
+    shouldInterceptRequest(android.webkit.WebView view, android.webkit.WebResourceRequest request)
+    shouldInterceptRequest(android.webkit.WebView view, java.lang.String url)
+    shouldOverrideKeyEvent(android.webkit.WebView view, android.view.KeyEvent event)
+    shouldOverrideUrlLoading(android.webkit.WebView view, android.webkit.WebResourceRequest request)
+    shouldOverrideUrlLoading(android.webkit.WebView view, java.lang.String url)
+  class WebViewDatabase
+    getHttpAuthUsernamePassword(java.lang.String host, java.lang.String realm)
+    getInstance(android.content.Context context)
+    setHttpAuthUsernamePassword(java.lang.String host, java.lang.String realm, java.lang.String username, java.lang.String password)
+  class WebViewFragment
+    onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
+  class WebViewRenderProcessClient
+    onRenderProcessResponsive(android.webkit.WebView view, android.webkit.WebViewRenderProcess renderer)
+    onRenderProcessUnresponsive(android.webkit.WebView view, android.webkit.WebViewRenderProcess renderer)
+
+package android.widget
+;---------------------------------------
+  class AbsListView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    addTouchables(java.util.ArrayList<android.view.View> views)
+    afterTextChanged(android.text.Editable s)
+    beforeTextChanged(java.lang.CharSequence s, int start, int count, int after)
+    canScrollList(int direction)
+    checkInputConnectionProxy(android.view.View view)
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    dispatchDraw(android.graphics.Canvas canvas)
+    dispatchDrawableHotspotChanged(float x, float y)
+    dispatchSetPressed(boolean pressed)
+    draw(android.graphics.Canvas canvas)
+    fling(int velocityY)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    getFocusedRect(android.graphics.Rect r)
+    isItemChecked(int position)
+    onCreateInputConnection(android.view.inputmethod.EditorInfo outAttrs)
+    onDisplayHint(int hint)
+    onFilterComplete(int count)
+    onFocusChanged(boolean gainFocus, int direction, android.graphics.Rect previouslyFocusedRect)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onInitializeAccessibilityNodeInfoForItem(android.view.View view, int position, android.view.accessibility.AccessibilityNodeInfo info)
+    onInterceptHoverEvent(android.view.MotionEvent event)
+    onInterceptTouchEvent(android.view.MotionEvent ev)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onNestedFling(android.view.View target, float velocityX, float velocityY, boolean consumed)
+    onNestedScroll(android.view.View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed)
+    onNestedScrollAccepted(android.view.View child, android.view.View target, int axes)
+    onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)
+    onProvideContentCaptureStructure(android.view.ViewStructure structure, int flags)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onRtlPropertiesChanged(int layoutDirection)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onStartNestedScroll(android.view.View child, android.view.View target, int nestedScrollAxes)
+    onTextChanged(java.lang.CharSequence s, int start, int before, int count)
+    onTouchEvent(android.view.MotionEvent ev)
+    onTouchModeChanged(boolean isInTouchMode)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    performItemClick(android.view.View view, int position, long id)
+    pointToPosition(int x, int y)
+    pointToRowId(int x, int y)
+    reclaimViews(java.util.List<android.view.View> views)
+    requestDisallowInterceptTouchEvent(boolean disallowIntercept)
+    scrollListBy(int y)
+    setAdapter(android.widget.ListAdapter adapter)
+    setBottomEdgeEffectColor(int color)
+    setCacheColorHint(int color)
+    setChoiceMode(int choiceMode)
+    setDrawSelectorOnTop(boolean onTop)
+    setEdgeEffectColor(int color)
+    setFastScrollAlwaysVisible(boolean alwaysShow)
+    setFastScrollEnabled(boolean enabled)
+    setFastScrollStyle(int styleResId)
+    setFilterText(java.lang.String filterText)
+    setFriction(float friction)
+    setItemChecked(int position, boolean value)
+    setMultiChoiceModeListener(android.widget.AbsListView.MultiChoiceModeListener listener)
+    setOnScrollListener(android.widget.AbsListView.OnScrollListener l)
+    setRecyclerListener(android.widget.AbsListView.RecyclerListener listener)
+    setRemoteViewsAdapter(android.content.Intent intent)
+    setScrollBarStyle(int style)
+    setScrollIndicators(android.view.View up, android.view.View down)
+    setScrollingCacheEnabled(boolean enabled)
+    setSelectedChildViewEnabled(boolean selectedChildViewEnabled)
+    setSelectionFromTop(int position, int y)
+    setSelector(android.graphics.drawable.Drawable sel)
+    setSelector(int resID)
+    setSmoothScrollbarEnabled(boolean enabled)
+    setStackFromBottom(boolean stackFromBottom)
+    setTextFilterEnabled(boolean textFilterEnabled)
+    setTopEdgeEffectColor(int color)
+    setTranscriptMode(int mode)
+    setVelocityScale(float scale)
+    setVerticalScrollbarPosition(int position)
+    showContextMenu(float x, float y)
+    showContextMenuForChild(android.view.View originalView)
+    showContextMenuForChild(android.view.View originalView, float x, float y)
+    smoothScrollBy(int distance, int duration)
+    smoothScrollToPosition(int position)
+    smoothScrollToPosition(int position, int boundPosition)
+    smoothScrollToPositionFromTop(int position, int offset)
+    smoothScrollToPositionFromTop(int position, int offset, int duration)
+    verifyDrawable(android.graphics.drawable.Drawable dr)
+  class AbsListView.LayoutParams
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(int w, int h)
+    #ctor(int w, int h, int viewType)
+  interface AbsListView.MultiChoiceModeListener
+    onItemCheckedStateChanged(android.view.ActionMode mode, int position, long id, boolean checked)
+  interface AbsListView.OnScrollListener
+    onScroll(android.widget.AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount)
+    onScrollStateChanged(android.widget.AbsListView view, int scrollState)
+  interface AbsListView.RecyclerListener
+    onMovedToScrapHeap(android.view.View view)
+  interface AbsListView.SelectionBoundsAdjuster
+    adjustListItemSelectionBounds(android.graphics.Rect bounds)
+  class AbsoluteLayout
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+  class AbsoluteLayout.LayoutParams
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(int width, int height, int x, int y)
+    debug(java.lang.String output)
+  class AbsSeekBar
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    drawableHotspotChanged(float x, float y)
+    onDraw(android.graphics.Canvas canvas)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRtlPropertiesChanged(int layoutDirection)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onTouchEvent(android.view.MotionEvent event)
+    setKeyProgressIncrement(int increment)
+    setMax(int max)
+    setMin(int min)
+    setSplitTrack(boolean splitTrack)
+    setSystemGestureExclusionRects(java.util.List<android.graphics.Rect> rects)
+    setThumb(android.graphics.drawable.Drawable thumb)
+    setThumbOffset(int thumbOffset)
+    setThumbTintBlendMode(android.graphics.BlendMode blendMode)
+    setThumbTintList(android.content.res.ColorStateList tint)
+    setThumbTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setTickMark(android.graphics.drawable.Drawable tickMark)
+    setTickMarkTintBlendMode(android.graphics.BlendMode blendMode)
+    setTickMarkTintList(android.content.res.ColorStateList tint)
+    setTickMarkTintMode(android.graphics.PorterDuff.Mode tintMode)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  class AbsSpinner
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    autofill(android.view.autofill.AutofillValue value)
+    dispatchRestoreInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRestoreInstanceState(android.os.Parcelable state)
+    pointToPosition(int x, int y)
+    setAdapter(android.widget.SpinnerAdapter adapter)
+    setSelection(int position)
+    setSelection(int position, boolean animate)
+  class ActionMenuView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setOnMenuItemClickListener(android.widget.ActionMenuView.OnMenuItemClickListener listener)
+    setOverflowIcon(android.graphics.drawable.Drawable icon)
+    setPopupTheme(int resId)
+  class ActionMenuView.LayoutParams
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams other)
+    #ctor(android.widget.ActionMenuView.LayoutParams other)
+    #ctor(int width, int height)
+  interface ActionMenuView.OnMenuItemClickListener
+    onMenuItemClick(android.view.MenuItem item)
+  interface Adapter
+    getItem(int position)
+    getItemId(int position)
+    getItemViewType(int position)
+    getView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class AdapterView<T>
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    addView(android.view.View child)
+    addView(android.view.View child, android.view.ViewGroup.LayoutParams params)
+    addView(android.view.View child, int index)
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    dispatchRestoreInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    dispatchSaveInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    getItemAtPosition(int position)
+    getItemIdAtPosition(int position)
+    getPositionForView(android.view.View view)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onProvideAutofillStructure(android.view.ViewStructure structure, int flags)
+    performItemClick(android.view.View view, int position, long id)
+    removeView(android.view.View child)
+    removeViewAt(int index)
+    setAdapter(T adapter)
+    setEmptyView(android.view.View emptyView)
+    setFocusable(int focusable)
+    setFocusableInTouchMode(boolean focusable)
+    setOnClickListener(android.view.View.OnClickListener l)
+    setOnItemClickListener(android.widget.AdapterView.OnItemClickListener listener)
+    setOnItemLongClickListener(android.widget.AdapterView.OnItemLongClickListener listener)
+    setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener listener)
+    setSelection(int position)
+  class AdapterView.AdapterContextMenuInfo
+    #ctor(android.view.View targetView, int position, long id)
+  interface AdapterView.OnItemClickListener
+    onItemClick(android.widget.AdapterView<?> parent, android.view.View view, int position, long id)
+  interface AdapterView.OnItemLongClickListener
+    onItemLongClick(android.widget.AdapterView<?> parent, android.view.View view, int position, long id)
+  interface AdapterView.OnItemSelectedListener
+    onItemSelected(android.widget.AdapterView<?> parent, android.view.View view, int position, long id)
+    onNothingSelected(android.widget.AdapterView<?> parent)
+  class AdapterViewAnimator
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onTouchEvent(android.view.MotionEvent ev)
+    setAdapter(android.widget.Adapter adapter)
+    setAnimateFirstView(boolean animate)
+    setDisplayedChild(int whichChild)
+    setInAnimation(android.animation.ObjectAnimator inAnimation)
+    setInAnimation(android.content.Context context, int resourceID)
+    setOutAnimation(android.animation.ObjectAnimator outAnimation)
+    setOutAnimation(android.content.Context context, int resourceID)
+    setRemoteViewsAdapter(android.content.Intent intent)
+    setSelection(int position)
+  class AdapterViewFlipper
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onWindowVisibilityChanged(int visibility)
+    setAdapter(android.widget.Adapter adapter)
+    setAutoStart(boolean autoStart)
+    setFlipInterval(int flipInterval)
+  class AlphabetIndexer
+    #ctor(android.database.Cursor cursor, int sortedColumnIndex, java.lang.CharSequence alphabet)
+    compare(java.lang.String word, java.lang.String letter)
+    getPositionForSection(int sectionIndex)
+    getSectionForPosition(int position)
+    setCursor(android.database.Cursor cursor)
+  class AnalogClock
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onDraw(android.graphics.Canvas canvas)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onVisibilityAggregated(boolean isVisible)
+    setDial(android.graphics.drawable.Icon icon)
+    setDialTintBlendMode(android.graphics.BlendMode blendMode)
+    setDialTintList(android.content.res.ColorStateList tint)
+    setHourHand(android.graphics.drawable.Icon icon)
+    setHourHandTintBlendMode(android.graphics.BlendMode blendMode)
+    setHourHandTintList(android.content.res.ColorStateList tint)
+    setMinuteHand(android.graphics.drawable.Icon icon)
+    setMinuteHandTintBlendMode(android.graphics.BlendMode blendMode)
+    setMinuteHandTintList(android.content.res.ColorStateList tint)
+    setSecondHand(android.graphics.drawable.Icon icon)
+    setSecondHandTintBlendMode(android.graphics.BlendMode blendMode)
+    setSecondHandTintList(android.content.res.ColorStateList tint)
+    setTimeZone(java.lang.String timeZone)
+  class ArrayAdapter<T>
+    add(T object)
+    addAll(java.util.Collection<? extends T> collection)
+    addAll(T... items)
+    #ctor(android.content.Context context, int resource)
+    #ctor(android.content.Context context, int resource, int textViewResourceId)
+    #ctor(android.content.Context context, int resource, int textViewResourceId, java.util.List<T> objects)
+    #ctor(android.content.Context context, int resource, int textViewResourceId, T[] objects)
+    #ctor(android.content.Context context, int resource, java.util.List<T> objects)
+    #ctor(android.content.Context context, int resource, T[] objects)
+    createFromResource(android.content.Context context, int textArrayResId, int textViewResId)
+    getDropDownView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    getItem(int position)
+    getItemId(int position)
+    getPosition(T item)
+    getView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    insert(T object, int index)
+    remove(T object)
+    setDropDownViewResource(int resource)
+    setDropDownViewTheme(android.content.res.Resources.Theme theme)
+    setNotifyOnChange(boolean notifyOnChange)
+    sort(java.util.Comparator<? super T> comparator)
+  class AutoCompleteTextView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes, android.content.res.Resources.Theme popupTheme)
+    convertSelectionToString(java.lang.Object selectedItem)
+    onCommitCompletion(android.view.inputmethod.CompletionInfo completion)
+    onDisplayHint(int hint)
+    onFilterComplete(int count)
+    onFocusChanged(boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyPreIme(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    performFiltering(java.lang.CharSequence text, int keyCode)
+    replaceText(java.lang.CharSequence text)
+    <T> setAdapter(T adapter)
+    setCompletionHint(java.lang.CharSequence hint)
+    setDropDownAnchor(int id)
+    setDropDownBackgroundDrawable(android.graphics.drawable.Drawable d)
+    setDropDownBackgroundResource(int id)
+    setDropDownHeight(int height)
+    setDropDownHorizontalOffset(int offset)
+    setDropDownVerticalOffset(int offset)
+    setDropDownWidth(int width)
+    setFrame(int l, int t, int r, int b)
+    setInputMethodMode(int mode)
+    setListSelection(int position)
+    setOnClickListener(android.view.View.OnClickListener listener)
+    setOnDismissListener(android.widget.AutoCompleteTextView.OnDismissListener dismissListener)
+    setOnItemClickListener(android.widget.AdapterView.OnItemClickListener l)
+    setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener l)
+    setText(java.lang.CharSequence text, boolean filter)
+    setThreshold(int threshold)
+    setValidator(android.widget.AutoCompleteTextView.Validator validator)
+  interface AutoCompleteTextView.Validator
+    fixText(java.lang.CharSequence invalidText)
+    isValid(java.lang.CharSequence text)
+  class BaseAdapter
+    getDropDownView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    getItemViewType(int position)
+    isEnabled(int position)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    setAutofillOptions(java.lang.CharSequence... options)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class BaseExpandableListAdapter
+    getChildType(int groupPosition, int childPosition)
+    getCombinedChildId(long groupId, long childId)
+    getCombinedGroupId(long groupId)
+    getGroupType(int groupPosition)
+    onGroupCollapsed(int groupPosition)
+    onGroupExpanded(int groupPosition)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class Button
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+  class CalendarView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    setDate(long date)
+    setDate(long date, boolean animate, boolean center)
+    setDateTextAppearance(int resourceId)
+    setFirstDayOfWeek(int firstDayOfWeek)
+    setFocusedMonthDateColor(int color)
+    setMaxDate(long maxDate)
+    setMinDate(long minDate)
+    setOnDateChangeListener(android.widget.CalendarView.OnDateChangeListener listener)
+    setSelectedDateVerticalBar(android.graphics.drawable.Drawable drawable)
+    setSelectedDateVerticalBar(int resourceId)
+    setSelectedWeekBackgroundColor(int color)
+    setShownWeekCount(int count)
+    setShowWeekNumber(boolean showWeekNumber)
+    setUnfocusedMonthDateColor(int color)
+    setWeekDayTextAppearance(int resourceId)
+    setWeekNumberColor(int color)
+    setWeekSeparatorLineColor(int color)
+  interface CalendarView.OnDateChangeListener
+    onSelectedDayChange(android.widget.CalendarView view, int year, int month, int dayOfMonth)
+  interface Checkable
+    setChecked(boolean checked)
+  class CheckBox
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class CheckedTextView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    drawableHotspotChanged(float x, float y)
+    onCreateDrawableState(int extraSpace)
+    onDraw(android.graphics.Canvas canvas)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onRtlPropertiesChanged(int layoutDirection)
+    setChecked(boolean checked)
+    setCheckMarkDrawable(android.graphics.drawable.Drawable d)
+    setCheckMarkDrawable(int resId)
+    setCheckMarkTintBlendMode(android.graphics.BlendMode tintMode)
+    setCheckMarkTintList(android.content.res.ColorStateList tint)
+    setCheckMarkTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setVisibility(int visibility)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  class Chronometer
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    onWindowVisibilityChanged(int visibility)
+    setBase(long base)
+    setCountDown(boolean countDown)
+    setFormat(java.lang.String format)
+    setOnChronometerTickListener(android.widget.Chronometer.OnChronometerTickListener listener)
+  interface Chronometer.OnChronometerTickListener
+    onChronometerTick(android.widget.Chronometer chronometer)
+  class CompoundButton
+    autofill(android.view.autofill.AutofillValue value)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    drawableHotspotChanged(float x, float y)
+    onCreateDrawableState(int extraSpace)
+    onDraw(android.graphics.Canvas canvas)
+    onRestoreInstanceState(android.os.Parcelable state)
+    setButtonDrawable(android.graphics.drawable.Drawable drawable)
+    setButtonDrawable(int resId)
+    setButtonIcon(android.graphics.drawable.Icon icon)
+    setButtonTintBlendMode(android.graphics.BlendMode tintMode)
+    setButtonTintList(android.content.res.ColorStateList tint)
+    setButtonTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setChecked(boolean checked)
+    setOnCheckedChangeListener(android.widget.CompoundButton.OnCheckedChangeListener listener)
+    setStateDescription(java.lang.CharSequence stateDescription)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  interface CompoundButton.OnCheckedChangeListener
+    onCheckedChanged(android.widget.CompoundButton buttonView, boolean isChecked)
+  class CursorAdapter
+    bindView(android.view.View view, android.content.Context context, android.database.Cursor cursor)
+    changeCursor(android.database.Cursor cursor)
+    convertToString(android.database.Cursor cursor)
+    #ctor(android.content.Context context, android.database.Cursor c)
+    #ctor(android.content.Context context, android.database.Cursor c, boolean autoRequery)
+    #ctor(android.content.Context context, android.database.Cursor c, int flags)
+    getDropDownView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    getItem(int position)
+    getItemId(int position)
+    getView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    init(android.content.Context context, android.database.Cursor c, boolean autoRequery)
+    newDropDownView(android.content.Context context, android.database.Cursor cursor, android.view.ViewGroup parent)
+    newView(android.content.Context context, android.database.Cursor cursor, android.view.ViewGroup parent)
+    runQueryOnBackgroundThread(java.lang.CharSequence constraint)
+    setDropDownViewTheme(android.content.res.Resources.Theme theme)
+    setFilterQueryProvider(android.widget.FilterQueryProvider filterQueryProvider)
+    swapCursor(android.database.Cursor newCursor)
+  class CursorTreeAdapter
+    bindChildView(android.view.View view, android.content.Context context, android.database.Cursor cursor, boolean isLastChild)
+    bindGroupView(android.view.View view, android.content.Context context, android.database.Cursor cursor, boolean isExpanded)
+    changeCursor(android.database.Cursor cursor)
+    convertToString(android.database.Cursor cursor)
+    #ctor(android.database.Cursor cursor, android.content.Context context)
+    #ctor(android.database.Cursor cursor, android.content.Context context, boolean autoRequery)
+    getChild(int groupPosition, int childPosition)
+    getChildId(int groupPosition, int childPosition)
+    getChildrenCount(int groupPosition)
+    getChildrenCursor(android.database.Cursor groupCursor)
+    getChildView(int groupPosition, int childPosition, boolean isLastChild, android.view.View convertView, android.view.ViewGroup parent)
+    getGroup(int groupPosition)
+    getGroupId(int groupPosition)
+    getGroupView(int groupPosition, boolean isExpanded, android.view.View convertView, android.view.ViewGroup parent)
+    isChildSelectable(int groupPosition, int childPosition)
+    newChildView(android.content.Context context, android.database.Cursor cursor, boolean isLastChild, android.view.ViewGroup parent)
+    newGroupView(android.content.Context context, android.database.Cursor cursor, boolean isExpanded, android.view.ViewGroup parent)
+    notifyDataSetChanged(boolean releaseCursors)
+    onGroupCollapsed(int groupPosition)
+    runQueryOnBackgroundThread(java.lang.CharSequence constraint)
+    setChildrenCursor(int groupPosition, android.database.Cursor childrenCursor)
+    setFilterQueryProvider(android.widget.FilterQueryProvider filterQueryProvider)
+    setGroupCursor(android.database.Cursor cursor)
+  class DatePicker
+    autofill(android.view.autofill.AutofillValue value)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    dispatchProvideAutofillStructure(android.view.ViewStructure structure, int flags)
+    dispatchRestoreInstanceState(android.util.SparseArray<android.os.Parcelable> container)
+    init(int year, int monthOfYear, int dayOfMonth, android.widget.DatePicker.OnDateChangedListener onDateChangedListener)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onRestoreInstanceState(android.os.Parcelable state)
+    setCalendarViewShown(boolean shown)
+    setEnabled(boolean enabled)
+    setFirstDayOfWeek(int firstDayOfWeek)
+    setMaxDate(long maxDate)
+    setMinDate(long minDate)
+    setOnDateChangedListener(android.widget.DatePicker.OnDateChangedListener onDateChangedListener)
+    setSpinnersShown(boolean shown)
+    updateDate(int year, int month, int dayOfMonth)
+  interface DatePicker.OnDateChangedListener
+    onDateChanged(android.widget.DatePicker view, int year, int monthOfYear, int dayOfMonth)
+  class DialerFilter
+    append(java.lang.String text)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    onFocusChanged(boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onModeChange(int oldMode, int newMode)
+    removeFilterWatcher(android.text.TextWatcher watcher)
+    setDigitsWatcher(android.text.TextWatcher watcher)
+    setFilterWatcher(android.text.TextWatcher watcher)
+    setLettersWatcher(android.text.TextWatcher watcher)
+    setMode(int newMode)
+  class DigitalClock
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class EdgeEffect
+    draw(android.graphics.Canvas canvas)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    onAbsorb(int velocity)
+    onPull(float deltaDistance)
+    onPull(float deltaDistance, float displacement)
+    onPullDistance(float deltaDistance, float displacement)
+    setBlendMode(android.graphics.BlendMode blendmode)
+    setColor(int color)
+    setSize(int width, int height)
+  class EditText
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    extendSelection(int index)
+    onKeyShortcut(int keyCode, android.view.KeyEvent event)
+    onTextContextMenuItem(int id)
+    setEllipsize(android.text.TextUtils.TruncateAt ellipsis)
+    setSelection(int index)
+    setSelection(int start, int stop)
+    setStyleShortcutsEnabled(boolean enabled)
+    setText(java.lang.CharSequence text, android.widget.TextView.BufferType type)
+  interface ExpandableListAdapter
+    getChild(int groupPosition, int childPosition)
+    getChildId(int groupPosition, int childPosition)
+    getChildrenCount(int groupPosition)
+    getChildView(int groupPosition, int childPosition, boolean isLastChild, android.view.View convertView, android.view.ViewGroup parent)
+    getCombinedChildId(long groupId, long childId)
+    getCombinedGroupId(long groupId)
+    getGroup(int groupPosition)
+    getGroupId(int groupPosition)
+    getGroupView(int groupPosition, boolean isExpanded, android.view.View convertView, android.view.ViewGroup parent)
+    isChildSelectable(int groupPosition, int childPosition)
+    onGroupCollapsed(int groupPosition)
+    onGroupExpanded(int groupPosition)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  class ExpandableListView
+    collapseGroup(int groupPos)
+    dispatchDraw(android.graphics.Canvas canvas)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    expandGroup(int groupPos)
+    expandGroup(int groupPos, boolean animate)
+    getExpandableListPosition(int flatListPosition)
+    getFlatListPosition(long packedPosition)
+    getPackedPositionChild(long packedPosition)
+    getPackedPositionForChild(int groupPosition, int childPosition)
+    getPackedPositionForGroup(int groupPosition)
+    getPackedPositionGroup(long packedPosition)
+    getPackedPositionType(long packedPosition)
+    isGroupExpanded(int groupPosition)
+    onInitializeAccessibilityNodeInfoForItem(android.view.View view, int position, android.view.accessibility.AccessibilityNodeInfo info)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onRtlPropertiesChanged(int layoutDirection)
+    performItemClick(android.view.View v, int position, long id)
+    setAdapter(android.widget.ExpandableListAdapter adapter)
+    setAdapter(android.widget.ListAdapter adapter)
+    setChildDivider(android.graphics.drawable.Drawable childDivider)
+    setChildIndicator(android.graphics.drawable.Drawable childIndicator)
+    setChildIndicatorBounds(int left, int right)
+    setChildIndicatorBoundsRelative(int start, int end)
+    setGroupIndicator(android.graphics.drawable.Drawable groupIndicator)
+    setIndicatorBounds(int left, int right)
+    setIndicatorBoundsRelative(int start, int end)
+    setOnChildClickListener(android.widget.ExpandableListView.OnChildClickListener onChildClickListener)
+    setOnGroupClickListener(android.widget.ExpandableListView.OnGroupClickListener onGroupClickListener)
+    setOnGroupCollapseListener(android.widget.ExpandableListView.OnGroupCollapseListener onGroupCollapseListener)
+    setOnGroupExpandListener(android.widget.ExpandableListView.OnGroupExpandListener onGroupExpandListener)
+    setOnItemClickListener(android.widget.AdapterView.OnItemClickListener l)
+    setSelectedChild(int groupPosition, int childPosition, boolean shouldExpandGroup)
+    setSelectedGroup(int groupPosition)
+  class ExpandableListView.ExpandableListContextMenuInfo
+    #ctor(android.view.View targetView, long packedPosition, long id)
+  interface ExpandableListView.OnChildClickListener
+    onChildClick(android.widget.ExpandableListView parent, android.view.View v, int groupPosition, int childPosition, long id)
+  interface ExpandableListView.OnGroupClickListener
+    onGroupClick(android.widget.ExpandableListView parent, android.view.View v, int groupPosition, long id)
+  interface ExpandableListView.OnGroupCollapseListener
+    onGroupCollapse(int groupPosition)
+  interface ExpandableListView.OnGroupExpandListener
+    onGroupExpand(int groupPosition)
+  class Filter
+    convertResultToString(java.lang.Object resultValue)
+    filter(java.lang.CharSequence constraint)
+    filter(java.lang.CharSequence constraint, android.widget.Filter.FilterListener listener)
+    performFiltering(java.lang.CharSequence constraint)
+    publishResults(java.lang.CharSequence constraint, android.widget.Filter.FilterResults results)
+  interface Filter.FilterListener
+    onFilterComplete(int count)
+  interface FilterQueryProvider
+    runQuery(java.lang.CharSequence constraint)
+  class FrameLayout
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams lp)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setForegroundGravity(int foregroundGravity)
+    setMeasureAllChildren(boolean measureAll)
+  class FrameLayout.LayoutParams
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(android.widget.FrameLayout.LayoutParams source)
+    #ctor(int width, int height)
+    #ctor(int width, int height, int gravity)
+  class Gallery
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchSetPressed(boolean pressed)
+    dispatchSetSelected(boolean selected)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    getChildDrawingOrder(int childCount, int i)
+    getChildStaticTransformation(android.view.View child, android.view.animation.Transformation t)
+    onDown(android.view.MotionEvent e)
+    onFling(android.view.MotionEvent e1, android.view.MotionEvent e2, float velocityX, float velocityY)
+    onFocusChanged(boolean gainFocus, int direction, android.graphics.Rect previouslyFocusedRect)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onLongPress(android.view.MotionEvent e)
+    onScroll(android.view.MotionEvent e1, android.view.MotionEvent e2, float distanceX, float distanceY)
+    onShowPress(android.view.MotionEvent e)
+    onSingleTapUp(android.view.MotionEvent e)
+    onTouchEvent(android.view.MotionEvent event)
+    setAnimationDuration(int animationDurationMillis)
+    setCallbackDuringFling(boolean shouldCallback)
+    setGravity(int gravity)
+    setSpacing(int spacing)
+    setUnselectedAlpha(float unselectedAlpha)
+    showContextMenu(float x, float y)
+    showContextMenuForChild(android.view.View originalView)
+    showContextMenuForChild(android.view.View originalView, float x, float y)
+  class Gallery.LayoutParams
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(int w, int h)
+  class GridLayout
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams lp)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthSpec, int heightSpec)
+    onViewAdded(android.view.View child)
+    onViewRemoved(android.view.View child)
+    setAlignmentMode(int alignmentMode)
+    setColumnCount(int columnCount)
+    setColumnOrderPreserved(boolean columnOrderPreserved)
+    setOrientation(int orientation)
+    setRowCount(int rowCount)
+    setRowOrderPreserved(boolean rowOrderPreserved)
+    setUseDefaultMargins(boolean useDefaultMargins)
+    spec(int start)
+    spec(int start, android.widget.GridLayout.Alignment alignment)
+    spec(int start, android.widget.GridLayout.Alignment alignment, float weight)
+    spec(int start, float weight)
+    spec(int start, int size)
+    spec(int start, int size, android.widget.GridLayout.Alignment alignment)
+    spec(int start, int size, android.widget.GridLayout.Alignment alignment, float weight)
+    spec(int start, int size, float weight)
+  class GridLayout.LayoutParams
+    equals(java.lang.Object o)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams params)
+    #ctor(android.view.ViewGroup.MarginLayoutParams params)
+    #ctor(android.widget.GridLayout.LayoutParams source)
+    #ctor(android.widget.GridLayout.Spec rowSpec, android.widget.GridLayout.Spec columnSpec)
+    setBaseAttributes(android.content.res.TypedArray attributes, int widthAttr, int heightAttr)
+    setGravity(int gravity)
+  class GridLayout.Spec
+    equals(java.lang.Object that)
+  class GridView
+    attachLayoutAnimationParameters(android.view.View child, android.view.ViewGroup.LayoutParams params, int index, int count)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onFocusChanged(boolean gainFocus, int direction, android.graphics.Rect previouslyFocusedRect)
+    onInitializeAccessibilityNodeInfoForItem(android.view.View view, int position, android.view.accessibility.AccessibilityNodeInfo info)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setAdapter(android.widget.ListAdapter adapter)
+    setColumnWidth(int columnWidth)
+    setGravity(int gravity)
+    setHorizontalSpacing(int horizontalSpacing)
+    setNumColumns(int numColumns)
+    setRemoteViewsAdapter(android.content.Intent intent)
+    setSelection(int position)
+    setStretchMode(int stretchMode)
+    setVerticalSpacing(int verticalSpacing)
+    smoothScrollByOffset(int offset)
+    smoothScrollToPosition(int position)
+  class HeaderViewListAdapter
+    getItem(int position)
+    getItemId(int position)
+    getItemViewType(int position)
+    getView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    #ctor(java.util.ArrayList<android.widget.ListView.FixedViewInfo> headerViewInfos, java.util.ArrayList<android.widget.ListView.FixedViewInfo> footerViewInfos, android.widget.ListAdapter adapter)
+    isEnabled(int position)
+    registerDataSetObserver(android.database.DataSetObserver observer)
+    removeFooter(android.view.View v)
+    removeHeader(android.view.View v)
+    unregisterDataSetObserver(android.database.DataSetObserver observer)
+  interface HeterogeneousExpandableList
+    getChildType(int groupPosition, int childPosition)
+    getGroupType(int groupPosition)
+  class HorizontalScrollView
+    addView(android.view.View child)
+    addView(android.view.View child, android.view.ViewGroup.LayoutParams params)
+    addView(android.view.View child, int index)
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    arrowScroll(int direction)
+    computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect rect)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    draw(android.graphics.Canvas canvas)
+    executeKeyEvent(android.view.KeyEvent event)
+    fling(int velocityX)
+    fullScroll(int direction)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    measureChild(android.view.View child, int parentWidthMeasureSpec, int parentHeightMeasureSpec)
+    measureChildWithMargins(android.view.View child, int parentWidthMeasureSpec, int widthUsed, int parentHeightMeasureSpec, int heightUsed)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onInterceptTouchEvent(android.view.MotionEvent ev)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)
+    onRequestFocusInDescendants(int direction, android.graphics.Rect previouslyFocusedRect)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onTouchEvent(android.view.MotionEvent ev)
+    pageScroll(int direction)
+    requestChildFocus(android.view.View child, android.view.View focused)
+    requestChildRectangleOnScreen(android.view.View child, android.graphics.Rect rectangle, boolean immediate)
+    requestDisallowInterceptTouchEvent(boolean disallowIntercept)
+    scrollTo(int x, int y)
+    setEdgeEffectColor(int color)
+    setFillViewport(boolean fillViewport)
+    setLeftEdgeEffectColor(int color)
+    setRightEdgeEffectColor(int color)
+    setSmoothScrollingEnabled(boolean smoothScrollingEnabled)
+    smoothScrollBy(int dx, int dy)
+    smoothScrollTo(int x, int y)
+  class ImageButton
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onSetAlpha(int alpha)
+  class ImageSwitcher
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    setImageDrawable(android.graphics.drawable.Drawable drawable)
+    setImageResource(int resid)
+    setImageURI(android.net.Uri uri)
+  class ImageView
+    animateTransform(android.graphics.Matrix matrix)
+    drawableHotspotChanged(float x, float y)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    invalidateDrawable(android.graphics.drawable.Drawable dr)
+    onCreateDrawableState(int extraSpace)
+    onDraw(android.graphics.Canvas canvas)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRtlPropertiesChanged(int layoutDirection)
+    onVisibilityAggregated(boolean isVisible)
+    setAdjustViewBounds(boolean adjustViewBounds)
+    setAlpha(int alpha)
+    setBaseline(int baseline)
+    setBaselineAlignBottom(boolean aligned)
+    setColorFilter(android.graphics.ColorFilter cf)
+    setColorFilter(int color)
+    setColorFilter(int color, android.graphics.PorterDuff.Mode mode)
+    setCropToPadding(boolean cropToPadding)
+    setFrame(int l, int t, int r, int b)
+    setImageAlpha(int alpha)
+    setImageBitmap(android.graphics.Bitmap bm)
+    setImageDrawable(android.graphics.drawable.Drawable drawable)
+    setImageIcon(android.graphics.drawable.Icon icon)
+    setImageLevel(int level)
+    setImageMatrix(android.graphics.Matrix matrix)
+    setImageResource(int resId)
+    setImageState(int[] state, boolean merge)
+    setImageTintBlendMode(android.graphics.BlendMode blendMode)
+    setImageTintList(android.content.res.ColorStateList tint)
+    setImageTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setImageURI(android.net.Uri uri)
+    setMaxHeight(int maxHeight)
+    setMaxWidth(int maxWidth)
+    setScaleType(android.widget.ImageView.ScaleType scaleType)
+    setSelected(boolean selected)
+    setVisibility(int visibility)
+    verifyDrawable(android.graphics.drawable.Drawable dr)
+  class LinearLayout
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams lp)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onDraw(android.graphics.Canvas canvas)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRtlPropertiesChanged(int layoutDirection)
+    setBaselineAligned(boolean baselineAligned)
+    setBaselineAlignedChildIndex(int i)
+    setDividerDrawable(android.graphics.drawable.Drawable divider)
+    setDividerPadding(int padding)
+    setGravity(int gravity)
+    setHorizontalGravity(int horizontalGravity)
+    setMeasureWithLargestChildEnabled(boolean enabled)
+    setOrientation(int orientation)
+    setShowDividers(int showDividers)
+    setVerticalGravity(int verticalGravity)
+    setWeightSum(float weightSum)
+  class LinearLayout.LayoutParams
+    debug(java.lang.String output)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams p)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(android.widget.LinearLayout.LayoutParams source)
+    #ctor(int width, int height)
+    #ctor(int width, int height, float weight)
+  interface ListAdapter
+    isEnabled(int position)
+  class ListPopupWindow
+    createDragToOpenListener(android.view.View src)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyPreIme(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    performItemClick(int position)
+    setAdapter(android.widget.ListAdapter adapter)
+    setAnchorView(android.view.View anchor)
+    setAnimationStyle(int animationStyle)
+    setBackgroundDrawable(android.graphics.drawable.Drawable d)
+    setContentWidth(int width)
+    setDropDownGravity(int gravity)
+    setEpicenterBounds(android.graphics.Rect bounds)
+    setHeight(int height)
+    setHorizontalOffset(int offset)
+    setInputMethodMode(int mode)
+    setListSelector(android.graphics.drawable.Drawable selector)
+    setModal(boolean modal)
+    setOnDismissListener(android.widget.PopupWindow.OnDismissListener listener)
+    setOnItemClickListener(android.widget.AdapterView.OnItemClickListener clickListener)
+    setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener selectedListener)
+    setPromptPosition(int position)
+    setPromptView(android.view.View prompt)
+    setSelection(int position)
+    setSoftInputMode(int mode)
+    setVerticalOffset(int offset)
+    setWidth(int width)
+    setWindowLayoutType(int layoutType)
+  class ListView
+    addFooterView(android.view.View v)
+    addFooterView(android.view.View v, java.lang.Object data, boolean isSelectable)
+    addHeaderView(android.view.View v)
+    addHeaderView(android.view.View v, java.lang.Object data, boolean isSelectable)
+    dispatchDraw(android.graphics.Canvas canvas)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    drawChild(android.graphics.Canvas canvas, android.view.View child, long drawingTime)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onFocusChanged(boolean gainFocus, int direction, android.graphics.Rect previouslyFocusedRect)
+    onInitializeAccessibilityNodeInfoForItem(android.view.View view, int position, android.view.accessibility.AccessibilityNodeInfo info)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    removeFooterView(android.view.View v)
+    removeHeaderView(android.view.View v)
+    requestChildRectangleOnScreen(android.view.View child, android.graphics.Rect rect, boolean immediate)
+    setAdapter(android.widget.ListAdapter adapter)
+    setCacheColorHint(int color)
+    setDivider(android.graphics.drawable.Drawable divider)
+    setDividerHeight(int height)
+    setFooterDividersEnabled(boolean footerDividersEnabled)
+    setHeaderDividersEnabled(boolean headerDividersEnabled)
+    setItemsCanFocus(boolean itemsCanFocus)
+    setOverscrollFooter(android.graphics.drawable.Drawable footer)
+    setOverscrollHeader(android.graphics.drawable.Drawable header)
+    setRemoteViewsAdapter(android.content.Intent intent)
+    setSelection(int position)
+    smoothScrollByOffset(int offset)
+    smoothScrollToPosition(int position)
+  class Magnifier
+    #ctor(android.view.View view)
+    setZoom(float zoom)
+    show(float sourceCenterX, float sourceCenterY)
+    show(float sourceCenterX, float sourceCenterY, float magnifierCenterX, float magnifierCenterY)
+  class Magnifier.Builder
+    #ctor(android.view.View view)
+    setClippingEnabled(boolean clip)
+    setCornerRadius(float cornerRadius)
+    setDefaultSourceToMagnifierOffset(int horizontalOffset, int verticalOffset)
+    setElevation(float elevation)
+    setInitialZoom(float zoom)
+    setOverlay(android.graphics.drawable.Drawable overlay)
+    setSize(int width, int height)
+    setSourceBounds(int left, int top, int right, int bottom)
+  class MediaController
+    dispatchKeyEvent(android.view.KeyEvent event)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, boolean useFastForward)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent ev)
+    setAnchorView(android.view.View view)
+    setEnabled(boolean enabled)
+    setMediaPlayer(android.widget.MediaController.MediaPlayerControl player)
+    setPrevNextListeners(android.view.View.OnClickListener next, android.view.View.OnClickListener prev)
+    show(int timeout)
+  interface MediaController.MediaPlayerControl
+    seekTo(int pos)
+  class MultiAutoCompleteTextView
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    performFiltering(java.lang.CharSequence text, int keyCode)
+    performFiltering(java.lang.CharSequence text, int start, int end, int keyCode)
+    replaceText(java.lang.CharSequence text)
+    setTokenizer(android.widget.MultiAutoCompleteTextView.Tokenizer t)
+  class MultiAutoCompleteTextView.CommaTokenizer
+    findTokenEnd(java.lang.CharSequence text, int cursor)
+    findTokenStart(java.lang.CharSequence text, int cursor)
+    terminateToken(java.lang.CharSequence text)
+  interface MultiAutoCompleteTextView.Tokenizer
+    findTokenEnd(java.lang.CharSequence text, int cursor)
+    findTokenStart(java.lang.CharSequence text, int cursor)
+    terminateToken(java.lang.CharSequence text)
+  class NumberPicker
+    dispatchHoverEvent(android.view.MotionEvent event)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchTouchEvent(android.view.MotionEvent event)
+    dispatchTrackballEvent(android.view.MotionEvent event)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    onDraw(android.graphics.Canvas canvas)
+    onInterceptTouchEvent(android.view.MotionEvent event)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onTouchEvent(android.view.MotionEvent event)
+    scrollBy(int x, int y)
+    setDisplayedValues(java.lang.String[] displayedValues)
+    setEnabled(boolean enabled)
+    setFormatter(android.widget.NumberPicker.Formatter formatter)
+    setMaxValue(int maxValue)
+    setMinValue(int minValue)
+    setOnLongPressUpdateInterval(long intervalMillis)
+    setOnScrollListener(android.widget.NumberPicker.OnScrollListener onScrollListener)
+    setOnValueChangedListener(android.widget.NumberPicker.OnValueChangeListener onValueChangedListener)
+    setSelectionDividerHeight(int height)
+    setTextColor(int color)
+    setTextSize(float size)
+    setValue(int value)
+    setWrapSelectorWheel(boolean wrapSelectorWheel)
+  interface NumberPicker.Formatter
+    format(int value)
+  interface NumberPicker.OnScrollListener
+    onScrollStateChange(android.widget.NumberPicker view, int scrollState)
+  interface NumberPicker.OnValueChangeListener
+    onValueChange(android.widget.NumberPicker picker, int oldVal, int newVal)
+  class OverScroller
+    fling(int startX, int startY, int velocityX, int velocityY, int minX, int maxX, int minY, int maxY)
+    fling(int startX, int startY, int velocityX, int velocityY, int minX, int maxX, int minY, int maxY, int overX, int overY)
+    forceFinished(boolean finished)
+    notifyHorizontalEdgeReached(int startX, int finalX, int overX)
+    notifyVerticalEdgeReached(int startY, int finalY, int overY)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.view.animation.Interpolator interpolator)
+    #ctor(android.content.Context context, android.view.animation.Interpolator interpolator, float bounceCoefficientX, float bounceCoefficientY)
+    #ctor(android.content.Context context, android.view.animation.Interpolator interpolator, float bounceCoefficientX, float bounceCoefficientY, boolean flywheel)
+    setFriction(float friction)
+    springBack(int startX, int startY, int minX, int maxX, int minY, int maxY)
+    startScroll(int startX, int startY, int dx, int dy)
+    startScroll(int startX, int startY, int dx, int dy, int duration)
+  class PopupMenu
+    inflate(int menuRes)
+    #ctor(android.content.Context context, android.view.View anchor)
+    #ctor(android.content.Context context, android.view.View anchor, int gravity)
+    #ctor(android.content.Context context, android.view.View anchor, int gravity, int popupStyleAttr, int popupStyleRes)
+    setForceShowIcon(boolean forceShowIcon)
+    setGravity(int gravity)
+    setOnDismissListener(android.widget.PopupMenu.OnDismissListener listener)
+    setOnMenuItemClickListener(android.widget.PopupMenu.OnMenuItemClickListener listener)
+  interface PopupMenu.OnDismissListener
+    onDismiss(android.widget.PopupMenu menu)
+  interface PopupMenu.OnMenuItemClickListener
+    onMenuItemClick(android.view.MenuItem item)
+  class PopupWindow
+    getMaxAvailableHeight(android.view.View anchor)
+    getMaxAvailableHeight(android.view.View anchor, int yOffset)
+    getMaxAvailableHeight(android.view.View anchor, int yOffset, boolean ignoreBottomDecorations)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    #ctor(android.view.View contentView)
+    #ctor(android.view.View contentView, int width, int height)
+    #ctor(android.view.View contentView, int width, int height, boolean focusable)
+    #ctor(int width, int height)
+    setAnimationStyle(int animationStyle)
+    setAttachedInDecor(boolean enabled)
+    setBackgroundDrawable(android.graphics.drawable.Drawable background)
+    setClippingEnabled(boolean enabled)
+    setContentView(android.view.View contentView)
+    setElevation(float elevation)
+    setEnterTransition(android.transition.Transition enterTransition)
+    setEpicenterBounds(android.graphics.Rect bounds)
+    setExitTransition(android.transition.Transition exitTransition)
+    setFocusable(boolean focusable)
+    setHeight(int height)
+    setInputMethodMode(int mode)
+    setIsClippedToScreen(boolean enabled)
+    setIsLaidOutInScreen(boolean enabled)
+    setOnDismissListener(android.widget.PopupWindow.OnDismissListener onDismissListener)
+    setOutsideTouchable(boolean touchable)
+    setOverlapAnchor(boolean overlapAnchor)
+    setSoftInputMode(int mode)
+    setSplitTouchEnabled(boolean enabled)
+    setTouchable(boolean touchable)
+    setTouchInterceptor(android.view.View.OnTouchListener l)
+    setTouchModal(boolean touchModal)
+    setWidth(int width)
+    setWindowLayoutMode(int widthSpec, int heightSpec)
+    setWindowLayoutType(int layoutType)
+    showAsDropDown(android.view.View anchor)
+    showAsDropDown(android.view.View anchor, int xoff, int yoff)
+    showAsDropDown(android.view.View anchor, int xoff, int yoff, int gravity)
+    showAtLocation(android.view.View parent, int gravity, int x, int y)
+    update(android.view.View anchor, int width, int height)
+    update(android.view.View anchor, int xoff, int yoff, int width, int height)
+    update(int width, int height)
+    update(int x, int y, int width, int height)
+    update(int x, int y, int width, int height, boolean force)
+  class ProgressBar
+    drawableHotspotChanged(float x, float y)
+    incrementProgressBy(int diff)
+    incrementSecondaryProgressBy(int diff)
+    invalidateDrawable(android.graphics.drawable.Drawable dr)
+    onDraw(android.graphics.Canvas canvas)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onVisibilityAggregated(boolean isVisible)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setIndeterminate(boolean indeterminate)
+    setIndeterminateDrawable(android.graphics.drawable.Drawable d)
+    setIndeterminateDrawableTiled(android.graphics.drawable.Drawable d)
+    setIndeterminateTintBlendMode(android.graphics.BlendMode blendMode)
+    setIndeterminateTintList(android.content.res.ColorStateList tint)
+    setIndeterminateTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setInterpolator(android.content.Context context, int resID)
+    setInterpolator(android.view.animation.Interpolator interpolator)
+    setMax(int max)
+    setMaxHeight(int maxHeight)
+    setMaxWidth(int maxWidth)
+    setMin(int min)
+    setMinHeight(int minHeight)
+    setMinWidth(int minWidth)
+    setProgress(int progress)
+    setProgress(int progress, boolean animate)
+    setProgressBackgroundTintBlendMode(android.graphics.BlendMode blendMode)
+    setProgressBackgroundTintList(android.content.res.ColorStateList tint)
+    setProgressBackgroundTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setProgressDrawable(android.graphics.drawable.Drawable d)
+    setProgressDrawableTiled(android.graphics.drawable.Drawable d)
+    setProgressTintBlendMode(android.graphics.BlendMode blendMode)
+    setProgressTintList(android.content.res.ColorStateList tint)
+    setProgressTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setSecondaryProgress(int secondaryProgress)
+    setSecondaryProgressTintBlendMode(android.graphics.BlendMode blendMode)
+    setSecondaryProgressTintList(android.content.res.ColorStateList tint)
+    setSecondaryProgressTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setStateDescription(java.lang.CharSequence stateDescription)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  class QuickContactBadge
+    assignContactFromEmail(java.lang.String emailAddress, boolean lazyLookup)
+    assignContactFromEmail(java.lang.String emailAddress, boolean lazyLookup, android.os.Bundle extras)
+    assignContactFromPhone(java.lang.String phoneNumber, boolean lazyLookup)
+    assignContactFromPhone(java.lang.String phoneNumber, boolean lazyLookup, android.os.Bundle extras)
+    assignContactUri(android.net.Uri contactUri)
+    drawableHotspotChanged(float x, float y)
+    onClick(android.view.View v)
+    onDraw(android.graphics.Canvas canvas)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setExcludeMimes(java.lang.String[] excludeMimes)
+    setMode(int size)
+    setOverlay(android.graphics.drawable.Drawable overlay)
+    setPrioritizedMimeType(java.lang.String prioritizedMimeType)
+  class RadioButton
+    onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo info)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class RadioGroup
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    autofill(android.view.autofill.AutofillValue value)
+    check(int id)
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo info)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    setOnCheckedChangeListener(android.widget.RadioGroup.OnCheckedChangeListener listener)
+    setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener listener)
+  class RadioGroup.LayoutParams
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams p)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(int w, int h)
+    #ctor(int w, int h, float initWeight)
+    setBaseAttributes(android.content.res.TypedArray a, int widthAttr, int heightAttr)
+  interface RadioGroup.OnCheckedChangeListener
+    onCheckedChanged(android.widget.RadioGroup group, int checkedId)
+  class RatingBar
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setIsIndicator(boolean isIndicator)
+    setMax(int max)
+    setNumStars(int numStars)
+    setOnRatingBarChangeListener(android.widget.RatingBar.OnRatingBarChangeListener listener)
+    setRating(float rating)
+    setStepSize(float stepSize)
+  interface RatingBar.OnRatingBarChangeListener
+    onRatingChanged(android.widget.RatingBar ratingBar, float rating, boolean fromUser)
+  class RelativeLayout
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams lp)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setGravity(int gravity)
+    setHorizontalGravity(int horizontalGravity)
+    setIgnoreGravity(int viewId)
+    setVerticalGravity(int verticalGravity)
+  class RelativeLayout.LayoutParams
+    addRule(int verb)
+    addRule(int verb, int subject)
+    debug(java.lang.String output)
+    getRule(int verb)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(android.widget.RelativeLayout.LayoutParams source)
+    #ctor(int w, int h)
+    removeRule(int verb)
+    resolveLayoutDirection(int layoutDirection)
+  class RemoteViews
+    addStableView(int viewId, android.widget.RemoteViews nestedView, int stableId)
+    addView(int viewId, android.widget.RemoteViews nestedView)
+    apply(android.content.Context context, android.view.ViewGroup parent)
+    onLoadClass(java.lang.Class clazz)
+    reapply(android.content.Context context, android.view.View v)
+    #ctor(android.os.Parcel parcel)
+    #ctor(android.widget.RemoteViews src)
+    #ctor(android.widget.RemoteViews landscape, android.widget.RemoteViews portrait)
+    #ctor(java.lang.String packageName, int layoutId)
+    #ctor(java.lang.String packageName, int layoutId, int viewId)
+    #ctor(java.util.Map<android.util.SizeF,android.widget.RemoteViews> remoteViews)
+    removeAllViews(int viewId)
+    setAccessibilityTraversalAfter(int viewId, int nextId)
+    setAccessibilityTraversalBefore(int viewId, int nextId)
+    setBitmap(int viewId, java.lang.String methodName, android.graphics.Bitmap value)
+    setBlendMode(int viewId, java.lang.String methodName, android.graphics.BlendMode value)
+    setBoolean(int viewId, java.lang.String methodName, boolean value)
+    setBundle(int viewId, java.lang.String methodName, android.os.Bundle value)
+    setByte(int viewId, java.lang.String methodName, byte value)
+    setChar(int viewId, java.lang.String methodName, char value)
+    setCharSequence(int viewId, java.lang.String methodName, int stringResource)
+    setCharSequence(int viewId, java.lang.String methodName, java.lang.CharSequence value)
+    setCharSequenceAttr(int viewId, java.lang.String methodName, int stringAttribute)
+    setChronometer(int viewId, long base, java.lang.String format, boolean started)
+    setChronometerCountDown(int viewId, boolean isCountDown)
+    setColor(int viewId, java.lang.String methodName, int colorResource)
+    setColorAttr(int viewId, java.lang.String methodName, int colorAttribute)
+    setColorInt(int viewId, java.lang.String methodName, int notNight, int night)
+    setColorStateList(int viewId, java.lang.String methodName, android.content.res.ColorStateList value)
+    setColorStateList(int viewId, java.lang.String methodName, android.content.res.ColorStateList notNight, android.content.res.ColorStateList night)
+    setColorStateList(int viewId, java.lang.String methodName, int colorResource)
+    setColorStateListAttr(int viewId, java.lang.String methodName, int colorAttr)
+    setCompoundButtonChecked(int viewId, boolean checked)
+    setContentDescription(int viewId, java.lang.CharSequence contentDescription)
+    setDisplayedChild(int viewId, int childIndex)
+    setDouble(int viewId, java.lang.String methodName, double value)
+    setEmptyView(int viewId, int emptyViewId)
+    setFloat(int viewId, java.lang.String methodName, float value)
+    setFloatDimen(int viewId, java.lang.String methodName, float value, int unit)
+    setFloatDimen(int viewId, java.lang.String methodName, int dimenResource)
+    setFloatDimenAttr(int viewId, java.lang.String methodName, int dimenAttr)
+    setIcon(int viewId, java.lang.String methodName, android.graphics.drawable.Icon value)
+    setIcon(int viewId, java.lang.String methodName, android.graphics.drawable.Icon notNight, android.graphics.drawable.Icon night)
+    setImageViewBitmap(int viewId, android.graphics.Bitmap bitmap)
+    setImageViewIcon(int viewId, android.graphics.drawable.Icon icon)
+    setImageViewResource(int viewId, int srcId)
+    setImageViewUri(int viewId, android.net.Uri uri)
+    setInt(int viewId, java.lang.String methodName, int value)
+    setIntDimen(int viewId, java.lang.String methodName, float value, int unit)
+    setIntDimen(int viewId, java.lang.String methodName, int dimenResource)
+    setIntDimenAttr(int viewId, java.lang.String methodName, int dimenAttr)
+    setIntent(int viewId, java.lang.String methodName, android.content.Intent value)
+    setLabelFor(int viewId, int labeledId)
+    setLightBackgroundLayoutId(int layoutId)
+    setLong(int viewId, java.lang.String methodName, long value)
+    setOnCheckedChangeResponse(int viewId, android.widget.RemoteViews.RemoteResponse response)
+    setOnClickFillInIntent(int viewId, android.content.Intent fillInIntent)
+    setOnClickPendingIntent(int viewId, android.app.PendingIntent pendingIntent)
+    setOnClickResponse(int viewId, android.widget.RemoteViews.RemoteResponse response)
+    setPendingIntentTemplate(int viewId, android.app.PendingIntent pendingIntentTemplate)
+    setProgressBar(int viewId, int max, int progress, boolean indeterminate)
+    setRadioGroupChecked(int viewId, int checkedId)
+    setRelativeScrollPosition(int viewId, int offset)
+    setRemoteAdapter(int viewId, android.content.Intent intent)
+    setRemoteAdapter(int viewId, android.widget.RemoteViews.RemoteCollectionItems items)
+    setRemoteAdapter(int appWidgetId, int viewId, android.content.Intent intent)
+    setScrollPosition(int viewId, int position)
+    setShort(int viewId, java.lang.String methodName, short value)
+    setString(int viewId, java.lang.String methodName, java.lang.String value)
+    setTextColor(int viewId, int color)
+    setTextViewCompoundDrawables(int viewId, int left, int top, int right, int bottom)
+    setTextViewCompoundDrawablesRelative(int viewId, int start, int top, int end, int bottom)
+    setTextViewText(int viewId, java.lang.CharSequence text)
+    setTextViewTextSize(int viewId, int units, float size)
+    setUri(int viewId, java.lang.String methodName, android.net.Uri value)
+    setViewLayoutHeight(int viewId, float height, int units)
+    setViewLayoutHeightAttr(int viewId, int heightAttr)
+    setViewLayoutHeightDimen(int viewId, int heightDimen)
+    setViewLayoutMargin(int viewId, int type, float value, int units)
+    setViewLayoutMarginAttr(int viewId, int type, int attr)
+    setViewLayoutMarginDimen(int viewId, int type, int dimen)
+    setViewLayoutWidth(int viewId, float width, int units)
+    setViewLayoutWidthAttr(int viewId, int widthAttr)
+    setViewLayoutWidthDimen(int viewId, int widthDimen)
+    setViewOutlinePreferredRadius(int viewId, float radius, int units)
+    setViewOutlinePreferredRadiusAttr(int viewId, int attrId)
+    setViewOutlinePreferredRadiusDimen(int viewId, int resId)
+    setViewPadding(int viewId, int left, int top, int right, int bottom)
+    setViewVisibility(int viewId, int visibility)
+    showNext(int viewId)
+    showPrevious(int viewId)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RemoteViews.ActionException
+    #ctor(java.lang.Exception ex)
+    #ctor(java.lang.String message)
+  class RemoteViews.RemoteCollectionItems
+    getItemId(int position)
+    getItemView(int position)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class RemoteViews.RemoteCollectionItems.Builder
+    addItem(long id, android.widget.RemoteViews view)
+    setHasStableIds(boolean hasStableIds)
+    setViewTypeCount(int viewTypeCount)
+  class RemoteViews.RemoteResponse
+    addSharedElement(int viewId, java.lang.String sharedElementName)
+    fromFillInIntent(android.content.Intent fillIntent)
+    fromPendingIntent(android.app.PendingIntent pendingIntent)
+  class RemoteViews.RemoteViewOutlineProvider
+    getOutline(android.view.View view, android.graphics.Outline outline)
+    #ctor(float radius)
+  class RemoteViewsService
+    onBind(android.content.Intent intent)
+    onGetViewFactory(android.content.Intent intent)
+  interface RemoteViewsService.RemoteViewsFactory
+    getItemId(int position)
+    getViewAt(int position)
+  class ResourceCursorAdapter
+    newDropDownView(android.content.Context context, android.database.Cursor cursor, android.view.ViewGroup parent)
+    newView(android.content.Context context, android.database.Cursor cursor, android.view.ViewGroup parent)
+    #ctor(android.content.Context context, int layout, android.database.Cursor c)
+    #ctor(android.content.Context context, int layout, android.database.Cursor c, boolean autoRequery)
+    #ctor(android.content.Context context, int layout, android.database.Cursor c, int flags)
+    setDropDownViewResource(int dropDownLayout)
+    setDropDownViewTheme(android.content.res.Resources.Theme theme)
+    setViewResource(int layout)
+  class ResourceCursorTreeAdapter
+    newChildView(android.content.Context context, android.database.Cursor cursor, boolean isLastChild, android.view.ViewGroup parent)
+    newGroupView(android.content.Context context, android.database.Cursor cursor, boolean isExpanded, android.view.ViewGroup parent)
+    #ctor(android.content.Context context, android.database.Cursor cursor, int groupLayout, int childLayout)
+    #ctor(android.content.Context context, android.database.Cursor cursor, int collapsedGroupLayout, int expandedGroupLayout, int childLayout)
+    #ctor(android.content.Context context, android.database.Cursor cursor, int collapsedGroupLayout, int expandedGroupLayout, int childLayout, int lastChildLayout)
+  class Scroller
+    extendDuration(int extend)
+    fling(int startX, int startY, int velocityX, int velocityY, int minX, int maxX, int minY, int maxY)
+    forceFinished(boolean finished)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.view.animation.Interpolator interpolator)
+    #ctor(android.content.Context context, android.view.animation.Interpolator interpolator, boolean flywheel)
+    setFinalX(int newX)
+    setFinalY(int newY)
+    setFriction(float friction)
+    startScroll(int startX, int startY, int dx, int dy)
+    startScroll(int startX, int startY, int dx, int dy, int duration)
+  class ScrollView
+    addView(android.view.View child)
+    addView(android.view.View child, android.view.ViewGroup.LayoutParams params)
+    addView(android.view.View child, int index)
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    arrowScroll(int direction)
+    computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect rect)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    draw(android.graphics.Canvas canvas)
+    executeKeyEvent(android.view.KeyEvent event)
+    fling(int velocityY)
+    fullScroll(int direction)
+    measureChild(android.view.View child, int parentWidthMeasureSpec, int parentHeightMeasureSpec)
+    measureChildWithMargins(android.view.View child, int parentWidthMeasureSpec, int widthUsed, int parentHeightMeasureSpec, int heightUsed)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onInterceptTouchEvent(android.view.MotionEvent ev)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onNestedFling(android.view.View target, float velocityX, float velocityY, boolean consumed)
+    onNestedScroll(android.view.View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed)
+    onNestedScrollAccepted(android.view.View child, android.view.View target, int axes)
+    onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)
+    onRequestFocusInDescendants(int direction, android.graphics.Rect previouslyFocusedRect)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    onStartNestedScroll(android.view.View child, android.view.View target, int nestedScrollAxes)
+    onStopNestedScroll(android.view.View target)
+    onTouchEvent(android.view.MotionEvent ev)
+    pageScroll(int direction)
+    requestChildFocus(android.view.View child, android.view.View focused)
+    requestChildRectangleOnScreen(android.view.View child, android.graphics.Rect rectangle, boolean immediate)
+    requestDisallowInterceptTouchEvent(boolean disallowIntercept)
+    scrollTo(int x, int y)
+    scrollToDescendant(android.view.View child)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setBottomEdgeEffectColor(int color)
+    setEdgeEffectColor(int color)
+    setFillViewport(boolean fillViewport)
+    setSmoothScrollingEnabled(boolean smoothScrollingEnabled)
+    setTopEdgeEffectColor(int color)
+    smoothScrollBy(int dx, int dy)
+    smoothScrollTo(int x, int y)
+  class SearchView
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    requestFocus(int direction, android.graphics.Rect previouslyFocusedRect)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setIconified(boolean iconify)
+    setIconifiedByDefault(boolean iconified)
+    setImeOptions(int imeOptions)
+    setInputType(int inputType)
+    setMaxWidth(int maxpixels)
+    setOnCloseListener(android.widget.SearchView.OnCloseListener listener)
+    setOnQueryTextFocusChangeListener(android.view.View.OnFocusChangeListener listener)
+    setOnQueryTextListener(android.widget.SearchView.OnQueryTextListener listener)
+    setOnSearchClickListener(android.view.View.OnClickListener listener)
+    setOnSuggestionListener(android.widget.SearchView.OnSuggestionListener listener)
+    setQuery(java.lang.CharSequence query, boolean submit)
+    setQueryHint(java.lang.CharSequence hint)
+    setQueryRefinementEnabled(boolean enable)
+    setSearchableInfo(android.app.SearchableInfo searchable)
+    setSubmitButtonEnabled(boolean enabled)
+    setSuggestionsAdapter(android.widget.CursorAdapter adapter)
+  interface SearchView.OnQueryTextListener
+    onQueryTextChange(java.lang.String newText)
+    onQueryTextSubmit(java.lang.String query)
+  interface SearchView.OnSuggestionListener
+    onSuggestionClick(int position)
+    onSuggestionSelect(int position)
+  interface SectionIndexer
+    getPositionForSection(int sectionIndex)
+    getSectionForPosition(int position)
+  class SeekBar
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    setOnSeekBarChangeListener(android.widget.SeekBar.OnSeekBarChangeListener l)
+  interface SeekBar.OnSeekBarChangeListener
+    onProgressChanged(android.widget.SeekBar seekBar, int progress, boolean fromUser)
+    onStartTrackingTouch(android.widget.SeekBar seekBar)
+    onStopTrackingTouch(android.widget.SeekBar seekBar)
+  class ShareActionProvider
+    onPrepareSubMenu(android.view.SubMenu subMenu)
+    setOnShareTargetSelectedListener(android.widget.ShareActionProvider.OnShareTargetSelectedListener listener)
+    setShareHistoryFileName(java.lang.String shareHistoryFile)
+    setShareIntent(android.content.Intent shareIntent)
+    #ctor(android.content.Context context)
+  interface ShareActionProvider.OnShareTargetSelectedListener
+    onShareTargetSelected(android.widget.ShareActionProvider source, android.content.Intent intent)
+  class SimpleAdapter
+    getDropDownView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    getItem(int position)
+    getItemId(int position)
+    getView(int position, android.view.View convertView, android.view.ViewGroup parent)
+    setDropDownViewResource(int resource)
+    setDropDownViewTheme(android.content.res.Resources.Theme theme)
+    setViewBinder(android.widget.SimpleAdapter.ViewBinder viewBinder)
+    setViewImage(android.widget.ImageView v, int value)
+    setViewImage(android.widget.ImageView v, java.lang.String value)
+    setViewText(android.widget.TextView v, java.lang.String text)
+    #ctor(android.content.Context context, java.util.List<? extends java.util.Map<java.lang.String,?>> data, int resource, java.lang.String[] from, int[] to)
+  interface SimpleAdapter.ViewBinder
+    setViewValue(android.view.View view, java.lang.Object data, java.lang.String textRepresentation)
+  class SimpleCursorAdapter
+    bindView(android.view.View view, android.content.Context context, android.database.Cursor cursor)
+    changeCursorAndColumns(android.database.Cursor c, java.lang.String[] from, int[] to)
+    convertToString(android.database.Cursor cursor)
+    setCursorToStringConverter(android.widget.SimpleCursorAdapter.CursorToStringConverter cursorToStringConverter)
+    setStringConversionColumn(int stringConversionColumn)
+    setViewBinder(android.widget.SimpleCursorAdapter.ViewBinder viewBinder)
+    setViewImage(android.widget.ImageView v, java.lang.String value)
+    setViewText(android.widget.TextView v, java.lang.String text)
+    #ctor(android.content.Context context, int layout, android.database.Cursor c, java.lang.String[] from, int[] to)
+    #ctor(android.content.Context context, int layout, android.database.Cursor c, java.lang.String[] from, int[] to, int flags)
+    swapCursor(android.database.Cursor c)
+  interface SimpleCursorAdapter.CursorToStringConverter
+    convertToString(android.database.Cursor cursor)
+  interface SimpleCursorAdapter.ViewBinder
+    setViewValue(android.view.View view, android.database.Cursor cursor, int columnIndex)
+  class SimpleCursorTreeAdapter
+    bindChildView(android.view.View view, android.content.Context context, android.database.Cursor cursor, boolean isLastChild)
+    bindGroupView(android.view.View view, android.content.Context context, android.database.Cursor cursor, boolean isExpanded)
+    setViewBinder(android.widget.SimpleCursorTreeAdapter.ViewBinder viewBinder)
+    setViewImage(android.widget.ImageView v, java.lang.String value)
+    setViewText(android.widget.TextView v, java.lang.String text)
+    #ctor(android.content.Context context, android.database.Cursor cursor, int collapsedGroupLayout, int expandedGroupLayout, java.lang.String[] groupFrom, int[] groupTo, int childLayout, int lastChildLayout, java.lang.String[] childFrom, int[] childTo)
+    #ctor(android.content.Context context, android.database.Cursor cursor, int collapsedGroupLayout, int expandedGroupLayout, java.lang.String[] groupFrom, int[] groupTo, int childLayout, java.lang.String[] childFrom, int[] childTo)
+    #ctor(android.content.Context context, android.database.Cursor cursor, int groupLayout, java.lang.String[] groupFrom, int[] groupTo, int childLayout, java.lang.String[] childFrom, int[] childTo)
+  interface SimpleCursorTreeAdapter.ViewBinder
+    setViewValue(android.view.View view, android.database.Cursor cursor, int columnIndex)
+  class SimpleExpandableListAdapter
+    getChild(int groupPosition, int childPosition)
+    getChildId(int groupPosition, int childPosition)
+    getChildrenCount(int groupPosition)
+    getChildView(int groupPosition, int childPosition, boolean isLastChild, android.view.View convertView, android.view.ViewGroup parent)
+    getGroup(int groupPosition)
+    getGroupId(int groupPosition)
+    getGroupView(int groupPosition, boolean isExpanded, android.view.View convertView, android.view.ViewGroup parent)
+    isChildSelectable(int groupPosition, int childPosition)
+    newChildView(boolean isLastChild, android.view.ViewGroup parent)
+    newGroupView(boolean isExpanded, android.view.ViewGroup parent)
+    #ctor(android.content.Context context, java.util.List<? extends java.util.Map<java.lang.String,?>> groupData, int expandedGroupLayout, int collapsedGroupLayout, java.lang.String[] groupFrom, int[] groupTo, java.util.List<? extends java.util.List<? extends java.util.Map<java.lang.String,?>>> childData, int childLayout, int lastChildLayout, java.lang.String[] childFrom, int[] childTo)
+    #ctor(android.content.Context context, java.util.List<? extends java.util.Map<java.lang.String,?>> groupData, int expandedGroupLayout, int collapsedGroupLayout, java.lang.String[] groupFrom, int[] groupTo, java.util.List<? extends java.util.List<? extends java.util.Map<java.lang.String,?>>> childData, int childLayout, java.lang.String[] childFrom, int[] childTo)
+    #ctor(android.content.Context context, java.util.List<? extends java.util.Map<java.lang.String,?>> groupData, int groupLayout, java.lang.String[] groupFrom, int[] groupTo, java.util.List<? extends java.util.List<? extends java.util.Map<java.lang.String,?>>> childData, int childLayout, java.lang.String[] childFrom, int[] childTo)
+  class SlidingDrawer
+    dispatchDraw(android.graphics.Canvas canvas)
+    onInterceptTouchEvent(android.view.MotionEvent event)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onTouchEvent(android.view.MotionEvent event)
+    setOnDrawerCloseListener(android.widget.SlidingDrawer.OnDrawerCloseListener onDrawerCloseListener)
+    setOnDrawerOpenListener(android.widget.SlidingDrawer.OnDrawerOpenListener onDrawerOpenListener)
+    setOnDrawerScrollListener(android.widget.SlidingDrawer.OnDrawerScrollListener onDrawerScrollListener)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class Space
+    draw(android.graphics.Canvas canvas)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class Spinner
+    onClick(android.content.DialogInterface dialog, int which)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onTouchEvent(android.view.MotionEvent event)
+    setAdapter(android.widget.SpinnerAdapter adapter)
+    setDropDownHorizontalOffset(int pixels)
+    setDropDownVerticalOffset(int pixels)
+    setDropDownWidth(int pixels)
+    setEnabled(boolean enabled)
+    setGravity(int gravity)
+    setOnItemClickListener(android.widget.AdapterView.OnItemClickListener l)
+    setPopupBackgroundDrawable(android.graphics.drawable.Drawable background)
+    setPopupBackgroundResource(int resId)
+    setPrompt(java.lang.CharSequence prompt)
+    setPromptId(int promptId)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int mode)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes, int mode)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes, int mode, android.content.res.Resources.Theme popupTheme)
+    #ctor(android.content.Context context, int mode)
+  interface SpinnerAdapter
+    getDropDownView(int position, android.view.View convertView, android.view.ViewGroup parent)
+  class StackView
+    dispatchDraw(android.graphics.Canvas canvas)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onInterceptTouchEvent(android.view.MotionEvent ev)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onTouchEvent(android.view.MotionEvent ev)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class Switch
+    draw(android.graphics.Canvas c)
+    drawableHotspotChanged(float x, float y)
+    onCreateDrawableState(int extraSpace)
+    onDraw(android.graphics.Canvas canvas)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onTouchEvent(android.view.MotionEvent ev)
+    setChecked(boolean checked)
+    setShowText(boolean showText)
+    setSplitTrack(boolean splitTrack)
+    setSwitchMinWidth(int pixels)
+    setSwitchPadding(int pixels)
+    setSwitchTextAppearance(android.content.Context context, int resid)
+    setSwitchTypeface(android.graphics.Typeface tf)
+    setSwitchTypeface(android.graphics.Typeface tf, int style)
+    setTextOff(java.lang.CharSequence textOff)
+    setTextOn(java.lang.CharSequence textOn)
+    setThumbDrawable(android.graphics.drawable.Drawable thumb)
+    setThumbIcon(android.graphics.drawable.Icon icon)
+    setThumbResource(int resId)
+    setThumbTextPadding(int pixels)
+    setThumbTintBlendMode(android.graphics.BlendMode blendMode)
+    setThumbTintList(android.content.res.ColorStateList tint)
+    setThumbTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setTrackDrawable(android.graphics.drawable.Drawable track)
+    setTrackIcon(android.graphics.drawable.Icon icon)
+    setTrackResource(int resId)
+    setTrackTintBlendMode(android.graphics.BlendMode blendMode)
+    setTrackTintList(android.content.res.ColorStateList tint)
+    setTrackTintMode(android.graphics.PorterDuff.Mode tintMode)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  class TabHost
+    addTab(android.widget.TabHost.TabSpec tabSpec)
+    dispatchKeyEvent(android.view.KeyEvent event)
+    dispatchWindowFocusChanged(boolean hasFocus)
+    newTabSpec(java.lang.String tag)
+    onTouchModeChanged(boolean isInTouchMode)
+    setCurrentTab(int index)
+    setCurrentTabByTag(java.lang.String tag)
+    setOnTabChangedListener(android.widget.TabHost.OnTabChangeListener l)
+    setup(android.app.LocalActivityManager activityGroup)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  interface TabHost.OnTabChangeListener
+    onTabChanged(java.lang.String tabId)
+  interface TabHost.TabContentFactory
+    createTabContent(java.lang.String tag)
+  class TabHost.TabSpec
+    setContent(android.content.Intent intent)
+    setContent(android.widget.TabHost.TabContentFactory contentFactory)
+    setContent(int viewId)
+    setIndicator(android.view.View view)
+    setIndicator(java.lang.CharSequence label)
+    setIndicator(java.lang.CharSequence label, android.graphics.drawable.Drawable icon)
+  class TableLayout
+    addView(android.view.View child)
+    addView(android.view.View child, android.view.ViewGroup.LayoutParams params)
+    addView(android.view.View child, int index)
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    isColumnCollapsed(int columnIndex)
+    isColumnShrinkable(int columnIndex)
+    isColumnStretchable(int columnIndex)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setColumnCollapsed(int columnIndex, boolean isCollapsed)
+    setColumnShrinkable(int columnIndex, boolean isShrinkable)
+    setColumnStretchable(int columnIndex, boolean isStretchable)
+    setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener listener)
+    setShrinkAllColumns(boolean shrinkAllColumns)
+    setStretchAllColumns(boolean stretchAllColumns)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class TableLayout.LayoutParams
+    setBaseAttributes(android.content.res.TypedArray a, int widthAttr, int heightAttr)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams p)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(int w, int h)
+    #ctor(int w, int h, float initWeight)
+  class TableRow
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    getVirtualChildAt(int i)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener listener)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class TableRow.LayoutParams
+    setBaseAttributes(android.content.res.TypedArray a, int widthAttr, int heightAttr)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams p)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(int column)
+    #ctor(int w, int h)
+    #ctor(int w, int h, float initWeight)
+  class TabWidget
+    addView(android.view.View child)
+    childDrawableStateChanged(android.view.View child)
+    dispatchDraw(android.graphics.Canvas canvas)
+    focusCurrentTab(int index)
+    getChildDrawingOrder(int childCount, int i)
+    getChildTabViewAt(int index)
+    onFocusChange(android.view.View v, boolean hasFocus)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onSizeChanged(int w, int h, int oldw, int oldh)
+    setCurrentTab(int index)
+    setDividerDrawable(android.graphics.drawable.Drawable drawable)
+    setDividerDrawable(int resId)
+    setEnabled(boolean enabled)
+    setLeftStripDrawable(android.graphics.drawable.Drawable drawable)
+    setLeftStripDrawable(int resId)
+    setRightStripDrawable(android.graphics.drawable.Drawable drawable)
+    setRightStripDrawable(int resId)
+    setStripEnabled(boolean stripEnabled)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class TextClock
+    onVisibilityAggregated(boolean isVisible)
+    setFormat12Hour(java.lang.CharSequence format)
+    setFormat24Hour(java.lang.CharSequence format)
+    setTimeZone(java.lang.String timeZone)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class TextSwitcher
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    setCurrentText(java.lang.CharSequence text)
+    setText(java.lang.CharSequence text)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class TextView
+    addExtraDataToAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo info, java.lang.String extraDataKey, android.os.Bundle arguments)
+    addTextChangedListener(android.text.TextWatcher watcher)
+    append(java.lang.CharSequence text)
+    append(java.lang.CharSequence text, int start, int end)
+    autofill(android.view.autofill.AutofillValue value)
+    bringPointIntoView(int offset)
+    debug(int depth)
+    drawableHotspotChanged(float x, float y)
+    extractText(android.view.inputmethod.ExtractedTextRequest request, android.view.inputmethod.ExtractedText outText)
+    findViewsWithText(java.util.ArrayList<android.view.View> outViews, java.lang.CharSequence searched, int flags)
+    getFocusedRect(android.graphics.Rect r)
+    getInputExtras(boolean create)
+    getLineBounds(int line, android.graphics.Rect bounds)
+    getOffsetForPosition(float x, float y)
+    invalidateDrawable(android.graphics.drawable.Drawable drawable)
+    onCommitCompletion(android.view.inputmethod.CompletionInfo text)
+    onCommitCorrection(android.view.inputmethod.CorrectionInfo info)
+    onConfigurationChanged(android.content.res.Configuration newConfig)
+    onCreateContextMenu(android.view.ContextMenu menu)
+    onCreateDrawableState(int extraSpace)
+    onCreateInputConnection(android.view.inputmethod.EditorInfo outAttrs)
+    onCreateViewTranslationRequest(int[] supportedFormats, java.util.function.Consumer<android.view.translation.ViewTranslationRequest> requestsCollector)
+    onDragEvent(android.view.DragEvent event)
+    onDraw(android.graphics.Canvas canvas)
+    onEditorAction(int actionCode)
+    onFocusChanged(boolean focused, int direction, android.graphics.Rect previouslyFocusedRect)
+    onGenericMotionEvent(android.view.MotionEvent event)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onKeyMultiple(int keyCode, int repeatCount, android.view.KeyEvent event)
+    onKeyPreIme(int keyCode, android.view.KeyEvent event)
+    onKeyShortcut(int keyCode, android.view.KeyEvent event)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onPrivateIMECommand(java.lang.String action, android.os.Bundle data)
+    onReceiveContent(android.view.ContentInfo payload)
+    onResolvePointerIcon(android.view.MotionEvent event, int pointerIndex)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onRtlPropertiesChanged(int layoutDirection)
+    onScreenStateChanged(int screenState)
+    onScrollChanged(int horiz, int vert, int oldHoriz, int oldVert)
+    onSelectionChanged(int selStart, int selEnd)
+    onTextChanged(java.lang.CharSequence text, int start, int lengthBefore, int lengthAfter)
+    onTextContextMenuItem(int id)
+    onTouchEvent(android.view.MotionEvent event)
+    onTrackballEvent(android.view.MotionEvent event)
+    onVisibilityAggregated(boolean isVisible)
+    onVisibilityChanged(android.view.View changedView, int visibility)
+    onWindowFocusChanged(boolean hasWindowFocus)
+    removeTextChangedListener(android.text.TextWatcher watcher)
+    sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent event)
+    setAllCaps(boolean allCaps)
+    setAutoLinkMask(int mask)
+    setAutoSizeTextTypeUniformWithConfiguration(int autoSizeMinTextSize, int autoSizeMaxTextSize, int autoSizeStepGranularity, int unit)
+    setAutoSizeTextTypeUniformWithPresetSizes(int[] presetSizes, int unit)
+    setAutoSizeTextTypeWithDefaults(int autoSizeTextType)
+    setBreakStrategy(int breakStrategy)
+    setCompoundDrawablePadding(int pad)
+    setCompoundDrawables(android.graphics.drawable.Drawable left, android.graphics.drawable.Drawable top, android.graphics.drawable.Drawable right, android.graphics.drawable.Drawable bottom)
+    setCompoundDrawablesRelative(android.graphics.drawable.Drawable start, android.graphics.drawable.Drawable top, android.graphics.drawable.Drawable end, android.graphics.drawable.Drawable bottom)
+    setCompoundDrawablesRelativeWithIntrinsicBounds(android.graphics.drawable.Drawable start, android.graphics.drawable.Drawable top, android.graphics.drawable.Drawable end, android.graphics.drawable.Drawable bottom)
+    setCompoundDrawablesRelativeWithIntrinsicBounds(int start, int top, int end, int bottom)
+    setCompoundDrawablesWithIntrinsicBounds(android.graphics.drawable.Drawable left, android.graphics.drawable.Drawable top, android.graphics.drawable.Drawable right, android.graphics.drawable.Drawable bottom)
+    setCompoundDrawablesWithIntrinsicBounds(int left, int top, int right, int bottom)
+    setCompoundDrawableTintBlendMode(android.graphics.BlendMode blendMode)
+    setCompoundDrawableTintList(android.content.res.ColorStateList tint)
+    setCompoundDrawableTintMode(android.graphics.PorterDuff.Mode tintMode)
+    setCursorVisible(boolean visible)
+    setCustomInsertionActionModeCallback(android.view.ActionMode.Callback actionModeCallback)
+    setCustomSelectionActionModeCallback(android.view.ActionMode.Callback actionModeCallback)
+    setEditableFactory(android.text.Editable.Factory factory)
+    setElegantTextHeight(boolean elegant)
+    setEllipsize(android.text.TextUtils.TruncateAt where)
+    setEms(int ems)
+    setEnabled(boolean enabled)
+    setError(java.lang.CharSequence error)
+    setError(java.lang.CharSequence error, android.graphics.drawable.Drawable icon)
+    setExtractedText(android.view.inputmethod.ExtractedText text)
+    setFallbackLineSpacing(boolean enabled)
+    setFilters(android.text.InputFilter[] filters)
+    setFirstBaselineToTopHeight(int firstBaselineToTopHeight)
+    setFontFeatureSettings(java.lang.String fontFeatureSettings)
+    setFontVariationSettings(java.lang.String fontVariationSettings)
+    setFrame(int l, int t, int r, int b)
+    setFreezesText(boolean freezesText)
+    setGravity(int gravity)
+    setHeight(int pixels)
+    setHighlightColor(int color)
+    setHighlights(android.text.Highlights highlights)
+    setHint(int resid)
+    setHint(java.lang.CharSequence hint)
+    setHintTextColor(android.content.res.ColorStateList colors)
+    setHintTextColor(int color)
+    setHorizontallyScrolling(boolean whether)
+    setHyphenationFrequency(int hyphenationFrequency)
+    setImeActionLabel(java.lang.CharSequence label, int actionId)
+    setImeHintLocales(android.os.LocaleList hintLocales)
+    setImeOptions(int imeOptions)
+    setIncludeFontPadding(boolean includepad)
+    setInputExtras(int xmlResId)
+    setInputType(int type)
+    setJustificationMode(int justificationMode)
+    setKeyListener(android.text.method.KeyListener input)
+    setLastBaselineToBottomHeight(int lastBaselineToBottomHeight)
+    setLetterSpacing(float letterSpacing)
+    setLineBreakStyle(int lineBreakStyle)
+    setLineBreakWordStyle(int lineBreakWordStyle)
+    setLineHeight(int lineHeight)
+    setLines(int lines)
+    setLineSpacing(float add, float mult)
+    setLinksClickable(boolean whether)
+    setLinkTextColor(android.content.res.ColorStateList colors)
+    setLinkTextColor(int color)
+    setMarqueeRepeatLimit(int marqueeLimit)
+    setMaxEms(int maxEms)
+    setMaxHeight(int maxPixels)
+    setMaxLines(int maxLines)
+    setMaxWidth(int maxPixels)
+    setMinEms(int minEms)
+    setMinHeight(int minPixels)
+    setMinLines(int minLines)
+    setMinWidth(int minPixels)
+    setMovementMethod(android.text.method.MovementMethod movement)
+    setOnEditorActionListener(android.widget.TextView.OnEditorActionListener l)
+    setPadding(int left, int top, int right, int bottom)
+    setPaddingRelative(int start, int top, int end, int bottom)
+    setPaintFlags(int flags)
+    setPrivateImeOptions(java.lang.String type)
+    setRawInputType(int type)
+    setScroller(android.widget.Scroller s)
+    setSelectAllOnFocus(boolean selectAllOnFocus)
+    setSelected(boolean selected)
+    setShadowLayer(float radius, float dx, float dy, int color)
+    setShowSoftInputOnFocus(boolean show)
+    setSingleLine(boolean singleLine)
+    setSpannableFactory(android.text.Spannable.Factory factory)
+    setText(char[] text, int start, int len)
+    setText(int resid)
+    setText(int resid, android.widget.TextView.BufferType type)
+    setText(java.lang.CharSequence text)
+    setText(java.lang.CharSequence text, android.widget.TextView.BufferType type)
+    setTextAppearance(android.content.Context context, int resId)
+    setTextAppearance(int resId)
+    setTextClassifier(android.view.textclassifier.TextClassifier textClassifier)
+    setTextColor(android.content.res.ColorStateList colors)
+    setTextColor(int color)
+    setTextCursorDrawable(android.graphics.drawable.Drawable textCursorDrawable)
+    setTextCursorDrawable(int textCursorDrawable)
+    setTextIsSelectable(boolean selectable)
+    setTextKeepState(java.lang.CharSequence text)
+    setTextKeepState(java.lang.CharSequence text, android.widget.TextView.BufferType type)
+    setTextLocale(java.util.Locale locale)
+    setTextLocales(android.os.LocaleList locales)
+    setTextMetricsParams(android.text.PrecomputedText.Params params)
+    setTextScaleX(float size)
+    setTextSelectHandle(android.graphics.drawable.Drawable textSelectHandle)
+    setTextSelectHandle(int textSelectHandle)
+    setTextSelectHandleLeft(android.graphics.drawable.Drawable textSelectHandleLeft)
+    setTextSelectHandleLeft(int textSelectHandleLeft)
+    setTextSelectHandleRight(android.graphics.drawable.Drawable textSelectHandleRight)
+    setTextSelectHandleRight(int textSelectHandleRight)
+    setTextSize(float size)
+    setTextSize(int unit, float size)
+    setTransformationMethod(android.text.method.TransformationMethod method)
+    setTypeface(android.graphics.Typeface tf)
+    setTypeface(android.graphics.Typeface tf, int style)
+    setWidth(int pixels)
+    showContextMenu(float x, float y)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+    verifyDrawable(android.graphics.drawable.Drawable who)
+  interface TextView.OnEditorActionListener
+    onEditorAction(android.widget.TextView v, int actionId, android.view.KeyEvent event)
+  class TextView.SavedState
+    writeToParcel(android.os.Parcel out, int flags)
+  interface ThemedSpinnerAdapter
+    setDropDownViewTheme(android.content.res.Resources.Theme theme)
+  class TimePicker
+    autofill(android.view.autofill.AutofillValue value)
+    dispatchProvideAutofillStructure(android.view.ViewStructure structure, int flags)
+    onRestoreInstanceState(android.os.Parcelable state)
+    setCurrentHour(java.lang.Integer currentHour)
+    setCurrentMinute(java.lang.Integer currentMinute)
+    setEnabled(boolean enabled)
+    setHour(int hour)
+    setIs24HourView(java.lang.Boolean is24HourView)
+    setMinute(int minute)
+    setOnTimeChangedListener(android.widget.TimePicker.OnTimeChangedListener onTimeChangedListener)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  interface TimePicker.OnTimeChangedListener
+    onTimeChanged(android.widget.TimePicker view, int hourOfDay, int minute)
+  class Toast
+    addCallback(android.widget.Toast.Callback callback)
+    makeText(android.content.Context context, int resId, int duration)
+    makeText(android.content.Context context, java.lang.CharSequence text, int duration)
+    removeCallback(android.widget.Toast.Callback callback)
+    setDuration(int duration)
+    setGravity(int gravity, int xOffset, int yOffset)
+    setMargin(float horizontalMargin, float verticalMargin)
+    setText(int resId)
+    setText(java.lang.CharSequence s)
+    setView(android.view.View view)
+    #ctor(android.content.Context context)
+  class ToggleButton
+    setBackgroundDrawable(android.graphics.drawable.Drawable d)
+    setChecked(boolean checked)
+    setTextOff(java.lang.CharSequence textOff)
+    setTextOn(java.lang.CharSequence textOn)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class Toolbar
+    checkLayoutParams(android.view.ViewGroup.LayoutParams p)
+    generateLayoutParams(android.util.AttributeSet attrs)
+    generateLayoutParams(android.view.ViewGroup.LayoutParams p)
+    inflateMenu(int resId)
+    onLayout(boolean changed, int l, int t, int r, int b)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onRestoreInstanceState(android.os.Parcelable state)
+    onRtlPropertiesChanged(int layoutDirection)
+    onTouchEvent(android.view.MotionEvent ev)
+    setCollapseContentDescription(int resId)
+    setCollapseContentDescription(java.lang.CharSequence description)
+    setCollapseIcon(android.graphics.drawable.Drawable icon)
+    setCollapseIcon(int resId)
+    setContentInsetEndWithActions(int insetEndWithActions)
+    setContentInsetsAbsolute(int contentInsetLeft, int contentInsetRight)
+    setContentInsetsRelative(int contentInsetStart, int contentInsetEnd)
+    setContentInsetStartWithNavigation(int insetStartWithNavigation)
+    setLogo(android.graphics.drawable.Drawable drawable)
+    setLogo(int resId)
+    setLogoDescription(int resId)
+    setLogoDescription(java.lang.CharSequence description)
+    setNavigationContentDescription(int resId)
+    setNavigationContentDescription(java.lang.CharSequence description)
+    setNavigationIcon(android.graphics.drawable.Drawable icon)
+    setNavigationIcon(int resId)
+    setNavigationOnClickListener(android.view.View.OnClickListener listener)
+    setOnMenuItemClickListener(android.widget.Toolbar.OnMenuItemClickListener listener)
+    setOverflowIcon(android.graphics.drawable.Drawable icon)
+    setPopupTheme(int resId)
+    setSubtitle(int resId)
+    setSubtitle(java.lang.CharSequence subtitle)
+    setSubtitleTextAppearance(android.content.Context context, int resId)
+    setSubtitleTextColor(int color)
+    setTitle(int resId)
+    setTitle(java.lang.CharSequence title)
+    setTitleMargin(int start, int top, int end, int bottom)
+    setTitleMarginBottom(int margin)
+    setTitleMarginEnd(int margin)
+    setTitleMarginStart(int margin)
+    setTitleMarginTop(int margin)
+    setTitleTextAppearance(android.content.Context context, int resId)
+    setTitleTextColor(int color)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class Toolbar.LayoutParams
+    #ctor(android.app.ActionBar.LayoutParams source)
+    #ctor(android.content.Context c, android.util.AttributeSet attrs)
+    #ctor(android.view.ViewGroup.LayoutParams source)
+    #ctor(android.view.ViewGroup.MarginLayoutParams source)
+    #ctor(android.widget.Toolbar.LayoutParams source)
+    #ctor(int gravity)
+    #ctor(int width, int height)
+    #ctor(int width, int height, int gravity)
+  interface Toolbar.OnMenuItemClickListener
+    onMenuItemClick(android.view.MenuItem item)
+  class TwoLineListItem
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class VideoView
+    addSubtitleSource(java.io.InputStream is, android.media.MediaFormat format)
+    draw(android.graphics.Canvas canvas)
+    onKeyDown(int keyCode, android.view.KeyEvent event)
+    onLayout(boolean changed, int left, int top, int right, int bottom)
+    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
+    onTouchEvent(android.view.MotionEvent ev)
+    onTrackballEvent(android.view.MotionEvent ev)
+    resolveAdjustedSize(int desiredSize, int measureSpec)
+    seekTo(int msec)
+    setAudioAttributes(android.media.AudioAttributes attributes)
+    setAudioFocusRequest(int focusGain)
+    setMediaController(android.widget.MediaController controller)
+    setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener l)
+    setOnErrorListener(android.media.MediaPlayer.OnErrorListener l)
+    setOnInfoListener(android.media.MediaPlayer.OnInfoListener l)
+    setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener l)
+    setVideoPath(java.lang.String path)
+    setVideoURI(android.net.Uri uri)
+    setVideoURI(android.net.Uri uri, java.util.Map<java.lang.String,java.lang.String> headers)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class ViewAnimator
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    removeView(android.view.View view)
+    removeViewAt(int index)
+    removeViewInLayout(android.view.View view)
+    removeViews(int start, int count)
+    removeViewsInLayout(int start, int count)
+    setAnimateFirstView(boolean animate)
+    setDisplayedChild(int whichChild)
+    setInAnimation(android.content.Context context, int resourceID)
+    setInAnimation(android.view.animation.Animation inAnimation)
+    setOutAnimation(android.content.Context context, int resourceID)
+    setOutAnimation(android.view.animation.Animation outAnimation)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class ViewFlipper
+    onWindowVisibilityChanged(int visibility)
+    setAutoStart(boolean autoStart)
+    setFlipInterval(int milliseconds)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class ViewSwitcher
+    addView(android.view.View child, int index, android.view.ViewGroup.LayoutParams params)
+    setFactory(android.widget.ViewSwitcher.ViewFactory factory)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+  class ZoomButton
+    dispatchUnhandledMove(android.view.View focused, int direction)
+    onKeyUp(int keyCode, android.view.KeyEvent event)
+    onLongClick(android.view.View v)
+    onTouchEvent(android.view.MotionEvent event)
+    setEnabled(boolean enabled)
+    setZoomSpeed(long speed)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes)
+  class ZoomButtonsController
+    onTouch(android.view.View v, android.view.MotionEvent event)
+    setAutoDismissed(boolean autoDismiss)
+    setFocusable(boolean focusable)
+    setOnZoomListener(android.widget.ZoomButtonsController.OnZoomListener listener)
+    setVisible(boolean visible)
+    setZoomInEnabled(boolean enabled)
+    setZoomOutEnabled(boolean enabled)
+    setZoomSpeed(long speed)
+    #ctor(android.view.View ownerView)
+  interface ZoomButtonsController.OnZoomListener
+    onVisibilityChanged(boolean visible)
+    onZoom(boolean zoomIn)
+  class ZoomControls
+    onTouchEvent(android.view.MotionEvent event)
+    setIsZoomInEnabled(boolean isEnabled)
+    setIsZoomOutEnabled(boolean isEnabled)
+    setOnZoomInClickListener(android.view.View.OnClickListener listener)
+    setOnZoomOutClickListener(android.view.View.OnClickListener listener)
+    setZoomSpeed(long speed)
+    #ctor(android.content.Context context)
+    #ctor(android.content.Context context, android.util.AttributeSet attrs)
+
+package android.widget.inline
+;---------------------------------------
+  class InlineContentView
+    onLayout(boolean changed, int l, int t, int r, int b)
+    setClipBounds(android.graphics.Rect clipBounds)
+    setSurfaceControlCallback(android.widget.inline.InlineContentView.SurfaceControlCallback callback)
+    setZOrderedOnTop(boolean onTop)
+  interface InlineContentView.SurfaceControlCallback
+    onCreated(android.view.SurfaceControl surfaceControl)
+    onDestroyed(android.view.SurfaceControl surfaceControl)
+  class InlinePresentationSpec
+    equals(java.lang.Object o)
+    writeToParcel(android.os.Parcel dest, int flags)
+  class InlinePresentationSpec.Builder
+    #ctor(android.util.Size minSize, android.util.Size maxSize)
+    setStyle(android.os.Bundle value)
+
+package android.window
+;---------------------------------------
+  class BackEvent
+    #ctor(float touchX, float touchY, float progress, int swipeEdge)
+  interface OnBackAnimationCallback
+    onBackProgressed(android.window.BackEvent backEvent)
+    onBackStarted(android.window.BackEvent backEvent)
+  interface OnBackInvokedDispatcher
+    registerOnBackInvokedCallback(int priority, android.window.OnBackInvokedCallback callback)
+    unregisterOnBackInvokedCallback(android.window.OnBackInvokedCallback callback)
+  interface SplashScreen
+    setOnExitAnimationListener(android.window.SplashScreen.OnExitAnimationListener listener)
+    setSplashScreenTheme(int themeId)
+  interface SplashScreen.OnExitAnimationListener
+    onSplashScreenExit(android.window.SplashScreenView view)
+  class SplashScreenView
+    onLayout(boolean changed, int l, int t, int r, int b)
+    setAlpha(float alpha)
+
+package dalvik.annotation
+;---------------------------------------
+
+package dalvik.annotation.optimization
+;---------------------------------------
+
+package dalvik.bytecode
+;---------------------------------------
+
+package dalvik.system
+;---------------------------------------
+  class BaseDexClassLoader
+    #ctor(java.lang.String dexPath, java.io.File optimizedDirectory, java.lang.String librarySearchPath, java.lang.ClassLoader parent)
+    findClass(java.lang.String name)
+    findLibrary(java.lang.String name)
+    findResource(java.lang.String name)
+    findResources(java.lang.String name)
+    getPackage(java.lang.String name)
+  class DelegateLastClassLoader
+    #ctor(java.lang.String dexPath, java.lang.ClassLoader parent)
+    #ctor(java.lang.String dexPath, java.lang.String librarySearchPath, java.lang.ClassLoader parent)
+    #ctor(java.lang.String dexPath, java.lang.String librarySearchPath, java.lang.ClassLoader parent, boolean delegateResourceLoading)
+    getResource(java.lang.String name)
+    getResources(java.lang.String name)
+    loadClass(java.lang.String name, boolean resolve)
+  class DexClassLoader
+    #ctor(java.lang.String dexPath, java.lang.String optimizedDirectory, java.lang.String librarySearchPath, java.lang.ClassLoader parent)
+  class DexFile
+    #ctor(java.io.File file)
+    #ctor(java.lang.String fileName)
+    isDexOptNeeded(java.lang.String fileName)
+    loadClass(java.lang.String name, java.lang.ClassLoader loader)
+    loadDex(java.lang.String sourcePathName, java.lang.String outputPathName, int flags)
+  class InMemoryDexClassLoader
+    #ctor(java.nio.ByteBuffer dexBuffer, java.lang.ClassLoader parent)
+    #ctor(java.nio.ByteBuffer[] dexBuffers, java.lang.ClassLoader parent)
+    #ctor(java.nio.ByteBuffer[] dexBuffers, java.lang.String librarySearchPath, java.lang.ClassLoader parent)
+  class PathClassLoader
+    #ctor(java.lang.String dexPath, java.lang.ClassLoader parent)
+    #ctor(java.lang.String dexPath, java.lang.String librarySearchPath, java.lang.ClassLoader parent)
+  class ZipPathValidator
+    setCallback(dalvik.system.ZipPathValidator.Callback callback)
+  interface ZipPathValidator.Callback
+    onZipEntryAccess(java.lang.String path)
+
+package java.awt.font
+;---------------------------------------
+  class NumericShaper
+    equals(java.lang.Object o)
+    getContextualShaper(int ranges)
+    getContextualShaper(int ranges, int defaultContext)
+    getContextualShaper(java.util.Set<java.awt.font.NumericShaper.Range> ranges)
+    getContextualShaper(java.util.Set<java.awt.font.NumericShaper.Range> ranges, java.awt.font.NumericShaper.Range defaultContext)
+    getShaper(int singleRange)
+    getShaper(java.awt.font.NumericShaper.Range singleRange)
+    shape(char[] text, int start, int count)
+    shape(char[] text, int start, int count, int context)
+    shape(char[] text, int start, int count, java.awt.font.NumericShaper.Range context)
+  class TextAttribute
+    #ctor(java.lang.String name)
+
+package java.beans
+;---------------------------------------
+  class IndexedPropertyChangeEvent
+    #ctor(java.lang.Object source, java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue, int index)
+  class PropertyChangeEvent
+    #ctor(java.lang.Object source, java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
+    setPropagationId(java.lang.Object propagationId)
+  interface PropertyChangeListener
+    propertyChange(java.beans.PropertyChangeEvent evt)
+  class PropertyChangeListenerProxy
+    propertyChange(java.beans.PropertyChangeEvent event)
+    #ctor(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
+  class PropertyChangeSupport
+    addPropertyChangeListener(java.beans.PropertyChangeListener listener)
+    addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
+    fireIndexedPropertyChange(java.lang.String propertyName, int index, boolean oldValue, boolean newValue)
+    fireIndexedPropertyChange(java.lang.String propertyName, int index, int oldValue, int newValue)
+    fireIndexedPropertyChange(java.lang.String propertyName, int index, java.lang.Object oldValue, java.lang.Object newValue)
+    firePropertyChange(java.beans.PropertyChangeEvent event)
+    firePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)
+    firePropertyChange(java.lang.String propertyName, int oldValue, int newValue)
+    firePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
+    getPropertyChangeListeners(java.lang.String propertyName)
+    hasListeners(java.lang.String propertyName)
+    #ctor(java.lang.Object sourceBean)
+    removePropertyChangeListener(java.beans.PropertyChangeListener listener)
+    removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
+
+package java.io
+;---------------------------------------
+  class BufferedInputStream
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, int size)
+    mark(int readlimit)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class BufferedOutputStream
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, int size)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class BufferedReader
+    #ctor(java.io.Reader in)
+    #ctor(java.io.Reader in, int sz)
+    mark(int readAheadLimit)
+    read(char[] cbuf, int off, int len)
+    skip(long n)
+  class BufferedWriter
+    #ctor(java.io.Writer out)
+    #ctor(java.io.Writer out, int sz)
+    write(char[] cbuf, int off, int len)
+    write(int c)
+    write(java.lang.String s, int off, int len)
+  class ByteArrayInputStream
+    #ctor(byte[] buf)
+    #ctor(byte[] buf, int offset, int length)
+    mark(int readAheadLimit)
+    read(byte[] b, int off, int len)
+    readNBytes(byte[] b, int off, int len)
+    skip(long n)
+    transferTo(java.io.OutputStream out)
+  class ByteArrayOutputStream
+    #ctor(int size)
+    toString(int hibyte)
+    toString(java.lang.String charsetName)
+    toString(java.nio.charset.Charset charset)
+    write(byte[] b, int off, int len)
+    write(int b)
+    writeBytes(byte[] b)
+    writeTo(java.io.OutputStream out)
+  class CharArrayReader
+    #ctor(char[] buf)
+    #ctor(char[] buf, int offset, int length)
+    mark(int readAheadLimit)
+    read(char[] b, int off, int len)
+    skip(long n)
+  class CharArrayWriter
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+    #ctor(int initialSize)
+    write(char[] c, int off, int len)
+    write(int c)
+    write(java.lang.String str, int off, int len)
+    writeTo(java.io.Writer out)
+  class CharConversionException
+    #ctor(java.lang.String s)
+  class Console
+    format(java.lang.String fmt, java.lang.Object... args)
+    printf(java.lang.String format, java.lang.Object... args)
+    readLine(java.lang.String fmt, java.lang.Object... args)
+    readPassword(java.lang.String fmt, java.lang.Object... args)
+  interface DataInput
+    readFully(byte[] b)
+    readFully(byte[] b, int off, int len)
+    skipBytes(int n)
+  class DataInputStream
+    #ctor(java.io.InputStream in)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    readFully(byte[] b)
+    readFully(byte[] b, int off, int len)
+    readUTF(java.io.DataInput in)
+    skipBytes(int n)
+  interface DataOutput
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+    writeBoolean(boolean v)
+    writeByte(int v)
+    writeBytes(java.lang.String s)
+    writeChar(int v)
+    writeChars(java.lang.String s)
+    writeDouble(double v)
+    writeFloat(float v)
+    writeInt(int v)
+    writeLong(long v)
+    writeShort(int v)
+    writeUTF(java.lang.String s)
+  class DataOutputStream
+    #ctor(java.io.OutputStream out)
+    write(byte[] b, int off, int len)
+    write(int b)
+    writeBoolean(boolean v)
+    writeByte(int v)
+    writeBytes(java.lang.String s)
+    writeChar(int v)
+    writeChars(java.lang.String s)
+    writeDouble(double v)
+    writeFloat(float v)
+    writeInt(int v)
+    writeLong(long v)
+    writeShort(int v)
+    writeUTF(java.lang.String str)
+  class EOFException
+    #ctor(java.lang.String s)
+  interface Externalizable
+    readExternal(java.io.ObjectInput in)
+    writeExternal(java.io.ObjectOutput out)
+  class File
+    compareTo(java.io.File pathname)
+    createTempFile(java.lang.String prefix, java.lang.String suffix)
+    createTempFile(java.lang.String prefix, java.lang.String suffix, java.io.File directory)
+    equals(java.lang.Object obj)
+    #ctor(java.io.File parent, java.lang.String child)
+    #ctor(java.lang.String pathname)
+    #ctor(java.lang.String parent, java.lang.String child)
+    #ctor(java.net.URI uri)
+    list(java.io.FilenameFilter filter)
+    listFiles(java.io.FileFilter filter)
+    listFiles(java.io.FilenameFilter filter)
+    renameTo(java.io.File dest)
+    setExecutable(boolean executable)
+    setExecutable(boolean executable, boolean ownerOnly)
+    setLastModified(long time)
+    setReadable(boolean readable)
+    setReadable(boolean readable, boolean ownerOnly)
+    setWritable(boolean writable)
+    setWritable(boolean writable, boolean ownerOnly)
+  interface FileFilter
+    accept(java.io.File pathname)
+  class FileInputStream
+    #ctor(java.io.File file)
+    #ctor(java.io.FileDescriptor fdObj)
+    #ctor(java.lang.String name)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  interface FilenameFilter
+    accept(java.io.File dir, java.lang.String name)
+  class FileNotFoundException
+    #ctor(java.lang.String s)
+  class FileOutputStream
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, boolean append)
+    #ctor(java.io.FileDescriptor fdObj)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, boolean append)
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class FilePermission
+    #ctor(java.lang.String path, java.lang.String actions)
+    implies(java.security.Permission p)
+  class FileReader
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, java.nio.charset.Charset charset)
+    #ctor(java.io.FileDescriptor fd)
+    #ctor(java.lang.String fileName)
+    #ctor(java.lang.String fileName, java.nio.charset.Charset charset)
+  class FileWriter
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, boolean append)
+    #ctor(java.io.File file, java.nio.charset.Charset charset)
+    #ctor(java.io.File file, java.nio.charset.Charset charset, boolean append)
+    #ctor(java.io.FileDescriptor fd)
+    #ctor(java.lang.String fileName)
+    #ctor(java.lang.String fileName, boolean append)
+    #ctor(java.lang.String fileName, java.nio.charset.Charset charset)
+    #ctor(java.lang.String fileName, java.nio.charset.Charset charset, boolean append)
+  class FilterInputStream
+    #ctor(java.io.InputStream in)
+    mark(int readlimit)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class FilterOutputStream
+    #ctor(java.io.OutputStream out)
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class FilterReader
+    #ctor(java.io.Reader in)
+    mark(int readAheadLimit)
+    read(char[] cbuf, int off, int len)
+    skip(long n)
+  class FilterWriter
+    #ctor(java.io.Writer out)
+    write(char[] cbuf, int off, int len)
+    write(int c)
+    write(java.lang.String str, int off, int len)
+  class InputStream
+    mark(int readlimit)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    readNBytes(byte[] b, int off, int len)
+    readNBytes(int len)
+    skip(long n)
+    skipNBytes(long n)
+    transferTo(java.io.OutputStream out)
+  class InputStreamReader
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, java.lang.String charsetName)
+    #ctor(java.io.InputStream in, java.nio.charset.Charset cs)
+    #ctor(java.io.InputStream in, java.nio.charset.CharsetDecoder dec)
+    read(char[] cbuf, int offset, int length)
+  class InterruptedIOException
+    #ctor(java.lang.String s)
+  class InvalidClassException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String cname, java.lang.String reason)
+  class InvalidObjectException
+    #ctor(java.lang.String reason)
+  class IOError
+    #ctor(java.lang.Throwable cause)
+  class IOException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class LineNumberInputStream
+    #ctor(java.io.InputStream in)
+    mark(int readlimit)
+    read(byte[] b, int off, int len)
+    setLineNumber(int lineNumber)
+    skip(long n)
+  class LineNumberReader
+    #ctor(java.io.Reader in)
+    #ctor(java.io.Reader in, int sz)
+    mark(int readAheadLimit)
+    read(char[] cbuf, int off, int len)
+    setLineNumber(int lineNumber)
+    skip(long n)
+  class NotActiveException
+    #ctor(java.lang.String reason)
+  class NotSerializableException
+    #ctor(java.lang.String classname)
+  interface ObjectInput
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class ObjectInputStream
+    enableResolveObject(boolean enable)
+    #ctor(java.io.InputStream in)
+    read(byte[] buf, int off, int len)
+    readFully(byte[] buf)
+    readFully(byte[] buf, int off, int len)
+    registerValidation(java.io.ObjectInputValidation obj, int prio)
+    resolveClass(java.io.ObjectStreamClass desc)
+    resolveObject(java.lang.Object obj)
+    resolveProxyClass(java.lang.String[] interfaces)
+    skipBytes(int len)
+  class ObjectInputStream.GetField
+    defaulted(java.lang.String name)
+    get(java.lang.String name, boolean val)
+    get(java.lang.String name, byte val)
+    get(java.lang.String name, char val)
+    get(java.lang.String name, double val)
+    get(java.lang.String name, float val)
+    get(java.lang.String name, int val)
+    get(java.lang.String name, java.lang.Object val)
+    get(java.lang.String name, long val)
+    get(java.lang.String name, short val)
+  interface ObjectOutput
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+    writeObject(java.lang.Object obj)
+  class ObjectOutputStream
+    annotateClass(java.lang.Class<?> cl)
+    annotateProxyClass(java.lang.Class<?> cl)
+    enableReplaceObject(boolean enable)
+    #ctor(java.io.OutputStream out)
+    replaceObject(java.lang.Object obj)
+    useProtocolVersion(int version)
+    write(byte[] buf)
+    write(byte[] buf, int off, int len)
+    write(int val)
+    writeBoolean(boolean val)
+    writeByte(int val)
+    writeBytes(java.lang.String str)
+    writeChar(int val)
+    writeChars(java.lang.String str)
+    writeClassDescriptor(java.io.ObjectStreamClass desc)
+    writeDouble(double val)
+    writeFloat(float val)
+    writeInt(int val)
+    writeLong(long val)
+    writeObject(java.lang.Object obj)
+    writeObjectOverride(java.lang.Object obj)
+    writeShort(int val)
+    writeUnshared(java.lang.Object obj)
+    writeUTF(java.lang.String str)
+  class ObjectOutputStream.PutField
+    put(java.lang.String name, boolean val)
+    put(java.lang.String name, byte val)
+    put(java.lang.String name, char val)
+    put(java.lang.String name, double val)
+    put(java.lang.String name, float val)
+    put(java.lang.String name, int val)
+    put(java.lang.String name, java.lang.Object val)
+    put(java.lang.String name, long val)
+    put(java.lang.String name, short val)
+    write(java.io.ObjectOutput out)
+  class ObjectStreamClass
+    getField(java.lang.String name)
+    lookup(java.lang.Class<?> cl)
+    lookupAny(java.lang.Class<?> cl)
+  class ObjectStreamException
+    #ctor(java.lang.String message)
+  class ObjectStreamField
+    compareTo(java.lang.Object obj)
+    #ctor(java.lang.String name, java.lang.Class<?> type)
+    #ctor(java.lang.String name, java.lang.Class<?> type, boolean unshared)
+    setOffset(int offset)
+  class OutputStream
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class OutputStreamWriter
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, java.lang.String charsetName)
+    #ctor(java.io.OutputStream out, java.nio.charset.Charset cs)
+    #ctor(java.io.OutputStream out, java.nio.charset.CharsetEncoder enc)
+    write(char[] cbuf, int off, int len)
+    write(int c)
+    write(java.lang.String str, int off, int len)
+  class PipedInputStream
+    connect(java.io.PipedOutputStream src)
+    #ctor(int pipeSize)
+    #ctor(java.io.PipedOutputStream src)
+    #ctor(java.io.PipedOutputStream src, int pipeSize)
+    read(byte[] b, int off, int len)
+    receive(int b)
+  class PipedOutputStream
+    connect(java.io.PipedInputStream snk)
+    #ctor(java.io.PipedInputStream snk)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class PipedReader
+    connect(java.io.PipedWriter src)
+    #ctor(int pipeSize)
+    #ctor(java.io.PipedWriter src)
+    #ctor(java.io.PipedWriter src, int pipeSize)
+    read(char[] cbuf, int off, int len)
+  class PipedWriter
+    connect(java.io.PipedReader snk)
+    #ctor(java.io.PipedReader snk)
+    write(char[] cbuf, int off, int len)
+    write(int c)
+  class PrintStream
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+    format(java.lang.String format, java.lang.Object... args)
+    format(java.util.Locale l, java.lang.String format, java.lang.Object... args)
+    print(boolean b)
+    print(char c)
+    print(char[] s)
+    print(double d)
+    print(float f)
+    print(int i)
+    print(java.lang.Object obj)
+    print(java.lang.String s)
+    print(long l)
+    printf(java.lang.String format, java.lang.Object... args)
+    printf(java.util.Locale l, java.lang.String format, java.lang.Object... args)
+    println(boolean x)
+    println(char x)
+    println(char[] x)
+    println(double x)
+    println(float x)
+    println(int x)
+    println(java.lang.Object x)
+    println(java.lang.String x)
+    println(long x)
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, java.lang.String csn)
+    #ctor(java.io.File file, java.nio.charset.Charset charset)
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, boolean autoFlush)
+    #ctor(java.io.OutputStream out, boolean autoFlush, java.lang.String encoding)
+    #ctor(java.io.OutputStream out, boolean autoFlush, java.nio.charset.Charset charset)
+    #ctor(java.lang.String fileName)
+    #ctor(java.lang.String fileName, java.lang.String csn)
+    #ctor(java.lang.String fileName, java.nio.charset.Charset charset)
+    write(byte[] buf)
+    write(byte[] buf, int off, int len)
+    write(int b)
+    writeBytes(byte[] buf)
+  class PrintWriter
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+    format(java.lang.String format, java.lang.Object... args)
+    format(java.util.Locale l, java.lang.String format, java.lang.Object... args)
+    print(boolean b)
+    print(char c)
+    print(char[] s)
+    print(double d)
+    print(float f)
+    print(int i)
+    print(java.lang.Object obj)
+    print(java.lang.String s)
+    print(long l)
+    printf(java.lang.String format, java.lang.Object... args)
+    printf(java.util.Locale l, java.lang.String format, java.lang.Object... args)
+    println(boolean x)
+    println(char x)
+    println(char[] x)
+    println(double x)
+    println(float x)
+    println(int x)
+    println(java.lang.Object x)
+    println(java.lang.String x)
+    println(long x)
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, java.lang.String csn)
+    #ctor(java.io.File file, java.nio.charset.Charset charset)
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, boolean autoFlush)
+    #ctor(java.io.OutputStream out, boolean autoFlush, java.nio.charset.Charset charset)
+    #ctor(java.io.Writer out)
+    #ctor(java.io.Writer out, boolean autoFlush)
+    #ctor(java.lang.String fileName)
+    #ctor(java.lang.String fileName, java.lang.String csn)
+    #ctor(java.lang.String fileName, java.nio.charset.Charset charset)
+    write(char[] buf)
+    write(char[] buf, int off, int len)
+    write(int c)
+    write(java.lang.String s)
+    write(java.lang.String s, int off, int len)
+  class PushbackInputStream
+    mark(int readlimit)
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, int size)
+    read(byte[] b, int off, int len)
+    skip(long n)
+    unread(byte[] b)
+    unread(byte[] b, int off, int len)
+    unread(int b)
+  class PushbackReader
+    mark(int readAheadLimit)
+    #ctor(java.io.Reader in)
+    #ctor(java.io.Reader in, int size)
+    read(char[] cbuf, int off, int len)
+    skip(long n)
+    unread(char[] cbuf)
+    unread(char[] cbuf, int off, int len)
+    unread(int c)
+  class RandomAccessFile
+    #ctor(java.io.File file, java.lang.String mode)
+    #ctor(java.lang.String name, java.lang.String mode)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    readFully(byte[] b)
+    readFully(byte[] b, int off, int len)
+    seek(long pos)
+    setLength(long newLength)
+    skipBytes(int n)
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+    writeBoolean(boolean v)
+    writeByte(int v)
+    writeBytes(java.lang.String s)
+    writeChar(int v)
+    writeChars(java.lang.String s)
+    writeDouble(double v)
+    writeFloat(float v)
+    writeInt(int v)
+    writeLong(long v)
+    writeShort(int v)
+    writeUTF(java.lang.String str)
+  class Reader
+    mark(int readAheadLimit)
+    read(char[] cbuf)
+    read(char[] cbuf, int off, int len)
+    read(java.nio.CharBuffer target)
+    #ctor(java.lang.Object lock)
+    skip(long n)
+    transferTo(java.io.Writer out)
+  class SequenceInputStream
+    read(byte[] b, int off, int len)
+    #ctor(java.io.InputStream s1, java.io.InputStream s2)
+    #ctor(java.util.Enumeration<? extends java.io.InputStream> e)
+  class SerializablePermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class StreamCorruptedException
+    #ctor(java.lang.String reason)
+  class StreamTokenizer
+    commentChar(int ch)
+    eolIsSignificant(boolean flag)
+    lowerCaseMode(boolean fl)
+    ordinaryChar(int ch)
+    ordinaryChars(int low, int hi)
+    quoteChar(int ch)
+    slashSlashComments(boolean flag)
+    slashStarComments(boolean flag)
+    #ctor(java.io.InputStream is)
+    #ctor(java.io.Reader r)
+    whitespaceChars(int low, int hi)
+    wordChars(int low, int hi)
+  class StringBufferInputStream
+    read(byte[] b, int off, int len)
+    skip(long n)
+    #ctor(java.lang.String s)
+  class StringReader
+    mark(int readAheadLimit)
+    read(char[] cbuf, int off, int len)
+    skip(long ns)
+    #ctor(java.lang.String s)
+  class StringWriter
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+    #ctor(int initialSize)
+    write(char[] cbuf, int off, int len)
+    write(int c)
+    write(java.lang.String str)
+    write(java.lang.String str, int off, int len)
+  class SyncFailedException
+    #ctor(java.lang.String desc)
+  class UncheckedIOException
+    #ctor(java.io.IOException cause)
+    #ctor(java.lang.String message, java.io.IOException cause)
+  class UnsupportedEncodingException
+    #ctor(java.lang.String s)
+  class UTFDataFormatException
+    #ctor(java.lang.String s)
+  class WriteAbortedException
+    #ctor(java.lang.String s, java.lang.Exception ex)
+  class Writer
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+    write(char[] cbuf)
+    write(char[] cbuf, int off, int len)
+    write(int c)
+    write(java.lang.String str)
+    write(java.lang.String str, int off, int len)
+    #ctor(java.lang.Object lock)
+
+package java.lang
+;---------------------------------------
+  class AbstractMethodError
+    #ctor(java.lang.String s)
+  interface Appendable
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+  class ArithmeticException
+    #ctor(java.lang.String s)
+  class ArrayIndexOutOfBoundsException
+    #ctor(int index)
+    #ctor(java.lang.String s)
+  class ArrayStoreException
+    #ctor(java.lang.String s)
+  class AssertionError
+    #ctor(boolean detailMessage)
+    #ctor(char detailMessage)
+    #ctor(double detailMessage)
+    #ctor(float detailMessage)
+    #ctor(int detailMessage)
+    #ctor(java.lang.Object detailMessage)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(long detailMessage)
+  class Boolean
+    #ctor(boolean value)
+    #ctor(java.lang.String s)
+    compare(boolean x, boolean y)
+    compareTo(java.lang.Boolean b)
+    equals(java.lang.Object obj)
+    getBoolean(java.lang.String name)
+    hashCode(boolean value)
+    logicalAnd(boolean a, boolean b)
+    logicalOr(boolean a, boolean b)
+    logicalXor(boolean a, boolean b)
+    parseBoolean(java.lang.String s)
+    toString(boolean b)
+    valueOf(boolean b)
+    valueOf(java.lang.String s)
+  class BootstrapMethodError
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String s, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class Byte
+    #ctor(byte value)
+    #ctor(java.lang.String s)
+    compare(byte x, byte y)
+    compareTo(java.lang.Byte anotherByte)
+    compareUnsigned(byte x, byte y)
+    decode(java.lang.String nm)
+    equals(java.lang.Object obj)
+    hashCode(byte value)
+    parseByte(java.lang.String s)
+    parseByte(java.lang.String s, int radix)
+    toString(byte b)
+    toUnsignedInt(byte x)
+    toUnsignedLong(byte x)
+    valueOf(byte b)
+    valueOf(java.lang.String s)
+    valueOf(java.lang.String s, int radix)
+  class Character
+    #ctor(char value)
+    charCount(int codePoint)
+    codePointAt(char[] a, int index)
+    codePointAt(char[] a, int index, int limit)
+    codePointAt(java.lang.CharSequence seq, int index)
+    codePointBefore(char[] a, int index)
+    codePointBefore(char[] a, int index, int start)
+    codePointBefore(java.lang.CharSequence seq, int index)
+    codePointCount(char[] a, int offset, int count)
+    codePointCount(java.lang.CharSequence seq, int beginIndex, int endIndex)
+    compare(char x, char y)
+    compareTo(java.lang.Character anotherCharacter)
+    digit(char ch, int radix)
+    digit(int codePoint, int radix)
+    equals(java.lang.Object obj)
+    forDigit(int digit, int radix)
+    getDirectionality(char ch)
+    getDirectionality(int codePoint)
+    getName(int codePoint)
+    getNumericValue(char ch)
+    getNumericValue(int codePoint)
+    getType(char ch)
+    getType(int codePoint)
+    hashCode(char value)
+    highSurrogate(int codePoint)
+    isAlphabetic(int codePoint)
+    isBmpCodePoint(int codePoint)
+    isDefined(char ch)
+    isDefined(int codePoint)
+    isDigit(char ch)
+    isDigit(int codePoint)
+    isHighSurrogate(char ch)
+    isIdentifierIgnorable(char ch)
+    isIdentifierIgnorable(int codePoint)
+    isIdeographic(int codePoint)
+    isISOControl(char ch)
+    isISOControl(int codePoint)
+    isJavaIdentifierPart(char ch)
+    isJavaIdentifierPart(int codePoint)
+    isJavaIdentifierStart(char ch)
+    isJavaIdentifierStart(int codePoint)
+    isJavaLetter(char ch)
+    isJavaLetterOrDigit(char ch)
+    isLetter(char ch)
+    isLetter(int codePoint)
+    isLetterOrDigit(char ch)
+    isLetterOrDigit(int codePoint)
+    isLowerCase(char ch)
+    isLowerCase(int codePoint)
+    isLowSurrogate(char ch)
+    isMirrored(char ch)
+    isMirrored(int codePoint)
+    isSpace(char ch)
+    isSpaceChar(char ch)
+    isSpaceChar(int codePoint)
+    isSupplementaryCodePoint(int codePoint)
+    isSurrogate(char ch)
+    isSurrogatePair(char high, char low)
+    isTitleCase(char ch)
+    isTitleCase(int codePoint)
+    isUnicodeIdentifierPart(char ch)
+    isUnicodeIdentifierPart(int codePoint)
+    isUnicodeIdentifierStart(char ch)
+    isUnicodeIdentifierStart(int codePoint)
+    isUpperCase(char ch)
+    isUpperCase(int codePoint)
+    isValidCodePoint(int codePoint)
+    isWhitespace(char ch)
+    isWhitespace(int codePoint)
+    lowSurrogate(int codePoint)
+    offsetByCodePoints(char[] a, int start, int count, int index, int codePointOffset)
+    offsetByCodePoints(java.lang.CharSequence seq, int index, int codePointOffset)
+    reverseBytes(char ch)
+    toChars(int codePoint)
+    toChars(int codePoint, char[] dst, int dstIndex)
+    toCodePoint(char high, char low)
+    toLowerCase(char ch)
+    toLowerCase(int codePoint)
+    toString(char c)
+    toTitleCase(char ch)
+    toTitleCase(int codePoint)
+    toUpperCase(char ch)
+    toUpperCase(int codePoint)
+    valueOf(char c)
+  class Character.Subset
+    #ctor(java.lang.String name)
+    equals(java.lang.Object obj)
+  class Character.UnicodeBlock
+    forName(java.lang.String blockName)
+    of(char c)
+    of(int codePoint)
+  class Character.UnicodeScript
+    forName(java.lang.String scriptName)
+    of(int codePoint)
+  interface CharSequence
+    charAt(int index)
+    compare(java.lang.CharSequence cs1, java.lang.CharSequence cs2)
+    subSequence(int start, int end)
+  class Class<T>
+    <U> asSubclass(java.lang.Class<U> clazz)
+    cast(java.lang.Object obj)
+    forName(java.lang.String className)
+    forName(java.lang.String name, boolean initialize, java.lang.ClassLoader loader)
+    <A> getAnnotation(java.lang.Class<A> annotationClass)
+    <A> getAnnotationsByType(java.lang.Class<A> annotationClass)
+    getConstructor(java.lang.Class<?>... parameterTypes)
+    <A> getDeclaredAnnotation(java.lang.Class<A> annotationClass)
+    <A> getDeclaredAnnotationsByType(java.lang.Class<A> annotationClass)
+    getDeclaredConstructor(java.lang.Class<?>... parameterTypes)
+    getDeclaredField(java.lang.String name)
+    getDeclaredMethod(java.lang.String name, java.lang.Class<?>... parameterTypes)
+    getField(java.lang.String name)
+    getMethod(java.lang.String name, java.lang.Class<?>... parameterTypes)
+    getResource(java.lang.String name)
+    getResourceAsStream(java.lang.String name)
+    isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
+    isAssignableFrom(java.lang.Class<?> cls)
+    isInstance(java.lang.Object obj)
+    isNestmateOf(java.lang.Class<?> c)
+  class ClassCastException
+    #ctor(java.lang.String s)
+  class ClassCircularityError
+    #ctor(java.lang.String s)
+  class ClassFormatError
+    #ctor(java.lang.String s)
+  class ClassLoader
+    #ctor(java.lang.ClassLoader parent)
+    defineClass(byte[] b, int off, int len)
+    defineClass(java.lang.String name, byte[] b, int off, int len)
+    defineClass(java.lang.String name, byte[] b, int off, int len, java.security.ProtectionDomain protectionDomain)
+    defineClass(java.lang.String name, java.nio.ByteBuffer b, java.security.ProtectionDomain protectionDomain)
+    definePackage(java.lang.String name, java.lang.String specTitle, java.lang.String specVersion, java.lang.String specVendor, java.lang.String implTitle, java.lang.String implVersion, java.lang.String implVendor, java.net.URL sealBase)
+    findClass(java.lang.String name)
+    findLibrary(java.lang.String libname)
+    findLoadedClass(java.lang.String name)
+    findResource(java.lang.String name)
+    findResources(java.lang.String name)
+    findSystemClass(java.lang.String name)
+    getPackage(java.lang.String name)
+    getResource(java.lang.String name)
+    getResourceAsStream(java.lang.String name)
+    getResources(java.lang.String name)
+    getSystemResource(java.lang.String name)
+    getSystemResourceAsStream(java.lang.String name)
+    getSystemResources(java.lang.String name)
+    loadClass(java.lang.String name)
+    loadClass(java.lang.String name, boolean resolve)
+    resolveClass(java.lang.Class<?> c)
+    setClassAssertionStatus(java.lang.String className, boolean enabled)
+    setDefaultAssertionStatus(boolean enabled)
+    setPackageAssertionStatus(java.lang.String packageName, boolean enabled)
+    setSigners(java.lang.Class<?> c, java.lang.Object[] signers)
+  class ClassNotFoundException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String s, java.lang.Throwable ex)
+  class ClassValue<T>
+    computeValue(java.lang.Class<?> type)
+    get(java.lang.Class<?> type)
+    remove(java.lang.Class<?> type)
+  class CloneNotSupportedException
+    #ctor(java.lang.String s)
+  interface Comparable<T>
+    compareTo(T o)
+  class Compiler
+    command(java.lang.Object cmd)
+    compileClass(java.lang.Class<?> classToCompile)
+    compileClasses(java.lang.String nameRoot)
+  class Double
+    compare(double d1, double d2)
+    compareTo(java.lang.Double anotherDouble)
+    #ctor(double value)
+    #ctor(java.lang.String s)
+    doubleToLongBits(double value)
+    doubleToRawLongBits(double value)
+    equals(java.lang.Object obj)
+    hashCode(double value)
+    isFinite(double d)
+    isInfinite(double v)
+    isNaN(double v)
+    longBitsToDouble(long bits)
+    max(double a, double b)
+    min(double a, double b)
+    parseDouble(java.lang.String s)
+    sum(double a, double b)
+    toHexString(double d)
+    toString(double d)
+    valueOf(double d)
+    valueOf(java.lang.String s)
+  class Enum<E>
+    compareTo(E o)
+    #ctor(java.lang.String name, int ordinal)
+    equals(java.lang.Object other)
+    <T> valueOf(java.lang.Class<T> enumClass, java.lang.String name)
+  class EnumConstantNotPresentException
+    #ctor(java.lang.Class<? extends java.lang.Enum> enumType, java.lang.String constantName)
+  class Error
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)
+    #ctor(java.lang.Throwable cause)
+  class Exception
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)
+    #ctor(java.lang.Throwable cause)
+  class ExceptionInInitializerError
+    #ctor(java.lang.String s)
+    #ctor(java.lang.Throwable thrown)
+  class Float
+    compare(float f1, float f2)
+    compareTo(java.lang.Float anotherFloat)
+    equals(java.lang.Object obj)
+    #ctor(double value)
+    #ctor(float value)
+    #ctor(java.lang.String s)
+    floatToIntBits(float value)
+    floatToRawIntBits(float value)
+    hashCode(float value)
+    intBitsToFloat(int bits)
+    isFinite(float f)
+    isInfinite(float v)
+    isNaN(float v)
+    max(float a, float b)
+    min(float a, float b)
+    parseFloat(java.lang.String s)
+    sum(float a, float b)
+    toHexString(float f)
+    toString(float f)
+    valueOf(float f)
+    valueOf(java.lang.String s)
+  class IllegalAccessError
+    #ctor(java.lang.String s)
+  class IllegalAccessException
+    #ctor(java.lang.String s)
+  class IllegalArgumentException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class IllegalMonitorStateException
+    #ctor(java.lang.String s)
+  class IllegalStateException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class IllegalThreadStateException
+    #ctor(java.lang.String s)
+  class IncompatibleClassChangeError
+    #ctor(java.lang.String s)
+  class IndexOutOfBoundsException
+    #ctor(int index)
+    #ctor(java.lang.String s)
+    #ctor(long index)
+  class InheritableThreadLocal<T>
+    childValue(T parentValue)
+  class InstantiationError
+    #ctor(java.lang.String s)
+  class InstantiationException
+    #ctor(java.lang.String s)
+  class Integer
+    bitCount(int i)
+    compare(int x, int y)
+    compareTo(java.lang.Integer anotherInteger)
+    compareUnsigned(int x, int y)
+    decode(java.lang.String nm)
+    divideUnsigned(int dividend, int divisor)
+    equals(java.lang.Object obj)
+    getInteger(java.lang.String nm)
+    getInteger(java.lang.String nm, int val)
+    getInteger(java.lang.String nm, java.lang.Integer val)
+    hashCode(int value)
+    highestOneBit(int i)
+    #ctor(int value)
+    #ctor(java.lang.String s)
+    lowestOneBit(int i)
+    max(int a, int b)
+    min(int a, int b)
+    numberOfLeadingZeros(int i)
+    numberOfTrailingZeros(int i)
+    parseInt(java.lang.CharSequence s, int beginIndex, int endIndex, int radix)
+    parseInt(java.lang.String s)
+    parseInt(java.lang.String s, int radix)
+    parseUnsignedInt(java.lang.CharSequence s, int beginIndex, int endIndex, int radix)
+    parseUnsignedInt(java.lang.String s)
+    parseUnsignedInt(java.lang.String s, int radix)
+    remainderUnsigned(int dividend, int divisor)
+    reverse(int i)
+    reverseBytes(int i)
+    rotateLeft(int i, int distance)
+    rotateRight(int i, int distance)
+    signum(int i)
+    sum(int a, int b)
+    toBinaryString(int i)
+    toHexString(int i)
+    toOctalString(int i)
+    toString(int i)
+    toString(int i, int radix)
+    toUnsignedLong(int x)
+    toUnsignedString(int i)
+    toUnsignedString(int i, int radix)
+    valueOf(int i)
+    valueOf(java.lang.String s)
+    valueOf(java.lang.String s, int radix)
+  class InternalError
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class InterruptedException
+    #ctor(java.lang.String s)
+  interface Iterable<T>
+    forEach(java.util.function.Consumer<? super T> action)
+  class LinkageError
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String s, java.lang.Throwable cause)
+  class Long
+    bitCount(long i)
+    compare(long x, long y)
+    compareTo(java.lang.Long anotherLong)
+    compareUnsigned(long x, long y)
+    decode(java.lang.String nm)
+    divideUnsigned(long dividend, long divisor)
+    equals(java.lang.Object obj)
+    getLong(java.lang.String nm)
+    getLong(java.lang.String nm, java.lang.Long val)
+    getLong(java.lang.String nm, long val)
+    hashCode(long value)
+    highestOneBit(long i)
+    #ctor(java.lang.String s)
+    #ctor(long value)
+    lowestOneBit(long i)
+    max(long a, long b)
+    min(long a, long b)
+    numberOfLeadingZeros(long i)
+    numberOfTrailingZeros(long i)
+    parseLong(java.lang.CharSequence s, int beginIndex, int endIndex, int radix)
+    parseLong(java.lang.String s)
+    parseLong(java.lang.String s, int radix)
+    parseUnsignedLong(java.lang.CharSequence s, int beginIndex, int endIndex, int radix)
+    parseUnsignedLong(java.lang.String s)
+    parseUnsignedLong(java.lang.String s, int radix)
+    remainderUnsigned(long dividend, long divisor)
+    reverse(long i)
+    reverseBytes(long i)
+    rotateLeft(long i, int distance)
+    rotateRight(long i, int distance)
+    signum(long i)
+    sum(long a, long b)
+    toBinaryString(long i)
+    toHexString(long i)
+    toOctalString(long i)
+    toString(long i)
+    toString(long i, int radix)
+    toUnsignedString(long i)
+    toUnsignedString(long i, int radix)
+    valueOf(java.lang.String s)
+    valueOf(java.lang.String s, int radix)
+    valueOf(long l)
+  class Math
+    abs(double a)
+    abs(float a)
+    abs(int a)
+    abs(long a)
+    absExact(int a)
+    absExact(long a)
+    acos(double a)
+    addExact(int x, int y)
+    addExact(long x, long y)
+    asin(double a)
+    atan(double a)
+    atan2(double y, double x)
+    cbrt(double a)
+    ceil(double a)
+    copySign(double magnitude, double sign)
+    copySign(float magnitude, float sign)
+    cos(double a)
+    cosh(double x)
+    decrementExact(int a)
+    decrementExact(long a)
+    exp(double a)
+    expm1(double x)
+    floor(double a)
+    floorDiv(int x, int y)
+    floorDiv(long x, int y)
+    floorDiv(long x, long y)
+    floorMod(int x, int y)
+    floorMod(long x, int y)
+    floorMod(long x, long y)
+    fma(double a, double b, double c)
+    fma(float a, float b, float c)
+    getExponent(double d)
+    getExponent(float f)
+    hypot(double x, double y)
+    IEEEremainder(double f1, double f2)
+    incrementExact(int a)
+    incrementExact(long a)
+    log(double a)
+    log10(double a)
+    log1p(double x)
+    max(double a, double b)
+    max(float a, float b)
+    max(int a, int b)
+    max(long a, long b)
+    min(double a, double b)
+    min(float a, float b)
+    min(int a, int b)
+    min(long a, long b)
+    multiplyExact(int x, int y)
+    multiplyExact(long x, int y)
+    multiplyExact(long x, long y)
+    multiplyFull(int x, int y)
+    multiplyHigh(long x, long y)
+    negateExact(int a)
+    negateExact(long a)
+    nextAfter(double start, double direction)
+    nextAfter(float start, double direction)
+    nextDown(double d)
+    nextDown(float f)
+    nextUp(double d)
+    nextUp(float f)
+    pow(double a, double b)
+    rint(double a)
+    round(double a)
+    round(float a)
+    scalb(double d, int scaleFactor)
+    scalb(float f, int scaleFactor)
+    signum(double d)
+    signum(float f)
+    sin(double a)
+    sinh(double x)
+    sqrt(double a)
+    subtractExact(int x, int y)
+    subtractExact(long x, long y)
+    tan(double a)
+    tanh(double x)
+    toDegrees(double angrad)
+    toIntExact(long value)
+    toRadians(double angdeg)
+    ulp(double d)
+    ulp(float f)
+  class NegativeArraySizeException
+    #ctor(java.lang.String s)
+  class NoClassDefFoundError
+    #ctor(java.lang.String s)
+  class NoSuchFieldError
+    #ctor(java.lang.String s)
+  class NoSuchFieldException
+    #ctor(java.lang.String s)
+  class NoSuchMethodError
+    #ctor(java.lang.String s)
+  class NoSuchMethodException
+    #ctor(java.lang.String s)
+  class NullPointerException
+    #ctor(java.lang.String s)
+  class NumberFormatException
+    #ctor(java.lang.String s)
+  class Object
+    equals(java.lang.Object obj)
+    wait(long timeoutMillis)
+    wait(long timeoutMillis, int nanos)
+  class OutOfMemoryError
+    #ctor(java.lang.String s)
+  class Package
+    <A> getAnnotation(java.lang.Class<A> annotationClass)
+    <A> getAnnotationsByType(java.lang.Class<A> annotationClass)
+    <A> getDeclaredAnnotation(java.lang.Class<A> annotationClass)
+    <A> getDeclaredAnnotationsByType(java.lang.Class<A> annotationClass)
+    getPackage(java.lang.String name)
+    isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
+    isCompatibleWith(java.lang.String desired)
+    isSealed(java.net.URL url)
+  class Process
+    waitFor(long timeout, java.util.concurrent.TimeUnit unit)
+  class ProcessBuilder
+    command(java.lang.String... command)
+    command(java.util.List<java.lang.String> command)
+    directory(java.io.File directory)
+    #ctor(java.lang.String... command)
+    #ctor(java.util.List<java.lang.String> command)
+    redirectError(java.io.File file)
+    redirectError(java.lang.ProcessBuilder.Redirect destination)
+    redirectErrorStream(boolean redirectErrorStream)
+    redirectInput(java.io.File file)
+    redirectInput(java.lang.ProcessBuilder.Redirect source)
+    redirectOutput(java.io.File file)
+    redirectOutput(java.lang.ProcessBuilder.Redirect destination)
+  class ProcessBuilder.Redirect
+    appendTo(java.io.File file)
+    equals(java.lang.Object obj)
+    from(java.io.File file)
+    to(java.io.File file)
+  interface Readable
+    read(java.nio.CharBuffer cb)
+  class ReflectiveOperationException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class Runtime
+    addShutdownHook(java.lang.Thread hook)
+    exec(java.lang.String command)
+    exec(java.lang.String command, java.lang.String[] envp)
+    exec(java.lang.String command, java.lang.String[] envp, java.io.File dir)
+    exec(java.lang.String[] cmdarray)
+    exec(java.lang.String[] cmdarray, java.lang.String[] envp)
+    exec(java.lang.String[] cmdarray, java.lang.String[] envp, java.io.File dir)
+    exit(int status)
+    halt(int status)
+    load(java.lang.String filename)
+    loadLibrary(java.lang.String libname)
+    removeShutdownHook(java.lang.Thread hook)
+    runFinalizersOnExit(boolean value)
+    traceInstructions(boolean on)
+    traceMethodCalls(boolean on)
+  class RuntimeException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)
+    #ctor(java.lang.Throwable cause)
+  class RuntimePermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class SecurityException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SecurityManager
+    checkAccept(java.lang.String host, int port)
+    checkAccess(java.lang.Thread t)
+    checkAccess(java.lang.ThreadGroup g)
+    checkConnect(java.lang.String host, int port)
+    checkConnect(java.lang.String host, int port, java.lang.Object context)
+    checkDelete(java.lang.String file)
+    checkExec(java.lang.String cmd)
+    checkExit(int status)
+    checkLink(java.lang.String lib)
+    checkListen(int port)
+    checkMemberAccess(java.lang.Class<?> clazz, int which)
+    checkMulticast(java.net.InetAddress maddr)
+    checkMulticast(java.net.InetAddress maddr, byte ttl)
+    checkPackageAccess(java.lang.String pkg)
+    checkPackageDefinition(java.lang.String pkg)
+    checkPermission(java.security.Permission perm)
+    checkPermission(java.security.Permission perm, java.lang.Object context)
+    checkPropertyAccess(java.lang.String key)
+    checkRead(java.io.FileDescriptor fd)
+    checkRead(java.lang.String file)
+    checkRead(java.lang.String file, java.lang.Object context)
+    checkSecurityAccess(java.lang.String target)
+    checkTopLevelWindow(java.lang.Object window)
+    checkWrite(java.io.FileDescriptor fd)
+    checkWrite(java.lang.String file)
+    classDepth(java.lang.String name)
+    inClass(java.lang.String name)
+  class Short
+    compare(short x, short y)
+    compareTo(java.lang.Short anotherShort)
+    compareUnsigned(short x, short y)
+    decode(java.lang.String nm)
+    equals(java.lang.Object obj)
+    hashCode(short value)
+    parseShort(java.lang.String s)
+    parseShort(java.lang.String s, int radix)
+    reverseBytes(short i)
+    #ctor(java.lang.String s)
+    #ctor(short value)
+    toString(short s)
+    toUnsignedInt(short x)
+    toUnsignedLong(short x)
+    valueOf(java.lang.String s)
+    valueOf(java.lang.String s, int radix)
+    valueOf(short s)
+  class StackOverflowError
+    #ctor(java.lang.String s)
+  class StackTraceElement
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String declaringClass, java.lang.String methodName, java.lang.String fileName, int lineNumber)
+  class StackWalker
+    forEach(java.util.function.Consumer<? super java.lang.StackWalker.StackFrame> action)
+    getInstance(java.lang.StackWalker.Option option)
+    getInstance(java.util.Set<java.lang.StackWalker.Option> options)
+    getInstance(java.util.Set<java.lang.StackWalker.Option> options, int estimateDepth)
+    <T> walk(java.util.function.Function<? super java.util.stream.Stream<java.lang.StackWalker.StackFrame>,? extends T> function)
+  class StrictMath
+    abs(double a)
+    abs(float a)
+    abs(int a)
+    abs(long a)
+    absExact(int a)
+    absExact(long a)
+    acos(double a)
+    addExact(int x, int y)
+    addExact(long x, long y)
+    asin(double a)
+    atan(double a)
+    atan2(double y, double x)
+    cbrt(double a)
+    ceil(double a)
+    copySign(double magnitude, double sign)
+    copySign(float magnitude, float sign)
+    cos(double a)
+    cosh(double x)
+    decrementExact(int a)
+    decrementExact(long a)
+    exp(double a)
+    expm1(double x)
+    floor(double a)
+    floorDiv(int x, int y)
+    floorDiv(long x, int y)
+    floorDiv(long x, long y)
+    floorMod(int x, int y)
+    floorMod(long x, int y)
+    floorMod(long x, long y)
+    fma(double a, double b, double c)
+    fma(float a, float b, float c)
+    getExponent(double d)
+    getExponent(float f)
+    hypot(double x, double y)
+    IEEEremainder(double f1, double f2)
+    incrementExact(int a)
+    incrementExact(long a)
+    log(double a)
+    log10(double a)
+    log1p(double x)
+    max(double a, double b)
+    max(float a, float b)
+    max(int a, int b)
+    max(long a, long b)
+    min(double a, double b)
+    min(float a, float b)
+    min(int a, int b)
+    min(long a, long b)
+    multiplyExact(int x, int y)
+    multiplyExact(long x, int y)
+    multiplyExact(long x, long y)
+    multiplyFull(int x, int y)
+    multiplyHigh(long x, long y)
+    negateExact(int a)
+    negateExact(long a)
+    nextAfter(double start, double direction)
+    nextAfter(float start, double direction)
+    nextDown(double d)
+    nextDown(float f)
+    nextUp(double d)
+    nextUp(float f)
+    pow(double a, double b)
+    rint(double a)
+    round(double a)
+    round(float a)
+    scalb(double d, int scaleFactor)
+    scalb(float f, int scaleFactor)
+    signum(double d)
+    signum(float f)
+    sin(double a)
+    sinh(double x)
+    sqrt(double a)
+    subtractExact(int x, int y)
+    subtractExact(long x, long y)
+    tan(double a)
+    tanh(double x)
+    toDegrees(double angrad)
+    toIntExact(long value)
+    toRadians(double angdeg)
+    ulp(double d)
+    ulp(float f)
+  class String
+    charAt(int index)
+    codePointAt(int index)
+    codePointBefore(int index)
+    codePointCount(int beginIndex, int endIndex)
+    compareTo(java.lang.String anotherString)
+    compareToIgnoreCase(java.lang.String str)
+    concat(java.lang.String str)
+    contains(java.lang.CharSequence s)
+    contentEquals(java.lang.CharSequence cs)
+    contentEquals(java.lang.StringBuffer sb)
+    copyValueOf(char[] data)
+    copyValueOf(char[] data, int offset, int count)
+    endsWith(java.lang.String suffix)
+    equals(java.lang.Object anObject)
+    equalsIgnoreCase(java.lang.String anotherString)
+    format(java.lang.String format, java.lang.Object... args)
+    format(java.util.Locale l, java.lang.String format, java.lang.Object... args)
+    formatted(java.lang.Object... args)
+    getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin)
+    getBytes(java.lang.String charsetName)
+    getBytes(java.nio.charset.Charset charset)
+    getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
+    indent(int n)
+    indexOf(int ch)
+    indexOf(int ch, int fromIndex)
+    indexOf(java.lang.String str)
+    indexOf(java.lang.String str, int fromIndex)
+    join(java.lang.CharSequence delimiter, java.lang.CharSequence... elements)
+    join(java.lang.CharSequence delimiter, java.lang.Iterable<? extends java.lang.CharSequence> elements)
+    lastIndexOf(int ch)
+    lastIndexOf(int ch, int fromIndex)
+    lastIndexOf(java.lang.String str)
+    lastIndexOf(java.lang.String str, int fromIndex)
+    matches(java.lang.String regex)
+    offsetByCodePoints(int index, int codePointOffset)
+    regionMatches(boolean ignoreCase, int toffset, java.lang.String other, int ooffset, int len)
+    regionMatches(int toffset, java.lang.String other, int ooffset, int len)
+    repeat(int count)
+    replace(char oldChar, char newChar)
+    replace(java.lang.CharSequence target, java.lang.CharSequence replacement)
+    replaceAll(java.lang.String regex, java.lang.String replacement)
+    replaceFirst(java.lang.String regex, java.lang.String replacement)
+    split(java.lang.String regex)
+    split(java.lang.String regex, int limit)
+    startsWith(java.lang.String prefix)
+    startsWith(java.lang.String prefix, int toffset)
+    #ctor(byte[] bytes)
+    #ctor(byte[] ascii, int hibyte)
+    #ctor(byte[] bytes, int offset, int length)
+    #ctor(byte[] ascii, int hibyte, int offset, int count)
+    #ctor(byte[] bytes, int offset, int length, java.lang.String charsetName)
+    #ctor(byte[] bytes, int offset, int length, java.nio.charset.Charset charset)
+    #ctor(byte[] bytes, java.lang.String charsetName)
+    #ctor(byte[] bytes, java.nio.charset.Charset charset)
+    #ctor(char[] value)
+    #ctor(char[] value, int offset, int count)
+    #ctor(int[] codePoints, int offset, int count)
+    #ctor(java.lang.String original)
+    #ctor(java.lang.StringBuffer buffer)
+    #ctor(java.lang.StringBuilder builder)
+    subSequence(int beginIndex, int endIndex)
+    substring(int beginIndex)
+    substring(int beginIndex, int endIndex)
+    toLowerCase(java.util.Locale locale)
+    toUpperCase(java.util.Locale locale)
+    <R> transform(java.util.function.Function<? super java.lang.String,? extends R> f)
+    valueOf(boolean b)
+    valueOf(char c)
+    valueOf(char[] data)
+    valueOf(char[] data, int offset, int count)
+    valueOf(double d)
+    valueOf(float f)
+    valueOf(int i)
+    valueOf(java.lang.Object obj)
+    valueOf(long l)
+  class StringBuffer
+    append(boolean b)
+    append(char c)
+    append(char[] str)
+    append(char[] str, int offset, int len)
+    append(double d)
+    append(float f)
+    append(int i)
+    append(java.lang.CharSequence s)
+    append(java.lang.CharSequence s, int start, int end)
+    append(java.lang.Object obj)
+    append(java.lang.String str)
+    append(java.lang.StringBuffer sb)
+    append(long lng)
+    appendCodePoint(int codePoint)
+    charAt(int index)
+    codePointAt(int index)
+    codePointBefore(int index)
+    codePointCount(int beginIndex, int endIndex)
+    compareTo(java.lang.StringBuffer another)
+    delete(int start, int end)
+    deleteCharAt(int index)
+    ensureCapacity(int minimumCapacity)
+    getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
+    indexOf(java.lang.String str)
+    indexOf(java.lang.String str, int fromIndex)
+    insert(int offset, boolean b)
+    insert(int offset, char c)
+    insert(int offset, char[] str)
+    insert(int index, char[] str, int offset, int len)
+    insert(int offset, double d)
+    insert(int offset, float f)
+    insert(int offset, int i)
+    insert(int dstOffset, java.lang.CharSequence s)
+    insert(int dstOffset, java.lang.CharSequence s, int start, int end)
+    insert(int offset, java.lang.Object obj)
+    insert(int offset, java.lang.String str)
+    insert(int offset, long l)
+    lastIndexOf(java.lang.String str)
+    lastIndexOf(java.lang.String str, int fromIndex)
+    offsetByCodePoints(int index, int codePointOffset)
+    replace(int start, int end, java.lang.String str)
+    setCharAt(int index, char ch)
+    setLength(int newLength)
+    #ctor(int capacity)
+    #ctor(java.lang.CharSequence seq)
+    #ctor(java.lang.String str)
+    subSequence(int start, int end)
+    substring(int start)
+    substring(int start, int end)
+  class StringBuilder
+    append(boolean b)
+    append(char c)
+    append(char[] str)
+    append(char[] str, int offset, int len)
+    append(double d)
+    append(float f)
+    append(int i)
+    append(java.lang.CharSequence s)
+    append(java.lang.CharSequence s, int start, int end)
+    append(java.lang.Object obj)
+    append(java.lang.String str)
+    append(java.lang.StringBuffer sb)
+    append(long lng)
+    appendCodePoint(int codePoint)
+    charAt(int index)
+    codePointAt(int index)
+    codePointBefore(int index)
+    codePointCount(int beginIndex, int endIndex)
+    compareTo(java.lang.StringBuilder another)
+    delete(int start, int end)
+    deleteCharAt(int index)
+    ensureCapacity(int minimumCapacity)
+    getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
+    indexOf(java.lang.String str)
+    indexOf(java.lang.String str, int fromIndex)
+    insert(int offset, boolean b)
+    insert(int offset, char c)
+    insert(int offset, char[] str)
+    insert(int index, char[] str, int offset, int len)
+    insert(int offset, double d)
+    insert(int offset, float f)
+    insert(int offset, int i)
+    insert(int dstOffset, java.lang.CharSequence s)
+    insert(int dstOffset, java.lang.CharSequence s, int start, int end)
+    insert(int offset, java.lang.Object obj)
+    insert(int offset, java.lang.String str)
+    insert(int offset, long l)
+    lastIndexOf(java.lang.String str)
+    lastIndexOf(java.lang.String str, int fromIndex)
+    offsetByCodePoints(int index, int codePointOffset)
+    replace(int start, int end, java.lang.String str)
+    setCharAt(int index, char ch)
+    setLength(int newLength)
+    #ctor(int capacity)
+    #ctor(java.lang.CharSequence seq)
+    #ctor(java.lang.String str)
+    subSequence(int start, int end)
+    substring(int start)
+    substring(int start, int end)
+  class StringIndexOutOfBoundsException
+    #ctor(int index)
+    #ctor(java.lang.String s)
+  class System
+    arraycopy(java.lang.Object src, int srcPos, java.lang.Object dest, int destPos, int length)
+    clearProperty(java.lang.String key)
+    exit(int status)
+    getenv(java.lang.String name)
+    getProperty(java.lang.String key)
+    getProperty(java.lang.String key, java.lang.String def)
+    identityHashCode(java.lang.Object x)
+    load(java.lang.String filename)
+    loadLibrary(java.lang.String libname)
+    mapLibraryName(java.lang.String libname)
+    runFinalizersOnExit(boolean value)
+    setErr(java.io.PrintStream err)
+    setIn(java.io.InputStream in)
+    setOut(java.io.PrintStream out)
+    setProperties(java.util.Properties props)
+    setProperty(java.lang.String key, java.lang.String value)
+    setSecurityManager(java.lang.SecurityManager s)
+  class Thread
+    enumerate(java.lang.Thread[] tarray)
+    holdsLock(java.lang.Object obj)
+    join(long millis)
+    join(long millis, int nanos)
+    setContextClassLoader(java.lang.ClassLoader cl)
+    setDaemon(boolean on)
+    setDefaultUncaughtExceptionHandler(java.lang.Thread.UncaughtExceptionHandler eh)
+    setName(java.lang.String name)
+    setPriority(int newPriority)
+    setUncaughtExceptionHandler(java.lang.Thread.UncaughtExceptionHandler eh)
+    sleep(long millis)
+    sleep(long millis, int nanos)
+    stop(java.lang.Throwable obj)
+    #ctor(java.lang.Runnable target)
+    #ctor(java.lang.Runnable target, java.lang.String name)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.ThreadGroup group, java.lang.Runnable target)
+    #ctor(java.lang.ThreadGroup group, java.lang.Runnable target, java.lang.String name)
+    #ctor(java.lang.ThreadGroup group, java.lang.Runnable target, java.lang.String name, long stackSize)
+    #ctor(java.lang.ThreadGroup group, java.lang.Runnable target, java.lang.String name, long stackSize, boolean inheritThreadLocals)
+    #ctor(java.lang.ThreadGroup group, java.lang.String name)
+  interface Thread.UncaughtExceptionHandler
+    uncaughtException(java.lang.Thread t, java.lang.Throwable e)
+  class ThreadGroup
+    allowThreadSuspension(boolean b)
+    enumerate(java.lang.Thread[] list)
+    enumerate(java.lang.Thread[] list, boolean recurse)
+    enumerate(java.lang.ThreadGroup[] list)
+    enumerate(java.lang.ThreadGroup[] list, boolean recurse)
+    parentOf(java.lang.ThreadGroup g)
+    setDaemon(boolean daemon)
+    setMaxPriority(int pri)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.ThreadGroup parent, java.lang.String name)
+    uncaughtException(java.lang.Thread t, java.lang.Throwable e)
+  class ThreadLocal<T>
+    set(T value)
+    <S> withInitial(java.util.function.Supplier<? extends S> supplier)
+  class Throwable
+    addSuppressed(java.lang.Throwable exception)
+    initCause(java.lang.Throwable cause)
+    printStackTrace(java.io.PrintStream s)
+    printStackTrace(java.io.PrintWriter s)
+    setStackTrace(java.lang.StackTraceElement[] stackTrace)
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)
+    #ctor(java.lang.Throwable cause)
+  class TypeNotPresentException
+    #ctor(java.lang.String typeName, java.lang.Throwable cause)
+  class UnknownError
+    #ctor(java.lang.String s)
+  class UnsatisfiedLinkError
+    #ctor(java.lang.String s)
+  class UnsupportedClassVersionError
+    #ctor(java.lang.String s)
+  class UnsupportedOperationException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class VerifyError
+    #ctor(java.lang.String s)
+  class VirtualMachineError
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+
+package java.lang.annotation
+;---------------------------------------
+  interface Annotation
+    equals(java.lang.Object obj)
+  class AnnotationFormatError
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class AnnotationTypeMismatchException
+    #ctor(java.lang.reflect.Method element, java.lang.String foundType)
+  class IncompleteAnnotationException
+    #ctor(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType, java.lang.String elementName)
+
+package java.lang.invoke
+;---------------------------------------
+  class CallSite
+    setTarget(java.lang.invoke.MethodHandle newTarget)
+  class ConstantCallSite
+    #ctor(java.lang.invoke.MethodHandle target)
+    #ctor(java.lang.invoke.MethodType targetType, java.lang.invoke.MethodHandle createTargetHook)
+    setTarget(java.lang.invoke.MethodHandle ignore)
+  class LambdaConversionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)
+    #ctor(java.lang.Throwable cause)
+  class MethodHandle
+    asCollector(int collectArgPos, java.lang.Class<?> arrayType, int arrayLength)
+    asCollector(java.lang.Class<?> arrayType, int arrayLength)
+    asSpreader(int spreadArgPos, java.lang.Class<?> arrayType, int arrayLength)
+    asSpreader(java.lang.Class<?> arrayType, int arrayLength)
+    asType(java.lang.invoke.MethodType newType)
+    asVarargsCollector(java.lang.Class<?> arrayType)
+    bindTo(java.lang.Object x)
+    invoke(java.lang.Object... args)
+    invokeExact(java.lang.Object... args)
+    invokeWithArguments(java.lang.Object... arguments)
+    invokeWithArguments(java.util.List<?> arguments)
+    withVarargs(boolean makeVarargs)
+  interface MethodHandleInfo
+    referenceKindToString(int referenceKind)
+    refKindIsField(int refKind)
+    refKindIsValid(int refKind)
+    refKindName(int refKind)
+    <T> reflectAs(java.lang.Class<T> expected, java.lang.invoke.MethodHandles.Lookup lookup)
+    toString(int kind, java.lang.Class<?> defc, java.lang.String name, java.lang.invoke.MethodType type)
+  class MethodHandles
+    arrayConstructor(java.lang.Class<?> arrayClass)
+    arrayElementGetter(java.lang.Class<?> arrayClass)
+    arrayElementSetter(java.lang.Class<?> arrayClass)
+    arrayElementVarHandle(java.lang.Class<?> arrayClass)
+    arrayLength(java.lang.Class<?> arrayClass)
+    byteArrayViewVarHandle(java.lang.Class<?> viewArrayClass, java.nio.ByteOrder byteOrder)
+    byteBufferViewVarHandle(java.lang.Class<?> viewArrayClass, java.nio.ByteOrder byteOrder)
+    catchException(java.lang.invoke.MethodHandle target, java.lang.Class<? extends java.lang.Throwable> exType, java.lang.invoke.MethodHandle handler)
+    collectArguments(java.lang.invoke.MethodHandle target, int pos, java.lang.invoke.MethodHandle filter)
+    constant(java.lang.Class<?> type, java.lang.Object value)
+    countedLoop(java.lang.invoke.MethodHandle iterations, java.lang.invoke.MethodHandle init, java.lang.invoke.MethodHandle body)
+    countedLoop(java.lang.invoke.MethodHandle start, java.lang.invoke.MethodHandle end, java.lang.invoke.MethodHandle init, java.lang.invoke.MethodHandle body)
+    doWhileLoop(java.lang.invoke.MethodHandle init, java.lang.invoke.MethodHandle body, java.lang.invoke.MethodHandle pred)
+    dropArguments(java.lang.invoke.MethodHandle target, int pos, java.lang.Class<?>... valueTypes)
+    dropArguments(java.lang.invoke.MethodHandle target, int pos, java.util.List<java.lang.Class<?>> valueTypes)
+    dropArgumentsToMatch(java.lang.invoke.MethodHandle target, int skip, java.util.List<java.lang.Class<?>> newTypes, int pos)
+    dropReturn(java.lang.invoke.MethodHandle target)
+    empty(java.lang.invoke.MethodType type)
+    exactInvoker(java.lang.invoke.MethodType type)
+    explicitCastArguments(java.lang.invoke.MethodHandle target, java.lang.invoke.MethodType newType)
+    filterArguments(java.lang.invoke.MethodHandle target, int pos, java.lang.invoke.MethodHandle... filters)
+    filterReturnValue(java.lang.invoke.MethodHandle target, java.lang.invoke.MethodHandle filter)
+    foldArguments(java.lang.invoke.MethodHandle target, int pos, java.lang.invoke.MethodHandle combiner)
+    foldArguments(java.lang.invoke.MethodHandle target, java.lang.invoke.MethodHandle combiner)
+    guardWithTest(java.lang.invoke.MethodHandle test, java.lang.invoke.MethodHandle target, java.lang.invoke.MethodHandle fallback)
+    identity(java.lang.Class<?> type)
+    insertArguments(java.lang.invoke.MethodHandle target, int pos, java.lang.Object... values)
+    invoker(java.lang.invoke.MethodType type)
+    iteratedLoop(java.lang.invoke.MethodHandle iterator, java.lang.invoke.MethodHandle init, java.lang.invoke.MethodHandle body)
+    loop(java.lang.invoke.MethodHandle[]... clauses)
+    permuteArguments(java.lang.invoke.MethodHandle target, java.lang.invoke.MethodType newType, int... reorder)
+    privateLookupIn(java.lang.Class<?> targetClass, java.lang.invoke.MethodHandles.Lookup lookup)
+    <T> reflectAs(java.lang.Class<T> expected, java.lang.invoke.MethodHandle target)
+    spreadInvoker(java.lang.invoke.MethodType type, int leadingArgCount)
+    tableSwitch(java.lang.invoke.MethodHandle fallback, java.lang.invoke.MethodHandle... targets)
+    throwException(java.lang.Class<?> returnType, java.lang.Class<? extends java.lang.Throwable> exType)
+    tryFinally(java.lang.invoke.MethodHandle target, java.lang.invoke.MethodHandle cleanup)
+    varHandleExactInvoker(java.lang.invoke.VarHandle.AccessMode accessMode, java.lang.invoke.MethodType type)
+    varHandleInvoker(java.lang.invoke.VarHandle.AccessMode accessMode, java.lang.invoke.MethodType type)
+    whileLoop(java.lang.invoke.MethodHandle init, java.lang.invoke.MethodHandle pred, java.lang.invoke.MethodHandle body)
+    zero(java.lang.Class<?> type)
+  class MethodHandles.Lookup
+    bind(java.lang.Object receiver, java.lang.String name, java.lang.invoke.MethodType type)
+    findConstructor(java.lang.Class<?> refc, java.lang.invoke.MethodType type)
+    findGetter(java.lang.Class<?> refc, java.lang.String name, java.lang.Class<?> type)
+    findSetter(java.lang.Class<?> refc, java.lang.String name, java.lang.Class<?> type)
+    findSpecial(java.lang.Class<?> refc, java.lang.String name, java.lang.invoke.MethodType type, java.lang.Class<?> specialCaller)
+    findStatic(java.lang.Class<?> refc, java.lang.String name, java.lang.invoke.MethodType type)
+    findStaticGetter(java.lang.Class<?> refc, java.lang.String name, java.lang.Class<?> type)
+    findStaticSetter(java.lang.Class<?> refc, java.lang.String name, java.lang.Class<?> type)
+    findStaticVarHandle(java.lang.Class<?> decl, java.lang.String name, java.lang.Class<?> type)
+    findVarHandle(java.lang.Class<?> recv, java.lang.String name, java.lang.Class<?> type)
+    findVirtual(java.lang.Class<?> refc, java.lang.String name, java.lang.invoke.MethodType type)
+    in(java.lang.Class<?> requestedLookupClass)
+    revealDirect(java.lang.invoke.MethodHandle target)
+    unreflect(java.lang.reflect.Method m)
+    unreflectConstructor(java.lang.reflect.Constructor<?> c)
+    unreflectGetter(java.lang.reflect.Field f)
+    unreflectSetter(java.lang.reflect.Field f)
+    unreflectSpecial(java.lang.reflect.Method m, java.lang.Class<?> specialCaller)
+    unreflectVarHandle(java.lang.reflect.Field f)
+  class MethodType
+    appendParameterTypes(java.lang.Class<?>... ptypesToInsert)
+    appendParameterTypes(java.util.List<java.lang.Class<?>> ptypesToInsert)
+    changeParameterType(int num, java.lang.Class<?> nptype)
+    changeReturnType(java.lang.Class<?> nrtype)
+    dropParameterTypes(int start, int end)
+    equals(java.lang.Object x)
+    fromMethodDescriptorString(java.lang.String descriptor, java.lang.ClassLoader loader)
+    genericMethodType(int objectArgCount)
+    genericMethodType(int objectArgCount, boolean finalArray)
+    insertParameterTypes(int num, java.lang.Class<?>... ptypesToInsert)
+    insertParameterTypes(int num, java.util.List<java.lang.Class<?>> ptypesToInsert)
+    methodType(java.lang.Class<?> rtype)
+    methodType(java.lang.Class<?> rtype, java.lang.Class<?> ptype0)
+    methodType(java.lang.Class<?> rtype, java.lang.Class<?> ptype0, java.lang.Class<?>... ptypes)
+    methodType(java.lang.Class<?> rtype, java.lang.Class<?>[] ptypes)
+    methodType(java.lang.Class<?> rtype, java.lang.invoke.MethodType ptypes)
+    methodType(java.lang.Class<?> rtype, java.util.List<java.lang.Class<?>> ptypes)
+    parameterType(int num)
+  class MutableCallSite
+    #ctor(java.lang.invoke.MethodHandle target)
+    #ctor(java.lang.invoke.MethodType type)
+    setTarget(java.lang.invoke.MethodHandle newTarget)
+  class VarHandle
+    accessModeType(java.lang.invoke.VarHandle.AccessMode accessMode)
+    compareAndExchange(java.lang.Object... args)
+    compareAndExchangeAcquire(java.lang.Object... args)
+    compareAndExchangeRelease(java.lang.Object... args)
+    compareAndSet(java.lang.Object... args)
+    get(java.lang.Object... args)
+    getAcquire(java.lang.Object... args)
+    getAndAdd(java.lang.Object... args)
+    getAndAddAcquire(java.lang.Object... args)
+    getAndAddRelease(java.lang.Object... args)
+    getAndBitwiseAnd(java.lang.Object... args)
+    getAndBitwiseAndAcquire(java.lang.Object... args)
+    getAndBitwiseAndRelease(java.lang.Object... args)
+    getAndBitwiseOr(java.lang.Object... args)
+    getAndBitwiseOrAcquire(java.lang.Object... args)
+    getAndBitwiseOrRelease(java.lang.Object... args)
+    getAndBitwiseXor(java.lang.Object... args)
+    getAndBitwiseXorAcquire(java.lang.Object... args)
+    getAndBitwiseXorRelease(java.lang.Object... args)
+    getAndSet(java.lang.Object... args)
+    getAndSetAcquire(java.lang.Object... args)
+    getAndSetRelease(java.lang.Object... args)
+    getOpaque(java.lang.Object... args)
+    getVolatile(java.lang.Object... args)
+    isAccessModeSupported(java.lang.invoke.VarHandle.AccessMode accessMode)
+    set(java.lang.Object... args)
+    setOpaque(java.lang.Object... args)
+    setRelease(java.lang.Object... args)
+    setVolatile(java.lang.Object... args)
+    toMethodHandle(java.lang.invoke.VarHandle.AccessMode accessMode)
+    weakCompareAndSet(java.lang.Object... args)
+    weakCompareAndSetAcquire(java.lang.Object... args)
+    weakCompareAndSetPlain(java.lang.Object... args)
+    weakCompareAndSetRelease(java.lang.Object... args)
+  class VarHandle.AccessMode
+    valueFromMethodName(java.lang.String methodName)
+  class VolatileCallSite
+    setTarget(java.lang.invoke.MethodHandle newTarget)
+    #ctor(java.lang.invoke.MethodHandle target)
+    #ctor(java.lang.invoke.MethodType type)
+  class WrongMethodTypeException
+    #ctor(java.lang.String s)
+
+package java.lang.ref
+;---------------------------------------
+  class Cleaner
+    create(java.util.concurrent.ThreadFactory threadFactory)
+    register(java.lang.Object obj, java.lang.Runnable action)
+  class PhantomReference<T>
+    #ctor(T referent, java.lang.ref.ReferenceQueue<? super T> q)
+  class Reference<T>
+    reachabilityFence(java.lang.Object ref)
+    refersTo(T obj)
+  class ReferenceQueue<T>
+    remove(long timeout)
+  class SoftReference<T>
+    #ctor(T referent)
+    #ctor(T referent, java.lang.ref.ReferenceQueue<? super T> q)
+  class WeakReference<T>
+    #ctor(T referent)
+    #ctor(T referent, java.lang.ref.ReferenceQueue<? super T> q)
+
+package java.lang.reflect
+;---------------------------------------
+  class AccessibleObject
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    <T> getAnnotationsByType(java.lang.Class<T> annotationClass)
+    <T> getDeclaredAnnotation(java.lang.Class<T> annotationClass)
+    <T> getDeclaredAnnotationsByType(java.lang.Class<T> annotationClass)
+    isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
+    setAccessible(boolean flag)
+    setAccessible(java.lang.reflect.AccessibleObject[] array, boolean flag)
+  interface AnnotatedElement
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    <T> getAnnotationsByType(java.lang.Class<T> annotationClass)
+    <T> getDeclaredAnnotation(java.lang.Class<T> annotationClass)
+    <T> getDeclaredAnnotationsByType(java.lang.Class<T> annotationClass)
+    isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
+  class Array
+    get(java.lang.Object array, int index)
+    getBoolean(java.lang.Object array, int index)
+    getByte(java.lang.Object array, int index)
+    getChar(java.lang.Object array, int index)
+    getDouble(java.lang.Object array, int index)
+    getFloat(java.lang.Object array, int index)
+    getInt(java.lang.Object array, int index)
+    getLength(java.lang.Object array)
+    getLong(java.lang.Object array, int index)
+    getShort(java.lang.Object array, int index)
+    newInstance(java.lang.Class<?> componentType, int length)
+    newInstance(java.lang.Class<?> componentType, int... dimensions)
+    set(java.lang.Object array, int index, java.lang.Object value)
+    setBoolean(java.lang.Object array, int index, boolean z)
+    setByte(java.lang.Object array, int index, byte b)
+    setChar(java.lang.Object array, int index, char c)
+    setDouble(java.lang.Object array, int index, double d)
+    setFloat(java.lang.Object array, int index, float f)
+    setInt(java.lang.Object array, int index, int i)
+    setLong(java.lang.Object array, int index, long l)
+    setShort(java.lang.Object array, int index, short s)
+  class Constructor<T>
+    equals(java.lang.Object obj)
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    newInstance(java.lang.Object... initargs)
+  class Executable
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    <T> getAnnotationsByType(java.lang.Class<T> annotationClass)
+    isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
+  class Field
+    equals(java.lang.Object obj)
+    get(java.lang.Object obj)
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    <T> getAnnotationsByType(java.lang.Class<T> annotationClass)
+    getBoolean(java.lang.Object obj)
+    getByte(java.lang.Object obj)
+    getChar(java.lang.Object obj)
+    getDouble(java.lang.Object obj)
+    getFloat(java.lang.Object obj)
+    getInt(java.lang.Object obj)
+    getLong(java.lang.Object obj)
+    getShort(java.lang.Object obj)
+    isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
+    set(java.lang.Object obj, java.lang.Object value)
+    setBoolean(java.lang.Object obj, boolean z)
+    setByte(java.lang.Object obj, byte b)
+    setChar(java.lang.Object obj, char c)
+    setDouble(java.lang.Object obj, double d)
+    setFloat(java.lang.Object obj, float f)
+    setInt(java.lang.Object obj, int i)
+    setLong(java.lang.Object obj, long l)
+    setShort(java.lang.Object obj, short s)
+  class GenericSignatureFormatError
+    #ctor(java.lang.String message)
+  interface InvocationHandler
+    invoke(java.lang.Object proxy, java.lang.reflect.Method method, java.lang.Object[] args)
+  class InvocationTargetException
+    #ctor(java.lang.Throwable target)
+    #ctor(java.lang.Throwable target, java.lang.String s)
+  class MalformedParameterizedTypeException
+    #ctor(java.lang.String message)
+  class MalformedParametersException
+    #ctor(java.lang.String reason)
+  class Method
+    equals(java.lang.Object obj)
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    invoke(java.lang.Object obj, java.lang.Object... args)
+  class Modifier
+    isAbstract(int mod)
+    isFinal(int mod)
+    isInterface(int mod)
+    isNative(int mod)
+    isPrivate(int mod)
+    isProtected(int mod)
+    isPublic(int mod)
+    isStatic(int mod)
+    isStrict(int mod)
+    isSynchronized(int mod)
+    isTransient(int mod)
+    isVolatile(int mod)
+    toString(int mod)
+  class Parameter
+    equals(java.lang.Object obj)
+    <T> getAnnotation(java.lang.Class<T> annotationClass)
+    <T> getAnnotationsByType(java.lang.Class<T> annotationClass)
+    <T> getDeclaredAnnotation(java.lang.Class<T> annotationClass)
+    <T> getDeclaredAnnotationsByType(java.lang.Class<T> annotationClass)
+  class Proxy
+    getInvocationHandler(java.lang.Object proxy)
+    getProxyClass(java.lang.ClassLoader loader, java.lang.Class<?>... interfaces)
+    isProxyClass(java.lang.Class<?> cl)
+    newProxyInstance(java.lang.ClassLoader loader, java.lang.Class<?>[] interfaces, java.lang.reflect.InvocationHandler h)
+    #ctor(java.lang.reflect.InvocationHandler h)
+  class ReflectPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class UndeclaredThrowableException
+    #ctor(java.lang.Throwable undeclaredThrowable)
+    #ctor(java.lang.Throwable undeclaredThrowable, java.lang.String s)
+
+package java.math
+;---------------------------------------
+  class BigDecimal
+    abs(java.math.MathContext mc)
+    add(java.math.BigDecimal augend)
+    add(java.math.BigDecimal augend, java.math.MathContext mc)
+    #ctor(char[] in)
+    #ctor(char[] in, int offset, int len)
+    #ctor(char[] in, int offset, int len, java.math.MathContext mc)
+    #ctor(char[] in, java.math.MathContext mc)
+    #ctor(double val)
+    #ctor(double val, java.math.MathContext mc)
+    #ctor(int val)
+    #ctor(int val, java.math.MathContext mc)
+    #ctor(java.lang.String val)
+    #ctor(java.lang.String val, java.math.MathContext mc)
+    #ctor(java.math.BigInteger val)
+    #ctor(java.math.BigInteger unscaledVal, int scale)
+    #ctor(java.math.BigInteger unscaledVal, int scale, java.math.MathContext mc)
+    #ctor(java.math.BigInteger val, java.math.MathContext mc)
+    #ctor(long val)
+    #ctor(long val, java.math.MathContext mc)
+    compareTo(java.math.BigDecimal val)
+    divide(java.math.BigDecimal divisor)
+    divide(java.math.BigDecimal divisor, int roundingMode)
+    divide(java.math.BigDecimal divisor, int scale, int roundingMode)
+    divide(java.math.BigDecimal divisor, int scale, java.math.RoundingMode roundingMode)
+    divide(java.math.BigDecimal divisor, java.math.MathContext mc)
+    divide(java.math.BigDecimal divisor, java.math.RoundingMode roundingMode)
+    divideAndRemainder(java.math.BigDecimal divisor)
+    divideAndRemainder(java.math.BigDecimal divisor, java.math.MathContext mc)
+    divideToIntegralValue(java.math.BigDecimal divisor)
+    divideToIntegralValue(java.math.BigDecimal divisor, java.math.MathContext mc)
+    equals(java.lang.Object x)
+    max(java.math.BigDecimal val)
+    min(java.math.BigDecimal val)
+    movePointLeft(int n)
+    movePointRight(int n)
+    multiply(java.math.BigDecimal multiplicand)
+    multiply(java.math.BigDecimal multiplicand, java.math.MathContext mc)
+    negate(java.math.MathContext mc)
+    plus(java.math.MathContext mc)
+    pow(int n)
+    pow(int n, java.math.MathContext mc)
+    remainder(java.math.BigDecimal divisor)
+    remainder(java.math.BigDecimal divisor, java.math.MathContext mc)
+    round(java.math.MathContext mc)
+    scaleByPowerOfTen(int n)
+    setScale(int newScale)
+    setScale(int newScale, int roundingMode)
+    setScale(int newScale, java.math.RoundingMode roundingMode)
+    sqrt(java.math.MathContext mc)
+    subtract(java.math.BigDecimal subtrahend)
+    subtract(java.math.BigDecimal subtrahend, java.math.MathContext mc)
+    valueOf(double val)
+    valueOf(long val)
+    valueOf(long unscaledVal, int scale)
+  class BigInteger
+    add(java.math.BigInteger val)
+    and(java.math.BigInteger val)
+    andNot(java.math.BigInteger val)
+    #ctor(byte[] val)
+    #ctor(byte[] val, int off, int len)
+    #ctor(int signum, byte[] magnitude)
+    #ctor(int signum, byte[] magnitude, int off, int len)
+    #ctor(int bitLength, int certainty, java.util.Random rnd)
+    #ctor(int numBits, java.util.Random rnd)
+    #ctor(java.lang.String val)
+    #ctor(java.lang.String val, int radix)
+    clearBit(int n)
+    compareTo(java.math.BigInteger val)
+    divide(java.math.BigInteger val)
+    divideAndRemainder(java.math.BigInteger val)
+    equals(java.lang.Object x)
+    flipBit(int n)
+    gcd(java.math.BigInteger val)
+    isProbablePrime(int certainty)
+    max(java.math.BigInteger val)
+    min(java.math.BigInteger val)
+    mod(java.math.BigInteger m)
+    modInverse(java.math.BigInteger m)
+    modPow(java.math.BigInteger exponent, java.math.BigInteger m)
+    multiply(java.math.BigInteger val)
+    or(java.math.BigInteger val)
+    pow(int exponent)
+    probablePrime(int bitLength, java.util.Random rnd)
+    remainder(java.math.BigInteger val)
+    setBit(int n)
+    shiftLeft(int n)
+    shiftRight(int n)
+    subtract(java.math.BigInteger val)
+    testBit(int n)
+    toString(int radix)
+    valueOf(long val)
+    xor(java.math.BigInteger val)
+  class MathContext
+    equals(java.lang.Object x)
+    #ctor(int setPrecision)
+    #ctor(int setPrecision, java.math.RoundingMode setRoundingMode)
+    #ctor(java.lang.String val)
+  class RoundingMode
+    valueOf(int rm)
+
+package java.net
+;---------------------------------------
+  class Authenticator
+    requestPasswordAuthentication(java.lang.String host, java.net.InetAddress addr, int port, java.lang.String protocol, java.lang.String prompt, java.lang.String scheme)
+    requestPasswordAuthentication(java.lang.String host, java.net.InetAddress addr, int port, java.lang.String protocol, java.lang.String prompt, java.lang.String scheme, java.net.URL url, java.net.Authenticator.RequestorType reqType)
+    requestPasswordAuthentication(java.net.InetAddress addr, int port, java.lang.String protocol, java.lang.String prompt, java.lang.String scheme)
+    setDefault(java.net.Authenticator a)
+  class BindException
+    #ctor(java.lang.String msg)
+  class ConnectException
+    #ctor(java.lang.String msg)
+  class ContentHandler
+    getContent(java.net.URLConnection urlc)
+    getContent(java.net.URLConnection urlc, java.lang.Class[] classes)
+  interface ContentHandlerFactory
+    createContentHandler(java.lang.String mimetype)
+  class CookieHandler
+    get(java.net.URI uri, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders)
+    put(java.net.URI uri, java.util.Map<java.lang.String,java.util.List<java.lang.String>> responseHeaders)
+    setDefault(java.net.CookieHandler cHandler)
+  class CookieManager
+    #ctor(java.net.CookieStore store, java.net.CookiePolicy cookiePolicy)
+    get(java.net.URI uri, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders)
+    put(java.net.URI uri, java.util.Map<java.lang.String,java.util.List<java.lang.String>> responseHeaders)
+    setCookiePolicy(java.net.CookiePolicy cookiePolicy)
+  interface CookiePolicy
+    shouldAccept(java.net.URI uri, java.net.HttpCookie cookie)
+  interface CookieStore
+    add(java.net.URI uri, java.net.HttpCookie cookie)
+    get(java.net.URI uri)
+    remove(java.net.URI uri, java.net.HttpCookie cookie)
+  class DatagramPacket
+    #ctor(byte[] buf, int length)
+    #ctor(byte[] buf, int offset, int length)
+    #ctor(byte[] buf, int offset, int length, java.net.InetAddress address, int port)
+    #ctor(byte[] buf, int offset, int length, java.net.SocketAddress address)
+    #ctor(byte[] buf, int length, java.net.InetAddress address, int port)
+    #ctor(byte[] buf, int length, java.net.SocketAddress address)
+    setAddress(java.net.InetAddress iaddr)
+    setData(byte[] buf)
+    setData(byte[] buf, int offset, int length)
+    setLength(int length)
+    setPort(int iport)
+    setSocketAddress(java.net.SocketAddress address)
+  class DatagramSocket
+    bind(java.net.SocketAddress addr)
+    connect(java.net.InetAddress address, int port)
+    connect(java.net.SocketAddress addr)
+    #ctor(int port)
+    #ctor(int port, java.net.InetAddress laddr)
+    #ctor(java.net.DatagramSocketImpl impl)
+    #ctor(java.net.SocketAddress bindaddr)
+    <T> getOption(java.net.SocketOption<T> name)
+    receive(java.net.DatagramPacket p)
+    send(java.net.DatagramPacket p)
+    setBroadcast(boolean on)
+    setDatagramSocketImplFactory(java.net.DatagramSocketImplFactory fac)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    setReceiveBufferSize(int size)
+    setReuseAddress(boolean on)
+    setSendBufferSize(int size)
+    setSoTimeout(int timeout)
+    setTrafficClass(int tc)
+  class DatagramSocketImpl
+    bind(int lport, java.net.InetAddress laddr)
+    connect(java.net.InetAddress address, int port)
+    <T> getOption(java.net.SocketOption<T> name)
+    join(java.net.InetAddress inetaddr)
+    joinGroup(java.net.SocketAddress mcastaddr, java.net.NetworkInterface netIf)
+    leave(java.net.InetAddress inetaddr)
+    leaveGroup(java.net.SocketAddress mcastaddr, java.net.NetworkInterface netIf)
+    peek(java.net.InetAddress i)
+    peekData(java.net.DatagramPacket p)
+    receive(java.net.DatagramPacket p)
+    send(java.net.DatagramPacket p)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    setTimeToLive(int ttl)
+    setTTL(byte ttl)
+  interface FileNameMap
+    getContentTypeFor(java.lang.String fileName)
+  class HttpCookie
+    domainMatches(java.lang.String domain, java.lang.String host)
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String name, java.lang.String value)
+    parse(java.lang.String header)
+    setComment(java.lang.String purpose)
+    setCommentURL(java.lang.String purpose)
+    setDiscard(boolean discard)
+    setDomain(java.lang.String pattern)
+    setHttpOnly(boolean httpOnly)
+    setMaxAge(long expiry)
+    setPath(java.lang.String uri)
+    setPortlist(java.lang.String ports)
+    setSecure(boolean flag)
+    setValue(java.lang.String newValue)
+    setVersion(int v)
+  class HttpRetryException
+    #ctor(java.lang.String detail, int code)
+    #ctor(java.lang.String detail, int code, java.lang.String location)
+  class HttpURLConnection
+    getHeaderField(int n)
+    getHeaderFieldDate(java.lang.String name, long Default)
+    getHeaderFieldKey(int n)
+    #ctor(java.net.URL u)
+    setChunkedStreamingMode(int chunklen)
+    setFixedLengthStreamingMode(int contentLength)
+    setFixedLengthStreamingMode(long contentLength)
+    setFollowRedirects(boolean set)
+    setInstanceFollowRedirects(boolean followRedirects)
+    setRequestMethod(java.lang.String method)
+  class IDN
+    toASCII(java.lang.String input)
+    toASCII(java.lang.String input, int flag)
+    toUnicode(java.lang.String input)
+    toUnicode(java.lang.String input, int flag)
+  class Inet4Address
+    equals(java.lang.Object obj)
+  class Inet6Address
+    equals(java.lang.Object obj)
+    getByAddress(java.lang.String host, byte[] addr, int scope_id)
+    getByAddress(java.lang.String host, byte[] addr, java.net.NetworkInterface nif)
+  class InetAddress
+    equals(java.lang.Object obj)
+    getAllByName(java.lang.String host)
+    getByAddress(byte[] addr)
+    getByAddress(java.lang.String host, byte[] addr)
+    getByName(java.lang.String host)
+    isReachable(int timeout)
+    isReachable(java.net.NetworkInterface netif, int ttl, int timeout)
+  class InetSocketAddress
+    createUnresolved(java.lang.String host, int port)
+    equals(java.lang.Object obj)
+    #ctor(int port)
+    #ctor(java.lang.String hostname, int port)
+    #ctor(java.net.InetAddress addr, int port)
+  class InterfaceAddress
+    equals(java.lang.Object obj)
+  class JarURLConnection
+    #ctor(java.net.URL url)
+  class MalformedURLException
+    #ctor(java.lang.String msg)
+  class MulticastSocket
+    joinGroup(java.net.InetAddress mcastaddr)
+    joinGroup(java.net.SocketAddress mcastaddr, java.net.NetworkInterface netIf)
+    leaveGroup(java.net.InetAddress mcastaddr)
+    leaveGroup(java.net.SocketAddress mcastaddr, java.net.NetworkInterface netIf)
+    #ctor(int port)
+    #ctor(java.net.SocketAddress bindaddr)
+    send(java.net.DatagramPacket p, byte ttl)
+    setInterface(java.net.InetAddress inf)
+    setLoopbackMode(boolean disable)
+    setNetworkInterface(java.net.NetworkInterface netIf)
+    setTimeToLive(int ttl)
+    setTTL(byte ttl)
+  class NetPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class NetworkInterface
+    equals(java.lang.Object obj)
+    getByIndex(int index)
+    getByInetAddress(java.net.InetAddress addr)
+    getByName(java.lang.String name)
+  class NoRouteToHostException
+    #ctor(java.lang.String msg)
+  class PasswordAuthentication
+    #ctor(java.lang.String userName, char[] password)
+  class PortUnreachableException
+    #ctor(java.lang.String msg)
+  class ProtocolException
+    #ctor(java.lang.String message)
+  class Proxy
+    equals(java.lang.Object obj)
+    #ctor(java.net.Proxy.Type type, java.net.SocketAddress sa)
+  class ProxySelector
+    connectFailed(java.net.URI uri, java.net.SocketAddress sa, java.io.IOException ioe)
+    select(java.net.URI uri)
+    setDefault(java.net.ProxySelector ps)
+  class ResponseCache
+    get(java.net.URI uri, java.lang.String rqstMethod, java.util.Map<java.lang.String,java.util.List<java.lang.String>> rqstHeaders)
+    put(java.net.URI uri, java.net.URLConnection conn)
+    setDefault(java.net.ResponseCache responseCache)
+  class ServerSocket
+    bind(java.net.SocketAddress endpoint)
+    bind(java.net.SocketAddress endpoint, int backlog)
+    <T> getOption(java.net.SocketOption<T> name)
+    implAccept(java.net.Socket s)
+    #ctor(int port)
+    #ctor(int port, int backlog)
+    #ctor(int port, int backlog, java.net.InetAddress bindAddr)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    setPerformancePreferences(int connectionTime, int latency, int bandwidth)
+    setReceiveBufferSize(int size)
+    setReuseAddress(boolean on)
+    setSocketFactory(java.net.SocketImplFactory fac)
+    setSoTimeout(int timeout)
+  class Socket
+    bind(java.net.SocketAddress bindpoint)
+    connect(java.net.SocketAddress endpoint)
+    connect(java.net.SocketAddress endpoint, int timeout)
+    <T> getOption(java.net.SocketOption<T> name)
+    sendUrgentData(int data)
+    setKeepAlive(boolean on)
+    setOOBInline(boolean on)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    setPerformancePreferences(int connectionTime, int latency, int bandwidth)
+    setReceiveBufferSize(int size)
+    setReuseAddress(boolean on)
+    setSendBufferSize(int size)
+    setSocketImplFactory(java.net.SocketImplFactory fac)
+    setSoLinger(boolean on, int linger)
+    setSoTimeout(int timeout)
+    setTcpNoDelay(boolean on)
+    setTrafficClass(int tc)
+    #ctor(java.lang.String host, int port)
+    #ctor(java.lang.String host, int port, boolean stream)
+    #ctor(java.lang.String host, int port, java.net.InetAddress localAddr, int localPort)
+    #ctor(java.net.InetAddress address, int port)
+    #ctor(java.net.InetAddress host, int port, boolean stream)
+    #ctor(java.net.InetAddress address, int port, java.net.InetAddress localAddr, int localPort)
+    #ctor(java.net.Proxy proxy)
+    #ctor(java.net.SocketImpl impl)
+  class SocketException
+    #ctor(java.lang.String msg)
+  class SocketImpl
+    accept(java.net.SocketImpl s)
+    bind(java.net.InetAddress host, int port)
+    connect(java.lang.String host, int port)
+    connect(java.net.InetAddress address, int port)
+    connect(java.net.SocketAddress address, int timeout)
+    create(boolean stream)
+    <T> getOption(java.net.SocketOption<T> name)
+    listen(int backlog)
+    sendUrgentData(int data)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    setPerformancePreferences(int connectionTime, int latency, int bandwidth)
+  interface SocketOptions
+    getOption(int optID)
+    setOption(int optID, java.lang.Object value)
+  class SocketPermission
+    implies(java.security.Permission p)
+    #ctor(java.lang.String host, java.lang.String action)
+  class SocketTimeoutException
+    #ctor(java.lang.String msg)
+  class UnknownHostException
+    #ctor(java.lang.String message)
+  class UnknownServiceException
+    #ctor(java.lang.String msg)
+  class URI
+    compareTo(java.net.URI that)
+    create(java.lang.String str)
+    equals(java.lang.Object ob)
+    relativize(java.net.URI uri)
+    resolve(java.lang.String str)
+    resolve(java.net.URI uri)
+    #ctor(java.lang.String str)
+    #ctor(java.lang.String scheme, java.lang.String ssp, java.lang.String fragment)
+    #ctor(java.lang.String scheme, java.lang.String userInfo, java.lang.String host, int port, java.lang.String path, java.lang.String query, java.lang.String fragment)
+    #ctor(java.lang.String scheme, java.lang.String host, java.lang.String path, java.lang.String fragment)
+    #ctor(java.lang.String scheme, java.lang.String authority, java.lang.String path, java.lang.String query, java.lang.String fragment)
+  class URISyntaxException
+    #ctor(java.lang.String input, java.lang.String reason)
+    #ctor(java.lang.String input, java.lang.String reason, int index)
+  class URL
+    equals(java.lang.Object obj)
+    getContent(java.lang.Class[] classes)
+    openConnection(java.net.Proxy proxy)
+    sameFile(java.net.URL other)
+    setURLStreamHandlerFactory(java.net.URLStreamHandlerFactory fac)
+    #ctor(java.lang.String spec)
+    #ctor(java.lang.String protocol, java.lang.String host, int port, java.lang.String file)
+    #ctor(java.lang.String protocol, java.lang.String host, int port, java.lang.String file, java.net.URLStreamHandler handler)
+    #ctor(java.lang.String protocol, java.lang.String host, java.lang.String file)
+    #ctor(java.net.URL context, java.lang.String spec)
+    #ctor(java.net.URL context, java.lang.String spec, java.net.URLStreamHandler handler)
+  class URLClassLoader
+    addURL(java.net.URL url)
+    definePackage(java.lang.String name, java.util.jar.Manifest man, java.net.URL url)
+    findClass(java.lang.String name)
+    findResource(java.lang.String name)
+    findResources(java.lang.String name)
+    getPermissions(java.security.CodeSource codesource)
+    getResourceAsStream(java.lang.String name)
+    newInstance(java.net.URL[] urls)
+    newInstance(java.net.URL[] urls, java.lang.ClassLoader parent)
+    #ctor(java.net.URL[] urls)
+    #ctor(java.net.URL[] urls, java.lang.ClassLoader parent)
+    #ctor(java.net.URL[] urls, java.lang.ClassLoader parent, java.net.URLStreamHandlerFactory factory)
+  class URLConnection
+    addRequestProperty(java.lang.String key, java.lang.String value)
+    getContent(java.lang.Class[] classes)
+    getDefaultRequestProperty(java.lang.String key)
+    getHeaderField(int n)
+    getHeaderField(java.lang.String name)
+    getHeaderFieldDate(java.lang.String name, long Default)
+    getHeaderFieldInt(java.lang.String name, int Default)
+    getHeaderFieldKey(int n)
+    getHeaderFieldLong(java.lang.String name, long Default)
+    getRequestProperty(java.lang.String key)
+    guessContentTypeFromName(java.lang.String fname)
+    guessContentTypeFromStream(java.io.InputStream is)
+    setAllowUserInteraction(boolean allowuserinteraction)
+    setConnectTimeout(int timeout)
+    setContentHandlerFactory(java.net.ContentHandlerFactory fac)
+    setDefaultAllowUserInteraction(boolean defaultallowuserinteraction)
+    setDefaultRequestProperty(java.lang.String key, java.lang.String value)
+    setDefaultUseCaches(boolean defaultusecaches)
+    setDoInput(boolean doinput)
+    setDoOutput(boolean dooutput)
+    setFileNameMap(java.net.FileNameMap map)
+    setIfModifiedSince(long ifmodifiedsince)
+    setReadTimeout(int timeout)
+    setRequestProperty(java.lang.String key, java.lang.String value)
+    setUseCaches(boolean usecaches)
+    #ctor(java.net.URL url)
+  class URLDecoder
+    decode(java.lang.String s)
+    decode(java.lang.String s, java.lang.String enc)
+    decode(java.lang.String s, java.nio.charset.Charset charset)
+  class URLEncoder
+    encode(java.lang.String s)
+    encode(java.lang.String s, java.lang.String enc)
+    encode(java.lang.String s, java.nio.charset.Charset charset)
+  class URLStreamHandler
+    equals(java.net.URL u1, java.net.URL u2)
+    getHostAddress(java.net.URL u)
+    hashCode(java.net.URL u)
+    hostsEqual(java.net.URL u1, java.net.URL u2)
+    openConnection(java.net.URL u)
+    openConnection(java.net.URL u, java.net.Proxy p)
+    parseURL(java.net.URL u, java.lang.String spec, int start, int limit)
+    sameFile(java.net.URL u1, java.net.URL u2)
+    setURL(java.net.URL u, java.lang.String protocol, java.lang.String host, int port, java.lang.String file, java.lang.String ref)
+    setURL(java.net.URL u, java.lang.String protocol, java.lang.String host, int port, java.lang.String authority, java.lang.String userInfo, java.lang.String path, java.lang.String query, java.lang.String ref)
+    toExternalForm(java.net.URL u)
+  interface URLStreamHandlerFactory
+    createURLStreamHandler(java.lang.String protocol)
+
+package java.nio
+;---------------------------------------
+  class Buffer
+    limit(int newLimit)
+    position(int newPosition)
+    slice(int index, int length)
+  class ByteBuffer
+    alignedSlice(int unitSize)
+    alignmentOffset(int index, int unitSize)
+    allocate(int capacity)
+    allocateDirect(int capacity)
+    compareTo(java.nio.ByteBuffer that)
+    equals(java.lang.Object ob)
+    get(byte[] dst)
+    get(byte[] dst, int offset, int length)
+    get(int index)
+    getChar(int index)
+    getDouble(int index)
+    getFloat(int index)
+    getInt(int index)
+    getLong(int index)
+    getShort(int index)
+    limit(int newLimit)
+    mismatch(java.nio.ByteBuffer that)
+    order(java.nio.ByteOrder bo)
+    position(int newPosition)
+    put(byte b)
+    put(byte[] src)
+    put(byte[] src, int offset, int length)
+    put(int index, byte b)
+    put(java.nio.ByteBuffer src)
+    putChar(char value)
+    putChar(int index, char value)
+    putDouble(double value)
+    putDouble(int index, double value)
+    putFloat(float value)
+    putFloat(int index, float value)
+    putInt(int value)
+    putInt(int index, int value)
+    putLong(int index, long value)
+    putLong(long value)
+    putShort(int index, short value)
+    putShort(short value)
+    slice(int index, int length)
+    wrap(byte[] array)
+    wrap(byte[] array, int offset, int length)
+  class CharBuffer
+    allocate(int capacity)
+    append(char c)
+    append(java.lang.CharSequence csq)
+    append(java.lang.CharSequence csq, int start, int end)
+    charAt(int index)
+    compareTo(java.nio.CharBuffer that)
+    equals(java.lang.Object ob)
+    get(char[] dst)
+    get(char[] dst, int offset, int length)
+    get(int index)
+    limit(int newLimit)
+    mismatch(java.nio.CharBuffer that)
+    position(int newPosition)
+    put(char c)
+    put(char[] src)
+    put(char[] src, int offset, int length)
+    put(int index, char c)
+    put(java.lang.String src)
+    put(java.lang.String src, int start, int end)
+    put(java.nio.CharBuffer src)
+    read(java.nio.CharBuffer target)
+    slice(int index, int length)
+    subSequence(int start, int end)
+    wrap(char[] array)
+    wrap(char[] array, int offset, int length)
+    wrap(java.lang.CharSequence csq)
+    wrap(java.lang.CharSequence csq, int start, int end)
+  class DoubleBuffer
+    allocate(int capacity)
+    compareTo(java.nio.DoubleBuffer that)
+    equals(java.lang.Object ob)
+    get(double[] dst)
+    get(double[] dst, int offset, int length)
+    get(int index)
+    limit(int newLimit)
+    mismatch(java.nio.DoubleBuffer that)
+    position(int newPosition)
+    put(double d)
+    put(double[] src)
+    put(double[] src, int offset, int length)
+    put(int index, double d)
+    put(java.nio.DoubleBuffer src)
+    slice(int index, int length)
+    wrap(double[] array)
+    wrap(double[] array, int offset, int length)
+  class FloatBuffer
+    allocate(int capacity)
+    compareTo(java.nio.FloatBuffer that)
+    equals(java.lang.Object ob)
+    get(float[] dst)
+    get(float[] dst, int offset, int length)
+    get(int index)
+    limit(int newLimit)
+    mismatch(java.nio.FloatBuffer that)
+    position(int newPosition)
+    put(float f)
+    put(float[] src)
+    put(float[] src, int offset, int length)
+    put(int index, float f)
+    put(java.nio.FloatBuffer src)
+    slice(int index, int length)
+    wrap(float[] array)
+    wrap(float[] array, int offset, int length)
+  class IntBuffer
+    allocate(int capacity)
+    compareTo(java.nio.IntBuffer that)
+    equals(java.lang.Object ob)
+    get(int index)
+    get(int[] dst)
+    get(int[] dst, int offset, int length)
+    limit(int newLimit)
+    mismatch(java.nio.IntBuffer that)
+    position(int newPosition)
+    put(int i)
+    put(int index, int i)
+    put(int[] src)
+    put(int[] src, int offset, int length)
+    put(java.nio.IntBuffer src)
+    slice(int index, int length)
+    wrap(int[] array)
+    wrap(int[] array, int offset, int length)
+  class LongBuffer
+    allocate(int capacity)
+    compareTo(java.nio.LongBuffer that)
+    equals(java.lang.Object ob)
+    get(int index)
+    get(long[] dst)
+    get(long[] dst, int offset, int length)
+    limit(int newLimit)
+    mismatch(java.nio.LongBuffer that)
+    position(int newPosition)
+    put(int index, long l)
+    put(java.nio.LongBuffer src)
+    put(long l)
+    put(long[] src)
+    put(long[] src, int offset, int length)
+    slice(int index, int length)
+    wrap(long[] array)
+    wrap(long[] array, int offset, int length)
+  class MappedByteBuffer
+    slice(int index, int length)
+  class ShortBuffer
+    allocate(int capacity)
+    compareTo(java.nio.ShortBuffer that)
+    equals(java.lang.Object ob)
+    get(int index)
+    get(short[] dst)
+    get(short[] dst, int offset, int length)
+    limit(int newLimit)
+    mismatch(java.nio.ShortBuffer that)
+    position(int newPosition)
+    put(int index, short s)
+    put(java.nio.ShortBuffer src)
+    put(short s)
+    put(short[] src)
+    put(short[] src, int offset, int length)
+    slice(int index, int length)
+    wrap(short[] array)
+    wrap(short[] array, int offset, int length)
+
+package java.nio.channels
+;---------------------------------------
+  interface AsynchronousByteChannel
+    read(java.nio.ByteBuffer dst)
+    <A> read(java.nio.ByteBuffer dst, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+    write(java.nio.ByteBuffer src)
+    <A> write(java.nio.ByteBuffer src, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+  class AsynchronousChannelGroup
+    #ctor(java.nio.channels.spi.AsynchronousChannelProvider provider)
+    awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
+    withCachedThreadPool(java.util.concurrent.ExecutorService executor, int initialSize)
+    withFixedThreadPool(int nThreads, java.util.concurrent.ThreadFactory threadFactory)
+    withThreadPool(java.util.concurrent.ExecutorService executor)
+  class AsynchronousFileChannel
+    force(boolean metaData)
+    <A> lock(A attachment, java.nio.channels.CompletionHandler<java.nio.channels.FileLock,? super A> handler)
+    lock(long position, long size, boolean shared)
+    <A> lock(long position, long size, boolean shared, A attachment, java.nio.channels.CompletionHandler<java.nio.channels.FileLock,? super A> handler)
+    open(java.nio.file.Path file, java.nio.file.OpenOption... options)
+    open(java.nio.file.Path file, java.util.Set<? extends java.nio.file.OpenOption> options, java.util.concurrent.ExecutorService executor, java.nio.file.attribute.FileAttribute<?>... attrs)
+    read(java.nio.ByteBuffer dst, long position)
+    <A> read(java.nio.ByteBuffer dst, long position, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+    truncate(long size)
+    tryLock(long position, long size, boolean shared)
+    write(java.nio.ByteBuffer src, long position)
+    <A> write(java.nio.ByteBuffer src, long position, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+  class AsynchronousServerSocketChannel
+    <A> accept(A attachment, java.nio.channels.CompletionHandler<java.nio.channels.AsynchronousSocketChannel,? super A> handler)
+    #ctor(java.nio.channels.spi.AsynchronousChannelProvider provider)
+    bind(java.net.SocketAddress local)
+    bind(java.net.SocketAddress local, int backlog)
+    open(java.nio.channels.AsynchronousChannelGroup group)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+  class AsynchronousSocketChannel
+    #ctor(java.nio.channels.spi.AsynchronousChannelProvider provider)
+    bind(java.net.SocketAddress local)
+    connect(java.net.SocketAddress remote)
+    <A> connect(java.net.SocketAddress remote, A attachment, java.nio.channels.CompletionHandler<java.lang.Void,? super A> handler)
+    open(java.nio.channels.AsynchronousChannelGroup group)
+    read(java.nio.ByteBuffer dst)
+    <A> read(java.nio.ByteBuffer dst, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+    <A> read(java.nio.ByteBuffer dst, long timeout, java.util.concurrent.TimeUnit unit, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+    <A> read(java.nio.ByteBuffer[] dsts, int offset, int length, long timeout, java.util.concurrent.TimeUnit unit, A attachment, java.nio.channels.CompletionHandler<java.lang.Long,? super A> handler)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    write(java.nio.ByteBuffer src)
+    <A> write(java.nio.ByteBuffer src, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+    <A> write(java.nio.ByteBuffer src, long timeout, java.util.concurrent.TimeUnit unit, A attachment, java.nio.channels.CompletionHandler<java.lang.Integer,? super A> handler)
+    <A> write(java.nio.ByteBuffer[] srcs, int offset, int length, long timeout, java.util.concurrent.TimeUnit unit, A attachment, java.nio.channels.CompletionHandler<java.lang.Long,? super A> handler)
+  class Channels
+    newChannel(java.io.InputStream in)
+    newChannel(java.io.OutputStream out)
+    newInputStream(java.nio.channels.AsynchronousByteChannel ch)
+    newInputStream(java.nio.channels.ReadableByteChannel ch)
+    newOutputStream(java.nio.channels.AsynchronousByteChannel ch)
+    newOutputStream(java.nio.channels.WritableByteChannel ch)
+    newReader(java.nio.channels.ReadableByteChannel ch, java.lang.String csName)
+    newReader(java.nio.channels.ReadableByteChannel ch, java.nio.charset.Charset charset)
+    newReader(java.nio.channels.ReadableByteChannel ch, java.nio.charset.CharsetDecoder dec, int minBufferCap)
+    newWriter(java.nio.channels.WritableByteChannel ch, java.lang.String csName)
+    newWriter(java.nio.channels.WritableByteChannel ch, java.nio.charset.Charset charset)
+    newWriter(java.nio.channels.WritableByteChannel ch, java.nio.charset.CharsetEncoder enc, int minBufferCap)
+  interface CompletionHandler<V,A>
+    completed(V result, A attachment)
+    failed(java.lang.Throwable exc, A attachment)
+  class DatagramChannel
+    bind(java.net.SocketAddress local)
+    connect(java.net.SocketAddress remote)
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+    open(java.net.ProtocolFamily family)
+    read(java.nio.ByteBuffer dst)
+    read(java.nio.ByteBuffer[] dsts)
+    read(java.nio.ByteBuffer[] dsts, int offset, int length)
+    receive(java.nio.ByteBuffer dst)
+    send(java.nio.ByteBuffer src, java.net.SocketAddress target)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    write(java.nio.ByteBuffer src)
+    write(java.nio.ByteBuffer[] srcs)
+    write(java.nio.ByteBuffer[] srcs, int offset, int length)
+  class FileChannel
+    force(boolean metaData)
+    lock(long position, long size, boolean shared)
+    map(java.nio.channels.FileChannel.MapMode mode, long position, long size)
+    open(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    open(java.nio.file.Path path, java.util.Set<? extends java.nio.file.OpenOption> options, java.nio.file.attribute.FileAttribute<?>... attrs)
+    position(long newPosition)
+    read(java.nio.ByteBuffer dst)
+    read(java.nio.ByteBuffer dst, long position)
+    read(java.nio.ByteBuffer[] dsts)
+    read(java.nio.ByteBuffer[] dsts, int offset, int length)
+    transferFrom(java.nio.channels.ReadableByteChannel src, long position, long count)
+    transferTo(long position, long count, java.nio.channels.WritableByteChannel target)
+    truncate(long size)
+    tryLock(long position, long size, boolean shared)
+    write(java.nio.ByteBuffer src)
+    write(java.nio.ByteBuffer src, long position)
+    write(java.nio.ByteBuffer[] srcs)
+    write(java.nio.ByteBuffer[] srcs, int offset, int length)
+  class FileLock
+    #ctor(java.nio.channels.AsynchronousFileChannel channel, long position, long size, boolean shared)
+    #ctor(java.nio.channels.FileChannel channel, long position, long size, boolean shared)
+    overlaps(long position, long size)
+  interface GatheringByteChannel
+    write(java.nio.ByteBuffer[] srcs)
+    write(java.nio.ByteBuffer[] srcs, int offset, int length)
+  class MembershipKey
+    block(java.net.InetAddress source)
+    unblock(java.net.InetAddress source)
+  interface MulticastChannel
+    join(java.net.InetAddress group, java.net.NetworkInterface interf)
+    join(java.net.InetAddress group, java.net.NetworkInterface interf, java.net.InetAddress source)
+  interface NetworkChannel
+    bind(java.net.SocketAddress local)
+    <T> getOption(java.net.SocketOption<T> name)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+  class Pipe.SinkChannel
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+  class Pipe.SourceChannel
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+  interface ReadableByteChannel
+    read(java.nio.ByteBuffer dst)
+  interface ScatteringByteChannel
+    read(java.nio.ByteBuffer[] dsts)
+    read(java.nio.ByteBuffer[] dsts, int offset, int length)
+  interface SeekableByteChannel
+    position(long newPosition)
+    read(java.nio.ByteBuffer dst)
+    truncate(long size)
+    write(java.nio.ByteBuffer src)
+  class SelectableChannel
+    configureBlocking(boolean block)
+    keyFor(java.nio.channels.Selector sel)
+    register(java.nio.channels.Selector sel, int ops)
+    register(java.nio.channels.Selector sel, int ops, java.lang.Object att)
+  class SelectionKey
+    attach(java.lang.Object ob)
+    interestOps(int ops)
+    interestOpsAnd(int ops)
+    interestOpsOr(int ops)
+  class Selector
+    select(java.util.function.Consumer<java.nio.channels.SelectionKey> action)
+    select(java.util.function.Consumer<java.nio.channels.SelectionKey> action, long timeout)
+    select(long timeout)
+    selectNow(java.util.function.Consumer<java.nio.channels.SelectionKey> action)
+  class ServerSocketChannel
+    bind(java.net.SocketAddress local)
+    bind(java.net.SocketAddress local, int backlog)
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+  class SocketChannel
+    bind(java.net.SocketAddress local)
+    connect(java.net.SocketAddress remote)
+    open(java.net.SocketAddress remote)
+    read(java.nio.ByteBuffer dst)
+    read(java.nio.ByteBuffer[] dsts)
+    read(java.nio.ByteBuffer[] dsts, int offset, int length)
+    <T> setOption(java.net.SocketOption<T> name, T value)
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+    write(java.nio.ByteBuffer src)
+    write(java.nio.ByteBuffer[] srcs)
+    write(java.nio.ByteBuffer[] srcs, int offset, int length)
+  interface WritableByteChannel
+    write(java.nio.ByteBuffer src)
+
+package java.nio.channels.spi
+;---------------------------------------
+  class AbstractInterruptibleChannel
+    end(boolean completed)
+  class AbstractSelectableChannel
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+    configureBlocking(boolean block)
+    implConfigureBlocking(boolean block)
+    keyFor(java.nio.channels.Selector sel)
+    register(java.nio.channels.Selector sel, int ops, java.lang.Object att)
+  class AbstractSelector
+    #ctor(java.nio.channels.spi.SelectorProvider provider)
+    deregister(java.nio.channels.spi.AbstractSelectionKey key)
+    register(java.nio.channels.spi.AbstractSelectableChannel ch, int ops, java.lang.Object att)
+  class AsynchronousChannelProvider
+    openAsynchronousChannelGroup(int nThreads, java.util.concurrent.ThreadFactory threadFactory)
+    openAsynchronousChannelGroup(java.util.concurrent.ExecutorService executor, int initialSize)
+    openAsynchronousServerSocketChannel(java.nio.channels.AsynchronousChannelGroup group)
+    openAsynchronousSocketChannel(java.nio.channels.AsynchronousChannelGroup group)
+  class SelectorProvider
+    openDatagramChannel(java.net.ProtocolFamily family)
+
+package java.nio.charset
+;---------------------------------------
+  class Charset
+    #ctor(java.lang.String canonicalName, java.lang.String[] aliases)
+    compareTo(java.nio.charset.Charset that)
+    contains(java.nio.charset.Charset cs)
+    decode(java.nio.ByteBuffer bb)
+    displayName(java.util.Locale locale)
+    encode(java.lang.String str)
+    encode(java.nio.CharBuffer cb)
+    equals(java.lang.Object ob)
+    forName(java.lang.String charsetName)
+    isSupported(java.lang.String charsetName)
+  class CharsetDecoder
+    #ctor(java.nio.charset.Charset cs, float averageCharsPerByte, float maxCharsPerByte)
+    decode(java.nio.ByteBuffer in)
+    decode(java.nio.ByteBuffer in, java.nio.CharBuffer out, boolean endOfInput)
+    decodeLoop(java.nio.ByteBuffer in, java.nio.CharBuffer out)
+    flush(java.nio.CharBuffer out)
+    implFlush(java.nio.CharBuffer out)
+    implOnMalformedInput(java.nio.charset.CodingErrorAction newAction)
+    implOnUnmappableCharacter(java.nio.charset.CodingErrorAction newAction)
+    implReplaceWith(java.lang.String newReplacement)
+    onMalformedInput(java.nio.charset.CodingErrorAction newAction)
+    onUnmappableCharacter(java.nio.charset.CodingErrorAction newAction)
+    replaceWith(java.lang.String newReplacement)
+  class CharsetEncoder
+    canEncode(char c)
+    canEncode(java.lang.CharSequence cs)
+    #ctor(java.nio.charset.Charset cs, float averageBytesPerChar, float maxBytesPerChar)
+    #ctor(java.nio.charset.Charset cs, float averageBytesPerChar, float maxBytesPerChar, byte[] replacement)
+    encode(java.nio.CharBuffer in)
+    encode(java.nio.CharBuffer in, java.nio.ByteBuffer out, boolean endOfInput)
+    encodeLoop(java.nio.CharBuffer in, java.nio.ByteBuffer out)
+    flush(java.nio.ByteBuffer out)
+    implFlush(java.nio.ByteBuffer out)
+    implOnMalformedInput(java.nio.charset.CodingErrorAction newAction)
+    implOnUnmappableCharacter(java.nio.charset.CodingErrorAction newAction)
+    implReplaceWith(byte[] newReplacement)
+    isLegalReplacement(byte[] repl)
+    onMalformedInput(java.nio.charset.CodingErrorAction newAction)
+    onUnmappableCharacter(java.nio.charset.CodingErrorAction newAction)
+    replaceWith(byte[] newReplacement)
+  class CoderMalfunctionError
+    #ctor(java.lang.Exception cause)
+  class CoderResult
+    malformedForLength(int length)
+    unmappableForLength(int length)
+  class IllegalCharsetNameException
+    #ctor(java.lang.String charsetName)
+  class MalformedInputException
+    #ctor(int inputLength)
+  class UnmappableCharacterException
+    #ctor(int inputLength)
+  class UnsupportedCharsetException
+    #ctor(java.lang.String charsetName)
+
+package java.nio.charset.spi
+;---------------------------------------
+  class CharsetProvider
+    charsetForName(java.lang.String charsetName)
+
+package java.nio.file
+;---------------------------------------
+  class AccessDeniedException
+    #ctor(java.lang.String file)
+    #ctor(java.lang.String file, java.lang.String other, java.lang.String reason)
+  class AtomicMoveNotSupportedException
+    #ctor(java.lang.String source, java.lang.String target, java.lang.String reason)
+  class DirectoryIteratorException
+    #ctor(java.io.IOException cause)
+  class DirectoryNotEmptyException
+    #ctor(java.lang.String dir)
+  interface DirectoryStream.Filter<T>
+    accept(T entry)
+  class FileAlreadyExistsException
+    #ctor(java.lang.String file)
+    #ctor(java.lang.String file, java.lang.String other, java.lang.String reason)
+  class Files
+    copy(java.io.InputStream in, java.nio.file.Path target, java.nio.file.CopyOption... options)
+    copy(java.nio.file.Path source, java.io.OutputStream out)
+    copy(java.nio.file.Path source, java.nio.file.Path target, java.nio.file.CopyOption... options)
+    createDirectories(java.nio.file.Path dir, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createDirectory(java.nio.file.Path dir, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createFile(java.nio.file.Path path, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createLink(java.nio.file.Path link, java.nio.file.Path existing)
+    createSymbolicLink(java.nio.file.Path link, java.nio.file.Path target, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createTempDirectory(java.lang.String prefix, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createTempDirectory(java.nio.file.Path dir, java.lang.String prefix, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createTempFile(java.lang.String prefix, java.lang.String suffix, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createTempFile(java.nio.file.Path dir, java.lang.String prefix, java.lang.String suffix, java.nio.file.attribute.FileAttribute<?>... attrs)
+    delete(java.nio.file.Path path)
+    deleteIfExists(java.nio.file.Path path)
+    exists(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    find(java.nio.file.Path start, int maxDepth, java.util.function.BiPredicate<java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes> matcher, java.nio.file.FileVisitOption... options)
+    getAttribute(java.nio.file.Path path, java.lang.String attribute, java.nio.file.LinkOption... options)
+    <V> getFileAttributeView(java.nio.file.Path path, java.lang.Class<V> type, java.nio.file.LinkOption... options)
+    getFileStore(java.nio.file.Path path)
+    getLastModifiedTime(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    getOwner(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    getPosixFilePermissions(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    isDirectory(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    isExecutable(java.nio.file.Path path)
+    isHidden(java.nio.file.Path path)
+    isReadable(java.nio.file.Path path)
+    isRegularFile(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    isSameFile(java.nio.file.Path path, java.nio.file.Path path2)
+    isSymbolicLink(java.nio.file.Path path)
+    isWritable(java.nio.file.Path path)
+    lines(java.nio.file.Path path)
+    lines(java.nio.file.Path path, java.nio.charset.Charset cs)
+    list(java.nio.file.Path dir)
+    move(java.nio.file.Path source, java.nio.file.Path target, java.nio.file.CopyOption... options)
+    newBufferedReader(java.nio.file.Path path)
+    newBufferedReader(java.nio.file.Path path, java.nio.charset.Charset cs)
+    newBufferedWriter(java.nio.file.Path path, java.nio.charset.Charset cs, java.nio.file.OpenOption... options)
+    newBufferedWriter(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    newByteChannel(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    newByteChannel(java.nio.file.Path path, java.util.Set<? extends java.nio.file.OpenOption> options, java.nio.file.attribute.FileAttribute<?>... attrs)
+    newDirectoryStream(java.nio.file.Path dir)
+    newDirectoryStream(java.nio.file.Path dir, java.lang.String glob)
+    newDirectoryStream(java.nio.file.Path dir, java.nio.file.DirectoryStream.Filter<? super java.nio.file.Path> filter)
+    newInputStream(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    newOutputStream(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    notExists(java.nio.file.Path path, java.nio.file.LinkOption... options)
+    probeContentType(java.nio.file.Path path)
+    readAllBytes(java.nio.file.Path path)
+    readAllLines(java.nio.file.Path path)
+    readAllLines(java.nio.file.Path path, java.nio.charset.Charset cs)
+    <A> readAttributes(java.nio.file.Path path, java.lang.Class<A> type, java.nio.file.LinkOption... options)
+    readAttributes(java.nio.file.Path path, java.lang.String attributes, java.nio.file.LinkOption... options)
+    readSymbolicLink(java.nio.file.Path link)
+    setAttribute(java.nio.file.Path path, java.lang.String attribute, java.lang.Object value, java.nio.file.LinkOption... options)
+    setLastModifiedTime(java.nio.file.Path path, java.nio.file.attribute.FileTime time)
+    setOwner(java.nio.file.Path path, java.nio.file.attribute.UserPrincipal owner)
+    setPosixFilePermissions(java.nio.file.Path path, java.util.Set<java.nio.file.attribute.PosixFilePermission> perms)
+    size(java.nio.file.Path path)
+    walk(java.nio.file.Path start, int maxDepth, java.nio.file.FileVisitOption... options)
+    walk(java.nio.file.Path start, java.nio.file.FileVisitOption... options)
+    walkFileTree(java.nio.file.Path start, java.nio.file.FileVisitor<? super java.nio.file.Path> visitor)
+    walkFileTree(java.nio.file.Path start, java.util.Set<java.nio.file.FileVisitOption> options, int maxDepth, java.nio.file.FileVisitor<? super java.nio.file.Path> visitor)
+    write(java.nio.file.Path path, byte[] bytes, java.nio.file.OpenOption... options)
+    write(java.nio.file.Path path, java.lang.Iterable<? extends java.lang.CharSequence> lines, java.nio.charset.Charset cs, java.nio.file.OpenOption... options)
+    write(java.nio.file.Path path, java.lang.Iterable<? extends java.lang.CharSequence> lines, java.nio.file.OpenOption... options)
+  class FileStore
+    getAttribute(java.lang.String attribute)
+    <V> getFileStoreAttributeView(java.lang.Class<V> type)
+    supportsFileAttributeView(java.lang.Class<? extends java.nio.file.attribute.FileAttributeView> type)
+    supportsFileAttributeView(java.lang.String name)
+  class FileSystem
+    getPath(java.lang.String first, java.lang.String... more)
+    getPathMatcher(java.lang.String syntaxAndPattern)
+  class FileSystemAlreadyExistsException
+    #ctor(java.lang.String msg)
+  class FileSystemException
+    #ctor(java.lang.String file)
+    #ctor(java.lang.String file, java.lang.String other, java.lang.String reason)
+  class FileSystemLoopException
+    #ctor(java.lang.String file)
+  class FileSystemNotFoundException
+    #ctor(java.lang.String msg)
+  class FileSystems
+    getFileSystem(java.net.URI uri)
+    newFileSystem(java.net.URI uri, java.util.Map<java.lang.String,?> env)
+    newFileSystem(java.net.URI uri, java.util.Map<java.lang.String,?> env, java.lang.ClassLoader loader)
+    newFileSystem(java.nio.file.Path path, java.lang.ClassLoader loader)
+  interface FileVisitor<T>
+    postVisitDirectory(T dir, java.io.IOException exc)
+    preVisitDirectory(T dir, java.nio.file.attribute.BasicFileAttributes attrs)
+    visitFile(T file, java.nio.file.attribute.BasicFileAttributes attrs)
+    visitFileFailed(T file, java.io.IOException exc)
+  class InvalidPathException
+    #ctor(java.lang.String input, java.lang.String reason)
+    #ctor(java.lang.String input, java.lang.String reason, int index)
+  class LinkPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class NoSuchFileException
+    #ctor(java.lang.String file)
+    #ctor(java.lang.String file, java.lang.String other, java.lang.String reason)
+  class NotDirectoryException
+    #ctor(java.lang.String file)
+  class NotLinkException
+    #ctor(java.lang.String file)
+    #ctor(java.lang.String file, java.lang.String other, java.lang.String reason)
+  interface Path
+    compareTo(java.nio.file.Path other)
+    endsWith(java.lang.String other)
+    endsWith(java.nio.file.Path other)
+    equals(java.lang.Object other)
+    getName(int index)
+    of(java.lang.String first, java.lang.String... more)
+    of(java.net.URI uri)
+    register(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>... events)
+    register(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>[] events, java.nio.file.WatchEvent.Modifier... modifiers)
+    relativize(java.nio.file.Path other)
+    resolve(java.lang.String other)
+    resolve(java.nio.file.Path other)
+    resolveSibling(java.lang.String other)
+    resolveSibling(java.nio.file.Path other)
+    startsWith(java.lang.String other)
+    startsWith(java.nio.file.Path other)
+    subpath(int beginIndex, int endIndex)
+    toRealPath(java.nio.file.LinkOption... options)
+  interface PathMatcher
+    matches(java.nio.file.Path path)
+  class Paths
+    get(java.lang.String first, java.lang.String... more)
+    get(java.net.URI uri)
+  class ProviderMismatchException
+    #ctor(java.lang.String msg)
+  class ProviderNotFoundException
+    #ctor(java.lang.String msg)
+  interface SecureDirectoryStream<T>
+    deleteDirectory(T path)
+    deleteFile(T path)
+    <V> getFileAttributeView(java.lang.Class<V> type)
+    <V> getFileAttributeView(T path, java.lang.Class<V> type, java.nio.file.LinkOption... options)
+    move(T srcpath, java.nio.file.SecureDirectoryStream<T> targetdir, T targetpath)
+    newByteChannel(T path, java.util.Set<? extends java.nio.file.OpenOption> options, java.nio.file.attribute.FileAttribute<?>... attrs)
+    newDirectoryStream(T path, java.nio.file.LinkOption... options)
+  class SimpleFileVisitor<T>
+    postVisitDirectory(T dir, java.io.IOException exc)
+    preVisitDirectory(T dir, java.nio.file.attribute.BasicFileAttributes attrs)
+    visitFile(T file, java.nio.file.attribute.BasicFileAttributes attrs)
+    visitFileFailed(T file, java.io.IOException exc)
+  interface Watchable
+    register(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>... events)
+    register(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>[] events, java.nio.file.WatchEvent.Modifier... modifiers)
+  interface WatchService
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+
+package java.nio.file.attribute
+;---------------------------------------
+  class AclEntry
+    equals(java.lang.Object ob)
+    newBuilder(java.nio.file.attribute.AclEntry entry)
+  class AclEntry.Builder
+    setFlags(java.nio.file.attribute.AclEntryFlag... flags)
+    setFlags(java.util.Set<java.nio.file.attribute.AclEntryFlag> flags)
+    setPermissions(java.nio.file.attribute.AclEntryPermission... perms)
+    setPermissions(java.util.Set<java.nio.file.attribute.AclEntryPermission> perms)
+    setPrincipal(java.nio.file.attribute.UserPrincipal who)
+    setType(java.nio.file.attribute.AclEntryType type)
+  interface AclFileAttributeView
+    setAcl(java.util.List<java.nio.file.attribute.AclEntry> acl)
+  interface BasicFileAttributeView
+    setTimes(java.nio.file.attribute.FileTime lastModifiedTime, java.nio.file.attribute.FileTime lastAccessTime, java.nio.file.attribute.FileTime createTime)
+  interface DosFileAttributeView
+    setArchive(boolean value)
+    setHidden(boolean value)
+    setReadOnly(boolean value)
+    setSystem(boolean value)
+  interface FileOwnerAttributeView
+    setOwner(java.nio.file.attribute.UserPrincipal owner)
+  class FileTime
+    compareTo(java.nio.file.attribute.FileTime other)
+    equals(java.lang.Object obj)
+    from(java.time.Instant instant)
+    from(long value, java.util.concurrent.TimeUnit unit)
+    fromMillis(long value)
+    to(java.util.concurrent.TimeUnit unit)
+  interface PosixFileAttributeView
+    setGroup(java.nio.file.attribute.GroupPrincipal group)
+    setPermissions(java.util.Set<java.nio.file.attribute.PosixFilePermission> perms)
+  class PosixFilePermissions
+    asFileAttribute(java.util.Set<java.nio.file.attribute.PosixFilePermission> perms)
+    fromString(java.lang.String perms)
+    toString(java.util.Set<java.nio.file.attribute.PosixFilePermission> perms)
+  interface UserDefinedFileAttributeView
+    delete(java.lang.String name)
+    read(java.lang.String name, java.nio.ByteBuffer dst)
+    size(java.lang.String name)
+    write(java.lang.String name, java.nio.ByteBuffer src)
+  class UserPrincipalLookupService
+    lookupPrincipalByGroupName(java.lang.String group)
+    lookupPrincipalByName(java.lang.String name)
+  class UserPrincipalNotFoundException
+    #ctor(java.lang.String name)
+
+package java.nio.file.spi
+;---------------------------------------
+  class FileSystemProvider
+    checkAccess(java.nio.file.Path path, java.nio.file.AccessMode... modes)
+    copy(java.nio.file.Path source, java.nio.file.Path target, java.nio.file.CopyOption... options)
+    createDirectory(java.nio.file.Path dir, java.nio.file.attribute.FileAttribute<?>... attrs)
+    createLink(java.nio.file.Path link, java.nio.file.Path existing)
+    createSymbolicLink(java.nio.file.Path link, java.nio.file.Path target, java.nio.file.attribute.FileAttribute<?>... attrs)
+    delete(java.nio.file.Path path)
+    deleteIfExists(java.nio.file.Path path)
+    <V> getFileAttributeView(java.nio.file.Path path, java.lang.Class<V> type, java.nio.file.LinkOption... options)
+    getFileStore(java.nio.file.Path path)
+    getFileSystem(java.net.URI uri)
+    getPath(java.net.URI uri)
+    isHidden(java.nio.file.Path path)
+    isSameFile(java.nio.file.Path path, java.nio.file.Path path2)
+    move(java.nio.file.Path source, java.nio.file.Path target, java.nio.file.CopyOption... options)
+    newAsynchronousFileChannel(java.nio.file.Path path, java.util.Set<? extends java.nio.file.OpenOption> options, java.util.concurrent.ExecutorService executor, java.nio.file.attribute.FileAttribute<?>... attrs)
+    newByteChannel(java.nio.file.Path path, java.util.Set<? extends java.nio.file.OpenOption> options, java.nio.file.attribute.FileAttribute<?>... attrs)
+    newDirectoryStream(java.nio.file.Path dir, java.nio.file.DirectoryStream.Filter<? super java.nio.file.Path> filter)
+    newFileChannel(java.nio.file.Path path, java.util.Set<? extends java.nio.file.OpenOption> options, java.nio.file.attribute.FileAttribute<?>... attrs)
+    newFileSystem(java.net.URI uri, java.util.Map<java.lang.String,?> env)
+    newFileSystem(java.nio.file.Path path, java.util.Map<java.lang.String,?> env)
+    newInputStream(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    newOutputStream(java.nio.file.Path path, java.nio.file.OpenOption... options)
+    <A> readAttributes(java.nio.file.Path path, java.lang.Class<A> type, java.nio.file.LinkOption... options)
+    readAttributes(java.nio.file.Path path, java.lang.String attributes, java.nio.file.LinkOption... options)
+    readSymbolicLink(java.nio.file.Path link)
+    setAttribute(java.nio.file.Path path, java.lang.String attribute, java.lang.Object value, java.nio.file.LinkOption... options)
+  class FileTypeDetector
+    probeContentType(java.nio.file.Path path)
+
+package java.security
+;---------------------------------------
+  class AccessControlContext
+    #ctor(java.security.AccessControlContext acc, java.security.DomainCombiner combiner)
+    #ctor(java.security.ProtectionDomain[] context)
+    checkPermission(java.security.Permission perm)
+  class AccessControlException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String s, java.security.Permission p)
+  class AccessController
+    checkPermission(java.security.Permission perm)
+    <T> doPrivileged(java.security.PrivilegedAction<T> action)
+    <T> doPrivileged(java.security.PrivilegedAction<T> action, java.security.AccessControlContext context)
+    <T> doPrivileged(java.security.PrivilegedExceptionAction<T> action)
+    <T> doPrivileged(java.security.PrivilegedExceptionAction<T> action, java.security.AccessControlContext context)
+    <T> doPrivilegedWithCombiner(java.security.PrivilegedAction<T> action)
+    <T> doPrivilegedWithCombiner(java.security.PrivilegedExceptionAction<T> action)
+  interface AlgorithmConstraints
+    permits(java.util.Set<java.security.CryptoPrimitive> primitives, java.lang.String algorithm, java.security.AlgorithmParameters parameters)
+    permits(java.util.Set<java.security.CryptoPrimitive> primitives, java.lang.String algorithm, java.security.Key key, java.security.AlgorithmParameters parameters)
+    permits(java.util.Set<java.security.CryptoPrimitive> primitives, java.security.Key key)
+  class AlgorithmParameterGenerator
+    #ctor(java.security.AlgorithmParameterGeneratorSpi paramGenSpi, java.security.Provider provider, java.lang.String algorithm)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    init(int size)
+    init(int size, java.security.SecureRandom random)
+    init(java.security.spec.AlgorithmParameterSpec genParamSpec)
+    init(java.security.spec.AlgorithmParameterSpec genParamSpec, java.security.SecureRandom random)
+  class AlgorithmParameterGeneratorSpi
+    engineInit(int size, java.security.SecureRandom random)
+    engineInit(java.security.spec.AlgorithmParameterSpec genParamSpec, java.security.SecureRandom random)
+  class AlgorithmParameters
+    #ctor(java.security.AlgorithmParametersSpi paramSpi, java.security.Provider provider, java.lang.String algorithm)
+    getEncoded(java.lang.String format)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    <T> getParameterSpec(java.lang.Class<T> paramSpec)
+    init(byte[] params)
+    init(byte[] params, java.lang.String format)
+    init(java.security.spec.AlgorithmParameterSpec paramSpec)
+  class AlgorithmParametersSpi
+    engineGetEncoded(java.lang.String format)
+    <T> engineGetParameterSpec(java.lang.Class<T> paramSpec)
+    engineInit(byte[] params)
+    engineInit(byte[] params, java.lang.String format)
+    engineInit(java.security.spec.AlgorithmParameterSpec paramSpec)
+  class AllPermission
+    #ctor(java.lang.String name, java.lang.String actions)
+    implies(java.security.Permission p)
+  class AuthProvider
+    #ctor(java.lang.String name, double version, java.lang.String info)
+    login(javax.security.auth.Subject subject, javax.security.auth.callback.CallbackHandler handler)
+    setCallbackHandler(javax.security.auth.callback.CallbackHandler handler)
+  class BasicPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+    implies(java.security.Permission p)
+  interface Certificate
+    decode(java.io.InputStream stream)
+    encode(java.io.OutputStream stream)
+    toString(boolean detailed)
+  class CodeSigner
+    #ctor(java.security.cert.CertPath signerCertPath, java.security.Timestamp timestamp)
+    equals(java.lang.Object obj)
+  class CodeSource
+    #ctor(java.net.URL url, java.security.cert.Certificate[] certs)
+    #ctor(java.net.URL url, java.security.CodeSigner[] signers)
+    implies(java.security.CodeSource codesource)
+  class DigestException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class DigestInputStream
+    #ctor(java.io.InputStream stream, java.security.MessageDigest digest)
+    on(boolean on)
+    read(byte[] b, int off, int len)
+    setMessageDigest(java.security.MessageDigest digest)
+  class DigestOutputStream
+    #ctor(java.io.OutputStream stream, java.security.MessageDigest digest)
+    on(boolean on)
+    setMessageDigest(java.security.MessageDigest digest)
+    write(byte[] b, int off, int len)
+    write(int b)
+  interface DomainCombiner
+    combine(java.security.ProtectionDomain[] currentDomains, java.security.ProtectionDomain[] assignedDomains)
+  class DomainLoadStoreParameter
+    #ctor(java.net.URI configuration, java.util.Map<java.lang.String,java.security.KeyStore.ProtectionParameter> protectionParams)
+  class GeneralSecurityException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface Guard
+    checkGuard(java.lang.Object object)
+  class GuardedObject
+    #ctor(java.lang.Object object, java.security.Guard guard)
+  class Identity
+    addCertificate(java.security.Certificate certificate)
+    equals(java.lang.Object identity)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.security.IdentityScope scope)
+    identityEquals(java.security.Identity identity)
+    removeCertificate(java.security.Certificate certificate)
+    setInfo(java.lang.String info)
+    setPublicKey(java.security.PublicKey key)
+    toString(boolean detailed)
+  class IdentityScope
+    addIdentity(java.security.Identity identity)
+    getIdentity(java.lang.String name)
+    getIdentity(java.security.Principal principal)
+    getIdentity(java.security.PublicKey key)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.security.IdentityScope scope)
+    removeIdentity(java.security.Identity identity)
+    setSystemScope(java.security.IdentityScope scope)
+  class InvalidAlgorithmParameterException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class InvalidKeyException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class InvalidParameterException
+    #ctor(java.lang.String msg)
+  class KeyException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class KeyFactory
+    generatePrivate(java.security.spec.KeySpec keySpec)
+    generatePublic(java.security.spec.KeySpec keySpec)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    <T> getKeySpec(java.security.Key key, java.lang.Class<T> keySpec)
+    #ctor(java.security.KeyFactorySpi keyFacSpi, java.security.Provider provider, java.lang.String algorithm)
+    translateKey(java.security.Key key)
+  class KeyFactorySpi
+    engineGeneratePrivate(java.security.spec.KeySpec keySpec)
+    engineGeneratePublic(java.security.spec.KeySpec keySpec)
+    <T> engineGetKeySpec(java.security.Key key, java.lang.Class<T> keySpec)
+    engineTranslateKey(java.security.Key key)
+  class KeyManagementException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class KeyPair
+    #ctor(java.security.PublicKey publicKey, java.security.PrivateKey privateKey)
+  class KeyPairGenerator
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    initialize(int keysize)
+    initialize(int keysize, java.security.SecureRandom random)
+    initialize(java.security.spec.AlgorithmParameterSpec params)
+    initialize(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+    #ctor(java.lang.String algorithm)
+  class KeyPairGeneratorSpi
+    initialize(int keysize, java.security.SecureRandom random)
+    initialize(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+  class KeyRep
+    #ctor(java.security.KeyRep.Type type, java.lang.String algorithm, java.lang.String format, byte[] encoded)
+  class KeyStore
+    containsAlias(java.lang.String alias)
+    deleteEntry(java.lang.String alias)
+    entryInstanceOf(java.lang.String alias, java.lang.Class<? extends java.security.KeyStore.Entry> entryClass)
+    getCertificate(java.lang.String alias)
+    getCertificateAlias(java.security.cert.Certificate cert)
+    getCertificateChain(java.lang.String alias)
+    getCreationDate(java.lang.String alias)
+    getEntry(java.lang.String alias, java.security.KeyStore.ProtectionParameter protParam)
+    getInstance(java.io.File file, char[] password)
+    getInstance(java.io.File file, java.security.KeyStore.LoadStoreParameter param)
+    getInstance(java.lang.String type)
+    getInstance(java.lang.String type, java.lang.String provider)
+    getInstance(java.lang.String type, java.security.Provider provider)
+    getKey(java.lang.String alias, char[] password)
+    isCertificateEntry(java.lang.String alias)
+    isKeyEntry(java.lang.String alias)
+    #ctor(java.security.KeyStoreSpi keyStoreSpi, java.security.Provider provider, java.lang.String type)
+    load(java.io.InputStream stream, char[] password)
+    load(java.security.KeyStore.LoadStoreParameter param)
+    setCertificateEntry(java.lang.String alias, java.security.cert.Certificate cert)
+    setEntry(java.lang.String alias, java.security.KeyStore.Entry entry, java.security.KeyStore.ProtectionParameter protParam)
+    setKeyEntry(java.lang.String alias, byte[] key, java.security.cert.Certificate[] chain)
+    setKeyEntry(java.lang.String alias, java.security.Key key, char[] password, java.security.cert.Certificate[] chain)
+    store(java.io.OutputStream stream, char[] password)
+    store(java.security.KeyStore.LoadStoreParameter param)
+  class KeyStore.Builder
+    getProtectionParameter(java.lang.String alias)
+    newInstance(java.io.File file, java.security.KeyStore.ProtectionParameter protection)
+    newInstance(java.lang.String type, java.security.Provider provider, java.io.File file, java.security.KeyStore.ProtectionParameter protection)
+    newInstance(java.lang.String type, java.security.Provider provider, java.security.KeyStore.ProtectionParameter protection)
+    newInstance(java.security.KeyStore keyStore, java.security.KeyStore.ProtectionParameter protectionParameter)
+  class KeyStore.CallbackHandlerProtection
+    #ctor(javax.security.auth.callback.CallbackHandler handler)
+  class KeyStore.PasswordProtection
+    #ctor(char[] password)
+    #ctor(char[] password, java.lang.String protectionAlgorithm, java.security.spec.AlgorithmParameterSpec protectionParameters)
+  class KeyStore.PrivateKeyEntry
+    #ctor(java.security.PrivateKey privateKey, java.security.cert.Certificate[] chain)
+    #ctor(java.security.PrivateKey privateKey, java.security.cert.Certificate[] chain, java.util.Set<java.security.KeyStore.Entry.Attribute> attributes)
+  class KeyStore.SecretKeyEntry
+    #ctor(javax.crypto.SecretKey secretKey)
+    #ctor(javax.crypto.SecretKey secretKey, java.util.Set<java.security.KeyStore.Entry.Attribute> attributes)
+  class KeyStore.TrustedCertificateEntry
+    #ctor(java.security.cert.Certificate trustedCert)
+    #ctor(java.security.cert.Certificate trustedCert, java.util.Set<java.security.KeyStore.Entry.Attribute> attributes)
+  class KeyStoreException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class KeyStoreSpi
+    engineContainsAlias(java.lang.String alias)
+    engineDeleteEntry(java.lang.String alias)
+    engineEntryInstanceOf(java.lang.String alias, java.lang.Class<? extends java.security.KeyStore.Entry> entryClass)
+    engineGetCertificate(java.lang.String alias)
+    engineGetCertificateAlias(java.security.cert.Certificate cert)
+    engineGetCertificateChain(java.lang.String alias)
+    engineGetCreationDate(java.lang.String alias)
+    engineGetEntry(java.lang.String alias, java.security.KeyStore.ProtectionParameter protParam)
+    engineGetKey(java.lang.String alias, char[] password)
+    engineIsCertificateEntry(java.lang.String alias)
+    engineIsKeyEntry(java.lang.String alias)
+    engineLoad(java.io.InputStream stream, char[] password)
+    engineLoad(java.security.KeyStore.LoadStoreParameter param)
+    engineProbe(java.io.InputStream stream)
+    engineSetCertificateEntry(java.lang.String alias, java.security.cert.Certificate cert)
+    engineSetEntry(java.lang.String alias, java.security.KeyStore.Entry entry, java.security.KeyStore.ProtectionParameter protParam)
+    engineSetKeyEntry(java.lang.String alias, byte[] key, java.security.cert.Certificate[] chain)
+    engineSetKeyEntry(java.lang.String alias, java.security.Key key, char[] password, java.security.cert.Certificate[] chain)
+    engineStore(java.io.OutputStream stream, char[] password)
+    engineStore(java.security.KeyStore.LoadStoreParameter param)
+  class MessageDigest
+    digest(byte[] input)
+    digest(byte[] buf, int offset, int len)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    isEqual(byte[] digesta, byte[] digestb)
+    #ctor(java.lang.String algorithm)
+    update(byte input)
+    update(byte[] input)
+    update(byte[] input, int offset, int len)
+    update(java.nio.ByteBuffer input)
+  class MessageDigestSpi
+    engineDigest(byte[] buf, int offset, int len)
+    engineUpdate(byte input)
+    engineUpdate(byte[] input, int offset, int len)
+    engineUpdate(java.nio.ByteBuffer input)
+  class NoSuchAlgorithmException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class NoSuchProviderException
+    #ctor(java.lang.String msg)
+  class Permission
+    checkGuard(java.lang.Object object)
+    implies(java.security.Permission permission)
+    #ctor(java.lang.String name)
+  class PermissionCollection
+    add(java.security.Permission permission)
+    implies(java.security.Permission permission)
+  class Permissions
+    add(java.security.Permission permission)
+    implies(java.security.Permission permission)
+  class PKCS12Attribute
+    equals(java.lang.Object obj)
+    #ctor(byte[] encoded)
+    #ctor(java.lang.String name, java.lang.String value)
+  class Policy
+    getInstance(java.lang.String type, java.security.Policy.Parameters params)
+    getInstance(java.lang.String type, java.security.Policy.Parameters params, java.lang.String provider)
+    getInstance(java.lang.String type, java.security.Policy.Parameters params, java.security.Provider provider)
+    getPermissions(java.security.CodeSource codesource)
+    getPermissions(java.security.ProtectionDomain domain)
+    implies(java.security.ProtectionDomain domain, java.security.Permission permission)
+    setPolicy(java.security.Policy p)
+  class PolicySpi
+    engineGetPermissions(java.security.CodeSource codesource)
+    engineGetPermissions(java.security.ProtectionDomain domain)
+    engineImplies(java.security.ProtectionDomain domain, java.security.Permission permission)
+  interface Principal
+    equals(java.lang.Object another)
+    implies(javax.security.auth.Subject subject)
+  class PrivilegedActionException
+    #ctor(java.lang.Exception exception)
+  class ProtectionDomain
+    implies(java.security.Permission permission)
+    #ctor(java.security.CodeSource codesource, java.security.PermissionCollection permissions)
+    #ctor(java.security.CodeSource codesource, java.security.PermissionCollection permissions, java.lang.ClassLoader classloader, java.security.Principal[] principals)
+  class Provider
+    compute(java.lang.Object key, java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?> remappingFunction)
+    computeIfAbsent(java.lang.Object key, java.util.function.Function<? super java.lang.Object,?> mappingFunction)
+    computeIfPresent(java.lang.Object key, java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?> remappingFunction)
+    forEach(java.util.function.BiConsumer<? super java.lang.Object,? super java.lang.Object> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, java.lang.Object defaultValue)
+    getProperty(java.lang.String key)
+    getService(java.lang.String type, java.lang.String algorithm)
+    load(java.io.InputStream inStream)
+    merge(java.lang.Object key, java.lang.Object value, java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?> remappingFunction)
+    #ctor(java.lang.String name, double version, java.lang.String info)
+    put(java.lang.Object key, java.lang.Object value)
+    putAll(java.util.Map<?,?> t)
+    putIfAbsent(java.lang.Object key, java.lang.Object value)
+    putService(java.security.Provider.Service s)
+    remove(java.lang.Object key)
+    remove(java.lang.Object key, java.lang.Object value)
+    removeService(java.security.Provider.Service s)
+    replace(java.lang.Object key, java.lang.Object value)
+    replace(java.lang.Object key, java.lang.Object oldValue, java.lang.Object newValue)
+    replaceAll(java.util.function.BiFunction<? super java.lang.Object,? super java.lang.Object,?> function)
+  class Provider.Service
+    getAttribute(java.lang.String name)
+    newInstance(java.lang.Object constructorParameter)
+    #ctor(java.security.Provider provider, java.lang.String type, java.lang.String algorithm, java.lang.String className, java.util.List<java.lang.String> aliases, java.util.Map<java.lang.String,java.lang.String> attributes)
+    supportsParameter(java.lang.Object parameter)
+  class ProviderException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SecureClassLoader
+    defineClass(java.lang.String name, byte[] b, int off, int len, java.security.CodeSource cs)
+    defineClass(java.lang.String name, java.nio.ByteBuffer b, java.security.CodeSource cs)
+    getPermissions(java.security.CodeSource codesource)
+    #ctor(java.lang.ClassLoader parent)
+  class SecureRandom
+    generateSeed(int numBytes)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    getSeed(int numBytes)
+    next(int numBits)
+    nextBytes(byte[] bytes)
+    #ctor(byte[] seed)
+    #ctor(java.security.SecureRandomSpi secureRandomSpi, java.security.Provider provider)
+    setSeed(byte[] seed)
+    setSeed(long seed)
+  class SecureRandomSpi
+    engineGenerateSeed(int numBytes)
+    engineNextBytes(byte[] bytes)
+    engineSetSeed(byte[] seed)
+  class Security
+    addProvider(java.security.Provider provider)
+    getAlgorithmProperty(java.lang.String algName, java.lang.String propName)
+    getAlgorithms(java.lang.String serviceName)
+    getProperty(java.lang.String key)
+    getProvider(java.lang.String name)
+    getProviders(java.lang.String filter)
+    getProviders(java.util.Map<java.lang.String,java.lang.String> filter)
+    insertProviderAt(java.security.Provider provider, int position)
+    removeProvider(java.lang.String name)
+    setProperty(java.lang.String key, java.lang.String datum)
+  class SecurityPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class Signature
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    getParameter(java.lang.String param)
+    initSign(java.security.PrivateKey privateKey)
+    initSign(java.security.PrivateKey privateKey, java.security.SecureRandom random)
+    initVerify(java.security.cert.Certificate certificate)
+    initVerify(java.security.PublicKey publicKey)
+    setParameter(java.lang.String param, java.lang.Object value)
+    setParameter(java.security.spec.AlgorithmParameterSpec params)
+    sign(byte[] outbuf, int offset, int len)
+    #ctor(java.lang.String algorithm)
+    update(byte b)
+    update(byte[] data)
+    update(byte[] data, int off, int len)
+    update(java.nio.ByteBuffer data)
+    verify(byte[] signature)
+    verify(byte[] signature, int offset, int length)
+  class SignatureException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SignatureSpi
+    engineGetParameter(java.lang.String param)
+    engineInitSign(java.security.PrivateKey privateKey)
+    engineInitSign(java.security.PrivateKey privateKey, java.security.SecureRandom random)
+    engineInitVerify(java.security.PublicKey publicKey)
+    engineSetParameter(java.lang.String param, java.lang.Object value)
+    engineSetParameter(java.security.spec.AlgorithmParameterSpec params)
+    engineSign(byte[] outbuf, int offset, int len)
+    engineUpdate(byte b)
+    engineUpdate(byte[] b, int off, int len)
+    engineUpdate(java.nio.ByteBuffer input)
+    engineVerify(byte[] sigBytes)
+    engineVerify(byte[] sigBytes, int offset, int length)
+  class SignedObject
+    #ctor(java.io.Serializable object, java.security.PrivateKey signingKey, java.security.Signature signingEngine)
+    verify(java.security.PublicKey verificationKey, java.security.Signature verificationEngine)
+  class Signer
+    setKeyPair(java.security.KeyPair pair)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.security.IdentityScope scope)
+  class Timestamp
+    equals(java.lang.Object obj)
+    #ctor(java.util.Date timestamp, java.security.cert.CertPath signerCertPath)
+  class UnrecoverableEntryException
+    #ctor(java.lang.String msg)
+  class UnrecoverableKeyException
+    #ctor(java.lang.String msg)
+  class UnresolvedPermission
+    implies(java.security.Permission p)
+    #ctor(java.lang.String type, java.lang.String name, java.lang.String actions, java.security.cert.Certificate[] certs)
+
+package java.security.acl
+;---------------------------------------
+  interface Acl
+    addEntry(java.security.Principal caller, java.security.acl.AclEntry entry)
+    checkPermission(java.security.Principal principal, java.security.acl.Permission permission)
+    getPermissions(java.security.Principal user)
+    removeEntry(java.security.Principal caller, java.security.acl.AclEntry entry)
+    setName(java.security.Principal caller, java.lang.String name)
+  interface AclEntry
+    addPermission(java.security.acl.Permission permission)
+    checkPermission(java.security.acl.Permission permission)
+    removePermission(java.security.acl.Permission permission)
+    setPrincipal(java.security.Principal user)
+  interface Group
+    addMember(java.security.Principal user)
+    isMember(java.security.Principal member)
+    removeMember(java.security.Principal user)
+  interface Owner
+    addOwner(java.security.Principal caller, java.security.Principal owner)
+    deleteOwner(java.security.Principal caller, java.security.Principal owner)
+    isOwner(java.security.Principal owner)
+
+package java.security.cert
+;---------------------------------------
+  class Certificate
+    #ctor(java.lang.String type)
+    equals(java.lang.Object other)
+    verify(java.security.PublicKey key)
+    verify(java.security.PublicKey key, java.lang.String sigProvider)
+    verify(java.security.PublicKey key, java.security.Provider sigProvider)
+  class Certificate.CertificateRep
+    #ctor(java.lang.String type, byte[] data)
+  class CertificateEncodingException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class CertificateException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class CertificateExpiredException
+    #ctor(java.lang.String message)
+  class CertificateFactory
+    #ctor(java.security.cert.CertificateFactorySpi certFacSpi, java.security.Provider provider, java.lang.String type)
+    generateCertificate(java.io.InputStream inStream)
+    generateCertificates(java.io.InputStream inStream)
+    generateCertPath(java.io.InputStream inStream)
+    generateCertPath(java.io.InputStream inStream, java.lang.String encoding)
+    generateCertPath(java.util.List<? extends java.security.cert.Certificate> certificates)
+    generateCRL(java.io.InputStream inStream)
+    generateCRLs(java.io.InputStream inStream)
+    getInstance(java.lang.String type)
+    getInstance(java.lang.String type, java.lang.String provider)
+    getInstance(java.lang.String type, java.security.Provider provider)
+  class CertificateFactorySpi
+    engineGenerateCertificate(java.io.InputStream inStream)
+    engineGenerateCertificates(java.io.InputStream inStream)
+    engineGenerateCertPath(java.io.InputStream inStream)
+    engineGenerateCertPath(java.io.InputStream inStream, java.lang.String encoding)
+    engineGenerateCertPath(java.util.List<? extends java.security.cert.Certificate> certificates)
+    engineGenerateCRL(java.io.InputStream inStream)
+    engineGenerateCRLs(java.io.InputStream inStream)
+  class CertificateNotYetValidException
+    #ctor(java.lang.String message)
+  class CertificateParsingException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class CertificateRevokedException
+    #ctor(java.util.Date revocationDate, java.security.cert.CRLReason reason, javax.security.auth.x500.X500Principal authority, java.util.Map<java.lang.String,java.security.cert.Extension> extensions)
+  class CertPath
+    #ctor(java.lang.String type)
+    equals(java.lang.Object other)
+    getEncoded(java.lang.String encoding)
+  class CertPath.CertPathRep
+    #ctor(java.lang.String type, byte[] data)
+  class CertPathBuilder
+    build(java.security.cert.CertPathParameters params)
+    #ctor(java.security.cert.CertPathBuilderSpi builderSpi, java.security.Provider provider, java.lang.String algorithm)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+  class CertPathBuilderException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String msg, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class CertPathBuilderSpi
+    engineBuild(java.security.cert.CertPathParameters params)
+  interface CertPathChecker
+    check(java.security.cert.Certificate cert)
+    init(boolean forward)
+  class CertPathValidator
+    #ctor(java.security.cert.CertPathValidatorSpi validatorSpi, java.security.Provider provider, java.lang.String algorithm)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    validate(java.security.cert.CertPath certPath, java.security.cert.CertPathParameters params)
+  class CertPathValidatorException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String msg, java.lang.Throwable cause)
+    #ctor(java.lang.String msg, java.lang.Throwable cause, java.security.cert.CertPath certPath, int index)
+    #ctor(java.lang.String msg, java.lang.Throwable cause, java.security.cert.CertPath certPath, int index, java.security.cert.CertPathValidatorException.Reason reason)
+    #ctor(java.lang.Throwable cause)
+  class CertPathValidatorSpi
+    engineValidate(java.security.cert.CertPath certPath, java.security.cert.CertPathParameters params)
+  interface CertSelector
+    match(java.security.cert.Certificate cert)
+  class CertStore
+    #ctor(java.security.cert.CertStoreSpi storeSpi, java.security.Provider provider, java.lang.String type, java.security.cert.CertStoreParameters params)
+    getCertificates(java.security.cert.CertSelector selector)
+    getCRLs(java.security.cert.CRLSelector selector)
+    getInstance(java.lang.String type, java.security.cert.CertStoreParameters params)
+    getInstance(java.lang.String type, java.security.cert.CertStoreParameters params, java.lang.String provider)
+    getInstance(java.lang.String type, java.security.cert.CertStoreParameters params, java.security.Provider provider)
+  class CertStoreException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String msg, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class CertStoreSpi
+    #ctor(java.security.cert.CertStoreParameters params)
+    engineGetCertificates(java.security.cert.CertSelector selector)
+    engineGetCRLs(java.security.cert.CRLSelector selector)
+  class CollectionCertStoreParameters
+    #ctor(java.util.Collection<?> collection)
+  class CRL
+    #ctor(java.lang.String type)
+    isRevoked(java.security.cert.Certificate cert)
+  class CRLException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface CRLSelector
+    match(java.security.cert.CRL crl)
+  interface Extension
+    encode(java.io.OutputStream out)
+  class LDAPCertStoreParameters
+    #ctor(java.lang.String serverName)
+    #ctor(java.lang.String serverName, int port)
+  class PKIXBuilderParameters
+    #ctor(java.security.KeyStore keystore, java.security.cert.CertSelector targetConstraints)
+    #ctor(java.util.Set<java.security.cert.TrustAnchor> trustAnchors, java.security.cert.CertSelector targetConstraints)
+    setMaxPathLength(int maxPathLength)
+  class PKIXCertPathBuilderResult
+    #ctor(java.security.cert.CertPath certPath, java.security.cert.TrustAnchor trustAnchor, java.security.cert.PolicyNode policyTree, java.security.PublicKey subjectPublicKey)
+  class PKIXCertPathChecker
+    check(java.security.cert.Certificate cert)
+    check(java.security.cert.Certificate cert, java.util.Collection<java.lang.String> unresolvedCritExts)
+    init(boolean forward)
+  class PKIXCertPathValidatorResult
+    #ctor(java.security.cert.TrustAnchor trustAnchor, java.security.cert.PolicyNode policyTree, java.security.PublicKey subjectPublicKey)
+  class PKIXParameters
+    addCertPathChecker(java.security.cert.PKIXCertPathChecker checker)
+    addCertStore(java.security.cert.CertStore store)
+    #ctor(java.security.KeyStore keystore)
+    #ctor(java.util.Set<java.security.cert.TrustAnchor> trustAnchors)
+    setAnyPolicyInhibited(boolean val)
+    setCertPathCheckers(java.util.List<java.security.cert.PKIXCertPathChecker> checkers)
+    setCertStores(java.util.List<java.security.cert.CertStore> stores)
+    setDate(java.util.Date date)
+    setExplicitPolicyRequired(boolean val)
+    setInitialPolicies(java.util.Set<java.lang.String> initialPolicies)
+    setPolicyMappingInhibited(boolean val)
+    setPolicyQualifiersRejected(boolean qualifiersRejected)
+    setRevocationEnabled(boolean val)
+    setSigProvider(java.lang.String sigProvider)
+    setTargetCertConstraints(java.security.cert.CertSelector selector)
+    setTrustAnchors(java.util.Set<java.security.cert.TrustAnchor> trustAnchors)
+  class PKIXRevocationChecker
+    setOcspExtensions(java.util.List<java.security.cert.Extension> extensions)
+    setOcspResponder(java.net.URI uri)
+    setOcspResponderCert(java.security.cert.X509Certificate cert)
+    setOcspResponses(java.util.Map<java.security.cert.X509Certificate,byte[]> responses)
+    setOptions(java.util.Set<java.security.cert.PKIXRevocationChecker.Option> options)
+  class PolicyQualifierInfo
+    #ctor(byte[] encoded)
+  class TrustAnchor
+    #ctor(java.lang.String caName, java.security.PublicKey pubKey, byte[] nameConstraints)
+    #ctor(java.security.cert.X509Certificate trustedCert, byte[] nameConstraints)
+    #ctor(javax.security.auth.x500.X500Principal caPrincipal, java.security.PublicKey pubKey, byte[] nameConstraints)
+  class URICertStoreParameters
+    equals(java.lang.Object p)
+    #ctor(java.net.URI uri)
+  class X509Certificate
+    checkValidity(java.util.Date date)
+    verify(java.security.PublicKey key, java.security.Provider sigProvider)
+  class X509CertSelector
+    addPathToName(int type, byte[] name)
+    addPathToName(int type, java.lang.String name)
+    addSubjectAlternativeName(int type, byte[] name)
+    addSubjectAlternativeName(int type, java.lang.String name)
+    match(java.security.cert.Certificate cert)
+    setAuthorityKeyIdentifier(byte[] authorityKeyID)
+    setBasicConstraints(int minMaxPathLen)
+    setCertificate(java.security.cert.X509Certificate cert)
+    setCertificateValid(java.util.Date certValid)
+    setExtendedKeyUsage(java.util.Set<java.lang.String> keyPurposeSet)
+    setIssuer(byte[] issuerDN)
+    setIssuer(java.lang.String issuerDN)
+    setIssuer(javax.security.auth.x500.X500Principal issuer)
+    setKeyUsage(boolean[] keyUsage)
+    setMatchAllSubjectAltNames(boolean matchAllNames)
+    setNameConstraints(byte[] bytes)
+    setPathToNames(java.util.Collection<java.util.List<?>> names)
+    setPolicy(java.util.Set<java.lang.String> certPolicySet)
+    setPrivateKeyValid(java.util.Date privateKeyValid)
+    setSerialNumber(java.math.BigInteger serial)
+    setSubject(byte[] subjectDN)
+    setSubject(java.lang.String subjectDN)
+    setSubject(javax.security.auth.x500.X500Principal subject)
+    setSubjectAlternativeNames(java.util.Collection<java.util.List<?>> names)
+    setSubjectKeyIdentifier(byte[] subjectKeyID)
+    setSubjectPublicKey(byte[] key)
+    setSubjectPublicKey(java.security.PublicKey key)
+    setSubjectPublicKeyAlgID(java.lang.String oid)
+  class X509CRL
+    equals(java.lang.Object other)
+    getRevokedCertificate(java.math.BigInteger serialNumber)
+    getRevokedCertificate(java.security.cert.X509Certificate certificate)
+    verify(java.security.PublicKey key)
+    verify(java.security.PublicKey key, java.lang.String sigProvider)
+    verify(java.security.PublicKey key, java.security.Provider sigProvider)
+  class X509CRLEntry
+    equals(java.lang.Object other)
+  class X509CRLSelector
+    addIssuer(javax.security.auth.x500.X500Principal issuer)
+    addIssuerName(byte[] name)
+    addIssuerName(java.lang.String name)
+    match(java.security.cert.CRL crl)
+    setCertificateChecking(java.security.cert.X509Certificate cert)
+    setDateAndTime(java.util.Date dateAndTime)
+    setIssuerNames(java.util.Collection<?> names)
+    setIssuers(java.util.Collection<javax.security.auth.x500.X500Principal> issuers)
+    setMaxCRLNumber(java.math.BigInteger maxCRL)
+    setMinCRLNumber(java.math.BigInteger minCRL)
+  interface X509Extension
+    getExtensionValue(java.lang.String oid)
+
+package java.security.interfaces
+;---------------------------------------
+  interface DSAKeyPairGenerator
+    initialize(int modlen, boolean genParams, java.security.SecureRandom random)
+    initialize(java.security.interfaces.DSAParams params, java.security.SecureRandom random)
+
+package java.security.spec
+;---------------------------------------
+  class DSAParameterSpec
+    #ctor(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g)
+  class DSAPrivateKeySpec
+    #ctor(java.math.BigInteger x, java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g)
+  class DSAPublicKeySpec
+    #ctor(java.math.BigInteger y, java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g)
+  class ECFieldF2m
+    #ctor(int m)
+    #ctor(int m, int[] ks)
+    #ctor(int m, java.math.BigInteger rp)
+    equals(java.lang.Object obj)
+  class ECFieldFp
+    #ctor(java.math.BigInteger p)
+    equals(java.lang.Object obj)
+  class ECGenParameterSpec
+    #ctor(java.lang.String stdName)
+  class ECParameterSpec
+    #ctor(java.security.spec.EllipticCurve curve, java.security.spec.ECPoint g, java.math.BigInteger n, int h)
+  class ECPoint
+    #ctor(java.math.BigInteger x, java.math.BigInteger y)
+    equals(java.lang.Object obj)
+  class ECPrivateKeySpec
+    #ctor(java.math.BigInteger s, java.security.spec.ECParameterSpec params)
+  class ECPublicKeySpec
+    #ctor(java.security.spec.ECPoint w, java.security.spec.ECParameterSpec params)
+  class EdECPoint
+    #ctor(boolean xOdd, java.math.BigInteger y)
+  class EdECPrivateKeySpec
+    #ctor(java.security.spec.NamedParameterSpec params, byte[] bytes)
+  class EdECPublicKeySpec
+    #ctor(java.security.spec.NamedParameterSpec params, java.security.spec.EdECPoint point)
+  class EllipticCurve
+    #ctor(java.security.spec.ECField field, java.math.BigInteger a, java.math.BigInteger b)
+    #ctor(java.security.spec.ECField field, java.math.BigInteger a, java.math.BigInteger b, byte[] seed)
+    equals(java.lang.Object obj)
+  class EncodedKeySpec
+    #ctor(byte[] encodedKey)
+  class InvalidKeySpecException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class InvalidParameterSpecException
+    #ctor(java.lang.String msg)
+  class MGF1ParameterSpec
+    #ctor(java.lang.String mdName)
+  class NamedParameterSpec
+    #ctor(java.lang.String stdName)
+  class PKCS8EncodedKeySpec
+    #ctor(byte[] encodedKey)
+  class PSSParameterSpec
+    #ctor(int saltLen)
+    #ctor(java.lang.String mdName, java.lang.String mgfName, java.security.spec.AlgorithmParameterSpec mgfSpec, int saltLen, int trailerField)
+  class RSAKeyGenParameterSpec
+    #ctor(int keysize, java.math.BigInteger publicExponent)
+  class RSAMultiPrimePrivateCrtKeySpec
+    #ctor(java.math.BigInteger modulus, java.math.BigInteger publicExponent, java.math.BigInteger privateExponent, java.math.BigInteger primeP, java.math.BigInteger primeQ, java.math.BigInteger primeExponentP, java.math.BigInteger primeExponentQ, java.math.BigInteger crtCoefficient, java.security.spec.RSAOtherPrimeInfo[] otherPrimeInfo)
+  class RSAOtherPrimeInfo
+    #ctor(java.math.BigInteger prime, java.math.BigInteger primeExponent, java.math.BigInteger crtCoefficient)
+  class RSAPrivateCrtKeySpec
+    #ctor(java.math.BigInteger modulus, java.math.BigInteger publicExponent, java.math.BigInteger privateExponent, java.math.BigInteger primeP, java.math.BigInteger primeQ, java.math.BigInteger primeExponentP, java.math.BigInteger primeExponentQ, java.math.BigInteger crtCoefficient)
+  class RSAPrivateKeySpec
+    #ctor(java.math.BigInteger modulus, java.math.BigInteger privateExponent)
+  class RSAPublicKeySpec
+    #ctor(java.math.BigInteger modulus, java.math.BigInteger publicExponent)
+  class X509EncodedKeySpec
+    #ctor(byte[] encodedKey)
+  class XECPrivateKeySpec
+    #ctor(java.security.spec.AlgorithmParameterSpec params, byte[] scalar)
+  class XECPublicKeySpec
+    #ctor(java.security.spec.AlgorithmParameterSpec params, java.math.BigInteger u)
+
+package java.sql
+;---------------------------------------
+  interface Array
+    getArray(java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getArray(long index, int count)
+    getArray(long index, int count, java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getResultSet(java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getResultSet(long index, int count)
+    getResultSet(long index, int count, java.util.Map<java.lang.String,java.lang.Class<?>> map)
+  class BatchUpdateException
+    #ctor(int[] updateCounts)
+    #ctor(int[] updateCounts, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, int[] updateCounts)
+    #ctor(java.lang.String reason, int[] updateCounts, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, int[] updateCounts)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, int[] updateCounts, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int[] updateCounts)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int[] updateCounts, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface Blob
+    getBinaryStream(long pos, long length)
+    getBytes(long pos, int length)
+    position(byte[] pattern, long start)
+    position(java.sql.Blob pattern, long start)
+    setBinaryStream(long pos)
+    setBytes(long pos, byte[] bytes)
+    setBytes(long pos, byte[] bytes, int offset, int len)
+    truncate(long len)
+  interface CallableStatement
+    getArray(int parameterIndex)
+    getArray(java.lang.String parameterName)
+    getBigDecimal(int parameterIndex)
+    getBigDecimal(int parameterIndex, int scale)
+    getBigDecimal(java.lang.String parameterName)
+    getBlob(int parameterIndex)
+    getBlob(java.lang.String parameterName)
+    getBoolean(int parameterIndex)
+    getBoolean(java.lang.String parameterName)
+    getByte(int parameterIndex)
+    getByte(java.lang.String parameterName)
+    getBytes(int parameterIndex)
+    getBytes(java.lang.String parameterName)
+    getCharacterStream(int parameterIndex)
+    getCharacterStream(java.lang.String parameterName)
+    getClob(int parameterIndex)
+    getClob(java.lang.String parameterName)
+    getDate(int parameterIndex)
+    getDate(int parameterIndex, java.util.Calendar cal)
+    getDate(java.lang.String parameterName)
+    getDate(java.lang.String parameterName, java.util.Calendar cal)
+    getDouble(int parameterIndex)
+    getDouble(java.lang.String parameterName)
+    getFloat(int parameterIndex)
+    getFloat(java.lang.String parameterName)
+    getInt(int parameterIndex)
+    getInt(java.lang.String parameterName)
+    getLong(int parameterIndex)
+    getLong(java.lang.String parameterName)
+    getNCharacterStream(int parameterIndex)
+    getNCharacterStream(java.lang.String parameterName)
+    getNClob(int parameterIndex)
+    getNClob(java.lang.String parameterName)
+    getNString(int parameterIndex)
+    getNString(java.lang.String parameterName)
+    getObject(int parameterIndex)
+    getObject(int parameterIndex, java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getObject(java.lang.String parameterName)
+    getObject(java.lang.String parameterName, java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getRef(int parameterIndex)
+    getRef(java.lang.String parameterName)
+    getRowId(int parameterIndex)
+    getRowId(java.lang.String parameterName)
+    getShort(int parameterIndex)
+    getShort(java.lang.String parameterName)
+    getSQLXML(int parameterIndex)
+    getSQLXML(java.lang.String parameterName)
+    getString(int parameterIndex)
+    getString(java.lang.String parameterName)
+    getTime(int parameterIndex)
+    getTime(int parameterIndex, java.util.Calendar cal)
+    getTime(java.lang.String parameterName)
+    getTime(java.lang.String parameterName, java.util.Calendar cal)
+    getTimestamp(int parameterIndex)
+    getTimestamp(int parameterIndex, java.util.Calendar cal)
+    getTimestamp(java.lang.String parameterName)
+    getTimestamp(java.lang.String parameterName, java.util.Calendar cal)
+    getURL(int parameterIndex)
+    getURL(java.lang.String parameterName)
+    registerOutParameter(int parameterIndex, int sqlType)
+    registerOutParameter(int parameterIndex, int sqlType, int scale)
+    registerOutParameter(int parameterIndex, int sqlType, java.lang.String typeName)
+    registerOutParameter(java.lang.String parameterName, int sqlType)
+    registerOutParameter(java.lang.String parameterName, int sqlType, int scale)
+    registerOutParameter(java.lang.String parameterName, int sqlType, java.lang.String typeName)
+    setAsciiStream(java.lang.String parameterName, java.io.InputStream x)
+    setAsciiStream(java.lang.String parameterName, java.io.InputStream x, int length)
+    setAsciiStream(java.lang.String parameterName, java.io.InputStream x, long length)
+    setBigDecimal(java.lang.String parameterName, java.math.BigDecimal x)
+    setBinaryStream(java.lang.String parameterName, java.io.InputStream x)
+    setBinaryStream(java.lang.String parameterName, java.io.InputStream x, int length)
+    setBinaryStream(java.lang.String parameterName, java.io.InputStream x, long length)
+    setBlob(java.lang.String parameterName, java.io.InputStream inputStream)
+    setBlob(java.lang.String parameterName, java.io.InputStream inputStream, long length)
+    setBlob(java.lang.String parameterName, java.sql.Blob x)
+    setBoolean(java.lang.String parameterName, boolean x)
+    setByte(java.lang.String parameterName, byte x)
+    setBytes(java.lang.String parameterName, byte[] x)
+    setCharacterStream(java.lang.String parameterName, java.io.Reader reader)
+    setCharacterStream(java.lang.String parameterName, java.io.Reader reader, int length)
+    setCharacterStream(java.lang.String parameterName, java.io.Reader reader, long length)
+    setClob(java.lang.String parameterName, java.io.Reader reader)
+    setClob(java.lang.String parameterName, java.io.Reader reader, long length)
+    setClob(java.lang.String parameterName, java.sql.Clob x)
+    setDate(java.lang.String parameterName, java.sql.Date x)
+    setDate(java.lang.String parameterName, java.sql.Date x, java.util.Calendar cal)
+    setDouble(java.lang.String parameterName, double x)
+    setFloat(java.lang.String parameterName, float x)
+    setInt(java.lang.String parameterName, int x)
+    setLong(java.lang.String parameterName, long x)
+    setNCharacterStream(java.lang.String parameterName, java.io.Reader value)
+    setNCharacterStream(java.lang.String parameterName, java.io.Reader value, long length)
+    setNClob(java.lang.String parameterName, java.io.Reader reader)
+    setNClob(java.lang.String parameterName, java.io.Reader reader, long length)
+    setNClob(java.lang.String parameterName, java.sql.NClob value)
+    setNString(java.lang.String parameterName, java.lang.String value)
+    setNull(java.lang.String parameterName, int sqlType)
+    setNull(java.lang.String parameterName, int sqlType, java.lang.String typeName)
+    setObject(java.lang.String parameterName, java.lang.Object x)
+    setObject(java.lang.String parameterName, java.lang.Object x, int targetSqlType)
+    setObject(java.lang.String parameterName, java.lang.Object x, int targetSqlType, int scale)
+    setRowId(java.lang.String parameterName, java.sql.RowId x)
+    setShort(java.lang.String parameterName, short x)
+    setSQLXML(java.lang.String parameterName, java.sql.SQLXML xmlObject)
+    setString(java.lang.String parameterName, java.lang.String x)
+    setTime(java.lang.String parameterName, java.sql.Time x)
+    setTime(java.lang.String parameterName, java.sql.Time x, java.util.Calendar cal)
+    setTimestamp(java.lang.String parameterName, java.sql.Timestamp x)
+    setTimestamp(java.lang.String parameterName, java.sql.Timestamp x, java.util.Calendar cal)
+    setURL(java.lang.String parameterName, java.net.URL val)
+  interface Clob
+    getCharacterStream(long pos, long length)
+    getSubString(long pos, int length)
+    position(java.lang.String searchstr, long start)
+    position(java.sql.Clob searchstr, long start)
+    setAsciiStream(long pos)
+    setCharacterStream(long pos)
+    setString(long pos, java.lang.String str)
+    setString(long pos, java.lang.String str, int offset, int len)
+    truncate(long len)
+  interface Connection
+    createArrayOf(java.lang.String typeName, java.lang.Object[] elements)
+    createStatement(int resultSetType, int resultSetConcurrency)
+    createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability)
+    createStruct(java.lang.String typeName, java.lang.Object[] attributes)
+    getClientInfo(java.lang.String name)
+    isValid(int timeout)
+    nativeSQL(java.lang.String sql)
+    prepareCall(java.lang.String sql)
+    prepareCall(java.lang.String sql, int resultSetType, int resultSetConcurrency)
+    prepareCall(java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
+    prepareStatement(java.lang.String sql)
+    prepareStatement(java.lang.String sql, int autoGeneratedKeys)
+    prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency)
+    prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
+    prepareStatement(java.lang.String sql, int[] columnIndexes)
+    prepareStatement(java.lang.String sql, java.lang.String[] columnNames)
+    releaseSavepoint(java.sql.Savepoint savepoint)
+    rollback(java.sql.Savepoint savepoint)
+    setAutoCommit(boolean autoCommit)
+    setCatalog(java.lang.String catalog)
+    setClientInfo(java.lang.String name, java.lang.String value)
+    setClientInfo(java.util.Properties properties)
+    setHoldability(int holdability)
+    setReadOnly(boolean readOnly)
+    setSavepoint(java.lang.String name)
+    setTransactionIsolation(int level)
+    setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>> map)
+  interface DatabaseMetaData
+    deletesAreDetected(int type)
+    getAttributes(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern, java.lang.String attributeNamePattern)
+    getBestRowIdentifier(java.lang.String catalog, java.lang.String schema, java.lang.String table, int scope, boolean nullable)
+    getColumnPrivileges(java.lang.String catalog, java.lang.String schema, java.lang.String table, java.lang.String columnNamePattern)
+    getColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String columnNamePattern)
+    getCrossReference(java.lang.String parentCatalog, java.lang.String parentSchema, java.lang.String parentTable, java.lang.String foreignCatalog, java.lang.String foreignSchema, java.lang.String foreignTable)
+    getExportedKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table)
+    getFunctionColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String functionNamePattern, java.lang.String columnNamePattern)
+    getFunctions(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String functionNamePattern)
+    getImportedKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table)
+    getIndexInfo(java.lang.String catalog, java.lang.String schema, java.lang.String table, boolean unique, boolean approximate)
+    getPrimaryKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table)
+    getProcedureColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String procedureNamePattern, java.lang.String columnNamePattern)
+    getProcedures(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String procedureNamePattern)
+    getSchemas(java.lang.String catalog, java.lang.String schemaPattern)
+    getSuperTables(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern)
+    getSuperTypes(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern)
+    getTablePrivileges(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern)
+    getTables(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String[] types)
+    getUDTs(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern, int[] types)
+    getVersionColumns(java.lang.String catalog, java.lang.String schema, java.lang.String table)
+    insertsAreDetected(int type)
+    othersDeletesAreVisible(int type)
+    othersInsertsAreVisible(int type)
+    othersUpdatesAreVisible(int type)
+    ownDeletesAreVisible(int type)
+    ownInsertsAreVisible(int type)
+    ownUpdatesAreVisible(int type)
+    supportsConvert(int fromType, int toType)
+    supportsResultSetConcurrency(int type, int concurrency)
+    supportsResultSetHoldability(int holdability)
+    supportsResultSetType(int type)
+    supportsTransactionIsolationLevel(int level)
+    updatesAreDetected(int type)
+  class DataTruncation
+    #ctor(int index, boolean parameter, boolean read, int dataSize, int transferSize)
+    #ctor(int index, boolean parameter, boolean read, int dataSize, int transferSize, java.lang.Throwable cause)
+  class Date
+    #ctor(int year, int month, int day)
+    #ctor(long date)
+    setHours(int i)
+    setMinutes(int i)
+    setSeconds(int i)
+    setTime(long date)
+    valueOf(java.lang.String s)
+  interface Driver
+    acceptsURL(java.lang.String url)
+    connect(java.lang.String url, java.util.Properties info)
+    getPropertyInfo(java.lang.String url, java.util.Properties info)
+  class DriverManager
+    deregisterDriver(java.sql.Driver driver)
+    getConnection(java.lang.String url)
+    getConnection(java.lang.String url, java.lang.String user, java.lang.String password)
+    getConnection(java.lang.String url, java.util.Properties info)
+    getDriver(java.lang.String url)
+    println(java.lang.String message)
+    registerDriver(java.sql.Driver driver)
+    setLoginTimeout(int seconds)
+    setLogStream(java.io.PrintStream out)
+    setLogWriter(java.io.PrintWriter out)
+  class DriverPropertyInfo
+    #ctor(java.lang.String name, java.lang.String value)
+  interface ParameterMetaData
+    getParameterClassName(int param)
+    getParameterMode(int param)
+    getParameterType(int param)
+    getParameterTypeName(int param)
+    getPrecision(int param)
+    getScale(int param)
+    isNullable(int param)
+    isSigned(int param)
+  interface PreparedStatement
+    setArray(int parameterIndex, java.sql.Array x)
+    setAsciiStream(int parameterIndex, java.io.InputStream x)
+    setAsciiStream(int parameterIndex, java.io.InputStream x, int length)
+    setAsciiStream(int parameterIndex, java.io.InputStream x, long length)
+    setBigDecimal(int parameterIndex, java.math.BigDecimal x)
+    setBinaryStream(int parameterIndex, java.io.InputStream x)
+    setBinaryStream(int parameterIndex, java.io.InputStream x, int length)
+    setBinaryStream(int parameterIndex, java.io.InputStream x, long length)
+    setBlob(int parameterIndex, java.io.InputStream inputStream)
+    setBlob(int parameterIndex, java.io.InputStream inputStream, long length)
+    setBlob(int parameterIndex, java.sql.Blob x)
+    setBoolean(int parameterIndex, boolean x)
+    setByte(int parameterIndex, byte x)
+    setBytes(int parameterIndex, byte[] x)
+    setCharacterStream(int parameterIndex, java.io.Reader reader)
+    setCharacterStream(int parameterIndex, java.io.Reader reader, int length)
+    setCharacterStream(int parameterIndex, java.io.Reader reader, long length)
+    setClob(int parameterIndex, java.io.Reader reader)
+    setClob(int parameterIndex, java.io.Reader reader, long length)
+    setClob(int parameterIndex, java.sql.Clob x)
+    setDate(int parameterIndex, java.sql.Date x)
+    setDate(int parameterIndex, java.sql.Date x, java.util.Calendar cal)
+    setDouble(int parameterIndex, double x)
+    setFloat(int parameterIndex, float x)
+    setInt(int parameterIndex, int x)
+    setLong(int parameterIndex, long x)
+    setNCharacterStream(int parameterIndex, java.io.Reader value)
+    setNCharacterStream(int parameterIndex, java.io.Reader value, long length)
+    setNClob(int parameterIndex, java.io.Reader reader)
+    setNClob(int parameterIndex, java.io.Reader reader, long length)
+    setNClob(int parameterIndex, java.sql.NClob value)
+    setNString(int parameterIndex, java.lang.String value)
+    setNull(int parameterIndex, int sqlType)
+    setNull(int parameterIndex, int sqlType, java.lang.String typeName)
+    setObject(int parameterIndex, java.lang.Object x)
+    setObject(int parameterIndex, java.lang.Object x, int targetSqlType)
+    setObject(int parameterIndex, java.lang.Object x, int targetSqlType, int scaleOrLength)
+    setRef(int parameterIndex, java.sql.Ref x)
+    setRowId(int parameterIndex, java.sql.RowId x)
+    setShort(int parameterIndex, short x)
+    setSQLXML(int parameterIndex, java.sql.SQLXML xmlObject)
+    setString(int parameterIndex, java.lang.String x)
+    setTime(int parameterIndex, java.sql.Time x)
+    setTime(int parameterIndex, java.sql.Time x, java.util.Calendar cal)
+    setTimestamp(int parameterIndex, java.sql.Timestamp x)
+    setTimestamp(int parameterIndex, java.sql.Timestamp x, java.util.Calendar cal)
+    setUnicodeStream(int parameterIndex, java.io.InputStream x, int length)
+    setURL(int parameterIndex, java.net.URL x)
+  interface Ref
+    getObject(java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    setObject(java.lang.Object value)
+  interface ResultSet
+    absolute(int row)
+    findColumn(java.lang.String columnLabel)
+    getArray(int columnIndex)
+    getArray(java.lang.String columnLabel)
+    getAsciiStream(int columnIndex)
+    getAsciiStream(java.lang.String columnLabel)
+    getBigDecimal(int columnIndex)
+    getBigDecimal(int columnIndex, int scale)
+    getBigDecimal(java.lang.String columnLabel)
+    getBigDecimal(java.lang.String columnLabel, int scale)
+    getBinaryStream(int columnIndex)
+    getBinaryStream(java.lang.String columnLabel)
+    getBlob(int columnIndex)
+    getBlob(java.lang.String columnLabel)
+    getBoolean(int columnIndex)
+    getBoolean(java.lang.String columnLabel)
+    getByte(int columnIndex)
+    getByte(java.lang.String columnLabel)
+    getBytes(int columnIndex)
+    getBytes(java.lang.String columnLabel)
+    getCharacterStream(int columnIndex)
+    getCharacterStream(java.lang.String columnLabel)
+    getClob(int columnIndex)
+    getClob(java.lang.String columnLabel)
+    getDate(int columnIndex)
+    getDate(int columnIndex, java.util.Calendar cal)
+    getDate(java.lang.String columnLabel)
+    getDate(java.lang.String columnLabel, java.util.Calendar cal)
+    getDouble(int columnIndex)
+    getDouble(java.lang.String columnLabel)
+    getFloat(int columnIndex)
+    getFloat(java.lang.String columnLabel)
+    getInt(int columnIndex)
+    getInt(java.lang.String columnLabel)
+    getLong(int columnIndex)
+    getLong(java.lang.String columnLabel)
+    getNCharacterStream(int columnIndex)
+    getNCharacterStream(java.lang.String columnLabel)
+    getNClob(int columnIndex)
+    getNClob(java.lang.String columnLabel)
+    getNString(int columnIndex)
+    getNString(java.lang.String columnLabel)
+    getObject(int columnIndex)
+    getObject(int columnIndex, java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getObject(java.lang.String columnLabel)
+    getObject(java.lang.String columnLabel, java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    getRef(int columnIndex)
+    getRef(java.lang.String columnLabel)
+    getRowId(int columnIndex)
+    getRowId(java.lang.String columnLabel)
+    getShort(int columnIndex)
+    getShort(java.lang.String columnLabel)
+    getSQLXML(int columnIndex)
+    getSQLXML(java.lang.String columnLabel)
+    getString(int columnIndex)
+    getString(java.lang.String columnLabel)
+    getTime(int columnIndex)
+    getTime(int columnIndex, java.util.Calendar cal)
+    getTime(java.lang.String columnLabel)
+    getTime(java.lang.String columnLabel, java.util.Calendar cal)
+    getTimestamp(int columnIndex)
+    getTimestamp(int columnIndex, java.util.Calendar cal)
+    getTimestamp(java.lang.String columnLabel)
+    getTimestamp(java.lang.String columnLabel, java.util.Calendar cal)
+    getUnicodeStream(int columnIndex)
+    getUnicodeStream(java.lang.String columnLabel)
+    getURL(int columnIndex)
+    getURL(java.lang.String columnLabel)
+    relative(int rows)
+    setFetchDirection(int direction)
+    setFetchSize(int rows)
+    updateArray(int columnIndex, java.sql.Array x)
+    updateArray(java.lang.String columnLabel, java.sql.Array x)
+    updateAsciiStream(int columnIndex, java.io.InputStream x)
+    updateAsciiStream(int columnIndex, java.io.InputStream x, int length)
+    updateAsciiStream(int columnIndex, java.io.InputStream x, long length)
+    updateAsciiStream(java.lang.String columnLabel, java.io.InputStream x)
+    updateAsciiStream(java.lang.String columnLabel, java.io.InputStream x, int length)
+    updateAsciiStream(java.lang.String columnLabel, java.io.InputStream x, long length)
+    updateBigDecimal(int columnIndex, java.math.BigDecimal x)
+    updateBigDecimal(java.lang.String columnLabel, java.math.BigDecimal x)
+    updateBinaryStream(int columnIndex, java.io.InputStream x)
+    updateBinaryStream(int columnIndex, java.io.InputStream x, int length)
+    updateBinaryStream(int columnIndex, java.io.InputStream x, long length)
+    updateBinaryStream(java.lang.String columnLabel, java.io.InputStream x)
+    updateBinaryStream(java.lang.String columnLabel, java.io.InputStream x, int length)
+    updateBinaryStream(java.lang.String columnLabel, java.io.InputStream x, long length)
+    updateBlob(int columnIndex, java.io.InputStream inputStream)
+    updateBlob(int columnIndex, java.io.InputStream inputStream, long length)
+    updateBlob(int columnIndex, java.sql.Blob x)
+    updateBlob(java.lang.String columnLabel, java.io.InputStream inputStream)
+    updateBlob(java.lang.String columnLabel, java.io.InputStream inputStream, long length)
+    updateBlob(java.lang.String columnLabel, java.sql.Blob x)
+    updateBoolean(int columnIndex, boolean x)
+    updateBoolean(java.lang.String columnLabel, boolean x)
+    updateByte(int columnIndex, byte x)
+    updateByte(java.lang.String columnLabel, byte x)
+    updateBytes(int columnIndex, byte[] x)
+    updateBytes(java.lang.String columnLabel, byte[] x)
+    updateCharacterStream(int columnIndex, java.io.Reader x)
+    updateCharacterStream(int columnIndex, java.io.Reader x, int length)
+    updateCharacterStream(int columnIndex, java.io.Reader x, long length)
+    updateCharacterStream(java.lang.String columnLabel, java.io.Reader reader)
+    updateCharacterStream(java.lang.String columnLabel, java.io.Reader reader, int length)
+    updateCharacterStream(java.lang.String columnLabel, java.io.Reader reader, long length)
+    updateClob(int columnIndex, java.io.Reader reader)
+    updateClob(int columnIndex, java.io.Reader reader, long length)
+    updateClob(int columnIndex, java.sql.Clob x)
+    updateClob(java.lang.String columnLabel, java.io.Reader reader)
+    updateClob(java.lang.String columnLabel, java.io.Reader reader, long length)
+    updateClob(java.lang.String columnLabel, java.sql.Clob x)
+    updateDate(int columnIndex, java.sql.Date x)
+    updateDate(java.lang.String columnLabel, java.sql.Date x)
+    updateDouble(int columnIndex, double x)
+    updateDouble(java.lang.String columnLabel, double x)
+    updateFloat(int columnIndex, float x)
+    updateFloat(java.lang.String columnLabel, float x)
+    updateInt(int columnIndex, int x)
+    updateInt(java.lang.String columnLabel, int x)
+    updateLong(int columnIndex, long x)
+    updateLong(java.lang.String columnLabel, long x)
+    updateNCharacterStream(int columnIndex, java.io.Reader x)
+    updateNCharacterStream(int columnIndex, java.io.Reader x, long length)
+    updateNCharacterStream(java.lang.String columnLabel, java.io.Reader reader)
+    updateNCharacterStream(java.lang.String columnLabel, java.io.Reader reader, long length)
+    updateNClob(int columnIndex, java.io.Reader reader)
+    updateNClob(int columnIndex, java.io.Reader reader, long length)
+    updateNClob(int columnIndex, java.sql.NClob nClob)
+    updateNClob(java.lang.String columnLabel, java.io.Reader reader)
+    updateNClob(java.lang.String columnLabel, java.io.Reader reader, long length)
+    updateNClob(java.lang.String columnLabel, java.sql.NClob nClob)
+    updateNString(int columnIndex, java.lang.String nString)
+    updateNString(java.lang.String columnLabel, java.lang.String nString)
+    updateNull(int columnIndex)
+    updateNull(java.lang.String columnLabel)
+    updateObject(int columnIndex, java.lang.Object x)
+    updateObject(int columnIndex, java.lang.Object x, int scaleOrLength)
+    updateObject(java.lang.String columnLabel, java.lang.Object x)
+    updateObject(java.lang.String columnLabel, java.lang.Object x, int scaleOrLength)
+    updateRef(int columnIndex, java.sql.Ref x)
+    updateRef(java.lang.String columnLabel, java.sql.Ref x)
+    updateRowId(int columnIndex, java.sql.RowId x)
+    updateRowId(java.lang.String columnLabel, java.sql.RowId x)
+    updateShort(int columnIndex, short x)
+    updateShort(java.lang.String columnLabel, short x)
+    updateSQLXML(int columnIndex, java.sql.SQLXML xmlObject)
+    updateSQLXML(java.lang.String columnLabel, java.sql.SQLXML xmlObject)
+    updateString(int columnIndex, java.lang.String x)
+    updateString(java.lang.String columnLabel, java.lang.String x)
+    updateTime(int columnIndex, java.sql.Time x)
+    updateTime(java.lang.String columnLabel, java.sql.Time x)
+    updateTimestamp(int columnIndex, java.sql.Timestamp x)
+    updateTimestamp(java.lang.String columnLabel, java.sql.Timestamp x)
+  interface ResultSetMetaData
+    getCatalogName(int column)
+    getColumnClassName(int column)
+    getColumnDisplaySize(int column)
+    getColumnLabel(int column)
+    getColumnName(int column)
+    getColumnType(int column)
+    getColumnTypeName(int column)
+    getPrecision(int column)
+    getScale(int column)
+    getSchemaName(int column)
+    getTableName(int column)
+    isAutoIncrement(int column)
+    isCaseSensitive(int column)
+    isCurrency(int column)
+    isDefinitelyWritable(int column)
+    isNullable(int column)
+    isReadOnly(int column)
+    isSearchable(int column)
+    isSigned(int column)
+    isWritable(int column)
+  interface RowId
+    equals(java.lang.Object obj)
+  class SQLClientInfoException
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties)
+    #ctor(java.lang.String reason, java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties, java.lang.Throwable cause)
+    #ctor(java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties)
+    #ctor(java.util.Map<java.lang.String,java.sql.ClientInfoStatus> failedProperties, java.lang.Throwable cause)
+  interface SQLData
+    readSQL(java.sql.SQLInput stream, java.lang.String typeName)
+    writeSQL(java.sql.SQLOutput stream)
+  class SQLDataException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLException
+    setNextException(java.sql.SQLException ex)
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String sqlState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String sqlState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLFeatureNotSupportedException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLIntegrityConstraintViolationException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLInvalidAuthorizationSpecException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLNonTransientConnectionException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLNonTransientException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface SQLOutput
+    writeArray(java.sql.Array x)
+    writeAsciiStream(java.io.InputStream x)
+    writeBigDecimal(java.math.BigDecimal x)
+    writeBinaryStream(java.io.InputStream x)
+    writeBlob(java.sql.Blob x)
+    writeBoolean(boolean x)
+    writeByte(byte x)
+    writeBytes(byte[] x)
+    writeCharacterStream(java.io.Reader x)
+    writeClob(java.sql.Clob x)
+    writeDate(java.sql.Date x)
+    writeDouble(double x)
+    writeFloat(float x)
+    writeInt(int x)
+    writeLong(long x)
+    writeNClob(java.sql.NClob x)
+    writeNString(java.lang.String x)
+    writeObject(java.sql.SQLData x)
+    writeRef(java.sql.Ref x)
+    writeRowId(java.sql.RowId x)
+    writeShort(short x)
+    writeSQLXML(java.sql.SQLXML x)
+    writeString(java.lang.String x)
+    writeStruct(java.sql.Struct x)
+    writeTime(java.sql.Time x)
+    writeTimestamp(java.sql.Timestamp x)
+    writeURL(java.net.URL x)
+  class SQLPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class SQLRecoverableException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLSyntaxErrorException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLTimeoutException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLTransactionRollbackException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLTransientConnectionException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLTransientException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SQLWarning
+    setNextWarning(java.sql.SQLWarning w)
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String reason, java.lang.String SQLState)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode)
+    #ctor(java.lang.String reason, java.lang.String SQLState, int vendorCode, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.String SQLState, java.lang.Throwable cause)
+    #ctor(java.lang.String reason, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface SQLXML
+    <T> getSource(java.lang.Class<T> sourceClass)
+    <T> setResult(java.lang.Class<T> resultClass)
+    setString(java.lang.String value)
+  interface Statement
+    addBatch(java.lang.String sql)
+    execute(java.lang.String sql)
+    execute(java.lang.String sql, int autoGeneratedKeys)
+    execute(java.lang.String sql, int[] columnIndexes)
+    execute(java.lang.String sql, java.lang.String[] columnNames)
+    executeQuery(java.lang.String sql)
+    executeUpdate(java.lang.String sql)
+    executeUpdate(java.lang.String sql, int autoGeneratedKeys)
+    executeUpdate(java.lang.String sql, int[] columnIndexes)
+    executeUpdate(java.lang.String sql, java.lang.String[] columnNames)
+    getMoreResults(int current)
+    setCursorName(java.lang.String name)
+    setEscapeProcessing(boolean enable)
+    setFetchDirection(int direction)
+    setFetchSize(int rows)
+    setMaxFieldSize(int max)
+    setMaxRows(int max)
+    setPoolable(boolean poolable)
+    setQueryTimeout(int seconds)
+  interface Struct
+    getAttributes(java.util.Map<java.lang.String,java.lang.Class<?>> map)
+  class Time
+    setDate(int i)
+    setMonth(int i)
+    setTime(long time)
+    setYear(int i)
+    #ctor(int hour, int minute, int second)
+    #ctor(long time)
+    valueOf(java.lang.String s)
+  class Timestamp
+    after(java.sql.Timestamp ts)
+    before(java.sql.Timestamp ts)
+    compareTo(java.sql.Timestamp ts)
+    compareTo(java.util.Date o)
+    equals(java.lang.Object ts)
+    equals(java.sql.Timestamp ts)
+    setNanos(int n)
+    setTime(long time)
+    #ctor(int year, int month, int date, int hour, int minute, int second, int nano)
+    #ctor(long time)
+    valueOf(java.lang.String s)
+  interface Wrapper
+    isWrapperFor(java.lang.Class<?> iface)
+    <T> unwrap(java.lang.Class<T> iface)
+
+package java.text
+;---------------------------------------
+  class Annotation
+    #ctor(java.lang.Object value)
+  interface AttributedCharacterIterator
+    getAttribute(java.text.AttributedCharacterIterator.Attribute attribute)
+    getRunLimit(java.text.AttributedCharacterIterator.Attribute attribute)
+    getRunLimit(java.util.Set<? extends java.text.AttributedCharacterIterator.Attribute> attributes)
+    getRunStart(java.text.AttributedCharacterIterator.Attribute attribute)
+    getRunStart(java.util.Set<? extends java.text.AttributedCharacterIterator.Attribute> attributes)
+  class AttributedCharacterIterator.Attribute
+    #ctor(java.lang.String name)
+    equals(java.lang.Object obj)
+  class AttributedString
+    addAttribute(java.text.AttributedCharacterIterator.Attribute attribute, java.lang.Object value)
+    addAttribute(java.text.AttributedCharacterIterator.Attribute attribute, java.lang.Object value, int beginIndex, int endIndex)
+    addAttributes(java.util.Map<? extends java.text.AttributedCharacterIterator.Attribute,?> attributes, int beginIndex, int endIndex)
+    #ctor(java.lang.String text)
+    #ctor(java.lang.String text, java.util.Map<? extends java.text.AttributedCharacterIterator.Attribute,?> attributes)
+    #ctor(java.text.AttributedCharacterIterator text)
+    #ctor(java.text.AttributedCharacterIterator text, int beginIndex, int endIndex)
+    #ctor(java.text.AttributedCharacterIterator text, int beginIndex, int endIndex, java.text.AttributedCharacterIterator.Attribute[] attributes)
+    getIterator(java.text.AttributedCharacterIterator.Attribute[] attributes)
+    getIterator(java.text.AttributedCharacterIterator.Attribute[] attributes, int beginIndex, int endIndex)
+  class Bidi
+    #ctor(char[] text, int textStart, byte[] embeddings, int embStart, int paragraphLength, int flags)
+    #ctor(java.lang.String paragraph, int flags)
+    #ctor(java.text.AttributedCharacterIterator paragraph)
+    createLineBidi(int lineStart, int lineLimit)
+    getLevelAt(int offset)
+    getRunLevel(int run)
+    getRunLimit(int run)
+    getRunStart(int run)
+    reorderVisually(byte[] levels, int levelStart, java.lang.Object[] objects, int objectStart, int count)
+    requiresBidi(char[] text, int start, int limit)
+  class BreakIterator
+    following(int offset)
+    getCharacterInstance(java.util.Locale locale)
+    getLineInstance(java.util.Locale locale)
+    getSentenceInstance(java.util.Locale locale)
+    getWordInstance(java.util.Locale locale)
+    isBoundary(int offset)
+    next(int n)
+    preceding(int offset)
+    setText(java.lang.String newText)
+    setText(java.text.CharacterIterator newText)
+  interface CharacterIterator
+    setIndex(int position)
+  class ChoiceFormat
+    applyPattern(java.lang.String newPattern)
+    #ctor(double[] limits, java.lang.String[] formats)
+    #ctor(java.lang.String newPattern)
+    equals(java.lang.Object obj)
+    format(double number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition status)
+    format(long number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition status)
+    nextDouble(double d)
+    nextDouble(double d, boolean positive)
+    parse(java.lang.String text, java.text.ParsePosition status)
+    previousDouble(double d)
+    setChoices(double[] limits, java.lang.String[] formats)
+  class CollationElementIterator
+    getMaxExpansion(int order)
+    primaryOrder(int order)
+    secondaryOrder(int order)
+    setOffset(int newOffset)
+    setText(java.lang.String source)
+    setText(java.text.CharacterIterator source)
+    tertiaryOrder(int order)
+  class CollationKey
+    #ctor(java.lang.String source)
+    compareTo(java.text.CollationKey target)
+  class Collator
+    compare(java.lang.Object o1, java.lang.Object o2)
+    compare(java.lang.String source, java.lang.String target)
+    equals(java.lang.Object that)
+    equals(java.lang.String source, java.lang.String target)
+    getCollationKey(java.lang.String source)
+    getInstance(java.util.Locale desiredLocale)
+    setDecomposition(int decompositionMode)
+    setStrength(int newStrength)
+  class DateFormat
+    equals(java.lang.Object obj)
+    format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
+    format(java.util.Date date)
+    format(java.util.Date date, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
+    getDateInstance(int style)
+    getDateInstance(int style, java.util.Locale aLocale)
+    getDateTimeInstance(int dateStyle, int timeStyle)
+    getDateTimeInstance(int dateStyle, int timeStyle, java.util.Locale aLocale)
+    getTimeInstance(int style)
+    getTimeInstance(int style, java.util.Locale aLocale)
+    parse(java.lang.String source)
+    parse(java.lang.String source, java.text.ParsePosition pos)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    setCalendar(java.util.Calendar newCalendar)
+    setLenient(boolean lenient)
+    setNumberFormat(java.text.NumberFormat newNumberFormat)
+    setTimeZone(java.util.TimeZone zone)
+  class DateFormat.Field
+    #ctor(java.lang.String name, int calendarField)
+    ofCalendarField(int calendarField)
+  class DateFormatSymbols
+    #ctor(java.util.Locale locale)
+    equals(java.lang.Object obj)
+    getInstance(java.util.Locale locale)
+    setAmPmStrings(java.lang.String[] newAmpms)
+    setEras(java.lang.String[] newEras)
+    setLocalPatternChars(java.lang.String newLocalPatternChars)
+    setMonths(java.lang.String[] newMonths)
+    setShortMonths(java.lang.String[] newShortMonths)
+    setShortWeekdays(java.lang.String[] newShortWeekdays)
+    setWeekdays(java.lang.String[] newWeekdays)
+    setZoneStrings(java.lang.String[][] newZoneStrings)
+  class DecimalFormat
+    applyLocalizedPattern(java.lang.String pattern)
+    applyPattern(java.lang.String pattern)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, java.text.DecimalFormatSymbols symbols)
+    equals(java.lang.Object obj)
+    format(double number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    format(java.lang.Object number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(long number, java.lang.StringBuffer result, java.text.FieldPosition fieldPosition)
+    formatToCharacterIterator(java.lang.Object obj)
+    parse(java.lang.String text, java.text.ParsePosition pos)
+    setCurrency(java.util.Currency currency)
+    setDecimalFormatSymbols(java.text.DecimalFormatSymbols newSymbols)
+    setDecimalSeparatorAlwaysShown(boolean newValue)
+    setGroupingSize(int newValue)
+    setGroupingUsed(boolean newValue)
+    setMaximumFractionDigits(int newValue)
+    setMaximumIntegerDigits(int newValue)
+    setMinimumFractionDigits(int newValue)
+    setMinimumIntegerDigits(int newValue)
+    setMultiplier(int newValue)
+    setNegativePrefix(java.lang.String newValue)
+    setNegativeSuffix(java.lang.String newValue)
+    setParseBigDecimal(boolean newValue)
+    setParseIntegerOnly(boolean value)
+    setPositivePrefix(java.lang.String newValue)
+    setPositiveSuffix(java.lang.String newValue)
+    setRoundingMode(java.math.RoundingMode roundingMode)
+  class DecimalFormatSymbols
+    #ctor(java.util.Locale locale)
+    equals(java.lang.Object obj)
+    getInstance(java.util.Locale locale)
+    setCurrency(java.util.Currency currency)
+    setCurrencySymbol(java.lang.String currency)
+    setDecimalSeparator(char decimalSeparator)
+    setDigit(char digit)
+    setExponentSeparator(java.lang.String exp)
+    setGroupingSeparator(char groupingSeparator)
+    setInfinity(java.lang.String infinity)
+    setInternationalCurrencySymbol(java.lang.String currencyCode)
+    setMinusSign(char minusSign)
+    setMonetaryDecimalSeparator(char sep)
+    setMonetaryGroupingSeparator(char monetaryGroupingSeparator)
+    setNaN(java.lang.String NaN)
+    setPatternSeparator(char patternSeparator)
+    setPercent(char percent)
+    setPerMill(char perMill)
+    setZeroDigit(char zeroDigit)
+  class FieldPosition
+    equals(java.lang.Object obj)
+    #ctor(int field)
+    #ctor(java.text.Format.Field attribute)
+    #ctor(java.text.Format.Field attribute, int fieldID)
+    setBeginIndex(int bi)
+    setEndIndex(int ei)
+  class Format
+    format(java.lang.Object obj)
+    format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    formatToCharacterIterator(java.lang.Object obj)
+    parseObject(java.lang.String source)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+  class Format.Field
+    #ctor(java.lang.String name)
+  class MessageFormat
+    applyPattern(java.lang.String pattern)
+    equals(java.lang.Object obj)
+    format(java.lang.Object arguments, java.lang.StringBuffer result, java.text.FieldPosition pos)
+    format(java.lang.Object[] arguments, java.lang.StringBuffer result, java.text.FieldPosition pos)
+    format(java.lang.String pattern, java.lang.Object... arguments)
+    formatToCharacterIterator(java.lang.Object arguments)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, java.util.Locale locale)
+    parse(java.lang.String source)
+    parse(java.lang.String source, java.text.ParsePosition pos)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    setFormat(int formatElementIndex, java.text.Format newFormat)
+    setFormatByArgumentIndex(int argumentIndex, java.text.Format newFormat)
+    setFormats(java.text.Format[] newFormats)
+    setFormatsByArgumentIndex(java.text.Format[] newFormats)
+    setLocale(java.util.Locale locale)
+  class MessageFormat.Field
+    #ctor(java.lang.String name)
+  class Normalizer
+    isNormalized(java.lang.CharSequence src, java.text.Normalizer.Form form)
+    normalize(java.lang.CharSequence src, java.text.Normalizer.Form form)
+  class NumberFormat
+    equals(java.lang.Object obj)
+    format(double number)
+    format(double number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(java.lang.Object number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    format(long number)
+    format(long number, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    getCurrencyInstance(java.util.Locale inLocale)
+    getInstance(java.util.Locale inLocale)
+    getIntegerInstance(java.util.Locale inLocale)
+    getNumberInstance(java.util.Locale inLocale)
+    getPercentInstance(java.util.Locale inLocale)
+    parse(java.lang.String source)
+    parse(java.lang.String source, java.text.ParsePosition parsePosition)
+    parseObject(java.lang.String source, java.text.ParsePosition pos)
+    setCurrency(java.util.Currency currency)
+    setGroupingUsed(boolean newValue)
+    setMaximumFractionDigits(int newValue)
+    setMaximumIntegerDigits(int newValue)
+    setMinimumFractionDigits(int newValue)
+    setMinimumIntegerDigits(int newValue)
+    setParseIntegerOnly(boolean value)
+    setRoundingMode(java.math.RoundingMode roundingMode)
+  class NumberFormat.Field
+    #ctor(java.lang.String name)
+  class ParseException
+    #ctor(java.lang.String s, int errorOffset)
+  class ParsePosition
+    equals(java.lang.Object obj)
+    #ctor(int index)
+    setErrorIndex(int ei)
+    setIndex(int index)
+  class RuleBasedCollator
+    compare(java.lang.String source, java.lang.String target)
+    equals(java.lang.Object obj)
+    getCollationElementIterator(java.lang.String source)
+    getCollationElementIterator(java.text.CharacterIterator source)
+    getCollationKey(java.lang.String source)
+    #ctor(java.lang.String rules)
+  class SimpleDateFormat
+    applyLocalizedPattern(java.lang.String pattern)
+    applyPattern(java.lang.String pattern)
+    equals(java.lang.Object obj)
+    format(java.util.Date date, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)
+    formatToCharacterIterator(java.lang.Object obj)
+    parse(java.lang.String text, java.text.ParsePosition pos)
+    set2DigitYearStart(java.util.Date startDate)
+    setDateFormatSymbols(java.text.DateFormatSymbols newFormatSymbols)
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, java.text.DateFormatSymbols formatSymbols)
+    #ctor(java.lang.String pattern, java.util.Locale locale)
+  class StringCharacterIterator
+    equals(java.lang.Object obj)
+    setIndex(int p)
+    setText(java.lang.String text)
+    #ctor(java.lang.String text)
+    #ctor(java.lang.String text, int pos)
+    #ctor(java.lang.String text, int begin, int end, int pos)
+
+package java.time
+;---------------------------------------
+  class Clock
+    equals(java.lang.Object obj)
+    fixed(java.time.Instant fixedInstant, java.time.ZoneId zone)
+    offset(java.time.Clock baseClock, java.time.Duration offsetDuration)
+    system(java.time.ZoneId zone)
+    tick(java.time.Clock baseClock, java.time.Duration tickDuration)
+    tickMillis(java.time.ZoneId zone)
+    tickMinutes(java.time.ZoneId zone)
+    tickSeconds(java.time.ZoneId zone)
+    withZone(java.time.ZoneId zone)
+  class DateTimeException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class DayOfWeek
+    adjustInto(java.time.temporal.Temporal temporal)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    minus(long days)
+    of(int dayOfWeek)
+    plus(long days)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+  class Duration
+    addTo(java.time.temporal.Temporal temporal)
+    between(java.time.temporal.Temporal startInclusive, java.time.temporal.Temporal endExclusive)
+    compareTo(java.time.Duration otherDuration)
+    dividedBy(java.time.Duration divisor)
+    dividedBy(long divisor)
+    equals(java.lang.Object other)
+    from(java.time.temporal.TemporalAmount amount)
+    get(java.time.temporal.TemporalUnit unit)
+    minus(java.time.Duration duration)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusDays(long daysToSubtract)
+    minusHours(long hoursToSubtract)
+    minusMillis(long millisToSubtract)
+    minusMinutes(long minutesToSubtract)
+    minusNanos(long nanosToSubtract)
+    minusSeconds(long secondsToSubtract)
+    multipliedBy(long multiplicand)
+    of(long amount, java.time.temporal.TemporalUnit unit)
+    ofDays(long days)
+    ofHours(long hours)
+    ofMillis(long millis)
+    ofMinutes(long minutes)
+    ofNanos(long nanos)
+    ofSeconds(long seconds)
+    ofSeconds(long seconds, long nanoAdjustment)
+    parse(java.lang.CharSequence text)
+    plus(java.time.Duration duration)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusDays(long daysToAdd)
+    plusHours(long hoursToAdd)
+    plusMillis(long millisToAdd)
+    plusMinutes(long minutesToAdd)
+    plusNanos(long nanosToAdd)
+    plusSeconds(long secondsToAdd)
+    subtractFrom(java.time.temporal.Temporal temporal)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    withNanos(int nanoOfSecond)
+    withSeconds(long seconds)
+  class Instant
+    adjustInto(java.time.temporal.Temporal temporal)
+    atOffset(java.time.ZoneOffset offset)
+    atZone(java.time.ZoneId zone)
+    compareTo(java.time.Instant otherInstant)
+    equals(java.lang.Object other)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.Instant otherInstant)
+    isBefore(java.time.Instant otherInstant)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusMillis(long millisToSubtract)
+    minusNanos(long nanosToSubtract)
+    minusSeconds(long secondsToSubtract)
+    now(java.time.Clock clock)
+    ofEpochMilli(long epochMilli)
+    ofEpochSecond(long epochSecond)
+    ofEpochSecond(long epochSecond, long nanoAdjustment)
+    parse(java.lang.CharSequence text)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusMillis(long millisToAdd)
+    plusNanos(long nanosToAdd)
+    plusSeconds(long secondsToAdd)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  interface InstantSource
+    fixed(java.time.Instant fixedInstant)
+    offset(java.time.InstantSource baseSource, java.time.Duration offsetDuration)
+    tick(java.time.InstantSource baseSource, java.time.Duration tickDuration)
+    withZone(java.time.ZoneId zone)
+  class LocalDate
+    adjustInto(java.time.temporal.Temporal temporal)
+    atStartOfDay(java.time.ZoneId zone)
+    atTime(int hour, int minute)
+    atTime(int hour, int minute, int second)
+    atTime(int hour, int minute, int second, int nanoOfSecond)
+    atTime(java.time.LocalTime time)
+    atTime(java.time.OffsetTime time)
+    compareTo(java.time.chrono.ChronoLocalDate other)
+    datesUntil(java.time.LocalDate endExclusive)
+    datesUntil(java.time.LocalDate endExclusive, java.time.Period step)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.chrono.ChronoLocalDate other)
+    isBefore(java.time.chrono.ChronoLocalDate other)
+    isEqual(java.time.chrono.ChronoLocalDate other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusDays(long daysToSubtract)
+    minusMonths(long monthsToSubtract)
+    minusWeeks(long weeksToSubtract)
+    minusYears(long yearsToSubtract)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int year, int month, int dayOfMonth)
+    of(int year, java.time.Month month, int dayOfMonth)
+    ofEpochDay(long epochDay)
+    ofInstant(java.time.Instant instant, java.time.ZoneId zone)
+    ofYearDay(int year, int dayOfYear)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusDays(long daysToAdd)
+    plusMonths(long monthsToAdd)
+    plusWeeks(long weeksToAdd)
+    plusYears(long yearsToAdd)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    toEpochSecond(java.time.LocalTime time, java.time.ZoneOffset offset)
+    until(java.time.chrono.ChronoLocalDate endDateExclusive)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withDayOfMonth(int dayOfMonth)
+    withDayOfYear(int dayOfYear)
+    withMonth(int month)
+    withYear(int year)
+  class LocalDateTime
+    adjustInto(java.time.temporal.Temporal temporal)
+    atOffset(java.time.ZoneOffset offset)
+    atZone(java.time.ZoneId zone)
+    compareTo(java.time.chrono.ChronoLocalDateTime<?> other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.chrono.ChronoLocalDateTime<?> other)
+    isBefore(java.time.chrono.ChronoLocalDateTime<?> other)
+    isEqual(java.time.chrono.ChronoLocalDateTime<?> other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusDays(long days)
+    minusHours(long hours)
+    minusMinutes(long minutes)
+    minusMonths(long months)
+    minusNanos(long nanos)
+    minusSeconds(long seconds)
+    minusWeeks(long weeks)
+    minusYears(long years)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int year, int month, int dayOfMonth, int hour, int minute)
+    of(int year, int month, int dayOfMonth, int hour, int minute, int second)
+    of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond)
+    of(int year, java.time.Month month, int dayOfMonth, int hour, int minute)
+    of(int year, java.time.Month month, int dayOfMonth, int hour, int minute, int second)
+    of(int year, java.time.Month month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond)
+    of(java.time.LocalDate date, java.time.LocalTime time)
+    ofEpochSecond(long epochSecond, int nanoOfSecond, java.time.ZoneOffset offset)
+    ofInstant(java.time.Instant instant, java.time.ZoneId zone)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusDays(long days)
+    plusHours(long hours)
+    plusMinutes(long minutes)
+    plusMonths(long months)
+    plusNanos(long nanos)
+    plusSeconds(long seconds)
+    plusWeeks(long weeks)
+    plusYears(long years)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withDayOfMonth(int dayOfMonth)
+    withDayOfYear(int dayOfYear)
+    withHour(int hour)
+    withMinute(int minute)
+    withMonth(int month)
+    withNano(int nanoOfSecond)
+    withSecond(int second)
+    withYear(int year)
+  class LocalTime
+    adjustInto(java.time.temporal.Temporal temporal)
+    atDate(java.time.LocalDate date)
+    atOffset(java.time.ZoneOffset offset)
+    compareTo(java.time.LocalTime other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.LocalTime other)
+    isBefore(java.time.LocalTime other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusHours(long hoursToSubtract)
+    minusMinutes(long minutesToSubtract)
+    minusNanos(long nanosToSubtract)
+    minusSeconds(long secondsToSubtract)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int hour, int minute)
+    of(int hour, int minute, int second)
+    of(int hour, int minute, int second, int nanoOfSecond)
+    ofInstant(java.time.Instant instant, java.time.ZoneId zone)
+    ofNanoOfDay(long nanoOfDay)
+    ofSecondOfDay(long secondOfDay)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusHours(long hoursToAdd)
+    plusMinutes(long minutesToAdd)
+    plusNanos(long nanosToAdd)
+    plusSeconds(long secondstoAdd)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    toEpochSecond(java.time.LocalDate date, java.time.ZoneOffset offset)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withHour(int hour)
+    withMinute(int minute)
+    withNano(int nanoOfSecond)
+    withSecond(int second)
+  class Month
+    adjustInto(java.time.temporal.Temporal temporal)
+    firstDayOfYear(boolean leapYear)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    length(boolean leapYear)
+    minus(long months)
+    of(int month)
+    plus(long months)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+  class MonthDay
+    adjustInto(java.time.temporal.Temporal temporal)
+    atYear(int year)
+    compareTo(java.time.MonthDay other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.MonthDay other)
+    isBefore(java.time.MonthDay other)
+    isSupported(java.time.temporal.TemporalField field)
+    isValidYear(int year)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int month, int dayOfMonth)
+    of(java.time.Month month, int dayOfMonth)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    with(java.time.Month month)
+    withDayOfMonth(int dayOfMonth)
+    withMonth(int month)
+  class OffsetDateTime
+    adjustInto(java.time.temporal.Temporal temporal)
+    atZoneSameInstant(java.time.ZoneId zone)
+    atZoneSimilarLocal(java.time.ZoneId zone)
+    compareTo(java.time.OffsetDateTime other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.OffsetDateTime other)
+    isBefore(java.time.OffsetDateTime other)
+    isEqual(java.time.OffsetDateTime other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusDays(long days)
+    minusHours(long hours)
+    minusMinutes(long minutes)
+    minusMonths(long months)
+    minusNanos(long nanos)
+    minusSeconds(long seconds)
+    minusWeeks(long weeks)
+    minusYears(long years)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond, java.time.ZoneOffset offset)
+    of(java.time.LocalDate date, java.time.LocalTime time, java.time.ZoneOffset offset)
+    of(java.time.LocalDateTime dateTime, java.time.ZoneOffset offset)
+    ofInstant(java.time.Instant instant, java.time.ZoneId zone)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusDays(long days)
+    plusHours(long hours)
+    plusMinutes(long minutes)
+    plusMonths(long months)
+    plusNanos(long nanos)
+    plusSeconds(long seconds)
+    plusWeeks(long weeks)
+    plusYears(long years)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withDayOfMonth(int dayOfMonth)
+    withDayOfYear(int dayOfYear)
+    withHour(int hour)
+    withMinute(int minute)
+    withMonth(int month)
+    withNano(int nanoOfSecond)
+    withOffsetSameInstant(java.time.ZoneOffset offset)
+    withOffsetSameLocal(java.time.ZoneOffset offset)
+    withSecond(int second)
+    withYear(int year)
+  class OffsetTime
+    adjustInto(java.time.temporal.Temporal temporal)
+    atDate(java.time.LocalDate date)
+    compareTo(java.time.OffsetTime other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.OffsetTime other)
+    isBefore(java.time.OffsetTime other)
+    isEqual(java.time.OffsetTime other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusHours(long hours)
+    minusMinutes(long minutes)
+    minusNanos(long nanos)
+    minusSeconds(long seconds)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int hour, int minute, int second, int nanoOfSecond, java.time.ZoneOffset offset)
+    of(java.time.LocalTime time, java.time.ZoneOffset offset)
+    ofInstant(java.time.Instant instant, java.time.ZoneId zone)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusHours(long hours)
+    plusMinutes(long minutes)
+    plusNanos(long nanos)
+    plusSeconds(long seconds)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    toEpochSecond(java.time.LocalDate date)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withHour(int hour)
+    withMinute(int minute)
+    withNano(int nanoOfSecond)
+    withOffsetSameInstant(java.time.ZoneOffset offset)
+    withOffsetSameLocal(java.time.ZoneOffset offset)
+    withSecond(int second)
+  class Period
+    addTo(java.time.temporal.Temporal temporal)
+    between(java.time.LocalDate startDateInclusive, java.time.LocalDate endDateExclusive)
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAmount amount)
+    get(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minusDays(long daysToSubtract)
+    minusMonths(long monthsToSubtract)
+    minusYears(long yearsToSubtract)
+    multipliedBy(int scalar)
+    of(int years, int months, int days)
+    ofDays(int days)
+    ofMonths(int months)
+    ofWeeks(int weeks)
+    ofYears(int years)
+    parse(java.lang.CharSequence text)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plusDays(long daysToAdd)
+    plusMonths(long monthsToAdd)
+    plusYears(long yearsToAdd)
+    subtractFrom(java.time.temporal.Temporal temporal)
+    withDays(int days)
+    withMonths(int months)
+    withYears(int years)
+  class Year
+    adjustInto(java.time.temporal.Temporal temporal)
+    atDay(int dayOfYear)
+    atMonth(int month)
+    atMonth(java.time.Month month)
+    atMonthDay(java.time.MonthDay monthDay)
+    compareTo(java.time.Year other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.Year other)
+    isBefore(java.time.Year other)
+    isLeap(long year)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    isValidMonthDay(java.time.MonthDay monthDay)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusYears(long yearsToSubtract)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int isoYear)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusYears(long yearsToAdd)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  class YearMonth
+    adjustInto(java.time.temporal.Temporal temporal)
+    atDay(int dayOfMonth)
+    compareTo(java.time.YearMonth other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.YearMonth other)
+    isBefore(java.time.YearMonth other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    isValidDay(int dayOfMonth)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusMonths(long monthsToSubtract)
+    minusYears(long yearsToSubtract)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int year, int month)
+    of(int year, java.time.Month month)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusMonths(long monthsToAdd)
+    plusYears(long yearsToAdd)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withMonth(int month)
+    withYear(int year)
+  class ZonedDateTime
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    minusDays(long days)
+    minusHours(long hours)
+    minusMinutes(long minutes)
+    minusMonths(long months)
+    minusNanos(long nanos)
+    minusSeconds(long seconds)
+    minusWeeks(long weeks)
+    minusYears(long years)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond, java.time.ZoneId zone)
+    of(java.time.LocalDate date, java.time.LocalTime time, java.time.ZoneId zone)
+    of(java.time.LocalDateTime localDateTime, java.time.ZoneId zone)
+    ofInstant(java.time.Instant instant, java.time.ZoneId zone)
+    ofInstant(java.time.LocalDateTime localDateTime, java.time.ZoneOffset offset, java.time.ZoneId zone)
+    ofLocal(java.time.LocalDateTime localDateTime, java.time.ZoneId zone, java.time.ZoneOffset preferredOffset)
+    ofStrict(java.time.LocalDateTime localDateTime, java.time.ZoneOffset offset, java.time.ZoneId zone)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.time.format.DateTimeFormatter formatter)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    plusDays(long days)
+    plusHours(long hours)
+    plusMinutes(long minutes)
+    plusMonths(long months)
+    plusNanos(long nanos)
+    plusSeconds(long seconds)
+    plusWeeks(long weeks)
+    plusYears(long years)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    truncatedTo(java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withDayOfMonth(int dayOfMonth)
+    withDayOfYear(int dayOfYear)
+    withHour(int hour)
+    withMinute(int minute)
+    withMonth(int month)
+    withNano(int nanoOfSecond)
+    withSecond(int second)
+    withYear(int year)
+    withZoneSameInstant(java.time.ZoneId zone)
+    withZoneSameLocal(java.time.ZoneId zone)
+  class ZoneId
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAccessor temporal)
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    of(java.lang.String zoneId)
+    of(java.lang.String zoneId, java.util.Map<java.lang.String,java.lang.String> aliasMap)
+    ofOffset(java.lang.String prefix, java.time.ZoneOffset offset)
+  class ZoneOffset
+    adjustInto(java.time.temporal.Temporal temporal)
+    compareTo(java.time.ZoneOffset other)
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    of(java.lang.String offsetId)
+    ofHours(int hours)
+    ofHoursMinutes(int hours, int minutes)
+    ofHoursMinutesSeconds(int hours, int minutes, int seconds)
+    ofTotalSeconds(int totalSeconds)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+
+package java.time.chrono
+;---------------------------------------
+  class AbstractChronology
+    compareTo(java.time.chrono.Chronology other)
+    equals(java.lang.Object obj)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+  interface ChronoLocalDate
+    adjustInto(java.time.temporal.Temporal temporal)
+    atTime(java.time.LocalTime localTime)
+    compareTo(java.time.chrono.ChronoLocalDate other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    isAfter(java.time.chrono.ChronoLocalDate other)
+    isBefore(java.time.chrono.ChronoLocalDate other)
+    isEqual(java.time.chrono.ChronoLocalDate other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    until(java.time.chrono.ChronoLocalDate endDateExclusive)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  interface ChronoLocalDateTime<D>
+    adjustInto(java.time.temporal.Temporal temporal)
+    atZone(java.time.ZoneId zone)
+    compareTo(java.time.chrono.ChronoLocalDateTime<?> other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    isAfter(java.time.chrono.ChronoLocalDateTime<?> other)
+    isBefore(java.time.chrono.ChronoLocalDateTime<?> other)
+    isEqual(java.time.chrono.ChronoLocalDateTime<?> other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    toEpochSecond(java.time.ZoneOffset offset)
+    toInstant(java.time.ZoneOffset offset)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  interface Chronology
+    compareTo(java.time.chrono.Chronology other)
+    date(int prolepticYear, int month, int dayOfMonth)
+    date(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth)
+    date(java.time.temporal.TemporalAccessor temporal)
+    dateEpochDay(long epochDay)
+    dateNow(java.time.Clock clock)
+    dateNow(java.time.ZoneId zone)
+    dateYearDay(int prolepticYear, int dayOfYear)
+    dateYearDay(java.time.chrono.Era era, int yearOfEra, int dayOfYear)
+    epochSecond(int prolepticYear, int month, int dayOfMonth, int hour, int minute, int second, java.time.ZoneOffset zoneOffset)
+    epochSecond(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth, int hour, int minute, int second, java.time.ZoneOffset zoneOffset)
+    equals(java.lang.Object obj)
+    eraOf(int eraValue)
+    from(java.time.temporal.TemporalAccessor temporal)
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    isLeapYear(long prolepticYear)
+    localDateTime(java.time.temporal.TemporalAccessor temporal)
+    of(java.lang.String id)
+    ofLocale(java.util.Locale locale)
+    period(int years, int months, int days)
+    prolepticYear(java.time.chrono.Era era, int yearOfEra)
+    range(java.time.temporal.ChronoField field)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+    zonedDateTime(java.time.Instant instant, java.time.ZoneId zone)
+    zonedDateTime(java.time.temporal.TemporalAccessor temporal)
+  interface ChronoPeriod
+    addTo(java.time.temporal.Temporal temporal)
+    between(java.time.chrono.ChronoLocalDate startDateInclusive, java.time.chrono.ChronoLocalDate endDateExclusive)
+    equals(java.lang.Object obj)
+    get(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amountToSubtract)
+    multipliedBy(int scalar)
+    plus(java.time.temporal.TemporalAmount amountToAdd)
+    subtractFrom(java.time.temporal.Temporal temporal)
+  interface ChronoZonedDateTime<D>
+    compareTo(java.time.chrono.ChronoZonedDateTime<?> other)
+    equals(java.lang.Object obj)
+    format(java.time.format.DateTimeFormatter formatter)
+    from(java.time.temporal.TemporalAccessor temporal)
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isAfter(java.time.chrono.ChronoZonedDateTime<?> other)
+    isBefore(java.time.chrono.ChronoZonedDateTime<?> other)
+    isEqual(java.time.chrono.ChronoZonedDateTime<?> other)
+    isSupported(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withZoneSameInstant(java.time.ZoneId zone)
+    withZoneSameLocal(java.time.ZoneId zone)
+  interface Era
+    adjustInto(java.time.temporal.Temporal temporal)
+    get(java.time.temporal.TemporalField field)
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+  class HijrahChronology
+    date(int prolepticYear, int month, int dayOfMonth)
+    date(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth)
+    date(java.time.temporal.TemporalAccessor temporal)
+    dateEpochDay(long epochDay)
+    dateNow(java.time.Clock clock)
+    dateNow(java.time.ZoneId zone)
+    dateYearDay(int prolepticYear, int dayOfYear)
+    dateYearDay(java.time.chrono.Era era, int yearOfEra, int dayOfYear)
+    eraOf(int eraValue)
+    isLeapYear(long prolepticYear)
+    localDateTime(java.time.temporal.TemporalAccessor temporal)
+    prolepticYear(java.time.chrono.Era era, int yearOfEra)
+    range(java.time.temporal.ChronoField field)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+    zonedDateTime(java.time.Instant instant, java.time.ZoneId zone)
+    zonedDateTime(java.time.temporal.TemporalAccessor temporal)
+  class HijrahDate
+    atTime(java.time.LocalTime localTime)
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAccessor temporal)
+    getLong(java.time.temporal.TemporalField field)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int prolepticYear, int month, int dayOfMonth)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    range(java.time.temporal.TemporalField field)
+    until(java.time.chrono.ChronoLocalDate endDate)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+    withVariant(java.time.chrono.HijrahChronology chronology)
+  class HijrahEra
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    of(int hijrahEra)
+    range(java.time.temporal.TemporalField field)
+  class IsoChronology
+    date(int prolepticYear, int month, int dayOfMonth)
+    date(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth)
+    date(java.time.temporal.TemporalAccessor temporal)
+    dateEpochDay(long epochDay)
+    dateNow(java.time.Clock clock)
+    dateNow(java.time.ZoneId zone)
+    dateYearDay(int prolepticYear, int dayOfYear)
+    dateYearDay(java.time.chrono.Era era, int yearOfEra, int dayOfYear)
+    epochSecond(int prolepticYear, int month, int dayOfMonth, int hour, int minute, int second, java.time.ZoneOffset zoneOffset)
+    eraOf(int eraValue)
+    isLeapYear(long prolepticYear)
+    localDateTime(java.time.temporal.TemporalAccessor temporal)
+    period(int years, int months, int days)
+    prolepticYear(java.time.chrono.Era era, int yearOfEra)
+    range(java.time.temporal.ChronoField field)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+    zonedDateTime(java.time.Instant instant, java.time.ZoneId zone)
+    zonedDateTime(java.time.temporal.TemporalAccessor temporal)
+  class IsoEra
+    of(int isoEra)
+  class JapaneseChronology
+    date(int prolepticYear, int month, int dayOfMonth)
+    date(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth)
+    date(java.time.temporal.TemporalAccessor temporal)
+    dateEpochDay(long epochDay)
+    dateNow(java.time.Clock clock)
+    dateNow(java.time.ZoneId zone)
+    dateYearDay(int prolepticYear, int dayOfYear)
+    dateYearDay(java.time.chrono.Era era, int yearOfEra, int dayOfYear)
+    eraOf(int eraValue)
+    isLeapYear(long prolepticYear)
+    localDateTime(java.time.temporal.TemporalAccessor temporal)
+    prolepticYear(java.time.chrono.Era era, int yearOfEra)
+    range(java.time.temporal.ChronoField field)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+    zonedDateTime(java.time.Instant instant, java.time.ZoneId zone)
+    zonedDateTime(java.time.temporal.TemporalAccessor temporal)
+  class JapaneseDate
+    atTime(java.time.LocalTime localTime)
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAccessor temporal)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int prolepticYear, int month, int dayOfMonth)
+    of(java.time.chrono.JapaneseEra era, int yearOfEra, int month, int dayOfMonth)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    range(java.time.temporal.TemporalField field)
+    until(java.time.chrono.ChronoLocalDate endDate)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  class JapaneseEra
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    of(int japaneseEra)
+    range(java.time.temporal.TemporalField field)
+    valueOf(java.lang.String japaneseEra)
+  class MinguoChronology
+    date(int prolepticYear, int month, int dayOfMonth)
+    date(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth)
+    date(java.time.temporal.TemporalAccessor temporal)
+    dateEpochDay(long epochDay)
+    dateNow(java.time.Clock clock)
+    dateNow(java.time.ZoneId zone)
+    dateYearDay(int prolepticYear, int dayOfYear)
+    dateYearDay(java.time.chrono.Era era, int yearOfEra, int dayOfYear)
+    eraOf(int eraValue)
+    isLeapYear(long prolepticYear)
+    localDateTime(java.time.temporal.TemporalAccessor temporal)
+    prolepticYear(java.time.chrono.Era era, int yearOfEra)
+    range(java.time.temporal.ChronoField field)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+    zonedDateTime(java.time.Instant instant, java.time.ZoneId zone)
+    zonedDateTime(java.time.temporal.TemporalAccessor temporal)
+  class MinguoDate
+    atTime(java.time.LocalTime localTime)
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAccessor temporal)
+    getLong(java.time.temporal.TemporalField field)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int prolepticYear, int month, int dayOfMonth)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    range(java.time.temporal.TemporalField field)
+    until(java.time.chrono.ChronoLocalDate endDate)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  class MinguoEra
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    of(int minguoEra)
+  class ThaiBuddhistChronology
+    date(int prolepticYear, int month, int dayOfMonth)
+    date(java.time.chrono.Era era, int yearOfEra, int month, int dayOfMonth)
+    date(java.time.temporal.TemporalAccessor temporal)
+    dateEpochDay(long epochDay)
+    dateNow(java.time.Clock clock)
+    dateNow(java.time.ZoneId zone)
+    dateYearDay(int prolepticYear, int dayOfYear)
+    dateYearDay(java.time.chrono.Era era, int yearOfEra, int dayOfYear)
+    eraOf(int eraValue)
+    isLeapYear(long prolepticYear)
+    localDateTime(java.time.temporal.TemporalAccessor temporal)
+    prolepticYear(java.time.chrono.Era era, int yearOfEra)
+    range(java.time.temporal.ChronoField field)
+    resolveDate(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.format.ResolverStyle resolverStyle)
+    zonedDateTime(java.time.Instant instant, java.time.ZoneId zone)
+    zonedDateTime(java.time.temporal.TemporalAccessor temporal)
+  class ThaiBuddhistDate
+    atTime(java.time.LocalTime localTime)
+    equals(java.lang.Object obj)
+    from(java.time.temporal.TemporalAccessor temporal)
+    getLong(java.time.temporal.TemporalField field)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    now(java.time.Clock clock)
+    now(java.time.ZoneId zone)
+    of(int prolepticYear, int month, int dayOfMonth)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    range(java.time.temporal.TemporalField field)
+    until(java.time.chrono.ChronoLocalDate endDate)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  class ThaiBuddhistEra
+    getDisplayName(java.time.format.TextStyle style, java.util.Locale locale)
+    of(int thaiBuddhistEra)
+
+package java.time.format
+;---------------------------------------
+  class DateTimeFormatter
+    format(java.time.temporal.TemporalAccessor temporal)
+    formatTo(java.time.temporal.TemporalAccessor temporal, java.lang.Appendable appendable)
+    localizedBy(java.util.Locale locale)
+    ofLocalizedDate(java.time.format.FormatStyle dateStyle)
+    ofLocalizedDateTime(java.time.format.FormatStyle dateTimeStyle)
+    ofLocalizedDateTime(java.time.format.FormatStyle dateStyle, java.time.format.FormatStyle timeStyle)
+    ofLocalizedTime(java.time.format.FormatStyle timeStyle)
+    ofPattern(java.lang.String pattern)
+    ofPattern(java.lang.String pattern, java.util.Locale locale)
+    parse(java.lang.CharSequence text)
+    parse(java.lang.CharSequence text, java.text.ParsePosition position)
+    <T> parse(java.lang.CharSequence text, java.time.temporal.TemporalQuery<T> query)
+    parseBest(java.lang.CharSequence text, java.time.temporal.TemporalQuery<?>... queries)
+    parseUnresolved(java.lang.CharSequence text, java.text.ParsePosition position)
+    toFormat(java.time.temporal.TemporalQuery<?> parseQuery)
+    withChronology(java.time.chrono.Chronology chrono)
+    withDecimalStyle(java.time.format.DecimalStyle decimalStyle)
+    withLocale(java.util.Locale locale)
+    withResolverFields(java.time.temporal.TemporalField... resolverFields)
+    withResolverFields(java.util.Set<java.time.temporal.TemporalField> resolverFields)
+    withResolverStyle(java.time.format.ResolverStyle resolverStyle)
+    withZone(java.time.ZoneId zone)
+  class DateTimeFormatterBuilder
+    append(java.time.format.DateTimeFormatter formatter)
+    appendChronologyText(java.time.format.TextStyle textStyle)
+    appendFraction(java.time.temporal.TemporalField field, int minWidth, int maxWidth, boolean decimalPoint)
+    appendGenericZoneText(java.time.format.TextStyle textStyle)
+    appendGenericZoneText(java.time.format.TextStyle textStyle, java.util.Set<java.time.ZoneId> preferredZones)
+    appendInstant(int fractionalDigits)
+    appendLiteral(char literal)
+    appendLiteral(java.lang.String literal)
+    appendLocalized(java.time.format.FormatStyle dateStyle, java.time.format.FormatStyle timeStyle)
+    appendLocalizedOffset(java.time.format.TextStyle style)
+    appendOffset(java.lang.String pattern, java.lang.String noOffsetText)
+    appendOptional(java.time.format.DateTimeFormatter formatter)
+    appendPattern(java.lang.String pattern)
+    appendText(java.time.temporal.TemporalField field)
+    appendText(java.time.temporal.TemporalField field, java.time.format.TextStyle textStyle)
+    appendText(java.time.temporal.TemporalField field, java.util.Map<java.lang.Long,java.lang.String> textLookup)
+    appendValue(java.time.temporal.TemporalField field)
+    appendValue(java.time.temporal.TemporalField field, int width)
+    appendValue(java.time.temporal.TemporalField field, int minWidth, int maxWidth, java.time.format.SignStyle signStyle)
+    appendValueReduced(java.time.temporal.TemporalField field, int width, int maxWidth, int baseValue)
+    appendValueReduced(java.time.temporal.TemporalField field, int width, int maxWidth, java.time.chrono.ChronoLocalDate baseDate)
+    appendZoneText(java.time.format.TextStyle textStyle)
+    appendZoneText(java.time.format.TextStyle textStyle, java.util.Set<java.time.ZoneId> preferredZones)
+    getLocalizedDateTimePattern(java.time.format.FormatStyle dateStyle, java.time.format.FormatStyle timeStyle, java.time.chrono.Chronology chrono, java.util.Locale locale)
+    padNext(int padWidth)
+    padNext(int padWidth, char padChar)
+    parseDefaulting(java.time.temporal.TemporalField field, long value)
+    toFormatter(java.util.Locale locale)
+  class DateTimeParseException
+    #ctor(java.lang.String message, java.lang.CharSequence parsedData, int errorIndex)
+    #ctor(java.lang.String message, java.lang.CharSequence parsedData, int errorIndex, java.lang.Throwable cause)
+  class DecimalStyle
+    equals(java.lang.Object obj)
+    of(java.util.Locale locale)
+    withDecimalSeparator(char decimalSeparator)
+    withNegativeSign(char negativeSign)
+    withPositiveSign(char positiveSign)
+    withZeroDigit(char zeroDigit)
+
+package java.time.temporal
+;---------------------------------------
+  class ChronoField
+    <R> adjustInto(R temporal, long newValue)
+    checkValidIntValue(long value)
+    checkValidValue(long value)
+    getDisplayName(java.util.Locale locale)
+    getFrom(java.time.temporal.TemporalAccessor temporal)
+    isSupportedBy(java.time.temporal.TemporalAccessor temporal)
+    rangeRefinedBy(java.time.temporal.TemporalAccessor temporal)
+  class ChronoUnit
+    <R> addTo(R temporal, long amount)
+    between(java.time.temporal.Temporal temporal1Inclusive, java.time.temporal.Temporal temporal2Exclusive)
+    isSupportedBy(java.time.temporal.Temporal temporal)
+  interface Temporal
+    isSupported(java.time.temporal.TemporalUnit unit)
+    minus(java.time.temporal.TemporalAmount amount)
+    minus(long amountToSubtract, java.time.temporal.TemporalUnit unit)
+    plus(java.time.temporal.TemporalAmount amount)
+    plus(long amountToAdd, java.time.temporal.TemporalUnit unit)
+    until(java.time.temporal.Temporal endExclusive, java.time.temporal.TemporalUnit unit)
+    with(java.time.temporal.TemporalAdjuster adjuster)
+    with(java.time.temporal.TemporalField field, long newValue)
+  interface TemporalAccessor
+    get(java.time.temporal.TemporalField field)
+    getLong(java.time.temporal.TemporalField field)
+    isSupported(java.time.temporal.TemporalField field)
+    <R> query(java.time.temporal.TemporalQuery<R> query)
+    range(java.time.temporal.TemporalField field)
+  interface TemporalAdjuster
+    adjustInto(java.time.temporal.Temporal temporal)
+  class TemporalAdjusters
+    dayOfWeekInMonth(int ordinal, java.time.DayOfWeek dayOfWeek)
+    firstInMonth(java.time.DayOfWeek dayOfWeek)
+    lastInMonth(java.time.DayOfWeek dayOfWeek)
+    next(java.time.DayOfWeek dayOfWeek)
+    nextOrSame(java.time.DayOfWeek dayOfWeek)
+    ofDateAdjuster(java.util.function.UnaryOperator<java.time.LocalDate> dateBasedAdjuster)
+    previous(java.time.DayOfWeek dayOfWeek)
+    previousOrSame(java.time.DayOfWeek dayOfWeek)
+  interface TemporalAmount
+    addTo(java.time.temporal.Temporal temporal)
+    get(java.time.temporal.TemporalUnit unit)
+    subtractFrom(java.time.temporal.Temporal temporal)
+  interface TemporalField
+    <R> adjustInto(R temporal, long newValue)
+    getDisplayName(java.util.Locale locale)
+    getFrom(java.time.temporal.TemporalAccessor temporal)
+    isSupportedBy(java.time.temporal.TemporalAccessor temporal)
+    rangeRefinedBy(java.time.temporal.TemporalAccessor temporal)
+    resolve(java.util.Map<java.time.temporal.TemporalField,java.lang.Long> fieldValues, java.time.temporal.TemporalAccessor partialTemporal, java.time.format.ResolverStyle resolverStyle)
+  interface TemporalQuery<R>
+    queryFrom(java.time.temporal.TemporalAccessor temporal)
+  interface TemporalUnit
+    <R> addTo(R temporal, long amount)
+    between(java.time.temporal.Temporal temporal1Inclusive, java.time.temporal.Temporal temporal2Exclusive)
+    isSupportedBy(java.time.temporal.Temporal temporal)
+  class UnsupportedTemporalTypeException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+  class ValueRange
+    checkValidIntValue(long value, java.time.temporal.TemporalField field)
+    checkValidValue(long value, java.time.temporal.TemporalField field)
+    equals(java.lang.Object obj)
+    isValidIntValue(long value)
+    isValidValue(long value)
+    of(long min, long max)
+    of(long min, long maxSmallest, long maxLargest)
+    of(long minSmallest, long minLargest, long maxSmallest, long maxLargest)
+  class WeekFields
+    equals(java.lang.Object object)
+    of(java.time.DayOfWeek firstDayOfWeek, int minimalDaysInFirstWeek)
+    of(java.util.Locale locale)
+
+package java.time.zone
+;---------------------------------------
+  class ZoneOffsetTransition
+    compareTo(java.time.zone.ZoneOffsetTransition transition)
+    equals(java.lang.Object other)
+    isValidOffset(java.time.ZoneOffset offset)
+    of(java.time.LocalDateTime transition, java.time.ZoneOffset offsetBefore, java.time.ZoneOffset offsetAfter)
+  class ZoneOffsetTransitionRule
+    createTransition(int year)
+    equals(java.lang.Object otherRule)
+    of(java.time.Month month, int dayOfMonthIndicator, java.time.DayOfWeek dayOfWeek, java.time.LocalTime time, boolean timeEndOfDay, java.time.zone.ZoneOffsetTransitionRule.TimeDefinition timeDefinition, java.time.ZoneOffset standardOffset, java.time.ZoneOffset offsetBefore, java.time.ZoneOffset offsetAfter)
+  class ZoneOffsetTransitionRule.TimeDefinition
+    createDateTime(java.time.LocalDateTime dateTime, java.time.ZoneOffset standardOffset, java.time.ZoneOffset wallOffset)
+  class ZoneRules
+    equals(java.lang.Object otherRules)
+    getDaylightSavings(java.time.Instant instant)
+    getOffset(java.time.Instant instant)
+    getOffset(java.time.LocalDateTime localDateTime)
+    getStandardOffset(java.time.Instant instant)
+    getTransition(java.time.LocalDateTime localDateTime)
+    getValidOffsets(java.time.LocalDateTime localDateTime)
+    isDaylightSavings(java.time.Instant instant)
+    isValidOffset(java.time.LocalDateTime localDateTime, java.time.ZoneOffset offset)
+    nextTransition(java.time.Instant instant)
+    of(java.time.ZoneOffset offset)
+    of(java.time.ZoneOffset baseStandardOffset, java.time.ZoneOffset baseWallOffset, java.util.List<java.time.zone.ZoneOffsetTransition> standardOffsetTransitionList, java.util.List<java.time.zone.ZoneOffsetTransition> transitionList, java.util.List<java.time.zone.ZoneOffsetTransitionRule> lastRules)
+    previousTransition(java.time.Instant instant)
+  class ZoneRulesException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+
+package java.util
+;---------------------------------------
+  class AbstractCollection<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class AbstractList<E>
+    add(E e)
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    equals(java.lang.Object o)
+    get(int index)
+    indexOf(java.lang.Object o)
+    lastIndexOf(java.lang.Object o)
+    listIterator(int index)
+    remove(int index)
+    removeRange(int fromIndex, int toIndex)
+    set(int index, E element)
+    subList(int fromIndex, int toIndex)
+  class AbstractMap<K,V>
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    equals(java.lang.Object o)
+    get(java.lang.Object key)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    remove(java.lang.Object key)
+  class AbstractMap.SimpleEntry<K,V>
+    #ctor(java.util.Map.Entry<? extends K,? extends V> entry)
+    #ctor(K key, V value)
+    equals(java.lang.Object o)
+    setValue(V value)
+  class AbstractMap.SimpleImmutableEntry<K,V>
+    #ctor(java.util.Map.Entry<? extends K,? extends V> entry)
+    #ctor(K key, V value)
+    equals(java.lang.Object o)
+    setValue(V value)
+  class AbstractQueue<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+  class AbstractSequentialList<E>
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    get(int index)
+    listIterator(int index)
+    remove(int index)
+    set(int index, E element)
+  class AbstractSet<E>
+    equals(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+  class ArrayDeque<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    addFirst(E e)
+    addLast(E e)
+    #ctor(int numElements)
+    #ctor(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    offer(E e)
+    offerFirst(E e)
+    offerLast(E e)
+    push(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeFirstOccurrence(java.lang.Object o)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    removeLastOccurrence(java.lang.Object o)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class ArrayList<E>
+    add(E e)
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    addAll(java.util.Collection<? extends E> c)
+    #ctor(int initialCapacity)
+    #ctor(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    ensureCapacity(int minCapacity)
+    equals(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    get(int index)
+    indexOf(java.lang.Object o)
+    lastIndexOf(java.lang.Object o)
+    listIterator(int index)
+    remove(int index)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    removeRange(int fromIndex, int toIndex)
+    replaceAll(java.util.function.UnaryOperator<E> operator)
+    retainAll(java.util.Collection<?> c)
+    set(int index, E element)
+    sort(java.util.Comparator<? super E> c)
+    subList(int fromIndex, int toIndex)
+    <T> toArray(T[] a)
+  class Arrays
+    <T> asList(T... a)
+    binarySearch(byte[] a, byte key)
+    binarySearch(byte[] a, int fromIndex, int toIndex, byte key)
+    binarySearch(char[] a, char key)
+    binarySearch(char[] a, int fromIndex, int toIndex, char key)
+    binarySearch(double[] a, double key)
+    binarySearch(double[] a, int fromIndex, int toIndex, double key)
+    binarySearch(float[] a, float key)
+    binarySearch(float[] a, int fromIndex, int toIndex, float key)
+    binarySearch(int[] a, int key)
+    binarySearch(int[] a, int fromIndex, int toIndex, int key)
+    binarySearch(java.lang.Object[] a, int fromIndex, int toIndex, java.lang.Object key)
+    binarySearch(java.lang.Object[] a, java.lang.Object key)
+    binarySearch(long[] a, int fromIndex, int toIndex, long key)
+    binarySearch(long[] a, long key)
+    binarySearch(short[] a, int fromIndex, int toIndex, short key)
+    binarySearch(short[] a, short key)
+    <T> binarySearch(T[] a, int fromIndex, int toIndex, T key, java.util.Comparator<? super T> c)
+    <T> binarySearch(T[] a, T key, java.util.Comparator<? super T> c)
+    compare(boolean[] a, boolean[] b)
+    compare(boolean[] a, int aFromIndex, int aToIndex, boolean[] b, int bFromIndex, int bToIndex)
+    compare(byte[] a, byte[] b)
+    compare(byte[] a, int aFromIndex, int aToIndex, byte[] b, int bFromIndex, int bToIndex)
+    compare(char[] a, char[] b)
+    compare(char[] a, int aFromIndex, int aToIndex, char[] b, int bFromIndex, int bToIndex)
+    compare(double[] a, double[] b)
+    compare(double[] a, int aFromIndex, int aToIndex, double[] b, int bFromIndex, int bToIndex)
+    compare(float[] a, float[] b)
+    compare(float[] a, int aFromIndex, int aToIndex, float[] b, int bFromIndex, int bToIndex)
+    compare(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
+    compare(int[] a, int[] b)
+    compare(long[] a, int aFromIndex, int aToIndex, long[] b, int bFromIndex, int bToIndex)
+    compare(long[] a, long[] b)
+    compare(short[] a, int aFromIndex, int aToIndex, short[] b, int bFromIndex, int bToIndex)
+    compare(short[] a, short[] b)
+    <T> compare(T[] a, int aFromIndex, int aToIndex, T[] b, int bFromIndex, int bToIndex)
+    <T> compare(T[] a, int aFromIndex, int aToIndex, T[] b, int bFromIndex, int bToIndex, java.util.Comparator<? super T> cmp)
+    <T> compare(T[] a, T[] b)
+    <T> compare(T[] a, T[] b, java.util.Comparator<? super T> cmp)
+    compareUnsigned(byte[] a, byte[] b)
+    compareUnsigned(byte[] a, int aFromIndex, int aToIndex, byte[] b, int bFromIndex, int bToIndex)
+    compareUnsigned(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
+    compareUnsigned(int[] a, int[] b)
+    compareUnsigned(long[] a, int aFromIndex, int aToIndex, long[] b, int bFromIndex, int bToIndex)
+    compareUnsigned(long[] a, long[] b)
+    compareUnsigned(short[] a, int aFromIndex, int aToIndex, short[] b, int bFromIndex, int bToIndex)
+    compareUnsigned(short[] a, short[] b)
+    copyOf(boolean[] original, int newLength)
+    copyOf(byte[] original, int newLength)
+    copyOf(char[] original, int newLength)
+    copyOf(double[] original, int newLength)
+    copyOf(float[] original, int newLength)
+    copyOf(int[] original, int newLength)
+    copyOf(long[] original, int newLength)
+    copyOf(short[] original, int newLength)
+    <T> copyOf(T[] original, int newLength)
+    <T,U> copyOf(U[] original, int newLength, java.lang.Class<? extends T[]> newType)
+    copyOfRange(boolean[] original, int from, int to)
+    copyOfRange(byte[] original, int from, int to)
+    copyOfRange(char[] original, int from, int to)
+    copyOfRange(double[] original, int from, int to)
+    copyOfRange(float[] original, int from, int to)
+    copyOfRange(int[] original, int from, int to)
+    copyOfRange(long[] original, int from, int to)
+    copyOfRange(short[] original, int from, int to)
+    <T> copyOfRange(T[] original, int from, int to)
+    <T,U> copyOfRange(U[] original, int from, int to, java.lang.Class<? extends T[]> newType)
+    deepEquals(java.lang.Object[] a1, java.lang.Object[] a2)
+    deepHashCode(java.lang.Object[] a)
+    deepToString(java.lang.Object[] a)
+    equals(boolean[] a, boolean[] a2)
+    equals(boolean[] a, int aFromIndex, int aToIndex, boolean[] b, int bFromIndex, int bToIndex)
+    equals(byte[] a, byte[] a2)
+    equals(byte[] a, int aFromIndex, int aToIndex, byte[] b, int bFromIndex, int bToIndex)
+    equals(char[] a, char[] a2)
+    equals(char[] a, int aFromIndex, int aToIndex, char[] b, int bFromIndex, int bToIndex)
+    equals(double[] a, double[] a2)
+    equals(double[] a, int aFromIndex, int aToIndex, double[] b, int bFromIndex, int bToIndex)
+    equals(float[] a, float[] a2)
+    equals(float[] a, int aFromIndex, int aToIndex, float[] b, int bFromIndex, int bToIndex)
+    equals(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
+    equals(int[] a, int[] a2)
+    equals(java.lang.Object[] a, int aFromIndex, int aToIndex, java.lang.Object[] b, int bFromIndex, int bToIndex)
+    equals(java.lang.Object[] a, java.lang.Object[] a2)
+    equals(long[] a, int aFromIndex, int aToIndex, long[] b, int bFromIndex, int bToIndex)
+    equals(long[] a, long[] a2)
+    equals(short[] a, int aFromIndex, int aToIndex, short[] b, int bFromIndex, int bToIndex)
+    equals(short[] a, short[] a2)
+    <T> equals(T[] a, int aFromIndex, int aToIndex, T[] b, int bFromIndex, int bToIndex, java.util.Comparator<? super T> cmp)
+    <T> equals(T[] a, T[] a2, java.util.Comparator<? super T> cmp)
+    fill(boolean[] a, boolean val)
+    fill(boolean[] a, int fromIndex, int toIndex, boolean val)
+    fill(byte[] a, byte val)
+    fill(byte[] a, int fromIndex, int toIndex, byte val)
+    fill(char[] a, char val)
+    fill(char[] a, int fromIndex, int toIndex, char val)
+    fill(double[] a, double val)
+    fill(double[] a, int fromIndex, int toIndex, double val)
+    fill(float[] a, float val)
+    fill(float[] a, int fromIndex, int toIndex, float val)
+    fill(int[] a, int val)
+    fill(int[] a, int fromIndex, int toIndex, int val)
+    fill(java.lang.Object[] a, int fromIndex, int toIndex, java.lang.Object val)
+    fill(java.lang.Object[] a, java.lang.Object val)
+    fill(long[] a, int fromIndex, int toIndex, long val)
+    fill(long[] a, long val)
+    fill(short[] a, int fromIndex, int toIndex, short val)
+    fill(short[] a, short val)
+    hashCode(boolean[] a)
+    hashCode(byte[] a)
+    hashCode(char[] a)
+    hashCode(double[] a)
+    hashCode(float[] a)
+    hashCode(int[] a)
+    hashCode(java.lang.Object[] a)
+    hashCode(long[] a)
+    hashCode(short[] a)
+    mismatch(boolean[] a, boolean[] b)
+    mismatch(boolean[] a, int aFromIndex, int aToIndex, boolean[] b, int bFromIndex, int bToIndex)
+    mismatch(byte[] a, byte[] b)
+    mismatch(byte[] a, int aFromIndex, int aToIndex, byte[] b, int bFromIndex, int bToIndex)
+    mismatch(char[] a, char[] b)
+    mismatch(char[] a, int aFromIndex, int aToIndex, char[] b, int bFromIndex, int bToIndex)
+    mismatch(double[] a, double[] b)
+    mismatch(double[] a, int aFromIndex, int aToIndex, double[] b, int bFromIndex, int bToIndex)
+    mismatch(float[] a, float[] b)
+    mismatch(float[] a, int aFromIndex, int aToIndex, float[] b, int bFromIndex, int bToIndex)
+    mismatch(int[] a, int aFromIndex, int aToIndex, int[] b, int bFromIndex, int bToIndex)
+    mismatch(int[] a, int[] b)
+    mismatch(java.lang.Object[] a, int aFromIndex, int aToIndex, java.lang.Object[] b, int bFromIndex, int bToIndex)
+    mismatch(java.lang.Object[] a, java.lang.Object[] b)
+    mismatch(long[] a, int aFromIndex, int aToIndex, long[] b, int bFromIndex, int bToIndex)
+    mismatch(long[] a, long[] b)
+    mismatch(short[] a, int aFromIndex, int aToIndex, short[] b, int bFromIndex, int bToIndex)
+    mismatch(short[] a, short[] b)
+    <T> mismatch(T[] a, int aFromIndex, int aToIndex, T[] b, int bFromIndex, int bToIndex, java.util.Comparator<? super T> cmp)
+    <T> mismatch(T[] a, T[] b, java.util.Comparator<? super T> cmp)
+    parallelPrefix(double[] array, int fromIndex, int toIndex, java.util.function.DoubleBinaryOperator op)
+    parallelPrefix(double[] array, java.util.function.DoubleBinaryOperator op)
+    parallelPrefix(int[] array, int fromIndex, int toIndex, java.util.function.IntBinaryOperator op)
+    parallelPrefix(int[] array, java.util.function.IntBinaryOperator op)
+    parallelPrefix(long[] array, int fromIndex, int toIndex, java.util.function.LongBinaryOperator op)
+    parallelPrefix(long[] array, java.util.function.LongBinaryOperator op)
+    <T> parallelPrefix(T[] array, int fromIndex, int toIndex, java.util.function.BinaryOperator<T> op)
+    <T> parallelPrefix(T[] array, java.util.function.BinaryOperator<T> op)
+    parallelSetAll(double[] array, java.util.function.IntToDoubleFunction generator)
+    parallelSetAll(int[] array, java.util.function.IntUnaryOperator generator)
+    parallelSetAll(long[] array, java.util.function.IntToLongFunction generator)
+    <T> parallelSetAll(T[] array, java.util.function.IntFunction<? extends T> generator)
+    parallelSort(byte[] a)
+    parallelSort(byte[] a, int fromIndex, int toIndex)
+    parallelSort(char[] a)
+    parallelSort(char[] a, int fromIndex, int toIndex)
+    parallelSort(double[] a)
+    parallelSort(double[] a, int fromIndex, int toIndex)
+    parallelSort(float[] a)
+    parallelSort(float[] a, int fromIndex, int toIndex)
+    parallelSort(int[] a)
+    parallelSort(int[] a, int fromIndex, int toIndex)
+    parallelSort(long[] a)
+    parallelSort(long[] a, int fromIndex, int toIndex)
+    parallelSort(short[] a)
+    parallelSort(short[] a, int fromIndex, int toIndex)
+    <T> parallelSort(T[] a)
+    <T> parallelSort(T[] a, int fromIndex, int toIndex)
+    <T> parallelSort(T[] a, int fromIndex, int toIndex, java.util.Comparator<? super T> cmp)
+    <T> parallelSort(T[] a, java.util.Comparator<? super T> cmp)
+    setAll(double[] array, java.util.function.IntToDoubleFunction generator)
+    setAll(int[] array, java.util.function.IntUnaryOperator generator)
+    setAll(long[] array, java.util.function.IntToLongFunction generator)
+    <T> setAll(T[] array, java.util.function.IntFunction<? extends T> generator)
+    sort(byte[] a)
+    sort(byte[] a, int fromIndex, int toIndex)
+    sort(char[] a)
+    sort(char[] a, int fromIndex, int toIndex)
+    sort(double[] a)
+    sort(double[] a, int fromIndex, int toIndex)
+    sort(float[] a)
+    sort(float[] a, int fromIndex, int toIndex)
+    sort(int[] a)
+    sort(int[] a, int fromIndex, int toIndex)
+    sort(java.lang.Object[] a)
+    sort(java.lang.Object[] a, int fromIndex, int toIndex)
+    sort(long[] a)
+    sort(long[] a, int fromIndex, int toIndex)
+    sort(short[] a)
+    sort(short[] a, int fromIndex, int toIndex)
+    <T> sort(T[] a, int fromIndex, int toIndex, java.util.Comparator<? super T> c)
+    <T> sort(T[] a, java.util.Comparator<? super T> c)
+    spliterator(double[] array)
+    spliterator(double[] array, int startInclusive, int endExclusive)
+    spliterator(int[] array)
+    spliterator(int[] array, int startInclusive, int endExclusive)
+    spliterator(long[] array)
+    spliterator(long[] array, int startInclusive, int endExclusive)
+    <T> spliterator(T[] array)
+    <T> spliterator(T[] array, int startInclusive, int endExclusive)
+    stream(double[] array)
+    stream(double[] array, int startInclusive, int endExclusive)
+    stream(int[] array)
+    stream(int[] array, int startInclusive, int endExclusive)
+    stream(long[] array)
+    stream(long[] array, int startInclusive, int endExclusive)
+    <T> stream(T[] array)
+    <T> stream(T[] array, int startInclusive, int endExclusive)
+    toString(boolean[] a)
+    toString(byte[] a)
+    toString(char[] a)
+    toString(double[] a)
+    toString(float[] a)
+    toString(int[] a)
+    toString(java.lang.Object[] a)
+    toString(long[] a)
+    toString(short[] a)
+  class Base64
+    getMimeEncoder(int lineLength, byte[] lineSeparator)
+  class Base64.Decoder
+    decode(byte[] src)
+    decode(byte[] src, byte[] dst)
+    decode(java.lang.String src)
+    decode(java.nio.ByteBuffer buffer)
+    wrap(java.io.InputStream is)
+  class Base64.Encoder
+    encode(byte[] src)
+    encode(byte[] src, byte[] dst)
+    encode(java.nio.ByteBuffer buffer)
+    encodeToString(byte[] src)
+    wrap(java.io.OutputStream os)
+  class BitSet
+    and(java.util.BitSet set)
+    andNot(java.util.BitSet set)
+    #ctor(int nbits)
+    clear(int bitIndex)
+    clear(int fromIndex, int toIndex)
+    equals(java.lang.Object obj)
+    flip(int bitIndex)
+    flip(int fromIndex, int toIndex)
+    get(int bitIndex)
+    get(int fromIndex, int toIndex)
+    intersects(java.util.BitSet set)
+    nextClearBit(int fromIndex)
+    nextSetBit(int fromIndex)
+    or(java.util.BitSet set)
+    previousClearBit(int fromIndex)
+    previousSetBit(int fromIndex)
+    set(int bitIndex)
+    set(int bitIndex, boolean value)
+    set(int fromIndex, int toIndex)
+    set(int fromIndex, int toIndex, boolean value)
+    valueOf(byte[] bytes)
+    valueOf(java.nio.ByteBuffer bb)
+    valueOf(java.nio.LongBuffer lb)
+    valueOf(long[] longs)
+    xor(java.util.BitSet set)
+  class Calendar
+    add(int field, int amount)
+    after(java.lang.Object when)
+    before(java.lang.Object when)
+    #ctor(java.util.TimeZone zone, java.util.Locale aLocale)
+    clear(int field)
+    compareTo(java.util.Calendar anotherCalendar)
+    equals(java.lang.Object obj)
+    get(int field)
+    getActualMaximum(int field)
+    getActualMinimum(int field)
+    getDisplayName(int field, int style, java.util.Locale locale)
+    getDisplayNames(int field, int style, java.util.Locale locale)
+    getGreatestMinimum(int field)
+    getInstance(java.util.Locale aLocale)
+    getInstance(java.util.TimeZone zone)
+    getInstance(java.util.TimeZone zone, java.util.Locale aLocale)
+    getLeastMaximum(int field)
+    getMaximum(int field)
+    getMinimum(int field)
+    internalGet(int field)
+    isSet(int field)
+    roll(int field, boolean up)
+    roll(int field, int amount)
+    set(int field, int value)
+    set(int year, int month, int date)
+    set(int year, int month, int date, int hourOfDay, int minute)
+    set(int year, int month, int date, int hourOfDay, int minute, int second)
+    setFirstDayOfWeek(int value)
+    setLenient(boolean lenient)
+    setMinimalDaysInFirstWeek(int value)
+    setTime(java.util.Date date)
+    setTimeInMillis(long millis)
+    setTimeZone(java.util.TimeZone value)
+    setWeekDate(int weekYear, int weekOfYear, int dayOfWeek)
+  class Calendar.Builder
+    set(int field, int value)
+    setCalendarType(java.lang.String type)
+    setDate(int year, int month, int dayOfMonth)
+    setFields(int... fieldValuePairs)
+    setInstant(java.util.Date instant)
+    setInstant(long instant)
+    setLenient(boolean lenient)
+    setLocale(java.util.Locale locale)
+    setTimeOfDay(int hourOfDay, int minute, int second)
+    setTimeOfDay(int hourOfDay, int minute, int second, int millis)
+    setTimeZone(java.util.TimeZone zone)
+    setWeekDate(int weekYear, int weekOfYear, int dayOfWeek)
+    setWeekDefinition(int firstDayOfWeek, int minimalDaysInFirstWeek)
+  interface Collection<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    equals(java.lang.Object o)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(java.util.function.IntFunction<T[]> generator)
+    <T> toArray(T[] a)
+  class Collections
+    <T> addAll(java.util.Collection<? super T> c, T... elements)
+    <T> asLifoQueue(java.util.Deque<T> deque)
+    <T> binarySearch(java.util.List<? extends java.lang.Comparable<? super T>> list, T key)
+    <T> binarySearch(java.util.List<? extends T> list, T key, java.util.Comparator<? super T> c)
+    <E> checkedCollection(java.util.Collection<E> c, java.lang.Class<E> type)
+    <E> checkedList(java.util.List<E> list, java.lang.Class<E> type)
+    <K,V> checkedMap(java.util.Map<K,V> m, java.lang.Class<K> keyType, java.lang.Class<V> valueType)
+    <K,V> checkedNavigableMap(java.util.NavigableMap<K,V> m, java.lang.Class<K> keyType, java.lang.Class<V> valueType)
+    <E> checkedNavigableSet(java.util.NavigableSet<E> s, java.lang.Class<E> type)
+    <E> checkedQueue(java.util.Queue<E> queue, java.lang.Class<E> type)
+    <E> checkedSet(java.util.Set<E> s, java.lang.Class<E> type)
+    <K,V> checkedSortedMap(java.util.SortedMap<K,V> m, java.lang.Class<K> keyType, java.lang.Class<V> valueType)
+    <E> checkedSortedSet(java.util.SortedSet<E> s, java.lang.Class<E> type)
+    <T> copy(java.util.List<? super T> dest, java.util.List<? extends T> src)
+    disjoint(java.util.Collection<?> c1, java.util.Collection<?> c2)
+    <T> enumeration(java.util.Collection<T> c)
+    <T> fill(java.util.List<? super T> list, T obj)
+    frequency(java.util.Collection<?> c, java.lang.Object o)
+    indexOfSubList(java.util.List<?> source, java.util.List<?> target)
+    lastIndexOfSubList(java.util.List<?> source, java.util.List<?> target)
+    <T> list(java.util.Enumeration<T> e)
+    <T> max(java.util.Collection<? extends T> coll)
+    <T> max(java.util.Collection<? extends T> coll, java.util.Comparator<? super T> comp)
+    <T> min(java.util.Collection<? extends T> coll)
+    <T> min(java.util.Collection<? extends T> coll, java.util.Comparator<? super T> comp)
+    <T> nCopies(int n, T o)
+    <E> newSetFromMap(java.util.Map<E,java.lang.Boolean> map)
+    <T> replaceAll(java.util.List<T> list, T oldVal, T newVal)
+    reverse(java.util.List<?> list)
+    <T> reverseOrder(java.util.Comparator<T> cmp)
+    rotate(java.util.List<?> list, int distance)
+    shuffle(java.util.List<?> list)
+    shuffle(java.util.List<?> list, java.util.Random rnd)
+    <T> singleton(T o)
+    <T> singletonList(T o)
+    <K,V> singletonMap(K key, V value)
+    <T> sort(java.util.List<T> list)
+    <T> sort(java.util.List<T> list, java.util.Comparator<? super T> c)
+    swap(java.util.List<?> list, int i, int j)
+    <T> synchronizedCollection(java.util.Collection<T> c)
+    <T> synchronizedList(java.util.List<T> list)
+    <K,V> synchronizedMap(java.util.Map<K,V> m)
+    <K,V> synchronizedNavigableMap(java.util.NavigableMap<K,V> m)
+    <T> synchronizedNavigableSet(java.util.NavigableSet<T> s)
+    <T> synchronizedSet(java.util.Set<T> s)
+    <K,V> synchronizedSortedMap(java.util.SortedMap<K,V> m)
+    <T> synchronizedSortedSet(java.util.SortedSet<T> s)
+    <T> unmodifiableCollection(java.util.Collection<? extends T> c)
+    <T> unmodifiableList(java.util.List<? extends T> list)
+    <K,V> unmodifiableMap(java.util.Map<? extends K,? extends V> m)
+    <K,V> unmodifiableNavigableMap(java.util.NavigableMap<K,? extends V> m)
+    <T> unmodifiableNavigableSet(java.util.NavigableSet<T> s)
+    <T> unmodifiableSet(java.util.Set<? extends T> s)
+    <K,V> unmodifiableSortedMap(java.util.SortedMap<K,? extends V> m)
+    <T> unmodifiableSortedSet(java.util.SortedSet<T> s)
+  interface Comparator<T>
+    compare(T o1, T o2)
+    <T,U> comparing(java.util.function.Function<? super T,? extends U> keyExtractor)
+    <T,U> comparing(java.util.function.Function<? super T,? extends U> keyExtractor, java.util.Comparator<? super U> keyComparator)
+    <T> comparingDouble(java.util.function.ToDoubleFunction<? super T> keyExtractor)
+    <T> comparingInt(java.util.function.ToIntFunction<? super T> keyExtractor)
+    <T> comparingLong(java.util.function.ToLongFunction<? super T> keyExtractor)
+    equals(java.lang.Object obj)
+    <T> nullsFirst(java.util.Comparator<? super T> comparator)
+    <T> nullsLast(java.util.Comparator<? super T> comparator)
+    thenComparing(java.util.Comparator<? super T> other)
+    <U> thenComparing(java.util.function.Function<? super T,? extends U> keyExtractor)
+    <U> thenComparing(java.util.function.Function<? super T,? extends U> keyExtractor, java.util.Comparator<? super U> keyComparator)
+    thenComparingDouble(java.util.function.ToDoubleFunction<? super T> keyExtractor)
+    thenComparingInt(java.util.function.ToIntFunction<? super T> keyExtractor)
+    thenComparingLong(java.util.function.ToLongFunction<? super T> keyExtractor)
+  class ConcurrentModificationException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class Currency
+    getDisplayName(java.util.Locale locale)
+    getInstance(java.lang.String currencyCode)
+    getInstance(java.util.Locale locale)
+    getSymbol(java.util.Locale locale)
+  class Date
+    after(java.util.Date when)
+    before(java.util.Date when)
+    compareTo(java.util.Date anotherDate)
+    #ctor(int year, int month, int date)
+    #ctor(int year, int month, int date, int hrs, int min)
+    #ctor(int year, int month, int date, int hrs, int min, int sec)
+    #ctor(java.lang.String s)
+    #ctor(long date)
+    equals(java.lang.Object obj)
+    from(java.time.Instant instant)
+    parse(java.lang.String s)
+    setDate(int date)
+    setHours(int hours)
+    setMinutes(int minutes)
+    setMonth(int month)
+    setSeconds(int seconds)
+    setTime(long time)
+    setYear(int year)
+    UTC(int year, int month, int date, int hrs, int min, int sec)
+  interface Deque<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    addFirst(E e)
+    addLast(E e)
+    contains(java.lang.Object o)
+    offer(E e)
+    offerFirst(E e)
+    offerLast(E e)
+    push(E e)
+    remove(java.lang.Object o)
+    removeFirstOccurrence(java.lang.Object o)
+    removeLastOccurrence(java.lang.Object o)
+  class Dictionary<K,V>
+    get(java.lang.Object key)
+    put(K key, V value)
+    remove(java.lang.Object key)
+  class DoubleSummaryStatistics
+    accept(double value)
+    combine(java.util.DoubleSummaryStatistics other)
+    #ctor(long count, double min, double max, double sum)
+  class DuplicateFormatFlagsException
+    #ctor(java.lang.String f)
+  class EnumMap<K,V>
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    #ctor(java.lang.Class<K> keyType)
+    #ctor(java.util.EnumMap<K,? extends V> m)
+    #ctor(java.util.Map<K,? extends V> m)
+    equals(java.lang.Object o)
+    get(java.lang.Object key)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    remove(java.lang.Object key)
+  class EnumSet<E>
+    <E> allOf(java.lang.Class<E> elementType)
+    <E> complementOf(java.util.EnumSet<E> s)
+    <E> copyOf(java.util.Collection<E> c)
+    <E> copyOf(java.util.EnumSet<E> s)
+    <E> noneOf(java.lang.Class<E> elementType)
+    <E> of(E e)
+    <E> of(E e1, E e2)
+    <E> of(E e1, E e2, E e3)
+    <E> of(E e1, E e2, E e3, E e4)
+    <E> of(E e1, E e2, E e3, E e4, E e5)
+    <E> of(E first, E... rest)
+    <E> range(E from, E to)
+  class EventListenerProxy<T>
+    #ctor(T listener)
+  class EventObject
+    #ctor(java.lang.Object source)
+  class FormatFlagsConversionMismatchException
+    #ctor(java.lang.String f, char c)
+  interface Formattable
+    formatTo(java.util.Formatter formatter, int flags, int width, int precision)
+  class Formatter
+    format(java.lang.String format, java.lang.Object... args)
+    format(java.util.Locale l, java.lang.String format, java.lang.Object... args)
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, java.lang.String csn)
+    #ctor(java.io.File file, java.lang.String csn, java.util.Locale l)
+    #ctor(java.io.File file, java.nio.charset.Charset charset, java.util.Locale l)
+    #ctor(java.io.OutputStream os)
+    #ctor(java.io.OutputStream os, java.lang.String csn)
+    #ctor(java.io.OutputStream os, java.lang.String csn, java.util.Locale l)
+    #ctor(java.io.OutputStream os, java.nio.charset.Charset charset, java.util.Locale l)
+    #ctor(java.io.PrintStream ps)
+    #ctor(java.lang.Appendable a)
+    #ctor(java.lang.Appendable a, java.util.Locale l)
+    #ctor(java.lang.String fileName)
+    #ctor(java.lang.String fileName, java.lang.String csn)
+    #ctor(java.lang.String fileName, java.lang.String csn, java.util.Locale l)
+    #ctor(java.lang.String fileName, java.nio.charset.Charset charset, java.util.Locale l)
+    #ctor(java.util.Locale l)
+  class GregorianCalendar
+    add(int field, int amount)
+    equals(java.lang.Object obj)
+    from(java.time.ZonedDateTime zdt)
+    getActualMaximum(int field)
+    getActualMinimum(int field)
+    getGreatestMinimum(int field)
+    getLeastMaximum(int field)
+    getMaximum(int field)
+    getMinimum(int field)
+    #ctor(int year, int month, int dayOfMonth)
+    #ctor(int year, int month, int dayOfMonth, int hourOfDay, int minute)
+    #ctor(int year, int month, int dayOfMonth, int hourOfDay, int minute, int second)
+    #ctor(java.util.Locale aLocale)
+    #ctor(java.util.TimeZone zone)
+    #ctor(java.util.TimeZone zone, java.util.Locale aLocale)
+    isLeapYear(int year)
+    roll(int field, boolean up)
+    roll(int field, int amount)
+    setGregorianChange(java.util.Date date)
+    setTimeZone(java.util.TimeZone zone)
+    setWeekDate(int weekYear, int weekOfYear, int dayOfWeek)
+  class HashMap<K,V>
+    compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
+    computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+    merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    putIfAbsent(K key, V value)
+    remove(java.lang.Object key)
+    remove(java.lang.Object key, java.lang.Object value)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+  class HashSet<E>
+    add(E e)
+    contains(java.lang.Object o)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(java.util.Collection<? extends E> c)
+    remove(java.lang.Object o)
+  class Hashtable<K,V>
+    compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
+    computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    contains(java.lang.Object value)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    equals(java.lang.Object o)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(java.util.Map<? extends K,? extends V> t)
+    merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> t)
+    putIfAbsent(K key, V value)
+    remove(java.lang.Object key)
+    remove(java.lang.Object key, java.lang.Object value)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+  class HexFormat
+    equals(java.lang.Object o)
+    <A> formatHex(A out, byte[] bytes)
+    <A> formatHex(A out, byte[] bytes, int fromIndex, int toIndex)
+    formatHex(byte[] bytes)
+    formatHex(byte[] bytes, int fromIndex, int toIndex)
+    fromHexDigit(int ch)
+    fromHexDigits(java.lang.CharSequence string)
+    fromHexDigits(java.lang.CharSequence string, int fromIndex, int toIndex)
+    fromHexDigitsToLong(java.lang.CharSequence string)
+    fromHexDigitsToLong(java.lang.CharSequence string, int fromIndex, int toIndex)
+    isHexDigit(int ch)
+    ofDelimiter(java.lang.String delimiter)
+    parseHex(char[] chars, int fromIndex, int toIndex)
+    parseHex(java.lang.CharSequence string)
+    parseHex(java.lang.CharSequence string, int fromIndex, int toIndex)
+    <A> toHexDigits(A out, byte value)
+    toHexDigits(byte value)
+    toHexDigits(char value)
+    toHexDigits(int value)
+    toHexDigits(long value)
+    toHexDigits(long value, int digits)
+    toHexDigits(short value)
+    toHighHexDigit(int value)
+    toLowHexDigit(int value)
+    withDelimiter(java.lang.String delimiter)
+    withPrefix(java.lang.String prefix)
+    withSuffix(java.lang.String suffix)
+  class IdentityHashMap<K,V>
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    equals(java.lang.Object o)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    #ctor(int expectedMaxSize)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    remove(java.lang.Object key)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+  class IllegalFormatCodePointException
+    #ctor(int c)
+  class IllegalFormatConversionException
+    #ctor(char c, java.lang.Class<?> arg)
+  class IllegalFormatFlagsException
+    #ctor(java.lang.String f)
+  class IllegalFormatPrecisionException
+    #ctor(int p)
+  class IllegalFormatWidthException
+    #ctor(int w)
+  class IllformedLocaleException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, int errorIndex)
+  class InputMismatchException
+    #ctor(java.lang.String s)
+  class IntSummaryStatistics
+    accept(int value)
+    combine(java.util.IntSummaryStatistics other)
+    #ctor(long count, int min, int max, long sum)
+  class InvalidPropertiesFormatException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.Throwable cause)
+  interface Iterator<E>
+    forEachRemaining(java.util.function.Consumer<? super E> action)
+  class LinkedHashMap<K,V>
+    containsValue(java.lang.Object value)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(int initialCapacity, float loadFactor, boolean accessOrder)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+    removeEldestEntry(java.util.Map.Entry<K,V> eldest)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+  class LinkedHashSet<E>
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(java.util.Collection<? extends E> c)
+  class LinkedList<E>
+    add(E e)
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    addAll(java.util.Collection<? extends E> c)
+    addFirst(E e)
+    addLast(E e)
+    contains(java.lang.Object o)
+    get(int index)
+    indexOf(java.lang.Object o)
+    lastIndexOf(java.lang.Object o)
+    #ctor(java.util.Collection<? extends E> c)
+    listIterator(int index)
+    offer(E e)
+    offerFirst(E e)
+    offerLast(E e)
+    push(E e)
+    remove(int index)
+    remove(java.lang.Object o)
+    removeFirstOccurrence(java.lang.Object o)
+    removeLastOccurrence(java.lang.Object o)
+    set(int index, E element)
+    <T> toArray(T[] a)
+  interface List<E>
+    add(E e)
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    addAll(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    <E> copyOf(java.util.Collection<? extends E> coll)
+    equals(java.lang.Object o)
+    get(int index)
+    indexOf(java.lang.Object o)
+    lastIndexOf(java.lang.Object o)
+    listIterator(int index)
+    <E> of(E e1)
+    <E> of(E e1, E e2)
+    <E> of(E e1, E e2, E e3)
+    <E> of(E e1, E e2, E e3, E e4)
+    <E> of(E e1, E e2, E e3, E e4, E e5)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10)
+    <E> of(E... elements)
+    remove(int index)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    replaceAll(java.util.function.UnaryOperator<E> operator)
+    retainAll(java.util.Collection<?> c)
+    set(int index, E element)
+    sort(java.util.Comparator<? super E> c)
+    subList(int fromIndex, int toIndex)
+    <T> toArray(T[] a)
+  interface ListIterator<E>
+    add(E e)
+    set(E e)
+  class ListResourceBundle
+    handleGetObject(java.lang.String key)
+  class Locale
+    equals(java.lang.Object obj)
+    filter(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Collection<java.util.Locale> locales)
+    filter(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Collection<java.util.Locale> locales, java.util.Locale.FilteringMode mode)
+    filterTags(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Collection<java.lang.String> tags)
+    filterTags(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Collection<java.lang.String> tags, java.util.Locale.FilteringMode mode)
+    forLanguageTag(java.lang.String languageTag)
+    getDefault(java.util.Locale.Category category)
+    getDisplayCountry(java.util.Locale locale)
+    getDisplayLanguage(java.util.Locale locale)
+    getDisplayName(java.util.Locale locale)
+    getDisplayScript(java.util.Locale inLocale)
+    getDisplayVariant(java.util.Locale inLocale)
+    getExtension(char key)
+    getISOCountries(java.util.Locale.IsoCountryCode type)
+    getUnicodeLocaleType(java.lang.String key)
+    #ctor(java.lang.String language)
+    #ctor(java.lang.String language, java.lang.String country)
+    #ctor(java.lang.String language, java.lang.String country, java.lang.String variant)
+    lookup(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Collection<java.util.Locale> locales)
+    lookupTag(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Collection<java.lang.String> tags)
+    setDefault(java.util.Locale newLocale)
+    setDefault(java.util.Locale.Category category, java.util.Locale newLocale)
+  class Locale.Builder
+    addUnicodeLocaleAttribute(java.lang.String attribute)
+    removeUnicodeLocaleAttribute(java.lang.String attribute)
+    setExtension(char key, java.lang.String value)
+    setLanguage(java.lang.String language)
+    setLanguageTag(java.lang.String languageTag)
+    setLocale(java.util.Locale locale)
+    setRegion(java.lang.String region)
+    setScript(java.lang.String script)
+    setUnicodeLocaleKeyword(java.lang.String key, java.lang.String type)
+    setVariant(java.lang.String variant)
+  class Locale.LanguageRange
+    equals(java.lang.Object obj)
+    #ctor(java.lang.String range)
+    #ctor(java.lang.String range, double weight)
+    mapEquivalents(java.util.List<java.util.Locale.LanguageRange> priorityList, java.util.Map<java.lang.String,java.util.List<java.lang.String>> map)
+    parse(java.lang.String ranges)
+    parse(java.lang.String ranges, java.util.Map<java.lang.String,java.util.List<java.lang.String>> map)
+  class LongSummaryStatistics
+    accept(int value)
+    accept(long value)
+    combine(java.util.LongSummaryStatistics other)
+    #ctor(long count, long min, long max, long sum)
+  interface Map<K,V>
+    compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
+    computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    <K,V> copyOf(java.util.Map<? extends K,? extends V> map)
+    <K,V> entry(K k, V v)
+    equals(java.lang.Object o)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
+    <K,V> of(K k1, V v1)
+    <K,V> of(K k1, V v1, K k2, V v2)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6, K k7, V v7)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6, K k7, V v7, K k8, V v8)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6, K k7, V v7, K k8, V v8, K k9, V v9)
+    <K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6, K k7, V v7, K k8, V v8, K k9, V v9, K k10, V v10)
+    <K,V> ofEntries(java.util.Map.Entry<? extends K,? extends V>... entries)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    putIfAbsent(K key, V value)
+    remove(java.lang.Object key)
+    remove(java.lang.Object key, java.lang.Object value)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+  interface Map.Entry<K,V>
+    <K,V> comparingByKey(java.util.Comparator<? super K> cmp)
+    <K,V> comparingByValue(java.util.Comparator<? super V> cmp)
+    equals(java.lang.Object o)
+    setValue(V value)
+  class MissingFormatArgumentException
+    #ctor(java.lang.String s)
+  class MissingFormatWidthException
+    #ctor(java.lang.String s)
+  class MissingResourceException
+    #ctor(java.lang.String s, java.lang.String className, java.lang.String key)
+  interface NavigableMap<K,V>
+    ceilingEntry(K key)
+    ceilingKey(K key)
+    floorEntry(K key)
+    floorKey(K key)
+    headMap(K toKey)
+    headMap(K toKey, boolean inclusive)
+    higherEntry(K key)
+    higherKey(K key)
+    lowerEntry(K key)
+    lowerKey(K key)
+    subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
+    subMap(K fromKey, K toKey)
+    tailMap(K fromKey)
+    tailMap(K fromKey, boolean inclusive)
+  interface NavigableSet<E>
+    ceiling(E e)
+    floor(E e)
+    headSet(E toElement)
+    headSet(E toElement, boolean inclusive)
+    higher(E e)
+    lower(E e)
+    subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
+    subSet(E fromElement, E toElement)
+    tailSet(E fromElement)
+    tailSet(E fromElement, boolean inclusive)
+  class NoSuchElementException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String s, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class Objects
+    checkFromIndexSize(int fromIndex, int size, int length)
+    checkFromIndexSize(long fromIndex, long size, long length)
+    checkFromToIndex(int fromIndex, int toIndex, int length)
+    checkFromToIndex(long fromIndex, long toIndex, long length)
+    checkIndex(int index, int length)
+    checkIndex(long index, long length)
+    <T> compare(T a, T b, java.util.Comparator<? super T> c)
+    deepEquals(java.lang.Object a, java.lang.Object b)
+    equals(java.lang.Object a, java.lang.Object b)
+    hash(java.lang.Object... values)
+    hashCode(java.lang.Object o)
+    isNull(java.lang.Object obj)
+    nonNull(java.lang.Object obj)
+    <T> requireNonNull(T obj)
+    <T> requireNonNull(T obj, java.lang.String message)
+    <T> requireNonNull(T obj, java.util.function.Supplier<java.lang.String> messageSupplier)
+    <T> requireNonNullElse(T obj, T defaultObj)
+    <T> requireNonNullElseGet(T obj, java.util.function.Supplier<? extends T> supplier)
+    toString(java.lang.Object o)
+    toString(java.lang.Object o, java.lang.String nullDefault)
+  class Observable
+    addObserver(java.util.Observer o)
+    deleteObserver(java.util.Observer o)
+    notifyObservers(java.lang.Object arg)
+  interface Observer
+    update(java.util.Observable o, java.lang.Object arg)
+  class Optional<T>
+    equals(java.lang.Object obj)
+    filter(java.util.function.Predicate<? super T> predicate)
+    <U> flatMap(java.util.function.Function<? super T,? extends java.util.Optional<? extends U>> mapper)
+    ifPresent(java.util.function.Consumer<? super T> action)
+    ifPresentOrElse(java.util.function.Consumer<? super T> action, java.lang.Runnable emptyAction)
+    <U> map(java.util.function.Function<? super T,? extends U> mapper)
+    <T> of(T value)
+    <T> ofNullable(T value)
+    or(java.util.function.Supplier<? extends java.util.Optional<? extends T>> supplier)
+    orElse(T other)
+    orElseGet(java.util.function.Supplier<? extends T> supplier)
+    <X> orElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier)
+  class OptionalDouble
+    equals(java.lang.Object obj)
+    ifPresent(java.util.function.DoubleConsumer action)
+    ifPresentOrElse(java.util.function.DoubleConsumer action, java.lang.Runnable emptyAction)
+    of(double value)
+    orElse(double other)
+    orElseGet(java.util.function.DoubleSupplier supplier)
+    <X> orElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier)
+  class OptionalInt
+    equals(java.lang.Object obj)
+    ifPresent(java.util.function.IntConsumer action)
+    ifPresentOrElse(java.util.function.IntConsumer action, java.lang.Runnable emptyAction)
+    of(int value)
+    orElse(int other)
+    orElseGet(java.util.function.IntSupplier supplier)
+    <X> orElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier)
+  class OptionalLong
+    equals(java.lang.Object obj)
+    ifPresent(java.util.function.LongConsumer action)
+    ifPresentOrElse(java.util.function.LongConsumer action, java.lang.Runnable emptyAction)
+    of(long value)
+    orElse(long other)
+    orElseGet(java.util.function.LongSupplier supplier)
+    <X> orElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier)
+  interface PrimitiveIterator<T,T_CONS>
+    forEachRemaining(T_CONS action)
+  interface PrimitiveIterator.OfDouble
+    forEachRemaining(java.util.function.Consumer<? super java.lang.Double> action)
+    forEachRemaining(java.util.function.DoubleConsumer action)
+  interface PrimitiveIterator.OfInt
+    forEachRemaining(java.util.function.Consumer<? super java.lang.Integer> action)
+    forEachRemaining(java.util.function.IntConsumer action)
+  interface PrimitiveIterator.OfLong
+    forEachRemaining(java.util.function.Consumer<? super java.lang.Long> action)
+    forEachRemaining(java.util.function.LongConsumer action)
+  class PriorityQueue<E>
+    add(E e)
+    contains(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    offer(E e)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, java.util.Comparator<? super E> comparator)
+    #ctor(java.util.Collection<? extends E> c)
+    #ctor(java.util.Comparator<? super E> comparator)
+    #ctor(java.util.PriorityQueue<? extends E> c)
+    #ctor(java.util.SortedSet<? extends E> c)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class Properties
+    getProperty(java.lang.String key)
+    getProperty(java.lang.String key, java.lang.String defaultValue)
+    list(java.io.PrintStream out)
+    list(java.io.PrintWriter out)
+    load(java.io.InputStream inStream)
+    load(java.io.Reader reader)
+    loadFromXML(java.io.InputStream in)
+    #ctor(java.util.Properties defaults)
+    save(java.io.OutputStream out, java.lang.String comments)
+    setProperty(java.lang.String key, java.lang.String value)
+    store(java.io.OutputStream out, java.lang.String comments)
+    store(java.io.Writer writer, java.lang.String comments)
+    storeToXML(java.io.OutputStream os, java.lang.String comment)
+    storeToXML(java.io.OutputStream os, java.lang.String comment, java.lang.String encoding)
+  class PropertyPermission
+    #ctor(java.lang.String name, java.lang.String actions)
+  class PropertyResourceBundle
+    handleGetObject(java.lang.String key)
+    #ctor(java.io.InputStream stream)
+    #ctor(java.io.Reader reader)
+  interface Queue<E>
+    add(E e)
+    offer(E e)
+  class Random
+    doubles(double randomNumberOrigin, double randomNumberBound)
+    doubles(long streamSize)
+    doubles(long streamSize, double randomNumberOrigin, double randomNumberBound)
+    ints(int randomNumberOrigin, int randomNumberBound)
+    ints(long streamSize)
+    ints(long streamSize, int randomNumberOrigin, int randomNumberBound)
+    longs(long streamSize)
+    longs(long randomNumberOrigin, long randomNumberBound)
+    longs(long streamSize, long randomNumberOrigin, long randomNumberBound)
+    next(int bits)
+    nextBytes(byte[] bytes)
+    nextInt(int bound)
+    #ctor(long seed)
+    setSeed(long seed)
+  class ResourceBundle
+    clearCache(java.lang.ClassLoader loader)
+    containsKey(java.lang.String key)
+    getBundle(java.lang.String baseName)
+    getBundle(java.lang.String baseName, java.util.Locale locale)
+    getBundle(java.lang.String baseName, java.util.Locale locale, java.lang.ClassLoader loader)
+    getBundle(java.lang.String baseName, java.util.Locale targetLocale, java.lang.ClassLoader loader, java.util.ResourceBundle.Control control)
+    getBundle(java.lang.String baseName, java.util.Locale targetLocale, java.util.ResourceBundle.Control control)
+    getBundle(java.lang.String baseName, java.util.ResourceBundle.Control control)
+    getObject(java.lang.String key)
+    getString(java.lang.String key)
+    getStringArray(java.lang.String key)
+    handleGetObject(java.lang.String key)
+    setParent(java.util.ResourceBundle parent)
+  class ResourceBundle.Control
+    getCandidateLocales(java.lang.String baseName, java.util.Locale locale)
+    getControl(java.util.List<java.lang.String> formats)
+    getFallbackLocale(java.lang.String baseName, java.util.Locale locale)
+    getFormats(java.lang.String baseName)
+    getNoFallbackControl(java.util.List<java.lang.String> formats)
+    getTimeToLive(java.lang.String baseName, java.util.Locale locale)
+    needsReload(java.lang.String baseName, java.util.Locale locale, java.lang.String format, java.lang.ClassLoader loader, java.util.ResourceBundle bundle, long loadTime)
+    newBundle(java.lang.String baseName, java.util.Locale locale, java.lang.String format, java.lang.ClassLoader loader, boolean reload)
+    toBundleName(java.lang.String baseName, java.util.Locale locale)
+    toResourceName(java.lang.String bundleName, java.lang.String suffix)
+  class Scanner
+    findAll(java.lang.String patString)
+    findAll(java.util.regex.Pattern pattern)
+    findInLine(java.lang.String pattern)
+    findInLine(java.util.regex.Pattern pattern)
+    findWithinHorizon(java.lang.String pattern, int horizon)
+    findWithinHorizon(java.util.regex.Pattern pattern, int horizon)
+    hasNext(java.lang.String pattern)
+    hasNext(java.util.regex.Pattern pattern)
+    hasNextBigInteger(int radix)
+    hasNextByte(int radix)
+    hasNextInt(int radix)
+    hasNextLong(int radix)
+    hasNextShort(int radix)
+    next(java.lang.String pattern)
+    next(java.util.regex.Pattern pattern)
+    nextBigInteger(int radix)
+    nextByte(int radix)
+    nextInt(int radix)
+    nextLong(int radix)
+    nextShort(int radix)
+    #ctor(java.io.File source)
+    #ctor(java.io.File source, java.lang.String charsetName)
+    #ctor(java.io.File source, java.nio.charset.Charset charset)
+    #ctor(java.io.InputStream source)
+    #ctor(java.io.InputStream source, java.lang.String charsetName)
+    #ctor(java.io.InputStream source, java.nio.charset.Charset charset)
+    #ctor(java.lang.Readable source)
+    #ctor(java.lang.String source)
+    #ctor(java.nio.channels.ReadableByteChannel source)
+    #ctor(java.nio.channels.ReadableByteChannel source, java.lang.String charsetName)
+    #ctor(java.nio.channels.ReadableByteChannel source, java.nio.charset.Charset charset)
+    #ctor(java.nio.file.Path source)
+    #ctor(java.nio.file.Path source, java.lang.String charsetName)
+    #ctor(java.nio.file.Path source, java.nio.charset.Charset charset)
+    skip(java.lang.String pattern)
+    skip(java.util.regex.Pattern pattern)
+    useDelimiter(java.lang.String pattern)
+    useDelimiter(java.util.regex.Pattern pattern)
+    useLocale(java.util.Locale locale)
+    useRadix(int radix)
+  class ServiceConfigurationError
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String msg, java.lang.Throwable cause)
+  class ServiceLoader<S>
+    <S> load(java.lang.Class<S> service)
+    <S> load(java.lang.Class<S> service, java.lang.ClassLoader loader)
+    <S> loadInstalled(java.lang.Class<S> service)
+  interface Set<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    <E> copyOf(java.util.Collection<? extends E> coll)
+    equals(java.lang.Object o)
+    <E> of(E e1)
+    <E> of(E e1, E e2)
+    <E> of(E e1, E e2, E e3)
+    <E> of(E e1, E e2, E e3, E e4)
+    <E> of(E e1, E e2, E e3, E e4, E e5)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9)
+    <E> of(E e1, E e2, E e3, E e4, E e5, E e6, E e7, E e8, E e9, E e10)
+    <E> of(E... elements)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class SimpleTimeZone
+    equals(java.lang.Object obj)
+    getOffset(int era, int year, int month, int day, int dayOfWeek, int millis)
+    getOffset(long date)
+    hasSameRules(java.util.TimeZone other)
+    inDaylightTime(java.util.Date date)
+    setDSTSavings(int millisSavedDuringDST)
+    setEndRule(int endMonth, int endDay, int endTime)
+    setEndRule(int endMonth, int endDay, int endDayOfWeek, int endTime)
+    setEndRule(int endMonth, int endDay, int endDayOfWeek, int endTime, boolean after)
+    setRawOffset(int offsetMillis)
+    setStartRule(int startMonth, int startDay, int startTime)
+    setStartRule(int startMonth, int startDay, int startDayOfWeek, int startTime)
+    setStartRule(int startMonth, int startDay, int startDayOfWeek, int startTime, boolean after)
+    setStartYear(int year)
+    #ctor(int rawOffset, java.lang.String ID)
+    #ctor(int rawOffset, java.lang.String ID, int startMonth, int startDay, int startDayOfWeek, int startTime, int endMonth, int endDay, int endDayOfWeek, int endTime)
+    #ctor(int rawOffset, java.lang.String ID, int startMonth, int startDay, int startDayOfWeek, int startTime, int endMonth, int endDay, int endDayOfWeek, int endTime, int dstSavings)
+    #ctor(int rawOffset, java.lang.String ID, int startMonth, int startDay, int startDayOfWeek, int startTime, int startTimeMode, int endMonth, int endDay, int endDayOfWeek, int endTime, int endTimeMode, int dstSavings)
+  interface SortedMap<K,V>
+    headMap(K toKey)
+    subMap(K fromKey, K toKey)
+    tailMap(K fromKey)
+  interface SortedSet<E>
+    headSet(E toElement)
+    subSet(E fromElement, E toElement)
+    tailSet(E fromElement)
+  interface Spliterator<T>
+    forEachRemaining(java.util.function.Consumer<? super T> action)
+    hasCharacteristics(int characteristics)
+    tryAdvance(java.util.function.Consumer<? super T> action)
+  interface Spliterator.OfDouble
+    forEachRemaining(java.util.function.Consumer<? super java.lang.Double> action)
+    forEachRemaining(java.util.function.DoubleConsumer action)
+    tryAdvance(java.util.function.Consumer<? super java.lang.Double> action)
+    tryAdvance(java.util.function.DoubleConsumer action)
+  interface Spliterator.OfInt
+    forEachRemaining(java.util.function.Consumer<? super java.lang.Integer> action)
+    forEachRemaining(java.util.function.IntConsumer action)
+    tryAdvance(java.util.function.Consumer<? super java.lang.Integer> action)
+    tryAdvance(java.util.function.IntConsumer action)
+  interface Spliterator.OfLong
+    forEachRemaining(java.util.function.Consumer<? super java.lang.Long> action)
+    forEachRemaining(java.util.function.LongConsumer action)
+    tryAdvance(java.util.function.Consumer<? super java.lang.Long> action)
+    tryAdvance(java.util.function.LongConsumer action)
+  interface Spliterator.OfPrimitive<T,T_CONS,T_SPLITR>
+    forEachRemaining(T_CONS action)
+    tryAdvance(T_CONS action)
+  class Spliterators
+    iterator(java.util.Spliterator.OfDouble spliterator)
+    iterator(java.util.Spliterator.OfInt spliterator)
+    iterator(java.util.Spliterator.OfLong spliterator)
+    <T> iterator(java.util.Spliterator<? extends T> spliterator)
+    spliterator(double[] array, int additionalCharacteristics)
+    spliterator(double[] array, int fromIndex, int toIndex, int additionalCharacteristics)
+    spliterator(int[] array, int additionalCharacteristics)
+    spliterator(int[] array, int fromIndex, int toIndex, int additionalCharacteristics)
+    <T> spliterator(java.lang.Object[] array, int additionalCharacteristics)
+    <T> spliterator(java.lang.Object[] array, int fromIndex, int toIndex, int additionalCharacteristics)
+    <T> spliterator(java.util.Collection<? extends T> c, int characteristics)
+    <T> spliterator(java.util.Iterator<? extends T> iterator, long size, int characteristics)
+    spliterator(java.util.PrimitiveIterator.OfDouble iterator, long size, int characteristics)
+    spliterator(java.util.PrimitiveIterator.OfInt iterator, long size, int characteristics)
+    spliterator(java.util.PrimitiveIterator.OfLong iterator, long size, int characteristics)
+    spliterator(long[] array, int additionalCharacteristics)
+    spliterator(long[] array, int fromIndex, int toIndex, int additionalCharacteristics)
+    <T> spliteratorUnknownSize(java.util.Iterator<? extends T> iterator, int characteristics)
+    spliteratorUnknownSize(java.util.PrimitiveIterator.OfDouble iterator, int characteristics)
+    spliteratorUnknownSize(java.util.PrimitiveIterator.OfInt iterator, int characteristics)
+    spliteratorUnknownSize(java.util.PrimitiveIterator.OfLong iterator, int characteristics)
+  class Spliterators.AbstractDoubleSpliterator
+    #ctor(long est, int additionalCharacteristics)
+  class Spliterators.AbstractIntSpliterator
+    #ctor(long est, int additionalCharacteristics)
+  class Spliterators.AbstractLongSpliterator
+    #ctor(long est, int additionalCharacteristics)
+  class Spliterators.AbstractSpliterator<T>
+    #ctor(long est, int additionalCharacteristics)
+  class SplittableRandom
+    doubles(double randomNumberOrigin, double randomNumberBound)
+    doubles(long streamSize)
+    doubles(long streamSize, double randomNumberOrigin, double randomNumberBound)
+    ints(int randomNumberOrigin, int randomNumberBound)
+    ints(long streamSize)
+    ints(long streamSize, int randomNumberOrigin, int randomNumberBound)
+    longs(long streamSize)
+    longs(long randomNumberOrigin, long randomNumberBound)
+    longs(long streamSize, long randomNumberOrigin, long randomNumberBound)
+    nextBytes(byte[] bytes)
+    nextDouble(double bound)
+    nextDouble(double origin, double bound)
+    nextInt(int bound)
+    nextInt(int origin, int bound)
+    nextLong(long bound)
+    nextLong(long origin, long bound)
+    #ctor(long seed)
+  class Stack<E>
+    push(E item)
+    search(java.lang.Object o)
+  class StringJoiner
+    add(java.lang.CharSequence newElement)
+    merge(java.util.StringJoiner other)
+    setEmptyValue(java.lang.CharSequence emptyValue)
+    #ctor(java.lang.CharSequence delimiter)
+    #ctor(java.lang.CharSequence delimiter, java.lang.CharSequence prefix, java.lang.CharSequence suffix)
+  class StringTokenizer
+    nextToken(java.lang.String delim)
+    #ctor(java.lang.String str)
+    #ctor(java.lang.String str, java.lang.String delim)
+    #ctor(java.lang.String str, java.lang.String delim, boolean returnDelims)
+  class Timer
+    schedule(java.util.TimerTask task, java.util.Date time)
+    schedule(java.util.TimerTask task, java.util.Date firstTime, long period)
+    schedule(java.util.TimerTask task, long delay)
+    schedule(java.util.TimerTask task, long delay, long period)
+    scheduleAtFixedRate(java.util.TimerTask task, java.util.Date firstTime, long period)
+    scheduleAtFixedRate(java.util.TimerTask task, long delay, long period)
+    #ctor(boolean isDaemon)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, boolean isDaemon)
+  class TimeZone
+    getAvailableIDs(int rawOffset)
+    getDisplayName(boolean daylight, int style)
+    getDisplayName(boolean daylightTime, int style, java.util.Locale locale)
+    getDisplayName(java.util.Locale locale)
+    getOffset(int era, int year, int month, int day, int dayOfWeek, int milliseconds)
+    getOffset(long date)
+    getTimeZone(java.lang.String id)
+    getTimeZone(java.time.ZoneId zoneId)
+    hasSameRules(java.util.TimeZone other)
+    inDaylightTime(java.util.Date date)
+    setDefault(java.util.TimeZone timeZone)
+    setID(java.lang.String ID)
+    setRawOffset(int offsetMillis)
+  class TooManyListenersException
+    #ctor(java.lang.String s)
+  class TreeMap<K,V>
+    ceilingEntry(K key)
+    ceilingKey(K key)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    floorEntry(K key)
+    floorKey(K key)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    headMap(K toKey)
+    headMap(K toKey, boolean inclusive)
+    higherEntry(K key)
+    higherKey(K key)
+    lowerEntry(K key)
+    lowerKey(K key)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> map)
+    remove(java.lang.Object key)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+    subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
+    subMap(K fromKey, K toKey)
+    tailMap(K fromKey)
+    tailMap(K fromKey, boolean inclusive)
+    #ctor(java.util.Comparator<? super K> comparator)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+    #ctor(java.util.SortedMap<K,? extends V> m)
+  class TreeSet<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    ceiling(E e)
+    contains(java.lang.Object o)
+    floor(E e)
+    headSet(E toElement)
+    headSet(E toElement, boolean inclusive)
+    higher(E e)
+    lower(E e)
+    remove(java.lang.Object o)
+    subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
+    subSet(E fromElement, E toElement)
+    tailSet(E fromElement)
+    tailSet(E fromElement, boolean inclusive)
+    #ctor(java.util.Collection<? extends E> c)
+    #ctor(java.util.Comparator<? super E> comparator)
+    #ctor(java.util.SortedSet<E> s)
+  class UnknownFormatConversionException
+    #ctor(java.lang.String s)
+  class UnknownFormatFlagsException
+    #ctor(java.lang.String f)
+  class UUID
+    compareTo(java.util.UUID val)
+    equals(java.lang.Object obj)
+    fromString(java.lang.String name)
+    nameUUIDFromBytes(byte[] name)
+    #ctor(long mostSigBits, long leastSigBits)
+  class Vector<E>
+    add(E e)
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    addAll(java.util.Collection<? extends E> c)
+    addElement(E obj)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    copyInto(java.lang.Object[] anArray)
+    elementAt(int index)
+    ensureCapacity(int minCapacity)
+    equals(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    get(int index)
+    indexOf(java.lang.Object o)
+    indexOf(java.lang.Object o, int index)
+    insertElementAt(E obj, int index)
+    lastIndexOf(java.lang.Object o)
+    lastIndexOf(java.lang.Object o, int index)
+    listIterator(int index)
+    remove(int index)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeElement(java.lang.Object obj)
+    removeElementAt(int index)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    removeRange(int fromIndex, int toIndex)
+    replaceAll(java.util.function.UnaryOperator<E> operator)
+    retainAll(java.util.Collection<?> c)
+    set(int index, E element)
+    setElementAt(E obj, int index)
+    setSize(int newSize)
+    sort(java.util.Comparator<? super E> c)
+    subList(int fromIndex, int toIndex)
+    <T> toArray(T[] a)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, int capacityIncrement)
+    #ctor(java.util.Collection<? extends E> c)
+  class WeakHashMap<K,V>
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    remove(java.lang.Object key)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+
+package java.util.concurrent
+;---------------------------------------
+  class AbstractExecutorService
+    <T> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
+    <T> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
+    <T> invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
+    <T> invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
+    <T> newTaskFor(java.lang.Runnable runnable, T value)
+    <T> newTaskFor(java.util.concurrent.Callable<T> callable)
+    submit(java.lang.Runnable task)
+    <T> submit(java.lang.Runnable task, T result)
+    <T> submit(java.util.concurrent.Callable<T> task)
+  class ArrayBlockingQueue<E>
+    add(E e)
+    #ctor(int capacity)
+    #ctor(int capacity, boolean fair)
+    #ctor(int capacity, boolean fair, java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    forEach(java.util.function.Consumer<? super E> action)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    put(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  interface BlockingDeque<E>
+    add(E e)
+    addFirst(E e)
+    addLast(E e)
+    contains(java.lang.Object o)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    offerFirst(E e)
+    offerFirst(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    offerLast(E e)
+    offerLast(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    pollFirst(long timeout, java.util.concurrent.TimeUnit unit)
+    pollLast(long timeout, java.util.concurrent.TimeUnit unit)
+    push(E e)
+    put(E e)
+    putFirst(E e)
+    putLast(E e)
+    remove(java.lang.Object o)
+    removeFirstOccurrence(java.lang.Object o)
+    removeLastOccurrence(java.lang.Object o)
+  interface BlockingQueue<E>
+    add(E e)
+    contains(java.lang.Object o)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    put(E e)
+    remove(java.lang.Object o)
+  class BrokenBarrierException
+    #ctor(java.lang.String message)
+  class CancellationException
+    #ctor(java.lang.String message)
+  class CompletableFuture<T>
+    acceptEither(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Consumer<? super T> action)
+    acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Consumer<? super T> action)
+    acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Consumer<? super T> action, java.util.concurrent.Executor executor)
+    allOf(java.util.concurrent.CompletableFuture<?>... cfs)
+    anyOf(java.util.concurrent.CompletableFuture<?>... cfs)
+    <U> applyToEither(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Function<? super T,U> fn)
+    <U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Function<? super T,U> fn)
+    <U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Function<? super T,U> fn, java.util.concurrent.Executor executor)
+    cancel(boolean mayInterruptIfRunning)
+    complete(T value)
+    completeAsync(java.util.function.Supplier<? extends T> supplier)
+    completeAsync(java.util.function.Supplier<? extends T> supplier, java.util.concurrent.Executor executor)
+    <U> completedFuture(U value)
+    <U> completedStage(U value)
+    completeExceptionally(java.lang.Throwable ex)
+    completeOnTimeout(T value, long timeout, java.util.concurrent.TimeUnit unit)
+    delayedExecutor(long delay, java.util.concurrent.TimeUnit unit)
+    delayedExecutor(long delay, java.util.concurrent.TimeUnit unit, java.util.concurrent.Executor executor)
+    exceptionally(java.util.function.Function<java.lang.Throwable,? extends T> fn)
+    exceptionallyAsync(java.util.function.Function<java.lang.Throwable,? extends T> fn)
+    exceptionallyAsync(java.util.function.Function<java.lang.Throwable,? extends T> fn, java.util.concurrent.Executor executor)
+    exceptionallyCompose(java.util.function.Function<java.lang.Throwable,? extends java.util.concurrent.CompletionStage<T>> fn)
+    exceptionallyComposeAsync(java.util.function.Function<java.lang.Throwable,? extends java.util.concurrent.CompletionStage<T>> fn)
+    exceptionallyComposeAsync(java.util.function.Function<java.lang.Throwable,? extends java.util.concurrent.CompletionStage<T>> fn, java.util.concurrent.Executor executor)
+    <U> failedFuture(java.lang.Throwable ex)
+    <U> failedStage(java.lang.Throwable ex)
+    get(long timeout, java.util.concurrent.TimeUnit unit)
+    getNow(T valueIfAbsent)
+    <U> handle(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U> fn)
+    <U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U> fn)
+    <U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U> fn, java.util.concurrent.Executor executor)
+    obtrudeException(java.lang.Throwable ex)
+    obtrudeValue(T value)
+    orTimeout(long timeout, java.util.concurrent.TimeUnit unit)
+    runAfterBoth(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterBothAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterBothAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action, java.util.concurrent.Executor executor)
+    runAfterEither(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterEitherAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterEitherAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action, java.util.concurrent.Executor executor)
+    runAsync(java.lang.Runnable runnable)
+    runAsync(java.lang.Runnable runnable, java.util.concurrent.Executor executor)
+    <U> supplyAsync(java.util.function.Supplier<U> supplier)
+    <U> supplyAsync(java.util.function.Supplier<U> supplier, java.util.concurrent.Executor executor)
+    thenAccept(java.util.function.Consumer<? super T> action)
+    thenAcceptAsync(java.util.function.Consumer<? super T> action)
+    thenAcceptAsync(java.util.function.Consumer<? super T> action, java.util.concurrent.Executor executor)
+    <U> thenAcceptBoth(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiConsumer<? super T,? super U> action)
+    <U> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiConsumer<? super T,? super U> action)
+    <U> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiConsumer<? super T,? super U> action, java.util.concurrent.Executor executor)
+    <U> thenApply(java.util.function.Function<? super T,? extends U> fn)
+    <U> thenApplyAsync(java.util.function.Function<? super T,? extends U> fn)
+    <U> thenApplyAsync(java.util.function.Function<? super T,? extends U> fn, java.util.concurrent.Executor executor)
+    <U,V> thenCombine(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiFunction<? super T,? super U,? extends V> fn)
+    <U,V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiFunction<? super T,? super U,? extends V> fn)
+    <U,V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiFunction<? super T,? super U,? extends V> fn, java.util.concurrent.Executor executor)
+    <U> thenCompose(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>> fn)
+    <U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>> fn)
+    <U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>> fn, java.util.concurrent.Executor executor)
+    thenRun(java.lang.Runnable action)
+    thenRunAsync(java.lang.Runnable action)
+    thenRunAsync(java.lang.Runnable action, java.util.concurrent.Executor executor)
+    whenComplete(java.util.function.BiConsumer<? super T,? super java.lang.Throwable> action)
+    whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable> action)
+    whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable> action, java.util.concurrent.Executor executor)
+  class CompletionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface CompletionService<V>
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    submit(java.lang.Runnable task, V result)
+    submit(java.util.concurrent.Callable<V> task)
+  interface CompletionStage<T>
+    acceptEither(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Consumer<? super T> action)
+    acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Consumer<? super T> action)
+    acceptEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Consumer<? super T> action, java.util.concurrent.Executor executor)
+    <U> applyToEither(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Function<? super T,U> fn)
+    <U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Function<? super T,U> fn)
+    <U> applyToEitherAsync(java.util.concurrent.CompletionStage<? extends T> other, java.util.function.Function<? super T,U> fn, java.util.concurrent.Executor executor)
+    exceptionally(java.util.function.Function<java.lang.Throwable,? extends T> fn)
+    exceptionallyAsync(java.util.function.Function<java.lang.Throwable,? extends T> fn)
+    exceptionallyAsync(java.util.function.Function<java.lang.Throwable,? extends T> fn, java.util.concurrent.Executor executor)
+    exceptionallyCompose(java.util.function.Function<java.lang.Throwable,? extends java.util.concurrent.CompletionStage<T>> fn)
+    exceptionallyComposeAsync(java.util.function.Function<java.lang.Throwable,? extends java.util.concurrent.CompletionStage<T>> fn)
+    exceptionallyComposeAsync(java.util.function.Function<java.lang.Throwable,? extends java.util.concurrent.CompletionStage<T>> fn, java.util.concurrent.Executor executor)
+    <U> handle(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U> fn)
+    <U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U> fn)
+    <U> handleAsync(java.util.function.BiFunction<? super T,java.lang.Throwable,? extends U> fn, java.util.concurrent.Executor executor)
+    runAfterBoth(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterBothAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterBothAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action, java.util.concurrent.Executor executor)
+    runAfterEither(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterEitherAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action)
+    runAfterEitherAsync(java.util.concurrent.CompletionStage<?> other, java.lang.Runnable action, java.util.concurrent.Executor executor)
+    thenAccept(java.util.function.Consumer<? super T> action)
+    thenAcceptAsync(java.util.function.Consumer<? super T> action)
+    thenAcceptAsync(java.util.function.Consumer<? super T> action, java.util.concurrent.Executor executor)
+    <U> thenAcceptBoth(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiConsumer<? super T,? super U> action)
+    <U> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiConsumer<? super T,? super U> action)
+    <U> thenAcceptBothAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiConsumer<? super T,? super U> action, java.util.concurrent.Executor executor)
+    <U> thenApply(java.util.function.Function<? super T,? extends U> fn)
+    <U> thenApplyAsync(java.util.function.Function<? super T,? extends U> fn)
+    <U> thenApplyAsync(java.util.function.Function<? super T,? extends U> fn, java.util.concurrent.Executor executor)
+    <U,V> thenCombine(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiFunction<? super T,? super U,? extends V> fn)
+    <U,V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiFunction<? super T,? super U,? extends V> fn)
+    <U,V> thenCombineAsync(java.util.concurrent.CompletionStage<? extends U> other, java.util.function.BiFunction<? super T,? super U,? extends V> fn, java.util.concurrent.Executor executor)
+    <U> thenCompose(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>> fn)
+    <U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>> fn)
+    <U> thenComposeAsync(java.util.function.Function<? super T,? extends java.util.concurrent.CompletionStage<U>> fn, java.util.concurrent.Executor executor)
+    thenRun(java.lang.Runnable action)
+    thenRunAsync(java.lang.Runnable action)
+    thenRunAsync(java.lang.Runnable action, java.util.concurrent.Executor executor)
+    whenComplete(java.util.function.BiConsumer<? super T,? super java.lang.Throwable> action)
+    whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable> action)
+    whenCompleteAsync(java.util.function.BiConsumer<? super T,? super java.lang.Throwable> action, java.util.concurrent.Executor executor)
+  class ConcurrentHashMap<K,V>
+    compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
+    computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, float loadFactor)
+    #ctor(int initialCapacity, float loadFactor, int concurrencyLevel)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+    contains(java.lang.Object value)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    equals(java.lang.Object o)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    forEach(long parallelismThreshold, java.util.function.BiConsumer<? super K,? super V> action)
+    <U> forEach(long parallelismThreshold, java.util.function.BiFunction<? super K,? super V,? extends U> transformer, java.util.function.Consumer<? super U> action)
+    forEachEntry(long parallelismThreshold, java.util.function.Consumer<? super java.util.Map.Entry<K,V>> action)
+    <U> forEachEntry(long parallelismThreshold, java.util.function.Function<java.util.Map.Entry<K,V>,? extends U> transformer, java.util.function.Consumer<? super U> action)
+    forEachKey(long parallelismThreshold, java.util.function.Consumer<? super K> action)
+    <U> forEachKey(long parallelismThreshold, java.util.function.Function<? super K,? extends U> transformer, java.util.function.Consumer<? super U> action)
+    forEachValue(long parallelismThreshold, java.util.function.Consumer<? super V> action)
+    <U> forEachValue(long parallelismThreshold, java.util.function.Function<? super V,? extends U> transformer, java.util.function.Consumer<? super U> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    keySet(V mappedValue)
+    merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
+    <K> newKeySet(int initialCapacity)
+    put(K key, V value)
+    putAll(java.util.Map<? extends K,? extends V> m)
+    putIfAbsent(K key, V value)
+    <U> reduce(long parallelismThreshold, java.util.function.BiFunction<? super K,? super V,? extends U> transformer, java.util.function.BiFunction<? super U,? super U,? extends U> reducer)
+    reduceEntries(long parallelismThreshold, java.util.function.BiFunction<java.util.Map.Entry<K,V>,java.util.Map.Entry<K,V>,? extends java.util.Map.Entry<K,V>> reducer)
+    <U> reduceEntries(long parallelismThreshold, java.util.function.Function<java.util.Map.Entry<K,V>,? extends U> transformer, java.util.function.BiFunction<? super U,? super U,? extends U> reducer)
+    reduceEntriesToDouble(long parallelismThreshold, java.util.function.ToDoubleFunction<java.util.Map.Entry<K,V>> transformer, double basis, java.util.function.DoubleBinaryOperator reducer)
+    reduceEntriesToInt(long parallelismThreshold, java.util.function.ToIntFunction<java.util.Map.Entry<K,V>> transformer, int basis, java.util.function.IntBinaryOperator reducer)
+    reduceEntriesToLong(long parallelismThreshold, java.util.function.ToLongFunction<java.util.Map.Entry<K,V>> transformer, long basis, java.util.function.LongBinaryOperator reducer)
+    reduceKeys(long parallelismThreshold, java.util.function.BiFunction<? super K,? super K,? extends K> reducer)
+    <U> reduceKeys(long parallelismThreshold, java.util.function.Function<? super K,? extends U> transformer, java.util.function.BiFunction<? super U,? super U,? extends U> reducer)
+    reduceKeysToDouble(long parallelismThreshold, java.util.function.ToDoubleFunction<? super K> transformer, double basis, java.util.function.DoubleBinaryOperator reducer)
+    reduceKeysToInt(long parallelismThreshold, java.util.function.ToIntFunction<? super K> transformer, int basis, java.util.function.IntBinaryOperator reducer)
+    reduceKeysToLong(long parallelismThreshold, java.util.function.ToLongFunction<? super K> transformer, long basis, java.util.function.LongBinaryOperator reducer)
+    reduceToDouble(long parallelismThreshold, java.util.function.ToDoubleBiFunction<? super K,? super V> transformer, double basis, java.util.function.DoubleBinaryOperator reducer)
+    reduceToInt(long parallelismThreshold, java.util.function.ToIntBiFunction<? super K,? super V> transformer, int basis, java.util.function.IntBinaryOperator reducer)
+    reduceToLong(long parallelismThreshold, java.util.function.ToLongBiFunction<? super K,? super V> transformer, long basis, java.util.function.LongBinaryOperator reducer)
+    reduceValues(long parallelismThreshold, java.util.function.BiFunction<? super V,? super V,? extends V> reducer)
+    <U> reduceValues(long parallelismThreshold, java.util.function.Function<? super V,? extends U> transformer, java.util.function.BiFunction<? super U,? super U,? extends U> reducer)
+    reduceValuesToDouble(long parallelismThreshold, java.util.function.ToDoubleFunction<? super V> transformer, double basis, java.util.function.DoubleBinaryOperator reducer)
+    reduceValuesToInt(long parallelismThreshold, java.util.function.ToIntFunction<? super V> transformer, int basis, java.util.function.IntBinaryOperator reducer)
+    reduceValuesToLong(long parallelismThreshold, java.util.function.ToLongFunction<? super V> transformer, long basis, java.util.function.LongBinaryOperator reducer)
+    remove(java.lang.Object key)
+    remove(java.lang.Object key, java.lang.Object value)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+    <U> search(long parallelismThreshold, java.util.function.BiFunction<? super K,? super V,? extends U> searchFunction)
+    <U> searchEntries(long parallelismThreshold, java.util.function.Function<java.util.Map.Entry<K,V>,? extends U> searchFunction)
+    <U> searchKeys(long parallelismThreshold, java.util.function.Function<? super K,? extends U> searchFunction)
+    <U> searchValues(long parallelismThreshold, java.util.function.Function<? super V,? extends U> searchFunction)
+  class ConcurrentHashMap.KeySetView<K,V>
+    add(K e)
+    addAll(java.util.Collection<? extends K> c)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    equals(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super K> action)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class ConcurrentLinkedDeque<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    addFirst(E e)
+    addLast(E e)
+    #ctor(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    offer(E e)
+    offerFirst(E e)
+    offerLast(E e)
+    push(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeFirstOccurrence(java.lang.Object o)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    removeLastOccurrence(java.lang.Object o)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class ConcurrentLinkedQueue<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    #ctor(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    offer(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  interface ConcurrentMap<K,V>
+    compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
+    computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
+    putIfAbsent(K key, V value)
+    remove(java.lang.Object key, java.lang.Object value)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+  interface ConcurrentNavigableMap<K,V>
+    headMap(K toKey)
+    headMap(K toKey, boolean inclusive)
+    subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
+    subMap(K fromKey, K toKey)
+    tailMap(K fromKey)
+    tailMap(K fromKey, boolean inclusive)
+  class ConcurrentSkipListMap<K,V>
+    ceilingEntry(K key)
+    ceilingKey(K key)
+    compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
+    computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
+    #ctor(java.util.Comparator<? super K> comparator)
+    #ctor(java.util.Map<? extends K,? extends V> m)
+    #ctor(java.util.SortedMap<K,? extends V> m)
+    containsKey(java.lang.Object key)
+    containsValue(java.lang.Object value)
+    equals(java.lang.Object o)
+    floorEntry(K key)
+    floorKey(K key)
+    forEach(java.util.function.BiConsumer<? super K,? super V> action)
+    get(java.lang.Object key)
+    getOrDefault(java.lang.Object key, V defaultValue)
+    headMap(K toKey)
+    headMap(K toKey, boolean inclusive)
+    higherEntry(K key)
+    higherKey(K key)
+    lowerEntry(K key)
+    lowerKey(K key)
+    merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
+    put(K key, V value)
+    putIfAbsent(K key, V value)
+    remove(java.lang.Object key)
+    remove(java.lang.Object key, java.lang.Object value)
+    replace(K key, V value)
+    replace(K key, V oldValue, V newValue)
+    replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
+    subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
+    subMap(K fromKey, K toKey)
+    tailMap(K fromKey)
+    tailMap(K fromKey, boolean inclusive)
+  class ConcurrentSkipListSet<E>
+    add(E e)
+    ceiling(E e)
+    #ctor(java.util.Collection<? extends E> c)
+    #ctor(java.util.Comparator<? super E> comparator)
+    #ctor(java.util.SortedSet<E> s)
+    contains(java.lang.Object o)
+    equals(java.lang.Object o)
+    floor(E e)
+    headSet(E toElement)
+    headSet(E toElement, boolean inclusive)
+    higher(E e)
+    lower(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
+    subSet(E fromElement, E toElement)
+    tailSet(E fromElement)
+    tailSet(E fromElement, boolean inclusive)
+  class CopyOnWriteArrayList<E>
+    add(E e)
+    add(int index, E element)
+    addAll(int index, java.util.Collection<? extends E> c)
+    addAll(java.util.Collection<? extends E> c)
+    addAllAbsent(java.util.Collection<? extends E> c)
+    addIfAbsent(E e)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    #ctor(E[] toCopyIn)
+    #ctor(java.util.Collection<? extends E> c)
+    equals(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    get(int index)
+    indexOf(E e, int index)
+    indexOf(java.lang.Object o)
+    lastIndexOf(E e, int index)
+    lastIndexOf(java.lang.Object o)
+    listIterator(int index)
+    remove(int index)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    replaceAll(java.util.function.UnaryOperator<E> operator)
+    retainAll(java.util.Collection<?> c)
+    set(int index, E element)
+    sort(java.util.Comparator<? super E> c)
+    subList(int fromIndex, int toIndex)
+    <T> toArray(T[] a)
+  class CopyOnWriteArraySet<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    #ctor(java.util.Collection<? extends E> c)
+    equals(java.lang.Object o)
+    forEach(java.util.function.Consumer<? super E> action)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class CountDownLatch
+    await(long timeout, java.util.concurrent.TimeUnit unit)
+    #ctor(int count)
+  class CountedCompleter<T>
+    addToPendingCount(int delta)
+    compareAndSetPendingCount(int expected, int count)
+    complete(T rawResult)
+    #ctor(java.util.concurrent.CountedCompleter<?> completer)
+    #ctor(java.util.concurrent.CountedCompleter<?> completer, int initialPendingCount)
+    helpComplete(int maxTasks)
+    onCompletion(java.util.concurrent.CountedCompleter<?> caller)
+    onExceptionalCompletion(java.lang.Throwable ex, java.util.concurrent.CountedCompleter<?> caller)
+    setPendingCount(int count)
+    setRawResult(T t)
+  class CyclicBarrier
+    await(long timeout, java.util.concurrent.TimeUnit unit)
+    #ctor(int parties)
+    #ctor(int parties, java.lang.Runnable barrierAction)
+  interface Delayed
+    getDelay(java.util.concurrent.TimeUnit unit)
+  class DelayQueue<E>
+    add(E e)
+    #ctor(java.util.Collection<? extends E> c)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    put(E e)
+    remove(java.lang.Object o)
+    <T> toArray(T[] a)
+  class Exchanger<V>
+    exchange(V x)
+    exchange(V x, long timeout, java.util.concurrent.TimeUnit unit)
+  class ExecutionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface Executor
+    execute(java.lang.Runnable command)
+  class ExecutorCompletionService<V>
+    #ctor(java.util.concurrent.Executor executor)
+    #ctor(java.util.concurrent.Executor executor, java.util.concurrent.BlockingQueue<java.util.concurrent.Future<V>> completionQueue)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    submit(java.lang.Runnable task, V result)
+    submit(java.util.concurrent.Callable<V> task)
+  class Executors
+    callable(java.lang.Runnable task)
+    <T> callable(java.lang.Runnable task, T result)
+    callable(java.security.PrivilegedAction<?> action)
+    callable(java.security.PrivilegedExceptionAction<?> action)
+    newCachedThreadPool(java.util.concurrent.ThreadFactory threadFactory)
+    newFixedThreadPool(int nThreads)
+    newFixedThreadPool(int nThreads, java.util.concurrent.ThreadFactory threadFactory)
+    newScheduledThreadPool(int corePoolSize)
+    newScheduledThreadPool(int corePoolSize, java.util.concurrent.ThreadFactory threadFactory)
+    newSingleThreadExecutor(java.util.concurrent.ThreadFactory threadFactory)
+    newSingleThreadScheduledExecutor(java.util.concurrent.ThreadFactory threadFactory)
+    newWorkStealingPool(int parallelism)
+    <T> privilegedCallable(java.util.concurrent.Callable<T> callable)
+    <T> privilegedCallableUsingCurrentClassLoader(java.util.concurrent.Callable<T> callable)
+    unconfigurableExecutorService(java.util.concurrent.ExecutorService executor)
+    unconfigurableScheduledExecutorService(java.util.concurrent.ScheduledExecutorService executor)
+  interface ExecutorService
+    awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
+    <T> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
+    <T> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
+    <T> invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
+    <T> invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
+    submit(java.lang.Runnable task)
+    <T> submit(java.lang.Runnable task, T result)
+    <T> submit(java.util.concurrent.Callable<T> task)
+  interface Flow.Publisher<T>
+    subscribe(java.util.concurrent.Flow.Subscriber<? super T> subscriber)
+  interface Flow.Subscriber<T>
+    onError(java.lang.Throwable throwable)
+    onNext(T item)
+    onSubscribe(java.util.concurrent.Flow.Subscription subscription)
+  interface Flow.Subscription
+    request(long n)
+  class ForkJoinPool
+    awaitQuiescence(long timeout, java.util.concurrent.TimeUnit unit)
+    awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
+    drainTasksTo(java.util.Collection<? super java.util.concurrent.ForkJoinTask<?>> c)
+    execute(java.lang.Runnable task)
+    execute(java.util.concurrent.ForkJoinTask<?> task)
+    #ctor(int parallelism)
+    #ctor(int parallelism, java.util.concurrent.ForkJoinPool.ForkJoinWorkerThreadFactory factory, java.lang.Thread.UncaughtExceptionHandler handler, boolean asyncMode)
+    #ctor(int parallelism, java.util.concurrent.ForkJoinPool.ForkJoinWorkerThreadFactory factory, java.lang.Thread.UncaughtExceptionHandler handler, boolean asyncMode, int corePoolSize, int maximumPoolSize, int minimumRunnable, java.util.function.Predicate<? super java.util.concurrent.ForkJoinPool> saturate, long keepAliveTime, java.util.concurrent.TimeUnit unit)
+    <T> invoke(java.util.concurrent.ForkJoinTask<T> task)
+    <T> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
+    <T> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
+    <T> invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
+    <T> invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
+    managedBlock(java.util.concurrent.ForkJoinPool.ManagedBlocker blocker)
+    <T> newTaskFor(java.lang.Runnable runnable, T value)
+    <T> newTaskFor(java.util.concurrent.Callable<T> callable)
+    submit(java.lang.Runnable task)
+    <T> submit(java.lang.Runnable task, T result)
+    <T> submit(java.util.concurrent.Callable<T> task)
+    <T> submit(java.util.concurrent.ForkJoinTask<T> task)
+  interface ForkJoinPool.ForkJoinWorkerThreadFactory
+    newThread(java.util.concurrent.ForkJoinPool pool)
+  class ForkJoinTask<V>
+    adapt(java.lang.Runnable runnable)
+    <T> adapt(java.lang.Runnable runnable, T result)
+    <T> adapt(java.util.concurrent.Callable<? extends T> callable)
+    cancel(boolean mayInterruptIfRunning)
+    compareAndSetForkJoinTaskTag(short expect, short update)
+    complete(V value)
+    completeExceptionally(java.lang.Throwable ex)
+    get(long timeout, java.util.concurrent.TimeUnit unit)
+    <T> invokeAll(java.util.Collection<T> tasks)
+    invokeAll(java.util.concurrent.ForkJoinTask<?> t1, java.util.concurrent.ForkJoinTask<?> t2)
+    invokeAll(java.util.concurrent.ForkJoinTask<?>... tasks)
+    setForkJoinTaskTag(short newValue)
+    setRawResult(V value)
+  class ForkJoinWorkerThread
+    #ctor(java.util.concurrent.ForkJoinPool pool)
+    onTermination(java.lang.Throwable exception)
+  interface Future<V>
+    cancel(boolean mayInterruptIfRunning)
+    get(long timeout, java.util.concurrent.TimeUnit unit)
+  class FutureTask<V>
+    cancel(boolean mayInterruptIfRunning)
+    #ctor(java.lang.Runnable runnable, V result)
+    #ctor(java.util.concurrent.Callable<V> callable)
+    get(long timeout, java.util.concurrent.TimeUnit unit)
+    set(V v)
+    setException(java.lang.Throwable t)
+  class LinkedBlockingDeque<E>
+    add(E e)
+    addAll(java.util.Collection<? extends E> c)
+    addFirst(E e)
+    addLast(E e)
+    contains(java.lang.Object o)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    forEach(java.util.function.Consumer<? super E> action)
+    #ctor(int capacity)
+    #ctor(java.util.Collection<? extends E> c)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    offerFirst(E e)
+    offerFirst(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    offerLast(E e)
+    offerLast(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    pollFirst(long timeout, java.util.concurrent.TimeUnit unit)
+    pollLast(long timeout, java.util.concurrent.TimeUnit unit)
+    push(E e)
+    put(E e)
+    putFirst(E e)
+    putLast(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeFirstOccurrence(java.lang.Object o)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    removeLastOccurrence(java.lang.Object o)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class LinkedBlockingQueue<E>
+    contains(java.lang.Object o)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    forEach(java.util.function.Consumer<? super E> action)
+    #ctor(int capacity)
+    #ctor(java.util.Collection<? extends E> c)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    put(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class LinkedTransferQueue<E>
+    add(E e)
+    contains(java.lang.Object o)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    forEach(java.util.function.Consumer<? super E> action)
+    #ctor(java.util.Collection<? extends E> c)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    put(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+    transfer(E e)
+    tryTransfer(E e)
+    tryTransfer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+  class Phaser
+    awaitAdvance(int phase)
+    awaitAdvanceInterruptibly(int phase)
+    awaitAdvanceInterruptibly(int phase, long timeout, java.util.concurrent.TimeUnit unit)
+    bulkRegister(int parties)
+    onAdvance(int phase, int registeredParties)
+    #ctor(int parties)
+    #ctor(java.util.concurrent.Phaser parent)
+    #ctor(java.util.concurrent.Phaser parent, int parties)
+  class PriorityBlockingQueue<E>
+    add(E e)
+    contains(java.lang.Object o)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    forEach(java.util.function.Consumer<? super E> action)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    #ctor(int initialCapacity)
+    #ctor(int initialCapacity, java.util.Comparator<? super E> comparator)
+    #ctor(java.util.Collection<? extends E> c)
+    put(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    removeIf(java.util.function.Predicate<? super E> filter)
+    retainAll(java.util.Collection<?> c)
+    <T> toArray(T[] a)
+  class RecursiveAction
+    setRawResult(java.lang.Void mustBeNull)
+  class RecursiveTask<V>
+    setRawResult(V value)
+  class RejectedExecutionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  interface RejectedExecutionHandler
+    rejectedExecution(java.lang.Runnable r, java.util.concurrent.ThreadPoolExecutor executor)
+  interface ScheduledExecutorService
+    schedule(java.lang.Runnable command, long delay, java.util.concurrent.TimeUnit unit)
+    <V> schedule(java.util.concurrent.Callable<V> callable, long delay, java.util.concurrent.TimeUnit unit)
+    scheduleAtFixedRate(java.lang.Runnable command, long initialDelay, long period, java.util.concurrent.TimeUnit unit)
+    scheduleWithFixedDelay(java.lang.Runnable command, long initialDelay, long delay, java.util.concurrent.TimeUnit unit)
+  class ScheduledThreadPoolExecutor
+    <V> decorateTask(java.lang.Runnable runnable, java.util.concurrent.RunnableScheduledFuture<V> task)
+    <V> decorateTask(java.util.concurrent.Callable<V> callable, java.util.concurrent.RunnableScheduledFuture<V> task)
+    execute(java.lang.Runnable command)
+    schedule(java.lang.Runnable command, long delay, java.util.concurrent.TimeUnit unit)
+    <V> schedule(java.util.concurrent.Callable<V> callable, long delay, java.util.concurrent.TimeUnit unit)
+    scheduleAtFixedRate(java.lang.Runnable command, long initialDelay, long period, java.util.concurrent.TimeUnit unit)
+    #ctor(int corePoolSize)
+    #ctor(int corePoolSize, java.util.concurrent.RejectedExecutionHandler handler)
+    #ctor(int corePoolSize, java.util.concurrent.ThreadFactory threadFactory)
+    #ctor(int corePoolSize, java.util.concurrent.ThreadFactory threadFactory, java.util.concurrent.RejectedExecutionHandler handler)
+    scheduleWithFixedDelay(java.lang.Runnable command, long initialDelay, long delay, java.util.concurrent.TimeUnit unit)
+    setContinueExistingPeriodicTasksAfterShutdownPolicy(boolean value)
+    setExecuteExistingDelayedTasksAfterShutdownPolicy(boolean value)
+    setRemoveOnCancelPolicy(boolean value)
+    submit(java.lang.Runnable task)
+    <T> submit(java.lang.Runnable task, T result)
+    <T> submit(java.util.concurrent.Callable<T> task)
+  class Semaphore
+    acquire(int permits)
+    acquireUninterruptibly(int permits)
+    reducePermits(int reduction)
+    release(int permits)
+    #ctor(int permits)
+    #ctor(int permits, boolean fair)
+    tryAcquire(int permits)
+    tryAcquire(int permits, long timeout, java.util.concurrent.TimeUnit unit)
+    tryAcquire(long timeout, java.util.concurrent.TimeUnit unit)
+  class SubmissionPublisher<T>
+    closeExceptionally(java.lang.Throwable error)
+    consume(java.util.function.Consumer<? super T> consumer)
+    isSubscribed(java.util.concurrent.Flow.Subscriber<? super T> subscriber)
+    offer(T item, java.util.function.BiPredicate<java.util.concurrent.Flow.Subscriber<? super T>,? super T> onDrop)
+    offer(T item, long timeout, java.util.concurrent.TimeUnit unit, java.util.function.BiPredicate<java.util.concurrent.Flow.Subscriber<? super T>,? super T> onDrop)
+    #ctor(java.util.concurrent.Executor executor, int maxBufferCapacity)
+    #ctor(java.util.concurrent.Executor executor, int maxBufferCapacity, java.util.function.BiConsumer<? super java.util.concurrent.Flow.Subscriber<? super T>,? super java.lang.Throwable> handler)
+    submit(T item)
+    subscribe(java.util.concurrent.Flow.Subscriber<? super T> subscriber)
+  class SynchronousQueue<E>
+    contains(java.lang.Object o)
+    containsAll(java.util.Collection<?> c)
+    drainTo(java.util.Collection<? super E> c)
+    drainTo(java.util.Collection<? super E> c, int maxElements)
+    offer(E e)
+    offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+    poll(long timeout, java.util.concurrent.TimeUnit unit)
+    put(E e)
+    remove(java.lang.Object o)
+    removeAll(java.util.Collection<?> c)
+    retainAll(java.util.Collection<?> c)
+    #ctor(boolean fair)
+    <T> toArray(T[] a)
+  interface ThreadFactory
+    newThread(java.lang.Runnable r)
+  class ThreadLocalRandom
+    doubles(double randomNumberOrigin, double randomNumberBound)
+    doubles(long streamSize)
+    doubles(long streamSize, double randomNumberOrigin, double randomNumberBound)
+    ints(int randomNumberOrigin, int randomNumberBound)
+    ints(long streamSize)
+    ints(long streamSize, int randomNumberOrigin, int randomNumberBound)
+    longs(long streamSize)
+    longs(long randomNumberOrigin, long randomNumberBound)
+    longs(long streamSize, long randomNumberOrigin, long randomNumberBound)
+    next(int bits)
+    nextDouble(double bound)
+    nextDouble(double origin, double bound)
+    nextInt(int bound)
+    nextInt(int origin, int bound)
+    nextLong(long bound)
+    nextLong(long origin, long bound)
+    setSeed(long seed)
+  class ThreadPoolExecutor
+    afterExecute(java.lang.Runnable r, java.lang.Throwable t)
+    allowCoreThreadTimeOut(boolean value)
+    awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
+    beforeExecute(java.lang.Thread t, java.lang.Runnable r)
+    execute(java.lang.Runnable command)
+    getKeepAliveTime(java.util.concurrent.TimeUnit unit)
+    remove(java.lang.Runnable task)
+    setCorePoolSize(int corePoolSize)
+    setKeepAliveTime(long time, java.util.concurrent.TimeUnit unit)
+    setMaximumPoolSize(int maximumPoolSize)
+    setRejectedExecutionHandler(java.util.concurrent.RejectedExecutionHandler handler)
+    setThreadFactory(java.util.concurrent.ThreadFactory threadFactory)
+    #ctor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, java.util.concurrent.BlockingQueue<java.lang.Runnable> workQueue)
+    #ctor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, java.util.concurrent.BlockingQueue<java.lang.Runnable> workQueue, java.util.concurrent.RejectedExecutionHandler handler)
+    #ctor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, java.util.concurrent.BlockingQueue<java.lang.Runnable> workQueue, java.util.concurrent.ThreadFactory threadFactory)
+    #ctor(int corePoolSize, int maximumPoolSize, long keepAliveTime, java.util.concurrent.TimeUnit unit, java.util.concurrent.BlockingQueue<java.lang.Runnable> workQueue, java.util.concurrent.ThreadFactory threadFactory, java.util.concurrent.RejectedExecutionHandler handler)
+  class ThreadPoolExecutor.AbortPolicy
+    rejectedExecution(java.lang.Runnable r, java.util.concurrent.ThreadPoolExecutor e)
+  class ThreadPoolExecutor.CallerRunsPolicy
+    rejectedExecution(java.lang.Runnable r, java.util.concurrent.ThreadPoolExecutor e)
+  class ThreadPoolExecutor.DiscardOldestPolicy
+    rejectedExecution(java.lang.Runnable r, java.util.concurrent.ThreadPoolExecutor e)
+  class ThreadPoolExecutor.DiscardPolicy
+    rejectedExecution(java.lang.Runnable r, java.util.concurrent.ThreadPoolExecutor e)
+  class TimeoutException
+    #ctor(java.lang.String message)
+  class TimeUnit
+    convert(java.time.Duration duration)
+    convert(long sourceDuration, java.util.concurrent.TimeUnit sourceUnit)
+    of(java.time.temporal.ChronoUnit chronoUnit)
+    sleep(long timeout)
+    timedJoin(java.lang.Thread thread, long timeout)
+    timedWait(java.lang.Object obj, long timeout)
+    toDays(long duration)
+    toHours(long duration)
+    toMicros(long duration)
+    toMillis(long duration)
+    toMinutes(long duration)
+    toNanos(long duration)
+    toSeconds(long duration)
+  interface TransferQueue<E>
+    transfer(E e)
+    tryTransfer(E e)
+    tryTransfer(E e, long timeout, java.util.concurrent.TimeUnit unit)
+
+package java.util.concurrent.atomic
+;---------------------------------------
+  class AtomicBoolean
+    #ctor(boolean initialValue)
+    compareAndExchange(boolean expectedValue, boolean newValue)
+    compareAndExchangeAcquire(boolean expectedValue, boolean newValue)
+    compareAndExchangeRelease(boolean expectedValue, boolean newValue)
+    compareAndSet(boolean expectedValue, boolean newValue)
+    getAndSet(boolean newValue)
+    lazySet(boolean newValue)
+    set(boolean newValue)
+    setOpaque(boolean newValue)
+    setPlain(boolean newValue)
+    setRelease(boolean newValue)
+    weakCompareAndSet(boolean expectedValue, boolean newValue)
+    weakCompareAndSetAcquire(boolean expectedValue, boolean newValue)
+    weakCompareAndSetPlain(boolean expectedValue, boolean newValue)
+    weakCompareAndSetRelease(boolean expectedValue, boolean newValue)
+    weakCompareAndSetVolatile(boolean expectedValue, boolean newValue)
+  class AtomicInteger
+    accumulateAndGet(int x, java.util.function.IntBinaryOperator accumulatorFunction)
+    addAndGet(int delta)
+    #ctor(int initialValue)
+    compareAndExchange(int expectedValue, int newValue)
+    compareAndExchangeAcquire(int expectedValue, int newValue)
+    compareAndExchangeRelease(int expectedValue, int newValue)
+    compareAndSet(int expectedValue, int newValue)
+    getAndAccumulate(int x, java.util.function.IntBinaryOperator accumulatorFunction)
+    getAndAdd(int delta)
+    getAndSet(int newValue)
+    getAndUpdate(java.util.function.IntUnaryOperator updateFunction)
+    lazySet(int newValue)
+    set(int newValue)
+    setOpaque(int newValue)
+    setPlain(int newValue)
+    setRelease(int newValue)
+    updateAndGet(java.util.function.IntUnaryOperator updateFunction)
+    weakCompareAndSet(int expectedValue, int newValue)
+    weakCompareAndSetAcquire(int expectedValue, int newValue)
+    weakCompareAndSetPlain(int expectedValue, int newValue)
+    weakCompareAndSetRelease(int expectedValue, int newValue)
+    weakCompareAndSetVolatile(int expectedValue, int newValue)
+  class AtomicIntegerArray
+    accumulateAndGet(int i, int x, java.util.function.IntBinaryOperator accumulatorFunction)
+    addAndGet(int i, int delta)
+    #ctor(int length)
+    #ctor(int[] array)
+    compareAndExchange(int i, int expectedValue, int newValue)
+    compareAndExchangeAcquire(int i, int expectedValue, int newValue)
+    compareAndExchangeRelease(int i, int expectedValue, int newValue)
+    compareAndSet(int i, int expectedValue, int newValue)
+    decrementAndGet(int i)
+    get(int i)
+    getAcquire(int i)
+    getAndAccumulate(int i, int x, java.util.function.IntBinaryOperator accumulatorFunction)
+    getAndAdd(int i, int delta)
+    getAndDecrement(int i)
+    getAndIncrement(int i)
+    getAndSet(int i, int newValue)
+    getAndUpdate(int i, java.util.function.IntUnaryOperator updateFunction)
+    getOpaque(int i)
+    getPlain(int i)
+    incrementAndGet(int i)
+    lazySet(int i, int newValue)
+    set(int i, int newValue)
+    setOpaque(int i, int newValue)
+    setPlain(int i, int newValue)
+    setRelease(int i, int newValue)
+    updateAndGet(int i, java.util.function.IntUnaryOperator updateFunction)
+    weakCompareAndSet(int i, int expectedValue, int newValue)
+    weakCompareAndSetAcquire(int i, int expectedValue, int newValue)
+    weakCompareAndSetPlain(int i, int expectedValue, int newValue)
+    weakCompareAndSetRelease(int i, int expectedValue, int newValue)
+    weakCompareAndSetVolatile(int i, int expectedValue, int newValue)
+  class AtomicIntegerFieldUpdater<T>
+    accumulateAndGet(T obj, int x, java.util.function.IntBinaryOperator accumulatorFunction)
+    addAndGet(T obj, int delta)
+    compareAndSet(T obj, int expect, int update)
+    decrementAndGet(T obj)
+    get(T obj)
+    getAndAccumulate(T obj, int x, java.util.function.IntBinaryOperator accumulatorFunction)
+    getAndAdd(T obj, int delta)
+    getAndDecrement(T obj)
+    getAndIncrement(T obj)
+    getAndSet(T obj, int newValue)
+    getAndUpdate(T obj, java.util.function.IntUnaryOperator updateFunction)
+    incrementAndGet(T obj)
+    lazySet(T obj, int newValue)
+    <U> newUpdater(java.lang.Class<U> tclass, java.lang.String fieldName)
+    set(T obj, int newValue)
+    updateAndGet(T obj, java.util.function.IntUnaryOperator updateFunction)
+    weakCompareAndSet(T obj, int expect, int update)
+  class AtomicLong
+    accumulateAndGet(long x, java.util.function.LongBinaryOperator accumulatorFunction)
+    addAndGet(long delta)
+    #ctor(long initialValue)
+    compareAndExchange(long expectedValue, long newValue)
+    compareAndExchangeAcquire(long expectedValue, long newValue)
+    compareAndExchangeRelease(long expectedValue, long newValue)
+    compareAndSet(long expectedValue, long newValue)
+    getAndAccumulate(long x, java.util.function.LongBinaryOperator accumulatorFunction)
+    getAndAdd(long delta)
+    getAndSet(long newValue)
+    getAndUpdate(java.util.function.LongUnaryOperator updateFunction)
+    lazySet(long newValue)
+    set(long newValue)
+    setOpaque(long newValue)
+    setPlain(long newValue)
+    setRelease(long newValue)
+    updateAndGet(java.util.function.LongUnaryOperator updateFunction)
+    weakCompareAndSet(long expectedValue, long newValue)
+    weakCompareAndSetAcquire(long expectedValue, long newValue)
+    weakCompareAndSetPlain(long expectedValue, long newValue)
+    weakCompareAndSetRelease(long expectedValue, long newValue)
+    weakCompareAndSetVolatile(long expectedValue, long newValue)
+  class AtomicLongArray
+    accumulateAndGet(int i, long x, java.util.function.LongBinaryOperator accumulatorFunction)
+    addAndGet(int i, long delta)
+    #ctor(int length)
+    #ctor(long[] array)
+    compareAndExchange(int i, long expectedValue, long newValue)
+    compareAndExchangeAcquire(int i, long expectedValue, long newValue)
+    compareAndExchangeRelease(int i, long expectedValue, long newValue)
+    compareAndSet(int i, long expectedValue, long newValue)
+    decrementAndGet(int i)
+    get(int i)
+    getAcquire(int i)
+    getAndAccumulate(int i, long x, java.util.function.LongBinaryOperator accumulatorFunction)
+    getAndAdd(int i, long delta)
+    getAndDecrement(int i)
+    getAndIncrement(int i)
+    getAndSet(int i, long newValue)
+    getAndUpdate(int i, java.util.function.LongUnaryOperator updateFunction)
+    getOpaque(int i)
+    getPlain(int i)
+    incrementAndGet(int i)
+    lazySet(int i, long newValue)
+    set(int i, long newValue)
+    setOpaque(int i, long newValue)
+    setPlain(int i, long newValue)
+    setRelease(int i, long newValue)
+    updateAndGet(int i, java.util.function.LongUnaryOperator updateFunction)
+    weakCompareAndSet(int i, long expectedValue, long newValue)
+    weakCompareAndSetAcquire(int i, long expectedValue, long newValue)
+    weakCompareAndSetPlain(int i, long expectedValue, long newValue)
+    weakCompareAndSetRelease(int i, long expectedValue, long newValue)
+    weakCompareAndSetVolatile(int i, long expectedValue, long newValue)
+  class AtomicLongFieldUpdater<T>
+    accumulateAndGet(T obj, long x, java.util.function.LongBinaryOperator accumulatorFunction)
+    addAndGet(T obj, long delta)
+    compareAndSet(T obj, long expect, long update)
+    decrementAndGet(T obj)
+    get(T obj)
+    getAndAccumulate(T obj, long x, java.util.function.LongBinaryOperator accumulatorFunction)
+    getAndAdd(T obj, long delta)
+    getAndDecrement(T obj)
+    getAndIncrement(T obj)
+    getAndSet(T obj, long newValue)
+    getAndUpdate(T obj, java.util.function.LongUnaryOperator updateFunction)
+    incrementAndGet(T obj)
+    lazySet(T obj, long newValue)
+    <U> newUpdater(java.lang.Class<U> tclass, java.lang.String fieldName)
+    set(T obj, long newValue)
+    updateAndGet(T obj, java.util.function.LongUnaryOperator updateFunction)
+    weakCompareAndSet(T obj, long expect, long update)
+  class AtomicMarkableReference<V>
+    #ctor(V initialRef, boolean initialMark)
+    attemptMark(V expectedReference, boolean newMark)
+    compareAndSet(V expectedReference, V newReference, boolean expectedMark, boolean newMark)
+    get(boolean[] markHolder)
+    set(V newReference, boolean newMark)
+    weakCompareAndSet(V expectedReference, V newReference, boolean expectedMark, boolean newMark)
+  class AtomicReference<V>
+    accumulateAndGet(V x, java.util.function.BinaryOperator<V> accumulatorFunction)
+    #ctor(V initialValue)
+    compareAndExchange(V expectedValue, V newValue)
+    compareAndExchangeAcquire(V expectedValue, V newValue)
+    compareAndExchangeRelease(V expectedValue, V newValue)
+    compareAndSet(V expectedValue, V newValue)
+    getAndAccumulate(V x, java.util.function.BinaryOperator<V> accumulatorFunction)
+    getAndSet(V newValue)
+    getAndUpdate(java.util.function.UnaryOperator<V> updateFunction)
+    lazySet(V newValue)
+    set(V newValue)
+    setOpaque(V newValue)
+    setPlain(V newValue)
+    setRelease(V newValue)
+    updateAndGet(java.util.function.UnaryOperator<V> updateFunction)
+    weakCompareAndSet(V expectedValue, V newValue)
+    weakCompareAndSetAcquire(V expectedValue, V newValue)
+    weakCompareAndSetPlain(V expectedValue, V newValue)
+    weakCompareAndSetRelease(V expectedValue, V newValue)
+    weakCompareAndSetVolatile(V expectedValue, V newValue)
+  class AtomicReferenceArray<E>
+    accumulateAndGet(int i, E x, java.util.function.BinaryOperator<E> accumulatorFunction)
+    #ctor(E[] array)
+    #ctor(int length)
+    compareAndExchange(int i, E expectedValue, E newValue)
+    compareAndExchangeAcquire(int i, E expectedValue, E newValue)
+    compareAndExchangeRelease(int i, E expectedValue, E newValue)
+    compareAndSet(int i, E expectedValue, E newValue)
+    get(int i)
+    getAcquire(int i)
+    getAndAccumulate(int i, E x, java.util.function.BinaryOperator<E> accumulatorFunction)
+    getAndSet(int i, E newValue)
+    getAndUpdate(int i, java.util.function.UnaryOperator<E> updateFunction)
+    getOpaque(int i)
+    getPlain(int i)
+    lazySet(int i, E newValue)
+    set(int i, E newValue)
+    setOpaque(int i, E newValue)
+    setPlain(int i, E newValue)
+    setRelease(int i, E newValue)
+    updateAndGet(int i, java.util.function.UnaryOperator<E> updateFunction)
+    weakCompareAndSet(int i, E expectedValue, E newValue)
+    weakCompareAndSetAcquire(int i, E expectedValue, E newValue)
+    weakCompareAndSetPlain(int i, E expectedValue, E newValue)
+    weakCompareAndSetRelease(int i, E expectedValue, E newValue)
+    weakCompareAndSetVolatile(int i, E expectedValue, E newValue)
+  class AtomicReferenceFieldUpdater<T,V>
+    accumulateAndGet(T obj, V x, java.util.function.BinaryOperator<V> accumulatorFunction)
+    compareAndSet(T obj, V expect, V update)
+    get(T obj)
+    getAndAccumulate(T obj, V x, java.util.function.BinaryOperator<V> accumulatorFunction)
+    getAndSet(T obj, V newValue)
+    getAndUpdate(T obj, java.util.function.UnaryOperator<V> updateFunction)
+    lazySet(T obj, V newValue)
+    <U,W> newUpdater(java.lang.Class<U> tclass, java.lang.Class<W> vclass, java.lang.String fieldName)
+    set(T obj, V newValue)
+    updateAndGet(T obj, java.util.function.UnaryOperator<V> updateFunction)
+    weakCompareAndSet(T obj, V expect, V update)
+  class AtomicStampedReference<V>
+    #ctor(V initialRef, int initialStamp)
+    attemptStamp(V expectedReference, int newStamp)
+    compareAndSet(V expectedReference, V newReference, int expectedStamp, int newStamp)
+    get(int[] stampHolder)
+    set(V newReference, int newStamp)
+    weakCompareAndSet(V expectedReference, V newReference, int expectedStamp, int newStamp)
+  class DoubleAccumulator
+    accumulate(double x)
+    #ctor(java.util.function.DoubleBinaryOperator accumulatorFunction, double identity)
+  class DoubleAdder
+    add(double x)
+  class LongAccumulator
+    accumulate(long x)
+    #ctor(java.util.function.LongBinaryOperator accumulatorFunction, long identity)
+  class LongAdder
+    add(long x)
+
+package java.util.concurrent.locks
+;---------------------------------------
+  class AbstractOwnableSynchronizer
+    setExclusiveOwnerThread(java.lang.Thread thread)
+  class AbstractQueuedLongSynchronizer
+    acquire(long arg)
+    acquireInterruptibly(long arg)
+    acquireShared(long arg)
+    acquireSharedInterruptibly(long arg)
+    compareAndSetState(long expect, long update)
+    getWaitingThreads(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject condition)
+    getWaitQueueLength(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject condition)
+    hasWaiters(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject condition)
+    isQueued(java.lang.Thread thread)
+    owns(java.util.concurrent.locks.AbstractQueuedLongSynchronizer.ConditionObject condition)
+    release(long arg)
+    releaseShared(long arg)
+    setState(long newState)
+    tryAcquire(long arg)
+    tryAcquireNanos(long arg, long nanosTimeout)
+    tryAcquireShared(long arg)
+    tryAcquireSharedNanos(long arg, long nanosTimeout)
+    tryRelease(long arg)
+    tryReleaseShared(long arg)
+  class AbstractQueuedLongSynchronizer.ConditionObject
+    await(long time, java.util.concurrent.TimeUnit unit)
+    awaitNanos(long nanosTimeout)
+    awaitUntil(java.util.Date deadline)
+  class AbstractQueuedSynchronizer
+    acquire(int arg)
+    acquireInterruptibly(int arg)
+    acquireShared(int arg)
+    acquireSharedInterruptibly(int arg)
+    compareAndSetState(int expect, int update)
+    getWaitingThreads(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject condition)
+    getWaitQueueLength(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject condition)
+    hasWaiters(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject condition)
+    isQueued(java.lang.Thread thread)
+    owns(java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject condition)
+    release(int arg)
+    releaseShared(int arg)
+    setState(int newState)
+    tryAcquire(int arg)
+    tryAcquireNanos(int arg, long nanosTimeout)
+    tryAcquireShared(int arg)
+    tryAcquireSharedNanos(int arg, long nanosTimeout)
+    tryRelease(int arg)
+    tryReleaseShared(int arg)
+  class AbstractQueuedSynchronizer.ConditionObject
+    await(long time, java.util.concurrent.TimeUnit unit)
+    awaitNanos(long nanosTimeout)
+    awaitUntil(java.util.Date deadline)
+  interface Condition
+    await(long time, java.util.concurrent.TimeUnit unit)
+    awaitNanos(long nanosTimeout)
+    awaitUntil(java.util.Date deadline)
+  interface Lock
+    tryLock(long time, java.util.concurrent.TimeUnit unit)
+  class LockSupport
+    getBlocker(java.lang.Thread t)
+    park(java.lang.Object blocker)
+    parkNanos(java.lang.Object blocker, long nanos)
+    parkNanos(long nanos)
+    parkUntil(java.lang.Object blocker, long deadline)
+    parkUntil(long deadline)
+    setCurrentBlocker(java.lang.Object blocker)
+    unpark(java.lang.Thread thread)
+  class ReentrantLock
+    getWaitingThreads(java.util.concurrent.locks.Condition condition)
+    getWaitQueueLength(java.util.concurrent.locks.Condition condition)
+    hasQueuedThread(java.lang.Thread thread)
+    hasWaiters(java.util.concurrent.locks.Condition condition)
+    #ctor(boolean fair)
+    tryLock(long timeout, java.util.concurrent.TimeUnit unit)
+  class ReentrantReadWriteLock
+    getWaitingThreads(java.util.concurrent.locks.Condition condition)
+    getWaitQueueLength(java.util.concurrent.locks.Condition condition)
+    hasQueuedThread(java.lang.Thread thread)
+    hasWaiters(java.util.concurrent.locks.Condition condition)
+    #ctor(boolean fair)
+  class ReentrantReadWriteLock.ReadLock
+    #ctor(java.util.concurrent.locks.ReentrantReadWriteLock lock)
+    tryLock(long timeout, java.util.concurrent.TimeUnit unit)
+  class ReentrantReadWriteLock.WriteLock
+    #ctor(java.util.concurrent.locks.ReentrantReadWriteLock lock)
+    tryLock(long timeout, java.util.concurrent.TimeUnit unit)
+  class StampedLock
+    isLockStamp(long stamp)
+    isOptimisticReadStamp(long stamp)
+    isReadLockStamp(long stamp)
+    isWriteLockStamp(long stamp)
+    tryConvertToOptimisticRead(long stamp)
+    tryConvertToReadLock(long stamp)
+    tryConvertToWriteLock(long stamp)
+    tryReadLock(long time, java.util.concurrent.TimeUnit unit)
+    tryWriteLock(long time, java.util.concurrent.TimeUnit unit)
+    unlock(long stamp)
+    unlockRead(long stamp)
+    unlockWrite(long stamp)
+    validate(long stamp)
+
+package java.util.function
+;---------------------------------------
+  interface BiConsumer<T,U>
+    accept(T t, U u)
+    andThen(java.util.function.BiConsumer<? super T,? super U> after)
+  interface BiFunction<T,U,R>
+    <V> andThen(java.util.function.Function<? super R,? extends V> after)
+    apply(T t, U u)
+  interface BinaryOperator<T>
+    <T> maxBy(java.util.Comparator<? super T> comparator)
+    <T> minBy(java.util.Comparator<? super T> comparator)
+  interface BiPredicate<T,U>
+    and(java.util.function.BiPredicate<? super T,? super U> other)
+    or(java.util.function.BiPredicate<? super T,? super U> other)
+    test(T t, U u)
+  interface Consumer<T>
+    accept(T t)
+    andThen(java.util.function.Consumer<? super T> after)
+  interface DoubleBinaryOperator
+    applyAsDouble(double left, double right)
+  interface DoubleConsumer
+    accept(double value)
+    andThen(java.util.function.DoubleConsumer after)
+  interface DoubleFunction<R>
+    apply(double value)
+  interface DoublePredicate
+    and(java.util.function.DoublePredicate other)
+    or(java.util.function.DoublePredicate other)
+    test(double value)
+  interface DoubleToIntFunction
+    applyAsInt(double value)
+  interface DoubleToLongFunction
+    applyAsLong(double value)
+  interface DoubleUnaryOperator
+    andThen(java.util.function.DoubleUnaryOperator after)
+    applyAsDouble(double operand)
+    compose(java.util.function.DoubleUnaryOperator before)
+  interface Function<T,R>
+    <V> andThen(java.util.function.Function<? super R,? extends V> after)
+    apply(T t)
+    <V> compose(java.util.function.Function<? super V,? extends T> before)
+  interface IntBinaryOperator
+    applyAsInt(int left, int right)
+  interface IntConsumer
+    accept(int value)
+    andThen(java.util.function.IntConsumer after)
+  interface IntFunction<R>
+    apply(int value)
+  interface IntPredicate
+    and(java.util.function.IntPredicate other)
+    or(java.util.function.IntPredicate other)
+    test(int value)
+  interface IntToDoubleFunction
+    applyAsDouble(int value)
+  interface IntToLongFunction
+    applyAsLong(int value)
+  interface IntUnaryOperator
+    andThen(java.util.function.IntUnaryOperator after)
+    applyAsInt(int operand)
+    compose(java.util.function.IntUnaryOperator before)
+  interface LongBinaryOperator
+    applyAsLong(long left, long right)
+  interface LongConsumer
+    accept(long value)
+    andThen(java.util.function.LongConsumer after)
+  interface LongFunction<R>
+    apply(long value)
+  interface LongPredicate
+    and(java.util.function.LongPredicate other)
+    or(java.util.function.LongPredicate other)
+    test(long value)
+  interface LongToDoubleFunction
+    applyAsDouble(long value)
+  interface LongToIntFunction
+    applyAsInt(long value)
+  interface LongUnaryOperator
+    andThen(java.util.function.LongUnaryOperator after)
+    applyAsLong(long operand)
+    compose(java.util.function.LongUnaryOperator before)
+  interface ObjDoubleConsumer<T>
+    accept(T t, double value)
+  interface ObjIntConsumer<T>
+    accept(T t, int value)
+  interface ObjLongConsumer<T>
+    accept(T t, long value)
+  interface Predicate<T>
+    and(java.util.function.Predicate<? super T> other)
+    <T> isEqual(java.lang.Object targetRef)
+    <T> not(java.util.function.Predicate<? super T> target)
+    or(java.util.function.Predicate<? super T> other)
+    test(T t)
+  interface ToDoubleBiFunction<T,U>
+    applyAsDouble(T t, U u)
+  interface ToDoubleFunction<T>
+    applyAsDouble(T value)
+  interface ToIntBiFunction<T,U>
+    applyAsInt(T t, U u)
+  interface ToIntFunction<T>
+    applyAsInt(T value)
+  interface ToLongBiFunction<T,U>
+    applyAsLong(T t, U u)
+  interface ToLongFunction<T>
+    applyAsLong(T value)
+
+package java.util.jar
+;---------------------------------------
+  class Attributes
+    #ctor(int size)
+    #ctor(java.util.jar.Attributes attr)
+    containsKey(java.lang.Object name)
+    containsValue(java.lang.Object value)
+    equals(java.lang.Object o)
+    get(java.lang.Object name)
+    getValue(java.lang.String name)
+    getValue(java.util.jar.Attributes.Name name)
+    put(java.lang.Object name, java.lang.Object value)
+    putAll(java.util.Map<?,?> attr)
+    putValue(java.lang.String name, java.lang.String value)
+    remove(java.lang.Object name)
+  class Attributes.Name
+    #ctor(java.lang.String name)
+    equals(java.lang.Object o)
+  class JarEntry
+    #ctor(java.lang.String name)
+    #ctor(java.util.jar.JarEntry je)
+    #ctor(java.util.zip.ZipEntry ze)
+  class JarException
+    #ctor(java.lang.String s)
+  class JarFile
+    getEntry(java.lang.String name)
+    getInputStream(java.util.zip.ZipEntry ze)
+    getJarEntry(java.lang.String name)
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, boolean verify)
+    #ctor(java.io.File file, boolean verify, int mode)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, boolean verify)
+  class JarInputStream
+    createZipEntry(java.lang.String name)
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, boolean verify)
+    read(byte[] b, int off, int len)
+  class JarOutputStream
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, java.util.jar.Manifest man)
+    putNextEntry(java.util.zip.ZipEntry ze)
+  class Manifest
+    equals(java.lang.Object o)
+    getAttributes(java.lang.String name)
+    #ctor(java.io.InputStream is)
+    #ctor(java.util.jar.Manifest man)
+    read(java.io.InputStream is)
+    write(java.io.OutputStream out)
+  interface Pack200.Packer
+    addPropertyChangeListener(java.beans.PropertyChangeListener listener)
+    pack(java.util.jar.JarFile in, java.io.OutputStream out)
+    pack(java.util.jar.JarInputStream in, java.io.OutputStream out)
+    removePropertyChangeListener(java.beans.PropertyChangeListener listener)
+  interface Pack200.Unpacker
+    addPropertyChangeListener(java.beans.PropertyChangeListener listener)
+    removePropertyChangeListener(java.beans.PropertyChangeListener listener)
+    unpack(java.io.File in, java.util.jar.JarOutputStream out)
+    unpack(java.io.InputStream in, java.util.jar.JarOutputStream out)
+
+package java.util.logging
+;---------------------------------------
+  class ConsoleHandler
+    publish(java.util.logging.LogRecord record)
+  class ErrorManager
+    error(java.lang.String msg, java.lang.Exception ex, int code)
+  class FileHandler
+    #ctor(java.lang.String pattern)
+    #ctor(java.lang.String pattern, boolean append)
+    #ctor(java.lang.String pattern, int limit, int count)
+    #ctor(java.lang.String pattern, int limit, int count, boolean append)
+    publish(java.util.logging.LogRecord record)
+  interface Filter
+    isLoggable(java.util.logging.LogRecord record)
+  class Formatter
+    format(java.util.logging.LogRecord record)
+    formatMessage(java.util.logging.LogRecord record)
+    getHead(java.util.logging.Handler h)
+    getTail(java.util.logging.Handler h)
+  class Handler
+    isLoggable(java.util.logging.LogRecord record)
+    publish(java.util.logging.LogRecord record)
+    reportError(java.lang.String msg, java.lang.Exception ex, int code)
+    setEncoding(java.lang.String encoding)
+    setErrorManager(java.util.logging.ErrorManager em)
+    setFilter(java.util.logging.Filter newFilter)
+    setFormatter(java.util.logging.Formatter newFormatter)
+    setLevel(java.util.logging.Level newLevel)
+  class Level
+    equals(java.lang.Object ox)
+    #ctor(java.lang.String name, int value)
+    #ctor(java.lang.String name, int value, java.lang.String resourceBundleName)
+    parse(java.lang.String name)
+  class Logger
+    addHandler(java.util.logging.Handler handler)
+    config(java.lang.String msg)
+    config(java.util.function.Supplier<java.lang.String> msgSupplier)
+    entering(java.lang.String sourceClass, java.lang.String sourceMethod)
+    entering(java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.Object param1)
+    entering(java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.Object[] params)
+    exiting(java.lang.String sourceClass, java.lang.String sourceMethod)
+    exiting(java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.Object result)
+    fine(java.lang.String msg)
+    fine(java.util.function.Supplier<java.lang.String> msgSupplier)
+    finer(java.lang.String msg)
+    finer(java.util.function.Supplier<java.lang.String> msgSupplier)
+    finest(java.lang.String msg)
+    finest(java.util.function.Supplier<java.lang.String> msgSupplier)
+    getAnonymousLogger(java.lang.String resourceBundleName)
+    getLogger(java.lang.String name)
+    getLogger(java.lang.String name, java.lang.String resourceBundleName)
+    info(java.lang.String msg)
+    info(java.util.function.Supplier<java.lang.String> msgSupplier)
+    isLoggable(java.util.logging.Level level)
+    log(java.util.logging.Level level, java.lang.String msg)
+    log(java.util.logging.Level level, java.lang.String msg, java.lang.Object param1)
+    log(java.util.logging.Level level, java.lang.String msg, java.lang.Object[] params)
+    log(java.util.logging.Level level, java.lang.String msg, java.lang.Throwable thrown)
+    log(java.util.logging.Level level, java.lang.Throwable thrown, java.util.function.Supplier<java.lang.String> msgSupplier)
+    log(java.util.logging.Level level, java.util.function.Supplier<java.lang.String> msgSupplier)
+    log(java.util.logging.LogRecord record)
+    #ctor(java.lang.String name, java.lang.String resourceBundleName)
+    logp(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String msg)
+    logp(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String msg, java.lang.Object param1)
+    logp(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String msg, java.lang.Object[] params)
+    logp(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String msg, java.lang.Throwable thrown)
+    logp(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.Throwable thrown, java.util.function.Supplier<java.lang.String> msgSupplier)
+    logp(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.util.function.Supplier<java.lang.String> msgSupplier)
+    logrb(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String bundleName, java.lang.String msg)
+    logrb(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String bundleName, java.lang.String msg, java.lang.Object param1)
+    logrb(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String bundleName, java.lang.String msg, java.lang.Object[] params)
+    logrb(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.String bundleName, java.lang.String msg, java.lang.Throwable thrown)
+    logrb(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.util.ResourceBundle bundle, java.lang.String msg, java.lang.Object... params)
+    logrb(java.util.logging.Level level, java.lang.String sourceClass, java.lang.String sourceMethod, java.util.ResourceBundle bundle, java.lang.String msg, java.lang.Throwable thrown)
+    removeHandler(java.util.logging.Handler handler)
+    setFilter(java.util.logging.Filter newFilter)
+    setLevel(java.util.logging.Level newLevel)
+    setParent(java.util.logging.Logger parent)
+    setResourceBundle(java.util.ResourceBundle bundle)
+    setUseParentHandlers(boolean useParentHandlers)
+    severe(java.lang.String msg)
+    severe(java.util.function.Supplier<java.lang.String> msgSupplier)
+    throwing(java.lang.String sourceClass, java.lang.String sourceMethod, java.lang.Throwable thrown)
+    warning(java.lang.String msg)
+    warning(java.util.function.Supplier<java.lang.String> msgSupplier)
+  interface LoggingMXBean
+    getLoggerLevel(java.lang.String loggerName)
+    getParentLoggerName(java.lang.String loggerName)
+    setLoggerLevel(java.lang.String loggerName, java.lang.String levelName)
+  class LoggingPermission
+    #ctor(java.lang.String name, java.lang.String actions)
+  class LogManager
+    addLogger(java.util.logging.Logger logger)
+    addPropertyChangeListener(java.beans.PropertyChangeListener l)
+    getLogger(java.lang.String name)
+    getProperty(java.lang.String name)
+    readConfiguration(java.io.InputStream ins)
+    removePropertyChangeListener(java.beans.PropertyChangeListener l)
+  class LogRecord
+    #ctor(java.util.logging.Level level, java.lang.String msg)
+    setLevel(java.util.logging.Level level)
+    setLoggerName(java.lang.String name)
+    setMessage(java.lang.String message)
+    setMillis(long millis)
+    setParameters(java.lang.Object[] parameters)
+    setResourceBundle(java.util.ResourceBundle bundle)
+    setResourceBundleName(java.lang.String name)
+    setSequenceNumber(long seq)
+    setSourceClassName(java.lang.String sourceClassName)
+    setSourceMethodName(java.lang.String sourceMethodName)
+    setThreadID(int threadID)
+    setThrown(java.lang.Throwable thrown)
+  class MemoryHandler
+    isLoggable(java.util.logging.LogRecord record)
+    #ctor(java.util.logging.Handler target, int size, java.util.logging.Level pushLevel)
+    publish(java.util.logging.LogRecord record)
+    setPushLevel(java.util.logging.Level newLevel)
+  class SimpleFormatter
+    format(java.util.logging.LogRecord record)
+  class SocketHandler
+    publish(java.util.logging.LogRecord record)
+    #ctor(java.lang.String host, int port)
+  class StreamHandler
+    isLoggable(java.util.logging.LogRecord record)
+    publish(java.util.logging.LogRecord record)
+    setEncoding(java.lang.String encoding)
+    setOutputStream(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, java.util.logging.Formatter formatter)
+  class XMLFormatter
+    format(java.util.logging.LogRecord record)
+    getHead(java.util.logging.Handler h)
+    getTail(java.util.logging.Handler h)
+
+package java.util.prefs
+;---------------------------------------
+  class AbstractPreferences
+    #ctor(java.util.prefs.AbstractPreferences parent, java.lang.String name)
+    addNodeChangeListener(java.util.prefs.NodeChangeListener ncl)
+    addPreferenceChangeListener(java.util.prefs.PreferenceChangeListener pcl)
+    childSpi(java.lang.String name)
+    exportNode(java.io.OutputStream os)
+    exportSubtree(java.io.OutputStream os)
+    get(java.lang.String key, java.lang.String def)
+    getBoolean(java.lang.String key, boolean def)
+    getByteArray(java.lang.String key, byte[] def)
+    getChild(java.lang.String nodeName)
+    getDouble(java.lang.String key, double def)
+    getFloat(java.lang.String key, float def)
+    getInt(java.lang.String key, int def)
+    getLong(java.lang.String key, long def)
+    getSpi(java.lang.String key)
+    node(java.lang.String path)
+    nodeExists(java.lang.String path)
+    put(java.lang.String key, java.lang.String value)
+    putBoolean(java.lang.String key, boolean value)
+    putByteArray(java.lang.String key, byte[] value)
+    putDouble(java.lang.String key, double value)
+    putFloat(java.lang.String key, float value)
+    putInt(java.lang.String key, int value)
+    putLong(java.lang.String key, long value)
+    putSpi(java.lang.String key, java.lang.String value)
+    remove(java.lang.String key)
+    removeNodeChangeListener(java.util.prefs.NodeChangeListener ncl)
+    removePreferenceChangeListener(java.util.prefs.PreferenceChangeListener pcl)
+    removeSpi(java.lang.String key)
+  class BackingStoreException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.Throwable cause)
+  class InvalidPreferencesFormatException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class NodeChangeEvent
+    #ctor(java.util.prefs.Preferences parent, java.util.prefs.Preferences child)
+  interface NodeChangeListener
+    childAdded(java.util.prefs.NodeChangeEvent evt)
+    childRemoved(java.util.prefs.NodeChangeEvent evt)
+  class PreferenceChangeEvent
+    #ctor(java.util.prefs.Preferences node, java.lang.String key, java.lang.String newValue)
+  interface PreferenceChangeListener
+    preferenceChange(java.util.prefs.PreferenceChangeEvent evt)
+  class Preferences
+    addNodeChangeListener(java.util.prefs.NodeChangeListener ncl)
+    addPreferenceChangeListener(java.util.prefs.PreferenceChangeListener pcl)
+    exportNode(java.io.OutputStream os)
+    exportSubtree(java.io.OutputStream os)
+    get(java.lang.String key, java.lang.String def)
+    getBoolean(java.lang.String key, boolean def)
+    getByteArray(java.lang.String key, byte[] def)
+    getDouble(java.lang.String key, double def)
+    getFloat(java.lang.String key, float def)
+    getInt(java.lang.String key, int def)
+    getLong(java.lang.String key, long def)
+    importPreferences(java.io.InputStream is)
+    node(java.lang.String pathName)
+    nodeExists(java.lang.String pathName)
+    put(java.lang.String key, java.lang.String value)
+    putBoolean(java.lang.String key, boolean value)
+    putByteArray(java.lang.String key, byte[] value)
+    putDouble(java.lang.String key, double value)
+    putFloat(java.lang.String key, float value)
+    putInt(java.lang.String key, int value)
+    putLong(java.lang.String key, long value)
+    remove(java.lang.String key)
+    removeNodeChangeListener(java.util.prefs.NodeChangeListener ncl)
+    removePreferenceChangeListener(java.util.prefs.PreferenceChangeListener pcl)
+    systemNodeForPackage(java.lang.Class<?> c)
+    userNodeForPackage(java.lang.Class<?> c)
+
+package java.util.regex
+;---------------------------------------
+  class Matcher
+    appendReplacement(java.lang.StringBuffer sb, java.lang.String replacement)
+    appendReplacement(java.lang.StringBuilder sb, java.lang.String replacement)
+    appendTail(java.lang.StringBuffer sb)
+    appendTail(java.lang.StringBuilder sb)
+    end(int group)
+    end(java.lang.String name)
+    find(int start)
+    group(int group)
+    group(java.lang.String name)
+    quoteReplacement(java.lang.String s)
+    region(int start, int end)
+    replaceAll(java.lang.String replacement)
+    replaceAll(java.util.function.Function<java.util.regex.MatchResult,java.lang.String> replacer)
+    replaceFirst(java.lang.String replacement)
+    replaceFirst(java.util.function.Function<java.util.regex.MatchResult,java.lang.String> replacer)
+    reset(java.lang.CharSequence input)
+    start(int group)
+    start(java.lang.String name)
+    useAnchoringBounds(boolean b)
+    usePattern(java.util.regex.Pattern newPattern)
+    useTransparentBounds(boolean b)
+  interface MatchResult
+    end(int group)
+    group(int group)
+    start(int group)
+  class Pattern
+    compile(java.lang.String regex)
+    compile(java.lang.String regex, int flags)
+    matcher(java.lang.CharSequence input)
+    matches(java.lang.String regex, java.lang.CharSequence input)
+    quote(java.lang.String s)
+    split(java.lang.CharSequence input)
+    split(java.lang.CharSequence input, int limit)
+    splitAsStream(java.lang.CharSequence input)
+  class PatternSyntaxException
+    #ctor(java.lang.String desc, java.lang.String regex, int index)
+
+package java.util.stream
+;---------------------------------------
+  interface BaseStream<T,S>
+    onClose(java.lang.Runnable closeHandler)
+  interface Collector<T,A,R>
+    <T,A,R> of(java.util.function.Supplier<A> supplier, java.util.function.BiConsumer<A,T> accumulator, java.util.function.BinaryOperator<A> combiner, java.util.function.Function<A,R> finisher, java.util.stream.Collector.Characteristics... characteristics)
+    <T,R> of(java.util.function.Supplier<R> supplier, java.util.function.BiConsumer<R,T> accumulator, java.util.function.BinaryOperator<R> combiner, java.util.stream.Collector.Characteristics... characteristics)
+  class Collectors
+    <T> averagingDouble(java.util.function.ToDoubleFunction<? super T> mapper)
+    <T> averagingInt(java.util.function.ToIntFunction<? super T> mapper)
+    <T> averagingLong(java.util.function.ToLongFunction<? super T> mapper)
+    <T,A,R,RR> collectingAndThen(java.util.stream.Collector<T,A,R> downstream, java.util.function.Function<R,RR> finisher)
+    <T,A,R> filtering(java.util.function.Predicate<? super T> predicate, java.util.stream.Collector<? super T,A,R> downstream)
+    <T,U,A,R> flatMapping(java.util.function.Function<? super T,? extends java.util.stream.Stream<? extends U>> mapper, java.util.stream.Collector<? super U,A,R> downstream)
+    <T,K> groupingBy(java.util.function.Function<? super T,? extends K> classifier)
+    <T,K,D,A,M> groupingBy(java.util.function.Function<? super T,? extends K> classifier, java.util.function.Supplier<M> mapFactory, java.util.stream.Collector<? super T,A,D> downstream)
+    <T,K,A,D> groupingBy(java.util.function.Function<? super T,? extends K> classifier, java.util.stream.Collector<? super T,A,D> downstream)
+    <T,K> groupingByConcurrent(java.util.function.Function<? super T,? extends K> classifier)
+    <T,K,A,D,M> groupingByConcurrent(java.util.function.Function<? super T,? extends K> classifier, java.util.function.Supplier<M> mapFactory, java.util.stream.Collector<? super T,A,D> downstream)
+    <T,K,A,D> groupingByConcurrent(java.util.function.Function<? super T,? extends K> classifier, java.util.stream.Collector<? super T,A,D> downstream)
+    joining(java.lang.CharSequence delimiter)
+    joining(java.lang.CharSequence delimiter, java.lang.CharSequence prefix, java.lang.CharSequence suffix)
+    <T,U,A,R> mapping(java.util.function.Function<? super T,? extends U> mapper, java.util.stream.Collector<? super U,A,R> downstream)
+    <T> maxBy(java.util.Comparator<? super T> comparator)
+    <T> minBy(java.util.Comparator<? super T> comparator)
+    <T> partitioningBy(java.util.function.Predicate<? super T> predicate)
+    <T,D,A> partitioningBy(java.util.function.Predicate<? super T> predicate, java.util.stream.Collector<? super T,A,D> downstream)
+    <T> reducing(java.util.function.BinaryOperator<T> op)
+    <T> reducing(T identity, java.util.function.BinaryOperator<T> op)
+    <T,U> reducing(U identity, java.util.function.Function<? super T,? extends U> mapper, java.util.function.BinaryOperator<U> op)
+    <T> summarizingDouble(java.util.function.ToDoubleFunction<? super T> mapper)
+    <T> summarizingInt(java.util.function.ToIntFunction<? super T> mapper)
+    <T> summarizingLong(java.util.function.ToLongFunction<? super T> mapper)
+    <T> summingDouble(java.util.function.ToDoubleFunction<? super T> mapper)
+    <T> summingInt(java.util.function.ToIntFunction<? super T> mapper)
+    <T> summingLong(java.util.function.ToLongFunction<? super T> mapper)
+    <T,C> toCollection(java.util.function.Supplier<C> collectionFactory)
+    <T,K,U> toConcurrentMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper)
+    <T,K,U> toConcurrentMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper, java.util.function.BinaryOperator<U> mergeFunction)
+    <T,K,U,M> toConcurrentMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper, java.util.function.BinaryOperator<U> mergeFunction, java.util.function.Supplier<M> mapFactory)
+    <T,K,U> toMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper)
+    <T,K,U> toMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper, java.util.function.BinaryOperator<U> mergeFunction)
+    <T,K,U,M> toMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper, java.util.function.BinaryOperator<U> mergeFunction, java.util.function.Supplier<M> mapFactory)
+    <T,K,U> toUnmodifiableMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper)
+    <T,K,U> toUnmodifiableMap(java.util.function.Function<? super T,? extends K> keyMapper, java.util.function.Function<? super T,? extends U> valueMapper, java.util.function.BinaryOperator<U> mergeFunction)
+  interface DoubleStream
+    allMatch(java.util.function.DoublePredicate predicate)
+    anyMatch(java.util.function.DoublePredicate predicate)
+    <R> collect(java.util.function.Supplier<R> supplier, java.util.function.ObjDoubleConsumer<R> accumulator, java.util.function.BiConsumer<R,R> combiner)
+    concat(java.util.stream.DoubleStream a, java.util.stream.DoubleStream b)
+    filter(java.util.function.DoublePredicate predicate)
+    flatMap(java.util.function.DoubleFunction<? extends java.util.stream.DoubleStream> mapper)
+    forEach(java.util.function.DoubleConsumer action)
+    forEachOrdered(java.util.function.DoubleConsumer action)
+    generate(java.util.function.DoubleSupplier s)
+    iterate(double seed, java.util.function.DoubleUnaryOperator f)
+    limit(long maxSize)
+    map(java.util.function.DoubleUnaryOperator mapper)
+    mapToInt(java.util.function.DoubleToIntFunction mapper)
+    mapToLong(java.util.function.DoubleToLongFunction mapper)
+    <U> mapToObj(java.util.function.DoubleFunction<? extends U> mapper)
+    noneMatch(java.util.function.DoublePredicate predicate)
+    of(double t)
+    of(double... values)
+    peek(java.util.function.DoubleConsumer action)
+    reduce(double identity, java.util.function.DoubleBinaryOperator op)
+    reduce(java.util.function.DoubleBinaryOperator op)
+    skip(long n)
+  interface DoubleStream.Builder
+    accept(double t)
+    add(double t)
+  interface IntStream
+    allMatch(java.util.function.IntPredicate predicate)
+    anyMatch(java.util.function.IntPredicate predicate)
+    <R> collect(java.util.function.Supplier<R> supplier, java.util.function.ObjIntConsumer<R> accumulator, java.util.function.BiConsumer<R,R> combiner)
+    concat(java.util.stream.IntStream a, java.util.stream.IntStream b)
+    filter(java.util.function.IntPredicate predicate)
+    flatMap(java.util.function.IntFunction<? extends java.util.stream.IntStream> mapper)
+    forEach(java.util.function.IntConsumer action)
+    forEachOrdered(java.util.function.IntConsumer action)
+    generate(java.util.function.IntSupplier s)
+    iterate(int seed, java.util.function.IntUnaryOperator f)
+    limit(long maxSize)
+    map(java.util.function.IntUnaryOperator mapper)
+    mapToDouble(java.util.function.IntToDoubleFunction mapper)
+    mapToLong(java.util.function.IntToLongFunction mapper)
+    <U> mapToObj(java.util.function.IntFunction<? extends U> mapper)
+    noneMatch(java.util.function.IntPredicate predicate)
+    of(int t)
+    of(int... values)
+    peek(java.util.function.IntConsumer action)
+    range(int startInclusive, int endExclusive)
+    rangeClosed(int startInclusive, int endInclusive)
+    reduce(int identity, java.util.function.IntBinaryOperator op)
+    reduce(java.util.function.IntBinaryOperator op)
+    skip(long n)
+  interface IntStream.Builder
+    accept(int t)
+    add(int t)
+  interface LongStream
+    allMatch(java.util.function.LongPredicate predicate)
+    anyMatch(java.util.function.LongPredicate predicate)
+    <R> collect(java.util.function.Supplier<R> supplier, java.util.function.ObjLongConsumer<R> accumulator, java.util.function.BiConsumer<R,R> combiner)
+    concat(java.util.stream.LongStream a, java.util.stream.LongStream b)
+    filter(java.util.function.LongPredicate predicate)
+    flatMap(java.util.function.LongFunction<? extends java.util.stream.LongStream> mapper)
+    forEach(java.util.function.LongConsumer action)
+    forEachOrdered(java.util.function.LongConsumer action)
+    generate(java.util.function.LongSupplier s)
+    iterate(long seed, java.util.function.LongUnaryOperator f)
+    limit(long maxSize)
+    map(java.util.function.LongUnaryOperator mapper)
+    mapToDouble(java.util.function.LongToDoubleFunction mapper)
+    mapToInt(java.util.function.LongToIntFunction mapper)
+    <U> mapToObj(java.util.function.LongFunction<? extends U> mapper)
+    noneMatch(java.util.function.LongPredicate predicate)
+    of(long t)
+    of(long... values)
+    peek(java.util.function.LongConsumer action)
+    range(long startInclusive, long endExclusive)
+    rangeClosed(long startInclusive, long endInclusive)
+    reduce(java.util.function.LongBinaryOperator op)
+    reduce(long identity, java.util.function.LongBinaryOperator op)
+    skip(long n)
+  interface LongStream.Builder
+    accept(long t)
+    add(long t)
+  interface Stream<T>
+    allMatch(java.util.function.Predicate<? super T> predicate)
+    anyMatch(java.util.function.Predicate<? super T> predicate)
+    <R> collect(java.util.function.Supplier<R> supplier, java.util.function.BiConsumer<R,? super T> accumulator, java.util.function.BiConsumer<R,R> combiner)
+    <R,A> collect(java.util.stream.Collector<? super T,A,R> collector)
+    <T> concat(java.util.stream.Stream<? extends T> a, java.util.stream.Stream<? extends T> b)
+    dropWhile(java.util.function.Predicate<? super T> predicate)
+    filter(java.util.function.Predicate<? super T> predicate)
+    <R> flatMap(java.util.function.Function<? super T,? extends java.util.stream.Stream<? extends R>> mapper)
+    flatMapToDouble(java.util.function.Function<? super T,? extends java.util.stream.DoubleStream> mapper)
+    flatMapToInt(java.util.function.Function<? super T,? extends java.util.stream.IntStream> mapper)
+    flatMapToLong(java.util.function.Function<? super T,? extends java.util.stream.LongStream> mapper)
+    forEach(java.util.function.Consumer<? super T> action)
+    forEachOrdered(java.util.function.Consumer<? super T> action)
+    <T> generate(java.util.function.Supplier<? extends T> s)
+    <T> iterate(T seed, java.util.function.Predicate<? super T> hasNext, java.util.function.UnaryOperator<T> next)
+    <T> iterate(T seed, java.util.function.UnaryOperator<T> f)
+    limit(long maxSize)
+    <R> map(java.util.function.Function<? super T,? extends R> mapper)
+    <R> mapMulti(java.util.function.BiConsumer<? super T,? super java.util.function.Consumer<R>> mapper)
+    mapMultiToDouble(java.util.function.BiConsumer<? super T,? super java.util.function.DoubleConsumer> mapper)
+    mapMultiToInt(java.util.function.BiConsumer<? super T,? super java.util.function.IntConsumer> mapper)
+    mapMultiToLong(java.util.function.BiConsumer<? super T,? super java.util.function.LongConsumer> mapper)
+    mapToDouble(java.util.function.ToDoubleFunction<? super T> mapper)
+    mapToInt(java.util.function.ToIntFunction<? super T> mapper)
+    mapToLong(java.util.function.ToLongFunction<? super T> mapper)
+    max(java.util.Comparator<? super T> comparator)
+    min(java.util.Comparator<? super T> comparator)
+    noneMatch(java.util.function.Predicate<? super T> predicate)
+    <T> of(T t)
+    <T> of(T... values)
+    <T> ofNullable(T t)
+    peek(java.util.function.Consumer<? super T> action)
+    reduce(java.util.function.BinaryOperator<T> accumulator)
+    reduce(T identity, java.util.function.BinaryOperator<T> accumulator)
+    <U> reduce(U identity, java.util.function.BiFunction<U,? super T,U> accumulator, java.util.function.BinaryOperator<U> combiner)
+    skip(long n)
+    sorted(java.util.Comparator<? super T> comparator)
+    takeWhile(java.util.function.Predicate<? super T> predicate)
+    <A> toArray(java.util.function.IntFunction<A[]> generator)
+  interface Stream.Builder<T>
+    accept(T t)
+    add(T t)
+  class StreamSupport
+    doubleStream(java.util.function.Supplier<? extends java.util.Spliterator.OfDouble> supplier, int characteristics, boolean parallel)
+    doubleStream(java.util.Spliterator.OfDouble spliterator, boolean parallel)
+    intStream(java.util.function.Supplier<? extends java.util.Spliterator.OfInt> supplier, int characteristics, boolean parallel)
+    intStream(java.util.Spliterator.OfInt spliterator, boolean parallel)
+    longStream(java.util.function.Supplier<? extends java.util.Spliterator.OfLong> supplier, int characteristics, boolean parallel)
+    longStream(java.util.Spliterator.OfLong spliterator, boolean parallel)
+    <T> stream(java.util.function.Supplier<? extends java.util.Spliterator<T>> supplier, int characteristics, boolean parallel)
+    <T> stream(java.util.Spliterator<T> spliterator, boolean parallel)
+
+package java.util.zip
+;---------------------------------------
+  class Adler32
+    update(byte[] b)
+    update(byte[] b, int off, int len)
+    update(int b)
+    update(java.nio.ByteBuffer buffer)
+  class CheckedInputStream
+    #ctor(java.io.InputStream in, java.util.zip.Checksum cksum)
+    read(byte[] buf, int off, int len)
+    skip(long n)
+  class CheckedOutputStream
+    #ctor(java.io.OutputStream out, java.util.zip.Checksum cksum)
+    write(byte[] b, int off, int len)
+    write(int b)
+  interface Checksum
+    update(byte[] b)
+    update(byte[] b, int off, int len)
+    update(int b)
+    update(java.nio.ByteBuffer buffer)
+  class CRC32
+    update(byte[] b)
+    update(byte[] b, int off, int len)
+    update(int b)
+    update(java.nio.ByteBuffer buffer)
+  class CRC32C
+    update(byte[] b, int off, int len)
+    update(int b)
+    update(java.nio.ByteBuffer buffer)
+  class DataFormatException
+    #ctor(java.lang.String s)
+  class Deflater
+    deflate(byte[] b)
+    deflate(byte[] b, int off, int len)
+    deflate(byte[] b, int off, int len, int flush)
+    #ctor(int level)
+    #ctor(int level, boolean nowrap)
+    setDictionary(byte[] b)
+    setDictionary(byte[] b, int off, int len)
+    setInput(byte[] b)
+    setInput(byte[] b, int off, int len)
+    setLevel(int level)
+    setStrategy(int strategy)
+  class DeflaterInputStream
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, java.util.zip.Deflater defl)
+    #ctor(java.io.InputStream in, java.util.zip.Deflater defl, int bufLen)
+    mark(int limit)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class DeflaterOutputStream
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, boolean syncFlush)
+    #ctor(java.io.OutputStream out, java.util.zip.Deflater def)
+    #ctor(java.io.OutputStream out, java.util.zip.Deflater def, boolean syncFlush)
+    #ctor(java.io.OutputStream out, java.util.zip.Deflater def, int size)
+    #ctor(java.io.OutputStream out, java.util.zip.Deflater def, int size, boolean syncFlush)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class GZIPInputStream
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, int size)
+    read(byte[] buf, int off, int len)
+  class GZIPOutputStream
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, boolean syncFlush)
+    #ctor(java.io.OutputStream out, int size)
+    #ctor(java.io.OutputStream out, int size, boolean syncFlush)
+    write(byte[] buf, int off, int len)
+  class Inflater
+    inflate(byte[] b)
+    inflate(byte[] b, int off, int len)
+    #ctor(boolean nowrap)
+    setDictionary(byte[] b)
+    setDictionary(byte[] b, int off, int len)
+    setInput(byte[] b)
+    setInput(byte[] b, int off, int len)
+  class InflaterInputStream
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, java.util.zip.Inflater inf)
+    #ctor(java.io.InputStream in, java.util.zip.Inflater inf, int size)
+    mark(int readlimit)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class InflaterOutputStream
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, java.util.zip.Inflater infl)
+    #ctor(java.io.OutputStream out, java.util.zip.Inflater infl, int bufLen)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class ZipEntry
+    setComment(java.lang.String comment)
+    setCompressedSize(long csize)
+    setCrc(long crc)
+    setCreationTime(java.nio.file.attribute.FileTime time)
+    setExtra(byte[] extra)
+    setLastAccessTime(java.nio.file.attribute.FileTime time)
+    setLastModifiedTime(java.nio.file.attribute.FileTime time)
+    setMethod(int method)
+    setSize(long size)
+    setTime(long time)
+    #ctor(java.lang.String name)
+    #ctor(java.util.zip.ZipEntry e)
+  class ZipError
+    #ctor(java.lang.String s)
+  class ZipException
+    #ctor(java.lang.String s)
+  class ZipFile
+    getEntry(java.lang.String name)
+    getInputStream(java.util.zip.ZipEntry entry)
+    #ctor(java.io.File file)
+    #ctor(java.io.File file, int mode)
+    #ctor(java.io.File file, int mode, java.nio.charset.Charset charset)
+    #ctor(java.io.File file, java.nio.charset.Charset charset)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.nio.charset.Charset charset)
+  class ZipInputStream
+    createZipEntry(java.lang.String name)
+    read(byte[] b, int off, int len)
+    skip(long n)
+    #ctor(java.io.InputStream in)
+    #ctor(java.io.InputStream in, java.nio.charset.Charset charset)
+  class ZipOutputStream
+    putNextEntry(java.util.zip.ZipEntry e)
+    setComment(java.lang.String comment)
+    setLevel(int level)
+    setMethod(int method)
+    write(byte[] b, int off, int len)
+    #ctor(java.io.OutputStream out)
+    #ctor(java.io.OutputStream out, java.nio.charset.Charset charset)
+
+package javax.crypto
+;---------------------------------------
+  class AEADBadTagException
+    #ctor(java.lang.String msg)
+  class BadPaddingException
+    #ctor(java.lang.String msg)
+  class Cipher
+    #ctor(javax.crypto.CipherSpi cipherSpi, java.security.Provider provider, java.lang.String transformation)
+    doFinal(byte[] input)
+    doFinal(byte[] output, int outputOffset)
+    doFinal(byte[] input, int inputOffset, int inputLen)
+    doFinal(byte[] input, int inputOffset, int inputLen, byte[] output)
+    doFinal(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset)
+    doFinal(java.nio.ByteBuffer input, java.nio.ByteBuffer output)
+    getInstance(java.lang.String transformation)
+    getInstance(java.lang.String transformation, java.lang.String provider)
+    getInstance(java.lang.String transformation, java.security.Provider provider)
+    getMaxAllowedKeyLength(java.lang.String transformation)
+    getMaxAllowedParameterSpec(java.lang.String transformation)
+    getOutputSize(int inputLen)
+    init(int opmode, java.security.cert.Certificate certificate)
+    init(int opmode, java.security.cert.Certificate certificate, java.security.SecureRandom random)
+    init(int opmode, java.security.Key key)
+    init(int opmode, java.security.Key key, java.security.AlgorithmParameters params)
+    init(int opmode, java.security.Key key, java.security.AlgorithmParameters params, java.security.SecureRandom random)
+    init(int opmode, java.security.Key key, java.security.SecureRandom random)
+    init(int opmode, java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
+    init(int opmode, java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+    unwrap(byte[] wrappedKey, java.lang.String wrappedKeyAlgorithm, int wrappedKeyType)
+    update(byte[] input)
+    update(byte[] input, int inputOffset, int inputLen)
+    update(byte[] input, int inputOffset, int inputLen, byte[] output)
+    update(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset)
+    update(java.nio.ByteBuffer input, java.nio.ByteBuffer output)
+    updateAAD(byte[] src)
+    updateAAD(byte[] src, int offset, int len)
+    updateAAD(java.nio.ByteBuffer src)
+    wrap(java.security.Key key)
+  class CipherInputStream
+    #ctor(java.io.InputStream is)
+    #ctor(java.io.InputStream is, javax.crypto.Cipher c)
+    read(byte[] b)
+    read(byte[] b, int off, int len)
+    skip(long n)
+  class CipherOutputStream
+    #ctor(java.io.OutputStream os)
+    #ctor(java.io.OutputStream os, javax.crypto.Cipher c)
+    write(byte[] b)
+    write(byte[] b, int off, int len)
+    write(int b)
+  class CipherSpi
+    engineDoFinal(byte[] input, int inputOffset, int inputLen)
+    engineDoFinal(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset)
+    engineDoFinal(java.nio.ByteBuffer input, java.nio.ByteBuffer output)
+    engineGetKeySize(java.security.Key key)
+    engineGetOutputSize(int inputLen)
+    engineInit(int opmode, java.security.Key key, java.security.AlgorithmParameters params, java.security.SecureRandom random)
+    engineInit(int opmode, java.security.Key key, java.security.SecureRandom random)
+    engineInit(int opmode, java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+    engineSetMode(java.lang.String mode)
+    engineSetPadding(java.lang.String padding)
+    engineUnwrap(byte[] wrappedKey, java.lang.String wrappedKeyAlgorithm, int wrappedKeyType)
+    engineUpdate(byte[] input, int inputOffset, int inputLen)
+    engineUpdate(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset)
+    engineUpdate(java.nio.ByteBuffer input, java.nio.ByteBuffer output)
+    engineUpdateAAD(byte[] src, int offset, int len)
+    engineUpdateAAD(java.nio.ByteBuffer src)
+    engineWrap(java.security.Key key)
+  class EncryptedPrivateKeyInfo
+    #ctor(byte[] encoded)
+    #ctor(java.lang.String algName, byte[] encryptedData)
+    #ctor(java.security.AlgorithmParameters algParams, byte[] encryptedData)
+    getKeySpec(java.security.Key decryptKey)
+    getKeySpec(java.security.Key decryptKey, java.lang.String providerName)
+    getKeySpec(java.security.Key decryptKey, java.security.Provider provider)
+    getKeySpec(javax.crypto.Cipher cipher)
+  class ExemptionMechanism
+    #ctor(javax.crypto.ExemptionMechanismSpi exmechSpi, java.security.Provider provider, java.lang.String mechanism)
+    genExemptionBlob(byte[] output)
+    genExemptionBlob(byte[] output, int outputOffset)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    getOutputSize(int inputLen)
+    init(java.security.Key key)
+    init(java.security.Key key, java.security.AlgorithmParameters params)
+    init(java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
+    isCryptoAllowed(java.security.Key key)
+  class ExemptionMechanismException
+    #ctor(java.lang.String msg)
+  class ExemptionMechanismSpi
+    engineGenExemptionBlob(byte[] output, int outputOffset)
+    engineGetOutputSize(int inputLen)
+    engineInit(java.security.Key key)
+    engineInit(java.security.Key key, java.security.AlgorithmParameters params)
+    engineInit(java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
+  class IllegalBlockSizeException
+    #ctor(java.lang.String msg)
+  class KeyAgreement
+    doPhase(java.security.Key key, boolean lastPhase)
+    generateSecret(byte[] sharedSecret, int offset)
+    generateSecret(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    init(java.security.Key key)
+    init(java.security.Key key, java.security.SecureRandom random)
+    init(java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
+    init(java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+    #ctor(javax.crypto.KeyAgreementSpi keyAgreeSpi, java.security.Provider provider, java.lang.String algorithm)
+  class KeyAgreementSpi
+    engineDoPhase(java.security.Key key, boolean lastPhase)
+    engineGenerateSecret(byte[] sharedSecret, int offset)
+    engineGenerateSecret(java.lang.String algorithm)
+    engineInit(java.security.Key key, java.security.SecureRandom random)
+    engineInit(java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+  class KeyGenerator
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    init(int keysize)
+    init(int keysize, java.security.SecureRandom random)
+    init(java.security.SecureRandom random)
+    init(java.security.spec.AlgorithmParameterSpec params)
+    init(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+    #ctor(javax.crypto.KeyGeneratorSpi keyGenSpi, java.security.Provider provider, java.lang.String algorithm)
+  class KeyGeneratorSpi
+    engineInit(int keysize, java.security.SecureRandom random)
+    engineInit(java.security.SecureRandom random)
+    engineInit(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
+  class Mac
+    doFinal(byte[] input)
+    doFinal(byte[] output, int outOffset)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    init(java.security.Key key)
+    init(java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
+    #ctor(javax.crypto.MacSpi macSpi, java.security.Provider provider, java.lang.String algorithm)
+    update(byte input)
+    update(byte[] input)
+    update(byte[] input, int offset, int len)
+    update(java.nio.ByteBuffer input)
+  class MacSpi
+    engineInit(java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
+    engineUpdate(byte input)
+    engineUpdate(byte[] input, int offset, int len)
+    engineUpdate(java.nio.ByteBuffer input)
+  class NoSuchPaddingException
+    #ctor(java.lang.String msg)
+  class SealedObject
+    getObject(java.security.Key key)
+    getObject(java.security.Key key, java.lang.String provider)
+    getObject(javax.crypto.Cipher c)
+    #ctor(java.io.Serializable object, javax.crypto.Cipher c)
+    #ctor(javax.crypto.SealedObject so)
+  class SecretKeyFactory
+    generateSecret(java.security.spec.KeySpec keySpec)
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    getKeySpec(javax.crypto.SecretKey key, java.lang.Class<?> keySpec)
+    #ctor(javax.crypto.SecretKeyFactorySpi keyFacSpi, java.security.Provider provider, java.lang.String algorithm)
+    translateKey(javax.crypto.SecretKey key)
+  class SecretKeyFactorySpi
+    engineGenerateSecret(java.security.spec.KeySpec keySpec)
+    engineGetKeySpec(javax.crypto.SecretKey key, java.lang.Class<?> keySpec)
+    engineTranslateKey(javax.crypto.SecretKey key)
+  class ShortBufferException
+    #ctor(java.lang.String msg)
+
+package javax.crypto.interfaces
+;---------------------------------------
+
+package javax.crypto.spec
+;---------------------------------------
+  class DESedeKeySpec
+    #ctor(byte[] key)
+    #ctor(byte[] key, int offset)
+    isParityAdjusted(byte[] key, int offset)
+  class DESKeySpec
+    #ctor(byte[] key)
+    #ctor(byte[] key, int offset)
+    isParityAdjusted(byte[] key, int offset)
+    isWeak(byte[] key, int offset)
+  class DHGenParameterSpec
+    #ctor(int primeSize, int exponentSize)
+  class DHParameterSpec
+    #ctor(java.math.BigInteger p, java.math.BigInteger g)
+    #ctor(java.math.BigInteger p, java.math.BigInteger g, int l)
+  class DHPrivateKeySpec
+    #ctor(java.math.BigInteger x, java.math.BigInteger p, java.math.BigInteger g)
+  class DHPublicKeySpec
+    #ctor(java.math.BigInteger y, java.math.BigInteger p, java.math.BigInteger g)
+  class GCMParameterSpec
+    #ctor(int tLen, byte[] src)
+    #ctor(int tLen, byte[] src, int offset, int len)
+  class IvParameterSpec
+    #ctor(byte[] iv)
+    #ctor(byte[] iv, int offset, int len)
+  class OAEPParameterSpec
+    #ctor(java.lang.String mdName, java.lang.String mgfName, java.security.spec.AlgorithmParameterSpec mgfSpec, javax.crypto.spec.PSource pSrc)
+  class PBEKeySpec
+    #ctor(char[] password)
+    #ctor(char[] password, byte[] salt, int iterationCount)
+    #ctor(char[] password, byte[] salt, int iterationCount, int keyLength)
+  class PBEParameterSpec
+    #ctor(byte[] salt, int iterationCount)
+    #ctor(byte[] salt, int iterationCount, java.security.spec.AlgorithmParameterSpec paramSpec)
+  class PSource
+    #ctor(java.lang.String pSrcName)
+  class PSource.PSpecified
+    #ctor(byte[] p)
+  class RC2ParameterSpec
+    equals(java.lang.Object obj)
+    #ctor(int effectiveKeyBits)
+    #ctor(int effectiveKeyBits, byte[] iv)
+    #ctor(int effectiveKeyBits, byte[] iv, int offset)
+  class RC5ParameterSpec
+    equals(java.lang.Object obj)
+    #ctor(int version, int rounds, int wordSize)
+    #ctor(int version, int rounds, int wordSize, byte[] iv)
+    #ctor(int version, int rounds, int wordSize, byte[] iv, int offset)
+  class SecretKeySpec
+    equals(java.lang.Object obj)
+    #ctor(byte[] key, int offset, int len, java.lang.String algorithm)
+    #ctor(byte[] key, java.lang.String algorithm)
+
+package javax.microedition.khronos.egl
+;---------------------------------------
+  interface EGL10
+    eglChooseConfig(javax.microedition.khronos.egl.EGLDisplay display, int[] attrib_list, javax.microedition.khronos.egl.EGLConfig[] configs, int config_size, int[] num_config)
+    eglCopyBuffers(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLSurface surface, java.lang.Object native_pixmap)
+    eglCreateContext(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig config, javax.microedition.khronos.egl.EGLContext share_context, int[] attrib_list)
+    eglCreatePbufferSurface(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig config, int[] attrib_list)
+    eglCreatePixmapSurface(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig config, java.lang.Object native_pixmap, int[] attrib_list)
+    eglCreateWindowSurface(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig config, java.lang.Object native_window, int[] attrib_list)
+    eglDestroyContext(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLContext context)
+    eglDestroySurface(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLSurface surface)
+    eglGetConfigAttrib(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig config, int attribute, int[] value)
+    eglGetConfigs(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLConfig[] configs, int config_size, int[] num_config)
+    eglGetCurrentSurface(int readdraw)
+    eglGetDisplay(java.lang.Object native_display)
+    eglInitialize(javax.microedition.khronos.egl.EGLDisplay display, int[] major_minor)
+    eglMakeCurrent(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLSurface draw, javax.microedition.khronos.egl.EGLSurface read, javax.microedition.khronos.egl.EGLContext context)
+    eglQueryContext(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLContext context, int attribute, int[] value)
+    eglQueryString(javax.microedition.khronos.egl.EGLDisplay display, int name)
+    eglQuerySurface(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLSurface surface, int attribute, int[] value)
+    eglSwapBuffers(javax.microedition.khronos.egl.EGLDisplay display, javax.microedition.khronos.egl.EGLSurface surface)
+    eglTerminate(javax.microedition.khronos.egl.EGLDisplay display)
+    eglWaitNative(int engine, java.lang.Object bindTarget)
+
+package javax.microedition.khronos.opengles
+;---------------------------------------
+  interface GL10
+    glActiveTexture(int texture)
+    glAlphaFunc(int func, float ref)
+    glAlphaFuncx(int func, int ref)
+    glBindTexture(int target, int texture)
+    glBlendFunc(int sfactor, int dfactor)
+    glClear(int mask)
+    glClearColor(float red, float green, float blue, float alpha)
+    glClearColorx(int red, int green, int blue, int alpha)
+    glClearDepthf(float depth)
+    glClearDepthx(int depth)
+    glClearStencil(int s)
+    glClientActiveTexture(int texture)
+    glColor4f(float red, float green, float blue, float alpha)
+    glColor4x(int red, int green, int blue, int alpha)
+    glColorMask(boolean red, boolean green, boolean blue, boolean alpha)
+    glColorPointer(int size, int type, int stride, java.nio.Buffer pointer)
+    glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, java.nio.Buffer data)
+    glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, java.nio.Buffer data)
+    glCopyTexImage2D(int target, int level, int internalformat, int x, int y, int width, int height, int border)
+    glCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height)
+    glCullFace(int mode)
+    glDeleteTextures(int n, int[] textures, int offset)
+    glDeleteTextures(int n, java.nio.IntBuffer textures)
+    glDepthFunc(int func)
+    glDepthMask(boolean flag)
+    glDepthRangef(float zNear, float zFar)
+    glDepthRangex(int zNear, int zFar)
+    glDisable(int cap)
+    glDisableClientState(int array)
+    glDrawArrays(int mode, int first, int count)
+    glDrawElements(int mode, int count, int type, java.nio.Buffer indices)
+    glEnable(int cap)
+    glEnableClientState(int array)
+    glFogf(int pname, float param)
+    glFogfv(int pname, float[] params, int offset)
+    glFogfv(int pname, java.nio.FloatBuffer params)
+    glFogx(int pname, int param)
+    glFogxv(int pname, int[] params, int offset)
+    glFogxv(int pname, java.nio.IntBuffer params)
+    glFrontFace(int mode)
+    glFrustumf(float left, float right, float bottom, float top, float zNear, float zFar)
+    glFrustumx(int left, int right, int bottom, int top, int zNear, int zFar)
+    glGenTextures(int n, int[] textures, int offset)
+    glGenTextures(int n, java.nio.IntBuffer textures)
+    glGetIntegerv(int pname, int[] params, int offset)
+    glGetIntegerv(int pname, java.nio.IntBuffer params)
+    glGetString(int name)
+    glHint(int target, int mode)
+    glLightf(int light, int pname, float param)
+    glLightfv(int light, int pname, float[] params, int offset)
+    glLightfv(int light, int pname, java.nio.FloatBuffer params)
+    glLightModelf(int pname, float param)
+    glLightModelfv(int pname, float[] params, int offset)
+    glLightModelfv(int pname, java.nio.FloatBuffer params)
+    glLightModelx(int pname, int param)
+    glLightModelxv(int pname, int[] params, int offset)
+    glLightModelxv(int pname, java.nio.IntBuffer params)
+    glLightx(int light, int pname, int param)
+    glLightxv(int light, int pname, int[] params, int offset)
+    glLightxv(int light, int pname, java.nio.IntBuffer params)
+    glLineWidth(float width)
+    glLineWidthx(int width)
+    glLoadMatrixf(float[] m, int offset)
+    glLoadMatrixf(java.nio.FloatBuffer m)
+    glLoadMatrixx(int[] m, int offset)
+    glLoadMatrixx(java.nio.IntBuffer m)
+    glLogicOp(int opcode)
+    glMaterialf(int face, int pname, float param)
+    glMaterialfv(int face, int pname, float[] params, int offset)
+    glMaterialfv(int face, int pname, java.nio.FloatBuffer params)
+    glMaterialx(int face, int pname, int param)
+    glMaterialxv(int face, int pname, int[] params, int offset)
+    glMaterialxv(int face, int pname, java.nio.IntBuffer params)
+    glMatrixMode(int mode)
+    glMultiTexCoord4f(int target, float s, float t, float r, float q)
+    glMultiTexCoord4x(int target, int s, int t, int r, int q)
+    glMultMatrixf(float[] m, int offset)
+    glMultMatrixf(java.nio.FloatBuffer m)
+    glMultMatrixx(int[] m, int offset)
+    glMultMatrixx(java.nio.IntBuffer m)
+    glNormal3f(float nx, float ny, float nz)
+    glNormal3x(int nx, int ny, int nz)
+    glNormalPointer(int type, int stride, java.nio.Buffer pointer)
+    glOrthof(float left, float right, float bottom, float top, float zNear, float zFar)
+    glOrthox(int left, int right, int bottom, int top, int zNear, int zFar)
+    glPixelStorei(int pname, int param)
+    glPointSize(float size)
+    glPointSizex(int size)
+    glPolygonOffset(float factor, float units)
+    glPolygonOffsetx(int factor, int units)
+    glReadPixels(int x, int y, int width, int height, int format, int type, java.nio.Buffer pixels)
+    glRotatef(float angle, float x, float y, float z)
+    glRotatex(int angle, int x, int y, int z)
+    glSampleCoverage(float value, boolean invert)
+    glSampleCoveragex(int value, boolean invert)
+    glScalef(float x, float y, float z)
+    glScalex(int x, int y, int z)
+    glScissor(int x, int y, int width, int height)
+    glShadeModel(int mode)
+    glStencilFunc(int func, int ref, int mask)
+    glStencilMask(int mask)
+    glStencilOp(int fail, int zfail, int zpass)
+    glTexCoordPointer(int size, int type, int stride, java.nio.Buffer pointer)
+    glTexEnvf(int target, int pname, float param)
+    glTexEnvfv(int target, int pname, float[] params, int offset)
+    glTexEnvfv(int target, int pname, java.nio.FloatBuffer params)
+    glTexEnvx(int target, int pname, int param)
+    glTexEnvxv(int target, int pname, int[] params, int offset)
+    glTexEnvxv(int target, int pname, java.nio.IntBuffer params)
+    glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, java.nio.Buffer pixels)
+    glTexParameterf(int target, int pname, float param)
+    glTexParameterx(int target, int pname, int param)
+    glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, java.nio.Buffer pixels)
+    glTranslatef(float x, float y, float z)
+    glTranslatex(int x, int y, int z)
+    glVertexPointer(int size, int type, int stride, java.nio.Buffer pointer)
+    glViewport(int x, int y, int width, int height)
+  interface GL10Ext
+    glQueryMatrixxOES(int[] mantissa, int mantissaOffset, int[] exponent, int exponentOffset)
+    glQueryMatrixxOES(java.nio.IntBuffer mantissa, java.nio.IntBuffer exponent)
+  interface GL11
+    glBindBuffer(int target, int buffer)
+    glBufferData(int target, int size, java.nio.Buffer data, int usage)
+    glBufferSubData(int target, int offset, int size, java.nio.Buffer data)
+    glClipPlanef(int plane, float[] equation, int offset)
+    glClipPlanef(int plane, java.nio.FloatBuffer equation)
+    glClipPlanex(int plane, int[] equation, int offset)
+    glClipPlanex(int plane, java.nio.IntBuffer equation)
+    glColor4ub(byte red, byte green, byte blue, byte alpha)
+    glColorPointer(int size, int type, int stride, int offset)
+    glDeleteBuffers(int n, int[] buffers, int offset)
+    glDeleteBuffers(int n, java.nio.IntBuffer buffers)
+    glDrawElements(int mode, int count, int type, int offset)
+    glGenBuffers(int n, int[] buffers, int offset)
+    glGenBuffers(int n, java.nio.IntBuffer buffers)
+    glGetBooleanv(int pname, boolean[] params, int offset)
+    glGetBooleanv(int pname, java.nio.IntBuffer params)
+    glGetBufferParameteriv(int target, int pname, int[] params, int offset)
+    glGetBufferParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetClipPlanef(int pname, float[] eqn, int offset)
+    glGetClipPlanef(int pname, java.nio.FloatBuffer eqn)
+    glGetClipPlanex(int pname, int[] eqn, int offset)
+    glGetClipPlanex(int pname, java.nio.IntBuffer eqn)
+    glGetFixedv(int pname, int[] params, int offset)
+    glGetFixedv(int pname, java.nio.IntBuffer params)
+    glGetFloatv(int pname, float[] params, int offset)
+    glGetFloatv(int pname, java.nio.FloatBuffer params)
+    glGetLightfv(int light, int pname, float[] params, int offset)
+    glGetLightfv(int light, int pname, java.nio.FloatBuffer params)
+    glGetLightxv(int light, int pname, int[] params, int offset)
+    glGetLightxv(int light, int pname, java.nio.IntBuffer params)
+    glGetMaterialfv(int face, int pname, float[] params, int offset)
+    glGetMaterialfv(int face, int pname, java.nio.FloatBuffer params)
+    glGetMaterialxv(int face, int pname, int[] params, int offset)
+    glGetMaterialxv(int face, int pname, java.nio.IntBuffer params)
+    glGetPointerv(int pname, java.nio.Buffer[] params)
+    glGetTexEnviv(int env, int pname, int[] params, int offset)
+    glGetTexEnviv(int env, int pname, java.nio.IntBuffer params)
+    glGetTexEnvxv(int env, int pname, int[] params, int offset)
+    glGetTexEnvxv(int env, int pname, java.nio.IntBuffer params)
+    glGetTexParameterfv(int target, int pname, float[] params, int offset)
+    glGetTexParameterfv(int target, int pname, java.nio.FloatBuffer params)
+    glGetTexParameteriv(int target, int pname, int[] params, int offset)
+    glGetTexParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glGetTexParameterxv(int target, int pname, int[] params, int offset)
+    glGetTexParameterxv(int target, int pname, java.nio.IntBuffer params)
+    glIsBuffer(int buffer)
+    glIsEnabled(int cap)
+    glIsTexture(int texture)
+    glNormalPointer(int type, int stride, int offset)
+    glPointParameterf(int pname, float param)
+    glPointParameterfv(int pname, float[] params, int offset)
+    glPointParameterfv(int pname, java.nio.FloatBuffer params)
+    glPointParameterx(int pname, int param)
+    glPointParameterxv(int pname, int[] params, int offset)
+    glPointParameterxv(int pname, java.nio.IntBuffer params)
+    glPointSizePointerOES(int type, int stride, java.nio.Buffer pointer)
+    glTexCoordPointer(int size, int type, int stride, int offset)
+    glTexEnvi(int target, int pname, int param)
+    glTexEnviv(int target, int pname, int[] params, int offset)
+    glTexEnviv(int target, int pname, java.nio.IntBuffer params)
+    glTexParameterfv(int target, int pname, float[] params, int offset)
+    glTexParameterfv(int target, int pname, java.nio.FloatBuffer params)
+    glTexParameteri(int target, int pname, int param)
+    glTexParameteriv(int target, int pname, int[] params, int offset)
+    glTexParameteriv(int target, int pname, java.nio.IntBuffer params)
+    glTexParameterxv(int target, int pname, int[] params, int offset)
+    glTexParameterxv(int target, int pname, java.nio.IntBuffer params)
+    glVertexPointer(int size, int type, int stride, int offset)
+  interface GL11Ext
+    glCurrentPaletteMatrixOES(int matrixpaletteindex)
+    glDrawTexfOES(float x, float y, float z, float width, float height)
+    glDrawTexfvOES(float[] coords, int offset)
+    glDrawTexfvOES(java.nio.FloatBuffer coords)
+    glDrawTexiOES(int x, int y, int z, int width, int height)
+    glDrawTexivOES(int[] coords, int offset)
+    glDrawTexivOES(java.nio.IntBuffer coords)
+    glDrawTexsOES(short x, short y, short z, short width, short height)
+    glDrawTexsvOES(java.nio.ShortBuffer coords)
+    glDrawTexsvOES(short[] coords, int offset)
+    glDrawTexxOES(int x, int y, int z, int width, int height)
+    glDrawTexxvOES(int[] coords, int offset)
+    glDrawTexxvOES(java.nio.IntBuffer coords)
+    glEnable(int cap)
+    glEnableClientState(int array)
+    glMatrixIndexPointerOES(int size, int type, int stride, int offset)
+    glMatrixIndexPointerOES(int size, int type, int stride, java.nio.Buffer pointer)
+    glTexParameterfv(int target, int pname, float[] param, int offset)
+    glWeightPointerOES(int size, int type, int stride, int offset)
+    glWeightPointerOES(int size, int type, int stride, java.nio.Buffer pointer)
+  interface GL11ExtensionPack
+    glBindFramebufferOES(int target, int framebuffer)
+    glBindRenderbufferOES(int target, int renderbuffer)
+    glBindTexture(int target, int texture)
+    glBlendEquation(int mode)
+    glBlendEquationSeparate(int modeRGB, int modeAlpha)
+    glBlendFuncSeparate(int srcRGB, int dstRGB, int srcAlpha, int dstAlpha)
+    glCheckFramebufferStatusOES(int target)
+    glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, java.nio.Buffer data)
+    glCopyTexImage2D(int target, int level, int internalformat, int x, int y, int width, int height, int border)
+    glDeleteFramebuffersOES(int n, int[] framebuffers, int offset)
+    glDeleteFramebuffersOES(int n, java.nio.IntBuffer framebuffers)
+    glDeleteRenderbuffersOES(int n, int[] renderbuffers, int offset)
+    glDeleteRenderbuffersOES(int n, java.nio.IntBuffer renderbuffers)
+    glEnable(int cap)
+    glFramebufferRenderbufferOES(int target, int attachment, int renderbuffertarget, int renderbuffer)
+    glFramebufferTexture2DOES(int target, int attachment, int textarget, int texture, int level)
+    glGenerateMipmapOES(int target)
+    glGenFramebuffersOES(int n, int[] framebuffers, int offset)
+    glGenFramebuffersOES(int n, java.nio.IntBuffer framebuffers)
+    glGenRenderbuffersOES(int n, int[] renderbuffers, int offset)
+    glGenRenderbuffersOES(int n, java.nio.IntBuffer renderbuffers)
+    glGetFramebufferAttachmentParameterivOES(int target, int attachment, int pname, int[] params, int offset)
+    glGetFramebufferAttachmentParameterivOES(int target, int attachment, int pname, java.nio.IntBuffer params)
+    glGetIntegerv(int pname, int[] params, int offset)
+    glGetIntegerv(int pname, java.nio.IntBuffer params)
+    glGetRenderbufferParameterivOES(int target, int pname, int[] params, int offset)
+    glGetRenderbufferParameterivOES(int target, int pname, java.nio.IntBuffer params)
+    glGetTexGenfv(int coord, int pname, float[] params, int offset)
+    glGetTexGenfv(int coord, int pname, java.nio.FloatBuffer params)
+    glGetTexGeniv(int coord, int pname, int[] params, int offset)
+    glGetTexGeniv(int coord, int pname, java.nio.IntBuffer params)
+    glGetTexGenxv(int coord, int pname, int[] params, int offset)
+    glGetTexGenxv(int coord, int pname, java.nio.IntBuffer params)
+    glIsFramebufferOES(int framebuffer)
+    glIsRenderbufferOES(int renderbuffer)
+    glRenderbufferStorageOES(int target, int internalformat, int width, int height)
+    glStencilOp(int fail, int zfail, int zpass)
+    glTexEnvf(int target, int pname, float param)
+    glTexEnvfv(int target, int pname, float[] params, int offset)
+    glTexEnvfv(int target, int pname, java.nio.FloatBuffer params)
+    glTexEnvx(int target, int pname, int param)
+    glTexEnvxv(int target, int pname, int[] params, int offset)
+    glTexEnvxv(int target, int pname, java.nio.IntBuffer params)
+    glTexGenf(int coord, int pname, float param)
+    glTexGenfv(int coord, int pname, float[] params, int offset)
+    glTexGenfv(int coord, int pname, java.nio.FloatBuffer params)
+    glTexGeni(int coord, int pname, int param)
+    glTexGeniv(int coord, int pname, int[] params, int offset)
+    glTexGeniv(int coord, int pname, java.nio.IntBuffer params)
+    glTexGenx(int coord, int pname, int param)
+    glTexGenxv(int coord, int pname, int[] params, int offset)
+    glTexGenxv(int coord, int pname, java.nio.IntBuffer params)
+    glTexParameterf(int target, int pname, float param)
+
+package javax.net
+;---------------------------------------
+  class ServerSocketFactory
+    createServerSocket(int port)
+    createServerSocket(int port, int backlog)
+    createServerSocket(int port, int backlog, java.net.InetAddress ifAddress)
+  class SocketFactory
+    createSocket(java.lang.String host, int port)
+    createSocket(java.lang.String host, int port, java.net.InetAddress localHost, int localPort)
+    createSocket(java.net.InetAddress host, int port)
+    createSocket(java.net.InetAddress address, int port, java.net.InetAddress localAddress, int localPort)
+
+package javax.net.ssl
+;---------------------------------------
+  class CertPathTrustManagerParameters
+    #ctor(java.security.cert.CertPathParameters parameters)
+  class HandshakeCompletedEvent
+    #ctor(javax.net.ssl.SSLSocket sock, javax.net.ssl.SSLSession s)
+  interface HandshakeCompletedListener
+    handshakeCompleted(javax.net.ssl.HandshakeCompletedEvent event)
+  interface HostnameVerifier
+    verify(java.lang.String hostname, javax.net.ssl.SSLSession session)
+  class HttpsURLConnection
+    #ctor(java.net.URL url)
+    setDefaultHostnameVerifier(javax.net.ssl.HostnameVerifier v)
+    setDefaultSSLSocketFactory(javax.net.ssl.SSLSocketFactory sf)
+    setHostnameVerifier(javax.net.ssl.HostnameVerifier v)
+    setSSLSocketFactory(javax.net.ssl.SSLSocketFactory sf)
+  class KeyManagerFactory
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    init(java.security.KeyStore ks, char[] password)
+    init(javax.net.ssl.ManagerFactoryParameters spec)
+    #ctor(javax.net.ssl.KeyManagerFactorySpi factorySpi, java.security.Provider provider, java.lang.String algorithm)
+  class KeyManagerFactorySpi
+    engineInit(java.security.KeyStore ks, char[] password)
+    engineInit(javax.net.ssl.ManagerFactoryParameters spec)
+  class KeyStoreBuilderParameters
+    #ctor(java.security.KeyStore.Builder builder)
+    #ctor(java.util.List<java.security.KeyStore.Builder> parameters)
+  class SNIHostName
+    createSNIMatcher(java.lang.String regex)
+    equals(java.lang.Object other)
+    #ctor(byte[] encoded)
+    #ctor(java.lang.String hostname)
+  class SNIMatcher
+    matches(javax.net.ssl.SNIServerName serverName)
+    #ctor(int type)
+  class SNIServerName
+    equals(java.lang.Object other)
+    #ctor(int type, byte[] encoded)
+  class SSLContext
+    createSSLEngine(java.lang.String peerHost, int peerPort)
+    getInstance(java.lang.String protocol)
+    getInstance(java.lang.String protocol, java.lang.String provider)
+    getInstance(java.lang.String protocol, java.security.Provider provider)
+    init(javax.net.ssl.KeyManager[] km, javax.net.ssl.TrustManager[] tm, java.security.SecureRandom random)
+    setDefault(javax.net.ssl.SSLContext context)
+    #ctor(javax.net.ssl.SSLContextSpi contextSpi, java.security.Provider provider, java.lang.String protocol)
+  class SSLContextSpi
+    engineCreateSSLEngine(java.lang.String host, int port)
+    engineInit(javax.net.ssl.KeyManager[] km, javax.net.ssl.TrustManager[] tm, java.security.SecureRandom sr)
+  class SSLEngine
+    setEnabledCipherSuites(java.lang.String[] suites)
+    setEnabledProtocols(java.lang.String[] protocols)
+    setEnableSessionCreation(boolean flag)
+    setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLEngine,java.util.List<java.lang.String>,java.lang.String> selector)
+    setNeedClientAuth(boolean need)
+    setSSLParameters(javax.net.ssl.SSLParameters params)
+    setUseClientMode(boolean mode)
+    setWantClientAuth(boolean want)
+    #ctor(java.lang.String peerHost, int peerPort)
+    unwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer dst)
+    unwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer[] dsts)
+    unwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer[] dsts, int offset, int length)
+    wrap(java.nio.ByteBuffer src, java.nio.ByteBuffer dst)
+    wrap(java.nio.ByteBuffer[] srcs, int offset, int length, java.nio.ByteBuffer dst)
+    wrap(java.nio.ByteBuffer[] srcs, java.nio.ByteBuffer dst)
+  class SSLEngineResult
+    #ctor(javax.net.ssl.SSLEngineResult.Status status, javax.net.ssl.SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced)
+  class SSLException
+    #ctor(java.lang.String reason)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class SSLHandshakeException
+    #ctor(java.lang.String reason)
+  class SSLKeyException
+    #ctor(java.lang.String reason)
+  class SSLParameters
+    setAlgorithmConstraints(java.security.AlgorithmConstraints constraints)
+    setApplicationProtocols(java.lang.String[] protocols)
+    setCipherSuites(java.lang.String[] cipherSuites)
+    setEndpointIdentificationAlgorithm(java.lang.String algorithm)
+    setNeedClientAuth(boolean needClientAuth)
+    setProtocols(java.lang.String[] protocols)
+    setServerNames(java.util.List<javax.net.ssl.SNIServerName> serverNames)
+    setSNIMatchers(java.util.Collection<javax.net.ssl.SNIMatcher> matchers)
+    setUseCipherSuitesOrder(boolean honorOrder)
+    setWantClientAuth(boolean wantClientAuth)
+    #ctor(java.lang.String[] cipherSuites)
+    #ctor(java.lang.String[] cipherSuites, java.lang.String[] protocols)
+  class SSLPeerUnverifiedException
+    #ctor(java.lang.String reason)
+  class SSLPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class SSLProtocolException
+    #ctor(java.lang.String reason)
+  class SSLServerSocket
+    setEnabledCipherSuites(java.lang.String[] suites)
+    setEnabledProtocols(java.lang.String[] protocols)
+    setEnableSessionCreation(boolean flag)
+    setNeedClientAuth(boolean need)
+    setSSLParameters(javax.net.ssl.SSLParameters params)
+    setUseClientMode(boolean mode)
+    setWantClientAuth(boolean want)
+    #ctor(int port)
+    #ctor(int port, int backlog)
+    #ctor(int port, int backlog, java.net.InetAddress address)
+  interface SSLSession
+    getValue(java.lang.String name)
+    putValue(java.lang.String name, java.lang.Object value)
+    removeValue(java.lang.String name)
+  class SSLSessionBindingEvent
+    #ctor(javax.net.ssl.SSLSession session, java.lang.String name)
+  interface SSLSessionBindingListener
+    valueBound(javax.net.ssl.SSLSessionBindingEvent event)
+    valueUnbound(javax.net.ssl.SSLSessionBindingEvent event)
+  interface SSLSessionContext
+    getSession(byte[] sessionId)
+    setSessionCacheSize(int size)
+    setSessionTimeout(int seconds)
+  class SSLSocket
+    addHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener listener)
+    removeHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener listener)
+    setEnabledCipherSuites(java.lang.String[] suites)
+    setEnabledProtocols(java.lang.String[] protocols)
+    setEnableSessionCreation(boolean flag)
+    setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> selector)
+    setNeedClientAuth(boolean need)
+    setSSLParameters(javax.net.ssl.SSLParameters params)
+    setUseClientMode(boolean mode)
+    setWantClientAuth(boolean want)
+    #ctor(java.lang.String host, int port)
+    #ctor(java.lang.String host, int port, java.net.InetAddress clientAddress, int clientPort)
+    #ctor(java.net.InetAddress address, int port)
+    #ctor(java.net.InetAddress address, int port, java.net.InetAddress clientAddress, int clientPort)
+  class SSLSocketFactory
+    createSocket(java.net.Socket s, java.lang.String host, int port, boolean autoClose)
+  class TrustManagerFactory
+    getInstance(java.lang.String algorithm)
+    getInstance(java.lang.String algorithm, java.lang.String provider)
+    getInstance(java.lang.String algorithm, java.security.Provider provider)
+    init(java.security.KeyStore ks)
+    init(javax.net.ssl.ManagerFactoryParameters spec)
+    #ctor(javax.net.ssl.TrustManagerFactorySpi factorySpi, java.security.Provider provider, java.lang.String algorithm)
+  class TrustManagerFactorySpi
+    engineInit(java.security.KeyStore ks)
+    engineInit(javax.net.ssl.ManagerFactoryParameters spec)
+  class X509ExtendedKeyManager
+    chooseEngineClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
+    chooseEngineServerAlias(java.lang.String keyType, java.security.Principal[] issuers, javax.net.ssl.SSLEngine engine)
+  class X509ExtendedTrustManager
+    checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.net.Socket socket)
+    checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, javax.net.ssl.SSLEngine engine)
+    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, java.net.Socket socket)
+    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType, javax.net.ssl.SSLEngine engine)
+  interface X509KeyManager
+    chooseClientAlias(java.lang.String[] keyType, java.security.Principal[] issuers, java.net.Socket socket)
+    chooseServerAlias(java.lang.String keyType, java.security.Principal[] issuers, java.net.Socket socket)
+    getCertificateChain(java.lang.String alias)
+    getClientAliases(java.lang.String keyType, java.security.Principal[] issuers)
+    getPrivateKey(java.lang.String alias)
+    getServerAliases(java.lang.String keyType, java.security.Principal[] issuers)
+  interface X509TrustManager
+    checkClientTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType)
+    checkServerTrusted(java.security.cert.X509Certificate[] chain, java.lang.String authType)
+
+package javax.security.auth
+;---------------------------------------
+  class AuthPermission
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class DestroyFailedException
+    #ctor(java.lang.String msg)
+  class PrivateCredentialPermission
+    implies(java.security.Permission p)
+    #ctor(java.lang.String name, java.lang.String actions)
+  class Subject
+    <T> doAs(javax.security.auth.Subject subject, java.security.PrivilegedAction<T> action)
+    <T> doAs(javax.security.auth.Subject subject, java.security.PrivilegedExceptionAction<T> action)
+    <T> doAsPrivileged(javax.security.auth.Subject subject, java.security.PrivilegedAction<T> action, java.security.AccessControlContext acc)
+    <T> doAsPrivileged(javax.security.auth.Subject subject, java.security.PrivilegedExceptionAction<T> action, java.security.AccessControlContext acc)
+    equals(java.lang.Object o)
+    <T> getPrincipals(java.lang.Class<T> c)
+    <T> getPrivateCredentials(java.lang.Class<T> c)
+    <T> getPublicCredentials(java.lang.Class<T> c)
+    getSubject(java.security.AccessControlContext acc)
+    #ctor(boolean readOnly, java.util.Set<? extends java.security.Principal> principals, java.util.Set<?> pubCredentials, java.util.Set<?> privCredentials)
+  class SubjectDomainCombiner
+    combine(java.security.ProtectionDomain[] currentDomains, java.security.ProtectionDomain[] assignedDomains)
+    #ctor(javax.security.auth.Subject subject)
+
+package javax.security.auth.callback
+;---------------------------------------
+  interface CallbackHandler
+    handle(javax.security.auth.callback.Callback[] callbacks)
+  class PasswordCallback
+    #ctor(java.lang.String prompt, boolean echoOn)
+    setPassword(char[] password)
+  class UnsupportedCallbackException
+    #ctor(javax.security.auth.callback.Callback callback)
+    #ctor(javax.security.auth.callback.Callback callback, java.lang.String msg)
+
+package javax.security.auth.login
+;---------------------------------------
+  class LoginException
+    #ctor(java.lang.String msg)
+
+package javax.security.auth.x500
+;---------------------------------------
+  class X500Principal
+    equals(java.lang.Object o)
+    getName(java.lang.String format)
+    getName(java.lang.String format, java.util.Map<java.lang.String,java.lang.String> oidMap)
+    #ctor(byte[] name)
+    #ctor(java.io.InputStream is)
+    #ctor(java.lang.String name)
+    #ctor(java.lang.String name, java.util.Map<java.lang.String,java.lang.String> keywordMap)
+
+package javax.security.cert
+;---------------------------------------
+  class Certificate
+    equals(java.lang.Object other)
+    verify(java.security.PublicKey key)
+    verify(java.security.PublicKey key, java.lang.String sigProvider)
+  class CertificateEncodingException
+    #ctor(java.lang.String message)
+  class CertificateException
+    #ctor(java.lang.String msg)
+  class CertificateExpiredException
+    #ctor(java.lang.String message)
+  class CertificateNotYetValidException
+    #ctor(java.lang.String message)
+  class CertificateParsingException
+    #ctor(java.lang.String message)
+  class X509Certificate
+    checkValidity(java.util.Date date)
+    getInstance(byte[] certData)
+    getInstance(java.io.InputStream inStream)
+
+package javax.sql
+;---------------------------------------
+  interface CommonDataSource
+    setLoginTimeout(int seconds)
+    setLogWriter(java.io.PrintWriter out)
+  class ConnectionEvent
+    #ctor(javax.sql.PooledConnection con)
+    #ctor(javax.sql.PooledConnection con, java.sql.SQLException ex)
+  interface ConnectionEventListener
+    connectionClosed(javax.sql.ConnectionEvent event)
+    connectionErrorOccurred(javax.sql.ConnectionEvent event)
+  interface ConnectionPoolDataSource
+    getPooledConnection(java.lang.String user, java.lang.String password)
+  interface DataSource
+    getConnection(java.lang.String username, java.lang.String password)
+  interface PooledConnection
+    addConnectionEventListener(javax.sql.ConnectionEventListener listener)
+    addStatementEventListener(javax.sql.StatementEventListener listener)
+    removeConnectionEventListener(javax.sql.ConnectionEventListener listener)
+    removeStatementEventListener(javax.sql.StatementEventListener listener)
+  interface RowSet
+    addRowSetListener(javax.sql.RowSetListener listener)
+    removeRowSetListener(javax.sql.RowSetListener listener)
+    setArray(int i, java.sql.Array x)
+    setAsciiStream(int parameterIndex, java.io.InputStream x)
+    setAsciiStream(int parameterIndex, java.io.InputStream x, int length)
+    setAsciiStream(java.lang.String parameterName, java.io.InputStream x)
+    setAsciiStream(java.lang.String parameterName, java.io.InputStream x, int length)
+    setBigDecimal(int parameterIndex, java.math.BigDecimal x)
+    setBigDecimal(java.lang.String parameterName, java.math.BigDecimal x)
+    setBinaryStream(int parameterIndex, java.io.InputStream x)
+    setBinaryStream(int parameterIndex, java.io.InputStream x, int length)
+    setBinaryStream(java.lang.String parameterName, java.io.InputStream x)
+    setBinaryStream(java.lang.String parameterName, java.io.InputStream x, int length)
+    setBlob(int parameterIndex, java.io.InputStream inputStream)
+    setBlob(int parameterIndex, java.io.InputStream inputStream, long length)
+    setBlob(int i, java.sql.Blob x)
+    setBlob(java.lang.String parameterName, java.io.InputStream inputStream)
+    setBlob(java.lang.String parameterName, java.io.InputStream inputStream, long length)
+    setBlob(java.lang.String parameterName, java.sql.Blob x)
+    setBoolean(int parameterIndex, boolean x)
+    setBoolean(java.lang.String parameterName, boolean x)
+    setByte(int parameterIndex, byte x)
+    setByte(java.lang.String parameterName, byte x)
+    setBytes(int parameterIndex, byte[] x)
+    setBytes(java.lang.String parameterName, byte[] x)
+    setCharacterStream(int parameterIndex, java.io.Reader reader)
+    setCharacterStream(int parameterIndex, java.io.Reader reader, int length)
+    setCharacterStream(java.lang.String parameterName, java.io.Reader reader)
+    setCharacterStream(java.lang.String parameterName, java.io.Reader reader, int length)
+    setClob(int parameterIndex, java.io.Reader reader)
+    setClob(int parameterIndex, java.io.Reader reader, long length)
+    setClob(int i, java.sql.Clob x)
+    setClob(java.lang.String parameterName, java.io.Reader reader)
+    setClob(java.lang.String parameterName, java.io.Reader reader, long length)
+    setClob(java.lang.String parameterName, java.sql.Clob x)
+    setCommand(java.lang.String cmd)
+    setConcurrency(int concurrency)
+    setDataSourceName(java.lang.String name)
+    setDate(int parameterIndex, java.sql.Date x)
+    setDate(int parameterIndex, java.sql.Date x, java.util.Calendar cal)
+    setDate(java.lang.String parameterName, java.sql.Date x)
+    setDate(java.lang.String parameterName, java.sql.Date x, java.util.Calendar cal)
+    setDouble(int parameterIndex, double x)
+    setDouble(java.lang.String parameterName, double x)
+    setEscapeProcessing(boolean enable)
+    setFloat(int parameterIndex, float x)
+    setFloat(java.lang.String parameterName, float x)
+    setInt(int parameterIndex, int x)
+    setInt(java.lang.String parameterName, int x)
+    setLong(int parameterIndex, long x)
+    setLong(java.lang.String parameterName, long x)
+    setMaxFieldSize(int max)
+    setMaxRows(int max)
+    setNCharacterStream(int parameterIndex, java.io.Reader value)
+    setNCharacterStream(int parameterIndex, java.io.Reader value, long length)
+    setNCharacterStream(java.lang.String parameterName, java.io.Reader value)
+    setNCharacterStream(java.lang.String parameterName, java.io.Reader value, long length)
+    setNClob(int parameterIndex, java.io.Reader reader)
+    setNClob(int parameterIndex, java.io.Reader reader, long length)
+    setNClob(int parameterIndex, java.sql.NClob value)
+    setNClob(java.lang.String parameterName, java.io.Reader reader)
+    setNClob(java.lang.String parameterName, java.io.Reader reader, long length)
+    setNClob(java.lang.String parameterName, java.sql.NClob value)
+    setNString(int parameterIndex, java.lang.String value)
+    setNString(java.lang.String parameterName, java.lang.String value)
+    setNull(int parameterIndex, int sqlType)
+    setNull(int paramIndex, int sqlType, java.lang.String typeName)
+    setNull(java.lang.String parameterName, int sqlType)
+    setNull(java.lang.String parameterName, int sqlType, java.lang.String typeName)
+    setObject(int parameterIndex, java.lang.Object x)
+    setObject(int parameterIndex, java.lang.Object x, int targetSqlType)
+    setObject(int parameterIndex, java.lang.Object x, int targetSqlType, int scaleOrLength)
+    setObject(java.lang.String parameterName, java.lang.Object x)
+    setObject(java.lang.String parameterName, java.lang.Object x, int targetSqlType)
+    setObject(java.lang.String parameterName, java.lang.Object x, int targetSqlType, int scale)
+    setPassword(java.lang.String password)
+    setQueryTimeout(int seconds)
+    setReadOnly(boolean value)
+    setRef(int i, java.sql.Ref x)
+    setRowId(int parameterIndex, java.sql.RowId x)
+    setRowId(java.lang.String parameterName, java.sql.RowId x)
+    setShort(int parameterIndex, short x)
+    setShort(java.lang.String parameterName, short x)
+    setSQLXML(int parameterIndex, java.sql.SQLXML xmlObject)
+    setSQLXML(java.lang.String parameterName, java.sql.SQLXML xmlObject)
+    setString(int parameterIndex, java.lang.String x)
+    setString(java.lang.String parameterName, java.lang.String x)
+    setTime(int parameterIndex, java.sql.Time x)
+    setTime(int parameterIndex, java.sql.Time x, java.util.Calendar cal)
+    setTime(java.lang.String parameterName, java.sql.Time x)
+    setTime(java.lang.String parameterName, java.sql.Time x, java.util.Calendar cal)
+    setTimestamp(int parameterIndex, java.sql.Timestamp x)
+    setTimestamp(int parameterIndex, java.sql.Timestamp x, java.util.Calendar cal)
+    setTimestamp(java.lang.String parameterName, java.sql.Timestamp x)
+    setTimestamp(java.lang.String parameterName, java.sql.Timestamp x, java.util.Calendar cal)
+    setTransactionIsolation(int level)
+    setType(int type)
+    setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>> map)
+    setURL(int parameterIndex, java.net.URL x)
+    setUrl(java.lang.String url)
+    setUsername(java.lang.String name)
+  class RowSetEvent
+    #ctor(javax.sql.RowSet source)
+  interface RowSetInternal
+    setMetaData(javax.sql.RowSetMetaData md)
+  interface RowSetListener
+    cursorMoved(javax.sql.RowSetEvent event)
+    rowChanged(javax.sql.RowSetEvent event)
+    rowSetChanged(javax.sql.RowSetEvent event)
+  interface RowSetMetaData
+    setAutoIncrement(int columnIndex, boolean property)
+    setCaseSensitive(int columnIndex, boolean property)
+    setCatalogName(int columnIndex, java.lang.String catalogName)
+    setColumnCount(int columnCount)
+    setColumnDisplaySize(int columnIndex, int size)
+    setColumnLabel(int columnIndex, java.lang.String label)
+    setColumnName(int columnIndex, java.lang.String columnName)
+    setColumnType(int columnIndex, int SQLType)
+    setColumnTypeName(int columnIndex, java.lang.String typeName)
+    setCurrency(int columnIndex, boolean property)
+    setNullable(int columnIndex, int property)
+    setPrecision(int columnIndex, int precision)
+    setScale(int columnIndex, int scale)
+    setSchemaName(int columnIndex, java.lang.String schemaName)
+    setSearchable(int columnIndex, boolean property)
+    setSigned(int columnIndex, boolean property)
+    setTableName(int columnIndex, java.lang.String tableName)
+  interface RowSetReader
+    readData(javax.sql.RowSetInternal caller)
+  interface RowSetWriter
+    writeData(javax.sql.RowSetInternal caller)
+  class StatementEvent
+    #ctor(javax.sql.PooledConnection con, java.sql.PreparedStatement statement)
+    #ctor(javax.sql.PooledConnection con, java.sql.PreparedStatement statement, java.sql.SQLException exception)
+  interface StatementEventListener
+    statementClosed(javax.sql.StatementEvent event)
+    statementErrorOccurred(javax.sql.StatementEvent event)
+
+package javax.xml
+;---------------------------------------
+
+package javax.xml.datatype
+;---------------------------------------
+  class DatatypeConfigurationException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+    printStackTrace(java.io.PrintStream s)
+    printStackTrace(java.io.PrintWriter s)
+  class DatatypeFactory
+    newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
+    newDuration(boolean isPositive, java.math.BigInteger years, java.math.BigInteger months, java.math.BigInteger days, java.math.BigInteger hours, java.math.BigInteger minutes, java.math.BigDecimal seconds)
+    newDuration(java.lang.String lexicalRepresentation)
+    newDuration(long durationInMilliSeconds)
+    newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
+    newDurationDayTime(boolean isPositive, java.math.BigInteger day, java.math.BigInteger hour, java.math.BigInteger minute, java.math.BigInteger second)
+    newDurationDayTime(java.lang.String lexicalRepresentation)
+    newDurationDayTime(long durationInMilliseconds)
+    newDurationYearMonth(boolean isPositive, int year, int month)
+    newDurationYearMonth(boolean isPositive, java.math.BigInteger year, java.math.BigInteger month)
+    newDurationYearMonth(java.lang.String lexicalRepresentation)
+    newDurationYearMonth(long durationInMilliseconds)
+    newInstance(java.lang.String factoryClassName, java.lang.ClassLoader classLoader)
+    newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
+    newXMLGregorianCalendar(java.lang.String lexicalRepresentation)
+    newXMLGregorianCalendar(java.math.BigInteger year, int month, int day, int hour, int minute, int second, java.math.BigDecimal fractionalSecond, int timezone)
+    newXMLGregorianCalendar(java.util.GregorianCalendar cal)
+    newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
+    newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
+    newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
+    newXMLGregorianCalendarTime(int hours, int minutes, int seconds, java.math.BigDecimal fractionalSecond, int timezone)
+  class Duration
+    add(javax.xml.datatype.Duration rhs)
+    addTo(java.util.Calendar calendar)
+    addTo(java.util.Date date)
+    compare(javax.xml.datatype.Duration duration)
+    equals(java.lang.Object duration)
+    getField(javax.xml.datatype.DatatypeConstants.Field field)
+    getTimeInMillis(java.util.Calendar startInstant)
+    getTimeInMillis(java.util.Date startInstant)
+    isLongerThan(javax.xml.datatype.Duration duration)
+    isSet(javax.xml.datatype.DatatypeConstants.Field field)
+    isShorterThan(javax.xml.datatype.Duration duration)
+    multiply(int factor)
+    multiply(java.math.BigDecimal factor)
+    normalizeWith(java.util.Calendar startTimeInstant)
+    subtract(javax.xml.datatype.Duration rhs)
+  class XMLGregorianCalendar
+    add(javax.xml.datatype.Duration duration)
+    compare(javax.xml.datatype.XMLGregorianCalendar xmlGregorianCalendar)
+    equals(java.lang.Object obj)
+    getTimeZone(int defaultZoneoffset)
+    setDay(int day)
+    setFractionalSecond(java.math.BigDecimal fractional)
+    setHour(int hour)
+    setMillisecond(int millisecond)
+    setMinute(int minute)
+    setMonth(int month)
+    setSecond(int second)
+    setTime(int hour, int minute, int second)
+    setTime(int hour, int minute, int second, int millisecond)
+    setTime(int hour, int minute, int second, java.math.BigDecimal fractional)
+    setTimezone(int offset)
+    setYear(int year)
+    setYear(java.math.BigInteger year)
+    toGregorianCalendar(java.util.TimeZone timezone, java.util.Locale aLocale, javax.xml.datatype.XMLGregorianCalendar defaults)
+
+package javax.xml.namespace
+;---------------------------------------
+  interface NamespaceContext
+    getNamespaceURI(java.lang.String prefix)
+    getPrefix(java.lang.String namespaceURI)
+    getPrefixes(java.lang.String namespaceURI)
+  class QName
+    equals(java.lang.Object objectToTest)
+    #ctor(java.lang.String localPart)
+    #ctor(java.lang.String namespaceURI, java.lang.String localPart)
+    #ctor(java.lang.String namespaceURI, java.lang.String localPart, java.lang.String prefix)
+    valueOf(java.lang.String qNameAsString)
+
+package javax.xml.parsers
+;---------------------------------------
+  class DocumentBuilder
+    parse(java.io.File f)
+    parse(java.io.InputStream is)
+    parse(java.io.InputStream is, java.lang.String systemId)
+    parse(java.lang.String uri)
+    parse(org.xml.sax.InputSource is)
+    setEntityResolver(org.xml.sax.EntityResolver er)
+    setErrorHandler(org.xml.sax.ErrorHandler eh)
+  class DocumentBuilderFactory
+    getAttribute(java.lang.String name)
+    getFeature(java.lang.String name)
+    newInstance(java.lang.String factoryClassName, java.lang.ClassLoader classLoader)
+    setAttribute(java.lang.String name, java.lang.Object value)
+    setCoalescing(boolean coalescing)
+    setExpandEntityReferences(boolean expandEntityRef)
+    setFeature(java.lang.String name, boolean value)
+    setIgnoringComments(boolean ignoreComments)
+    setIgnoringElementContentWhitespace(boolean whitespace)
+    setNamespaceAware(boolean awareness)
+    setSchema(javax.xml.validation.Schema schema)
+    setValidating(boolean validating)
+    setXIncludeAware(boolean state)
+  class FactoryConfigurationError
+    #ctor(java.lang.Exception e)
+    #ctor(java.lang.Exception e, java.lang.String msg)
+    #ctor(java.lang.String msg)
+  class ParserConfigurationException
+    #ctor(java.lang.String msg)
+  class SAXParser
+    getProperty(java.lang.String name)
+    parse(java.io.File f, org.xml.sax.HandlerBase hb)
+    parse(java.io.File f, org.xml.sax.helpers.DefaultHandler dh)
+    parse(java.io.InputStream is, org.xml.sax.HandlerBase hb)
+    parse(java.io.InputStream is, org.xml.sax.HandlerBase hb, java.lang.String systemId)
+    parse(java.io.InputStream is, org.xml.sax.helpers.DefaultHandler dh)
+    parse(java.io.InputStream is, org.xml.sax.helpers.DefaultHandler dh, java.lang.String systemId)
+    parse(java.lang.String uri, org.xml.sax.HandlerBase hb)
+    parse(java.lang.String uri, org.xml.sax.helpers.DefaultHandler dh)
+    parse(org.xml.sax.InputSource is, org.xml.sax.HandlerBase hb)
+    parse(org.xml.sax.InputSource is, org.xml.sax.helpers.DefaultHandler dh)
+    setProperty(java.lang.String name, java.lang.Object value)
+  class SAXParserFactory
+    getFeature(java.lang.String name)
+    newInstance(java.lang.String factoryClassName, java.lang.ClassLoader classLoader)
+    setFeature(java.lang.String name, boolean value)
+    setNamespaceAware(boolean awareness)
+    setSchema(javax.xml.validation.Schema schema)
+    setValidating(boolean validating)
+    setXIncludeAware(boolean state)
+
+package javax.xml.transform
+;---------------------------------------
+  interface ErrorListener
+    error(javax.xml.transform.TransformerException exception)
+    fatalError(javax.xml.transform.TransformerException exception)
+    warning(javax.xml.transform.TransformerException exception)
+  interface Result
+    setSystemId(java.lang.String systemId)
+  interface Source
+    setSystemId(java.lang.String systemId)
+  class Transformer
+    getOutputProperty(java.lang.String name)
+    getParameter(java.lang.String name)
+    setErrorListener(javax.xml.transform.ErrorListener listener)
+    setOutputProperties(java.util.Properties oformat)
+    setOutputProperty(java.lang.String name, java.lang.String value)
+    setParameter(java.lang.String name, java.lang.Object value)
+    setURIResolver(javax.xml.transform.URIResolver resolver)
+    transform(javax.xml.transform.Source xmlSource, javax.xml.transform.Result outputTarget)
+  class TransformerConfigurationException
+    #ctor(java.lang.String msg)
+    #ctor(java.lang.String msg, java.lang.Throwable e)
+    #ctor(java.lang.String message, javax.xml.transform.SourceLocator locator)
+    #ctor(java.lang.String message, javax.xml.transform.SourceLocator locator, java.lang.Throwable e)
+    #ctor(java.lang.Throwable e)
+  class TransformerException
+    initCause(java.lang.Throwable cause)
+    printStackTrace(java.io.PrintStream s)
+    printStackTrace(java.io.PrintWriter s)
+    setLocator(javax.xml.transform.SourceLocator location)
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Throwable e)
+    #ctor(java.lang.String message, javax.xml.transform.SourceLocator locator)
+    #ctor(java.lang.String message, javax.xml.transform.SourceLocator locator, java.lang.Throwable e)
+    #ctor(java.lang.Throwable e)
+  class TransformerFactory
+    getAssociatedStylesheet(javax.xml.transform.Source source, java.lang.String media, java.lang.String title, java.lang.String charset)
+    getAttribute(java.lang.String name)
+    getFeature(java.lang.String name)
+    newInstance(java.lang.String factoryClassName, java.lang.ClassLoader classLoader)
+    newTemplates(javax.xml.transform.Source source)
+    newTransformer(javax.xml.transform.Source source)
+    setAttribute(java.lang.String name, java.lang.Object value)
+    setErrorListener(javax.xml.transform.ErrorListener listener)
+    setFeature(java.lang.String name, boolean value)
+    setURIResolver(javax.xml.transform.URIResolver resolver)
+  class TransformerFactoryConfigurationError
+    #ctor(java.lang.Exception e)
+    #ctor(java.lang.Exception e, java.lang.String msg)
+    #ctor(java.lang.String msg)
+  interface URIResolver
+    resolve(java.lang.String href, java.lang.String base)
+
+package javax.xml.transform.dom
+;---------------------------------------
+  class DOMResult
+    #ctor(org.w3c.dom.Node node)
+    #ctor(org.w3c.dom.Node node, java.lang.String systemId)
+    #ctor(org.w3c.dom.Node node, org.w3c.dom.Node nextSibling)
+    #ctor(org.w3c.dom.Node node, org.w3c.dom.Node nextSibling, java.lang.String systemId)
+    setNextSibling(org.w3c.dom.Node nextSibling)
+    setNode(org.w3c.dom.Node node)
+    setSystemId(java.lang.String systemId)
+  class DOMSource
+    #ctor(org.w3c.dom.Node n)
+    #ctor(org.w3c.dom.Node node, java.lang.String systemID)
+    setNode(org.w3c.dom.Node node)
+    setSystemId(java.lang.String systemID)
+
+package javax.xml.transform.sax
+;---------------------------------------
+  class SAXResult
+    #ctor(org.xml.sax.ContentHandler handler)
+    setHandler(org.xml.sax.ContentHandler handler)
+    setLexicalHandler(org.xml.sax.ext.LexicalHandler handler)
+    setSystemId(java.lang.String systemId)
+  class SAXSource
+    #ctor(org.xml.sax.InputSource inputSource)
+    #ctor(org.xml.sax.XMLReader reader, org.xml.sax.InputSource inputSource)
+    setInputSource(org.xml.sax.InputSource inputSource)
+    setSystemId(java.lang.String systemId)
+    setXMLReader(org.xml.sax.XMLReader reader)
+    sourceToInputSource(javax.xml.transform.Source source)
+  class SAXTransformerFactory
+    newTransformerHandler(javax.xml.transform.Source src)
+    newTransformerHandler(javax.xml.transform.Templates templates)
+    newXMLFilter(javax.xml.transform.Source src)
+    newXMLFilter(javax.xml.transform.Templates templates)
+  interface TemplatesHandler
+    setSystemId(java.lang.String systemID)
+  interface TransformerHandler
+    setResult(javax.xml.transform.Result result)
+    setSystemId(java.lang.String systemID)
+
+package javax.xml.transform.stream
+;---------------------------------------
+  class StreamResult
+    setOutputStream(java.io.OutputStream outputStream)
+    setSystemId(java.io.File f)
+    setSystemId(java.lang.String systemId)
+    setWriter(java.io.Writer writer)
+    #ctor(java.io.File f)
+    #ctor(java.io.OutputStream outputStream)
+    #ctor(java.io.Writer writer)
+    #ctor(java.lang.String systemId)
+  class StreamSource
+    setInputStream(java.io.InputStream inputStream)
+    setPublicId(java.lang.String publicId)
+    setReader(java.io.Reader reader)
+    setSystemId(java.io.File f)
+    setSystemId(java.lang.String systemId)
+    #ctor(java.io.File f)
+    #ctor(java.io.InputStream inputStream)
+    #ctor(java.io.InputStream inputStream, java.lang.String systemId)
+    #ctor(java.io.Reader reader)
+    #ctor(java.io.Reader reader, java.lang.String systemId)
+    #ctor(java.lang.String systemId)
+
+package javax.xml.validation
+;---------------------------------------
+  class SchemaFactory
+    getFeature(java.lang.String name)
+    getProperty(java.lang.String name)
+    isSchemaLanguageSupported(java.lang.String schemaLanguage)
+    newInstance(java.lang.String schemaLanguage)
+    newInstance(java.lang.String schemaLanguage, java.lang.String factoryClassName, java.lang.ClassLoader classLoader)
+    newSchema(java.io.File schema)
+    newSchema(java.net.URL schema)
+    newSchema(javax.xml.transform.Source schema)
+    newSchema(javax.xml.transform.Source[] schemas)
+    setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
+    setFeature(java.lang.String name, boolean value)
+    setProperty(java.lang.String name, java.lang.Object object)
+    setResourceResolver(org.w3c.dom.ls.LSResourceResolver resourceResolver)
+  class SchemaFactoryLoader
+    newFactory(java.lang.String schemaLanguage)
+  class TypeInfoProvider
+    getAttributeTypeInfo(int index)
+    isIdAttribute(int index)
+    isSpecified(int index)
+  class Validator
+    getFeature(java.lang.String name)
+    getProperty(java.lang.String name)
+    setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
+    setFeature(java.lang.String name, boolean value)
+    setProperty(java.lang.String name, java.lang.Object object)
+    setResourceResolver(org.w3c.dom.ls.LSResourceResolver resourceResolver)
+    validate(javax.xml.transform.Source source)
+    validate(javax.xml.transform.Source source, javax.xml.transform.Result result)
+  class ValidatorHandler
+    getFeature(java.lang.String name)
+    getProperty(java.lang.String name)
+    setContentHandler(org.xml.sax.ContentHandler receiver)
+    setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
+    setFeature(java.lang.String name, boolean value)
+    setProperty(java.lang.String name, java.lang.Object object)
+    setResourceResolver(org.w3c.dom.ls.LSResourceResolver resourceResolver)
+
+package javax.xml.xpath
+;---------------------------------------
+  interface XPath
+    compile(java.lang.String expression)
+    evaluate(java.lang.String expression, java.lang.Object item)
+    evaluate(java.lang.String expression, java.lang.Object item, javax.xml.namespace.QName returnType)
+    evaluate(java.lang.String expression, org.xml.sax.InputSource source)
+    evaluate(java.lang.String expression, org.xml.sax.InputSource source, javax.xml.namespace.QName returnType)
+    setNamespaceContext(javax.xml.namespace.NamespaceContext nsContext)
+    setXPathFunctionResolver(javax.xml.xpath.XPathFunctionResolver resolver)
+    setXPathVariableResolver(javax.xml.xpath.XPathVariableResolver resolver)
+  class XPathException
+    printStackTrace(java.io.PrintStream s)
+    printStackTrace(java.io.PrintWriter s)
+    #ctor(java.lang.String message)
+    #ctor(java.lang.Throwable cause)
+  interface XPathExpression
+    evaluate(java.lang.Object item)
+    evaluate(java.lang.Object item, javax.xml.namespace.QName returnType)
+    evaluate(org.xml.sax.InputSource source)
+    evaluate(org.xml.sax.InputSource source, javax.xml.namespace.QName returnType)
+  class XPathExpressionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.Throwable cause)
+  class XPathFactory
+    getFeature(java.lang.String name)
+    isObjectModelSupported(java.lang.String objectModel)
+    newInstance(java.lang.String uri)
+    newInstance(java.lang.String uri, java.lang.String factoryClassName, java.lang.ClassLoader classLoader)
+    setFeature(java.lang.String name, boolean value)
+    setXPathFunctionResolver(javax.xml.xpath.XPathFunctionResolver resolver)
+    setXPathVariableResolver(javax.xml.xpath.XPathVariableResolver resolver)
+  class XPathFactoryConfigurationException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.Throwable cause)
+  interface XPathFunction
+    evaluate(java.util.List args)
+  class XPathFunctionException
+    #ctor(java.lang.String message)
+    #ctor(java.lang.Throwable cause)
+  interface XPathFunctionResolver
+    resolveFunction(javax.xml.namespace.QName functionName, int arity)
+  interface XPathVariableResolver
+    resolveVariable(javax.xml.namespace.QName variableName)
+
+package org.apache.http.conn
+;---------------------------------------
+  class ConnectTimeoutException
+    #ctor(java.lang.String message)
+
+package org.apache.http.conn.scheme
+;---------------------------------------
+  interface HostNameResolver
+    resolve(java.lang.String hostname)
+  interface LayeredSocketFactory
+    createSocket(java.net.Socket socket, java.lang.String host, int port, boolean autoClose)
+  interface SocketFactory
+    connectSocket(java.net.Socket sock, java.lang.String host, int port, java.net.InetAddress localAddress, int localPort, org.apache.http.params.HttpParams params)
+    isSecure(java.net.Socket sock)
+
+package org.apache.http.conn.ssl
+;---------------------------------------
+  class AbstractVerifier
+    acceptableCountryWildcard(java.lang.String cn)
+    countDots(java.lang.String s)
+    getCNs(java.security.cert.X509Certificate cert)
+    getDNSSubjectAlts(java.security.cert.X509Certificate cert)
+    verify(java.lang.String host, java.lang.String[] cns, java.lang.String[] subjectAlts, boolean strictWithSubDomains)
+    verify(java.lang.String host, java.security.cert.X509Certificate cert)
+    verify(java.lang.String host, javax.net.ssl.SSLSession session)
+    verify(java.lang.String host, javax.net.ssl.SSLSocket ssl)
+  class AllowAllHostnameVerifier
+    verify(java.lang.String host, java.lang.String[] cns, java.lang.String[] subjectAlts)
+  class BrowserCompatHostnameVerifier
+    verify(java.lang.String host, java.lang.String[] cns, java.lang.String[] subjectAlts)
+  class SSLSocketFactory
+    connectSocket(java.net.Socket sock, java.lang.String host, int port, java.net.InetAddress localAddress, int localPort, org.apache.http.params.HttpParams params)
+    createSocket(java.net.Socket socket, java.lang.String host, int port, boolean autoClose)
+    isSecure(java.net.Socket sock)
+    setHostnameVerifier(org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier)
+    #ctor(java.lang.String algorithm, java.security.KeyStore keystore, java.lang.String keystorePassword, java.security.KeyStore truststore, java.security.SecureRandom random, org.apache.http.conn.scheme.HostNameResolver nameResolver)
+    #ctor(java.security.KeyStore truststore)
+    #ctor(java.security.KeyStore keystore, java.lang.String keystorePassword)
+    #ctor(java.security.KeyStore keystore, java.lang.String keystorePassword, java.security.KeyStore truststore)
+  class StrictHostnameVerifier
+    verify(java.lang.String host, java.lang.String[] cns, java.lang.String[] subjectAlts)
+  interface X509HostnameVerifier
+    verify(java.lang.String host, java.lang.String[] cns, java.lang.String[] subjectAlts)
+    verify(java.lang.String host, java.security.cert.X509Certificate cert)
+    verify(java.lang.String host, javax.net.ssl.SSLSession session)
+    verify(java.lang.String host, javax.net.ssl.SSLSocket ssl)
+
+package org.apache.http.params
+;---------------------------------------
+  class HttpConnectionParams
+    getConnectionTimeout(org.apache.http.params.HttpParams params)
+    getLinger(org.apache.http.params.HttpParams params)
+    getSocketBufferSize(org.apache.http.params.HttpParams params)
+    getSoTimeout(org.apache.http.params.HttpParams params)
+    getTcpNoDelay(org.apache.http.params.HttpParams params)
+    isStaleCheckingEnabled(org.apache.http.params.HttpParams params)
+    setConnectionTimeout(org.apache.http.params.HttpParams params, int timeout)
+    setLinger(org.apache.http.params.HttpParams params, int value)
+    setSocketBufferSize(org.apache.http.params.HttpParams params, int size)
+    setSoTimeout(org.apache.http.params.HttpParams params, int timeout)
+    setStaleCheckingEnabled(org.apache.http.params.HttpParams params, boolean value)
+    setTcpNoDelay(org.apache.http.params.HttpParams params, boolean value)
+  interface HttpParams
+    getBooleanParameter(java.lang.String name, boolean defaultValue)
+    getDoubleParameter(java.lang.String name, double defaultValue)
+    getIntParameter(java.lang.String name, int defaultValue)
+    getLongParameter(java.lang.String name, long defaultValue)
+    getParameter(java.lang.String name)
+    isParameterFalse(java.lang.String name)
+    isParameterTrue(java.lang.String name)
+    removeParameter(java.lang.String name)
+    setBooleanParameter(java.lang.String name, boolean value)
+    setDoubleParameter(java.lang.String name, double value)
+    setIntParameter(java.lang.String name, int value)
+    setLongParameter(java.lang.String name, long value)
+    setParameter(java.lang.String name, java.lang.Object value)
+
+package org.json
+;---------------------------------------
+  class JSONArray
+    equals(java.lang.Object o)
+    get(int index)
+    getBoolean(int index)
+    getDouble(int index)
+    getInt(int index)
+    getJSONArray(int index)
+    getJSONObject(int index)
+    getLong(int index)
+    getString(int index)
+    isNull(int index)
+    join(java.lang.String separator)
+    #ctor(java.lang.Object array)
+    #ctor(java.lang.String json)
+    #ctor(java.util.Collection copyFrom)
+    #ctor(org.json.JSONTokener readFrom)
+    opt(int index)
+    optBoolean(int index)
+    optBoolean(int index, boolean fallback)
+    optDouble(int index)
+    optDouble(int index, double fallback)
+    optInt(int index)
+    optInt(int index, int fallback)
+    optJSONArray(int index)
+    optJSONObject(int index)
+    optLong(int index)
+    optLong(int index, long fallback)
+    optString(int index)
+    optString(int index, java.lang.String fallback)
+    put(boolean value)
+    put(double value)
+    put(int value)
+    put(int index, boolean value)
+    put(int index, double value)
+    put(int index, int value)
+    put(int index, java.lang.Object value)
+    put(int index, long value)
+    put(java.lang.Object value)
+    put(long value)
+    remove(int index)
+    toJSONObject(org.json.JSONArray names)
+    toString(int indentSpaces)
+  class JSONException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String message, java.lang.Throwable cause)
+    #ctor(java.lang.Throwable cause)
+  class JSONObject
+    accumulate(java.lang.String name, java.lang.Object value)
+    append(java.lang.String name, java.lang.Object value)
+    get(java.lang.String name)
+    getBoolean(java.lang.String name)
+    getDouble(java.lang.String name)
+    getInt(java.lang.String name)
+    getJSONArray(java.lang.String name)
+    getJSONObject(java.lang.String name)
+    getLong(java.lang.String name)
+    getString(java.lang.String name)
+    has(java.lang.String name)
+    isNull(java.lang.String name)
+    #ctor(java.lang.String json)
+    #ctor(java.util.Map copyFrom)
+    #ctor(org.json.JSONObject copyFrom, java.lang.String[] names)
+    #ctor(org.json.JSONTokener readFrom)
+    numberToString(java.lang.Number number)
+    opt(java.lang.String name)
+    optBoolean(java.lang.String name)
+    optBoolean(java.lang.String name, boolean fallback)
+    optDouble(java.lang.String name)
+    optDouble(java.lang.String name, double fallback)
+    optInt(java.lang.String name)
+    optInt(java.lang.String name, int fallback)
+    optJSONArray(java.lang.String name)
+    optJSONObject(java.lang.String name)
+    optLong(java.lang.String name)
+    optLong(java.lang.String name, long fallback)
+    optString(java.lang.String name)
+    optString(java.lang.String name, java.lang.String fallback)
+    put(java.lang.String name, boolean value)
+    put(java.lang.String name, double value)
+    put(java.lang.String name, int value)
+    put(java.lang.String name, java.lang.Object value)
+    put(java.lang.String name, long value)
+    putOpt(java.lang.String name, java.lang.Object value)
+    quote(java.lang.String data)
+    remove(java.lang.String name)
+    toJSONArray(org.json.JSONArray names)
+    toString(int indentSpaces)
+    wrap(java.lang.Object o)
+  class JSONStringer
+    key(java.lang.String name)
+    value(boolean value)
+    value(double value)
+    value(java.lang.Object value)
+    value(long value)
+  class JSONTokener
+    dehexchar(char hex)
+    #ctor(java.lang.String in)
+    next(char c)
+    next(int length)
+    nextString(char quote)
+    nextTo(char excluded)
+    nextTo(java.lang.String excluded)
+    skipPast(java.lang.String thru)
+    skipTo(char to)
+    syntaxError(java.lang.String message)
+
+package org.w3c.dom
+;---------------------------------------
+  interface Attr
+    setValue(java.lang.String value)
+  interface CharacterData
+    appendData(java.lang.String arg)
+    deleteData(int offset, int count)
+    insertData(int offset, java.lang.String arg)
+    replaceData(int offset, int count, java.lang.String arg)
+    setData(java.lang.String data)
+    substringData(int offset, int count)
+  interface Document
+    adoptNode(org.w3c.dom.Node source)
+    createAttribute(java.lang.String name)
+    createAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName)
+    createCDATASection(java.lang.String data)
+    createComment(java.lang.String data)
+    createElement(java.lang.String tagName)
+    createElementNS(java.lang.String namespaceURI, java.lang.String qualifiedName)
+    createEntityReference(java.lang.String name)
+    createProcessingInstruction(java.lang.String target, java.lang.String data)
+    createTextNode(java.lang.String data)
+    getElementById(java.lang.String elementId)
+    getElementsByTagName(java.lang.String tagname)
+    getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
+    importNode(org.w3c.dom.Node importedNode, boolean deep)
+    renameNode(org.w3c.dom.Node n, java.lang.String namespaceURI, java.lang.String qualifiedName)
+    setDocumentURI(java.lang.String documentURI)
+    setStrictErrorChecking(boolean strictErrorChecking)
+    setXmlStandalone(boolean xmlStandalone)
+    setXmlVersion(java.lang.String xmlVersion)
+  interface DOMConfiguration
+    canSetParameter(java.lang.String name, java.lang.Object value)
+    getParameter(java.lang.String name)
+    setParameter(java.lang.String name, java.lang.Object value)
+  interface DOMErrorHandler
+    handleError(org.w3c.dom.DOMError error)
+  class DOMException
+    #ctor(short code, java.lang.String message)
+  interface DOMImplementation
+    createDocument(java.lang.String namespaceURI, java.lang.String qualifiedName, org.w3c.dom.DocumentType doctype)
+    createDocumentType(java.lang.String qualifiedName, java.lang.String publicId, java.lang.String systemId)
+    getFeature(java.lang.String feature, java.lang.String version)
+    hasFeature(java.lang.String feature, java.lang.String version)
+  interface DOMImplementationList
+    item(int index)
+  interface DOMImplementationSource
+    getDOMImplementation(java.lang.String features)
+    getDOMImplementationList(java.lang.String features)
+  interface DOMStringList
+    contains(java.lang.String str)
+    item(int index)
+  interface Element
+    getAttribute(java.lang.String name)
+    getAttributeNode(java.lang.String name)
+    getAttributeNodeNS(java.lang.String namespaceURI, java.lang.String localName)
+    getAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
+    getElementsByTagName(java.lang.String name)
+    getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
+    hasAttribute(java.lang.String name)
+    hasAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
+    removeAttribute(java.lang.String name)
+    removeAttributeNode(org.w3c.dom.Attr oldAttr)
+    removeAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
+    setAttribute(java.lang.String name, java.lang.String value)
+    setAttributeNode(org.w3c.dom.Attr newAttr)
+    setAttributeNodeNS(org.w3c.dom.Attr newAttr)
+    setAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName, java.lang.String value)
+    setIdAttribute(java.lang.String name, boolean isId)
+    setIdAttributeNode(org.w3c.dom.Attr idAttr, boolean isId)
+    setIdAttributeNS(java.lang.String namespaceURI, java.lang.String localName, boolean isId)
+  interface NamedNodeMap
+    getNamedItem(java.lang.String name)
+    getNamedItemNS(java.lang.String namespaceURI, java.lang.String localName)
+    item(int index)
+    removeNamedItem(java.lang.String name)
+    removeNamedItemNS(java.lang.String namespaceURI, java.lang.String localName)
+    setNamedItem(org.w3c.dom.Node arg)
+    setNamedItemNS(org.w3c.dom.Node arg)
+  interface NameList
+    contains(java.lang.String str)
+    containsNS(java.lang.String namespaceURI, java.lang.String name)
+    getName(int index)
+    getNamespaceURI(int index)
+  interface Node
+    appendChild(org.w3c.dom.Node newChild)
+    cloneNode(boolean deep)
+    compareDocumentPosition(org.w3c.dom.Node other)
+    getFeature(java.lang.String feature, java.lang.String version)
+    getUserData(java.lang.String key)
+    insertBefore(org.w3c.dom.Node newChild, org.w3c.dom.Node refChild)
+    isDefaultNamespace(java.lang.String namespaceURI)
+    isEqualNode(org.w3c.dom.Node arg)
+    isSameNode(org.w3c.dom.Node other)
+    isSupported(java.lang.String feature, java.lang.String version)
+    lookupNamespaceURI(java.lang.String prefix)
+    lookupPrefix(java.lang.String namespaceURI)
+    removeChild(org.w3c.dom.Node oldChild)
+    replaceChild(org.w3c.dom.Node newChild, org.w3c.dom.Node oldChild)
+    setNodeValue(java.lang.String nodeValue)
+    setPrefix(java.lang.String prefix)
+    setTextContent(java.lang.String textContent)
+    setUserData(java.lang.String key, java.lang.Object data, org.w3c.dom.UserDataHandler handler)
+  interface NodeList
+    item(int index)
+  interface ProcessingInstruction
+    setData(java.lang.String data)
+  interface Text
+    replaceWholeText(java.lang.String content)
+    splitText(int offset)
+  interface TypeInfo
+    isDerivedFrom(java.lang.String typeNamespaceArg, java.lang.String typeNameArg, int derivationMethod)
+  interface UserDataHandler
+    handle(short operation, java.lang.String key, java.lang.Object data, org.w3c.dom.Node src, org.w3c.dom.Node dst)
+
+package org.w3c.dom.ls
+;---------------------------------------
+  interface DOMImplementationLS
+    createLSParser(short mode, java.lang.String schemaType)
+  class LSException
+    #ctor(short code, java.lang.String message)
+  interface LSInput
+    setBaseURI(java.lang.String baseURI)
+    setByteStream(java.io.InputStream byteStream)
+    setCertifiedText(boolean certifiedText)
+    setCharacterStream(java.io.Reader characterStream)
+    setEncoding(java.lang.String encoding)
+    setPublicId(java.lang.String publicId)
+    setStringData(java.lang.String stringData)
+    setSystemId(java.lang.String systemId)
+  interface LSOutput
+    setByteStream(java.io.OutputStream byteStream)
+    setCharacterStream(java.io.Writer characterStream)
+    setEncoding(java.lang.String encoding)
+    setSystemId(java.lang.String systemId)
+  interface LSParser
+    parse(org.w3c.dom.ls.LSInput input)
+    parseURI(java.lang.String uri)
+    parseWithContext(org.w3c.dom.ls.LSInput input, org.w3c.dom.Node contextArg, short action)
+    setFilter(org.w3c.dom.ls.LSParserFilter filter)
+  interface LSParserFilter
+    acceptNode(org.w3c.dom.Node nodeArg)
+    startElement(org.w3c.dom.Element elementArg)
+  interface LSResourceResolver
+    resolveResource(java.lang.String type, java.lang.String namespaceURI, java.lang.String publicId, java.lang.String systemId, java.lang.String baseURI)
+  interface LSSerializer
+    setNewLine(java.lang.String newLine)
+    write(org.w3c.dom.Node nodeArg, org.w3c.dom.ls.LSOutput destination)
+    writeToString(org.w3c.dom.Node nodeArg)
+    writeToURI(org.w3c.dom.Node nodeArg, java.lang.String uri)
+
+package org.xml.sax
+;---------------------------------------
+  interface AttributeList
+    getName(int i)
+    getType(int i)
+    getType(java.lang.String name)
+    getValue(int i)
+    getValue(java.lang.String name)
+  interface Attributes
+    getIndex(java.lang.String qName)
+    getIndex(java.lang.String uri, java.lang.String localName)
+    getLocalName(int index)
+    getQName(int index)
+    getType(int index)
+    getType(java.lang.String qName)
+    getType(java.lang.String uri, java.lang.String localName)
+    getURI(int index)
+    getValue(int index)
+    getValue(java.lang.String qName)
+    getValue(java.lang.String uri, java.lang.String localName)
+  interface ContentHandler
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
+    endPrefixMapping(java.lang.String prefix)
+    ignorableWhitespace(char[] ch, int start, int length)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    skippedEntity(java.lang.String name)
+    startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)
+    startPrefixMapping(java.lang.String prefix, java.lang.String uri)
+  interface DocumentHandler
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String name)
+    ignorableWhitespace(char[] ch, int start, int length)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    startElement(java.lang.String name, org.xml.sax.AttributeList atts)
+  interface DTDHandler
+    notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)
+  interface EntityResolver
+    resolveEntity(java.lang.String publicId, java.lang.String systemId)
+  interface ErrorHandler
+    error(org.xml.sax.SAXParseException exception)
+    fatalError(org.xml.sax.SAXParseException exception)
+    warning(org.xml.sax.SAXParseException exception)
+  class HandlerBase
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String name)
+    error(org.xml.sax.SAXParseException e)
+    fatalError(org.xml.sax.SAXParseException e)
+    ignorableWhitespace(char[] ch, int start, int length)
+    notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    resolveEntity(java.lang.String publicId, java.lang.String systemId)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    startElement(java.lang.String name, org.xml.sax.AttributeList attributes)
+    unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)
+    warning(org.xml.sax.SAXParseException e)
+  class InputSource
+    #ctor(java.io.InputStream byteStream)
+    #ctor(java.io.Reader characterStream)
+    #ctor(java.lang.String systemId)
+    setByteStream(java.io.InputStream byteStream)
+    setCharacterStream(java.io.Reader characterStream)
+    setEncoding(java.lang.String encoding)
+    setPublicId(java.lang.String publicId)
+    setSystemId(java.lang.String systemId)
+  interface Parser
+    parse(java.lang.String systemId)
+    parse(org.xml.sax.InputSource source)
+    setDocumentHandler(org.xml.sax.DocumentHandler handler)
+    setDTDHandler(org.xml.sax.DTDHandler handler)
+    setEntityResolver(org.xml.sax.EntityResolver resolver)
+    setErrorHandler(org.xml.sax.ErrorHandler handler)
+    setLocale(java.util.Locale locale)
+  class SAXException
+    #ctor(java.lang.Exception e)
+    #ctor(java.lang.String message)
+    #ctor(java.lang.String message, java.lang.Exception e)
+  class SAXNotRecognizedException
+    #ctor(java.lang.String message)
+  class SAXNotSupportedException
+    #ctor(java.lang.String message)
+  class SAXParseException
+    #ctor(java.lang.String message, java.lang.String publicId, java.lang.String systemId, int lineNumber, int columnNumber)
+    #ctor(java.lang.String message, java.lang.String publicId, java.lang.String systemId, int lineNumber, int columnNumber, java.lang.Exception e)
+    #ctor(java.lang.String message, org.xml.sax.Locator locator)
+    #ctor(java.lang.String message, org.xml.sax.Locator locator, java.lang.Exception e)
+  interface XMLFilter
+    setParent(org.xml.sax.XMLReader parent)
+  interface XMLReader
+    getFeature(java.lang.String name)
+    getProperty(java.lang.String name)
+    parse(java.lang.String systemId)
+    parse(org.xml.sax.InputSource input)
+    setContentHandler(org.xml.sax.ContentHandler handler)
+    setDTDHandler(org.xml.sax.DTDHandler handler)
+    setEntityResolver(org.xml.sax.EntityResolver resolver)
+    setErrorHandler(org.xml.sax.ErrorHandler handler)
+    setFeature(java.lang.String name, boolean value)
+    setProperty(java.lang.String name, java.lang.Object value)
+
+package org.xml.sax.ext
+;---------------------------------------
+  interface Attributes2
+    isDeclared(int index)
+    isDeclared(java.lang.String qName)
+    isDeclared(java.lang.String uri, java.lang.String localName)
+    isSpecified(int index)
+    isSpecified(java.lang.String qName)
+    isSpecified(java.lang.String uri, java.lang.String localName)
+  class Attributes2Impl
+    addAttribute(java.lang.String uri, java.lang.String localName, java.lang.String qName, java.lang.String type, java.lang.String value)
+    #ctor(org.xml.sax.Attributes atts)
+    isDeclared(int index)
+    isDeclared(java.lang.String qName)
+    isDeclared(java.lang.String uri, java.lang.String localName)
+    isSpecified(int index)
+    isSpecified(java.lang.String qName)
+    isSpecified(java.lang.String uri, java.lang.String localName)
+    removeAttribute(int index)
+    setAttributes(org.xml.sax.Attributes atts)
+    setDeclared(int index, boolean value)
+    setSpecified(int index, boolean value)
+  interface DeclHandler
+    attributeDecl(java.lang.String eName, java.lang.String aName, java.lang.String type, java.lang.String mode, java.lang.String value)
+    elementDecl(java.lang.String name, java.lang.String model)
+    externalEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    internalEntityDecl(java.lang.String name, java.lang.String value)
+  class DefaultHandler2
+    attributeDecl(java.lang.String eName, java.lang.String aName, java.lang.String type, java.lang.String mode, java.lang.String value)
+    comment(char[] ch, int start, int length)
+    elementDecl(java.lang.String name, java.lang.String model)
+    endEntity(java.lang.String name)
+    externalEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    getExternalSubset(java.lang.String name, java.lang.String baseURI)
+    internalEntityDecl(java.lang.String name, java.lang.String value)
+    resolveEntity(java.lang.String publicId, java.lang.String systemId)
+    resolveEntity(java.lang.String name, java.lang.String publicId, java.lang.String baseURI, java.lang.String systemId)
+    startDTD(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    startEntity(java.lang.String name)
+  interface EntityResolver2
+    getExternalSubset(java.lang.String name, java.lang.String baseURI)
+    resolveEntity(java.lang.String name, java.lang.String publicId, java.lang.String baseURI, java.lang.String systemId)
+  interface LexicalHandler
+    comment(char[] ch, int start, int length)
+    endEntity(java.lang.String name)
+    startDTD(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    startEntity(java.lang.String name)
+  class Locator2Impl
+    #ctor(org.xml.sax.Locator locator)
+    setEncoding(java.lang.String encoding)
+    setXMLVersion(java.lang.String version)
+
+package org.xml.sax.helpers
+;---------------------------------------
+  class AttributeListImpl
+    addAttribute(java.lang.String name, java.lang.String type, java.lang.String value)
+    #ctor(org.xml.sax.AttributeList atts)
+    getName(int i)
+    getType(int i)
+    getType(java.lang.String name)
+    getValue(int i)
+    getValue(java.lang.String name)
+    removeAttribute(java.lang.String name)
+    setAttributeList(org.xml.sax.AttributeList atts)
+  class AttributesImpl
+    addAttribute(java.lang.String uri, java.lang.String localName, java.lang.String qName, java.lang.String type, java.lang.String value)
+    #ctor(org.xml.sax.Attributes atts)
+    getIndex(java.lang.String qName)
+    getIndex(java.lang.String uri, java.lang.String localName)
+    getLocalName(int index)
+    getQName(int index)
+    getType(int index)
+    getType(java.lang.String qName)
+    getType(java.lang.String uri, java.lang.String localName)
+    getURI(int index)
+    getValue(int index)
+    getValue(java.lang.String qName)
+    getValue(java.lang.String uri, java.lang.String localName)
+    removeAttribute(int index)
+    setAttribute(int index, java.lang.String uri, java.lang.String localName, java.lang.String qName, java.lang.String type, java.lang.String value)
+    setAttributes(org.xml.sax.Attributes atts)
+    setLocalName(int index, java.lang.String localName)
+    setQName(int index, java.lang.String qName)
+    setType(int index, java.lang.String type)
+    setURI(int index, java.lang.String uri)
+    setValue(int index, java.lang.String value)
+  class DefaultHandler
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
+    endPrefixMapping(java.lang.String prefix)
+    error(org.xml.sax.SAXParseException e)
+    fatalError(org.xml.sax.SAXParseException e)
+    ignorableWhitespace(char[] ch, int start, int length)
+    notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    resolveEntity(java.lang.String publicId, java.lang.String systemId)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    skippedEntity(java.lang.String name)
+    startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)
+    startPrefixMapping(java.lang.String prefix, java.lang.String uri)
+    unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)
+    warning(org.xml.sax.SAXParseException e)
+  class LocatorImpl
+    #ctor(org.xml.sax.Locator locator)
+    setColumnNumber(int columnNumber)
+    setLineNumber(int lineNumber)
+    setPublicId(java.lang.String publicId)
+    setSystemId(java.lang.String systemId)
+  class NamespaceSupport
+    declarePrefix(java.lang.String prefix, java.lang.String uri)
+    getPrefix(java.lang.String uri)
+    getPrefixes(java.lang.String uri)
+    getURI(java.lang.String prefix)
+    processName(java.lang.String qName, java.lang.String[] parts, boolean isAttribute)
+    setNamespaceDeclUris(boolean value)
+  class ParserAdapter
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String qName)
+    getFeature(java.lang.String name)
+    getProperty(java.lang.String name)
+    ignorableWhitespace(char[] ch, int start, int length)
+    parse(java.lang.String systemId)
+    parse(org.xml.sax.InputSource input)
+    #ctor(org.xml.sax.Parser parser)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    setContentHandler(org.xml.sax.ContentHandler handler)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    setDTDHandler(org.xml.sax.DTDHandler handler)
+    setEntityResolver(org.xml.sax.EntityResolver resolver)
+    setErrorHandler(org.xml.sax.ErrorHandler handler)
+    setFeature(java.lang.String name, boolean value)
+    setProperty(java.lang.String name, java.lang.Object value)
+    startElement(java.lang.String qName, org.xml.sax.AttributeList qAtts)
+  class ParserFactory
+    makeParser(java.lang.String className)
+  class XMLFilterImpl
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
+    endPrefixMapping(java.lang.String prefix)
+    error(org.xml.sax.SAXParseException e)
+    fatalError(org.xml.sax.SAXParseException e)
+    getFeature(java.lang.String name)
+    getProperty(java.lang.String name)
+    ignorableWhitespace(char[] ch, int start, int length)
+    notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
+    parse(java.lang.String systemId)
+    parse(org.xml.sax.InputSource input)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    resolveEntity(java.lang.String publicId, java.lang.String systemId)
+    setContentHandler(org.xml.sax.ContentHandler handler)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    setDTDHandler(org.xml.sax.DTDHandler handler)
+    setEntityResolver(org.xml.sax.EntityResolver resolver)
+    setErrorHandler(org.xml.sax.ErrorHandler handler)
+    setFeature(java.lang.String name, boolean value)
+    setParent(org.xml.sax.XMLReader parent)
+    setProperty(java.lang.String name, java.lang.Object value)
+    skippedEntity(java.lang.String name)
+    startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)
+    startPrefixMapping(java.lang.String prefix, java.lang.String uri)
+    unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)
+    warning(org.xml.sax.SAXParseException e)
+    #ctor(org.xml.sax.XMLReader parent)
+  class XMLReaderAdapter
+    characters(char[] ch, int start, int length)
+    endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
+    endPrefixMapping(java.lang.String prefix)
+    ignorableWhitespace(char[] ch, int start, int length)
+    parse(java.lang.String systemId)
+    parse(org.xml.sax.InputSource input)
+    processingInstruction(java.lang.String target, java.lang.String data)
+    setDocumentHandler(org.xml.sax.DocumentHandler handler)
+    setDocumentLocator(org.xml.sax.Locator locator)
+    setDTDHandler(org.xml.sax.DTDHandler handler)
+    setEntityResolver(org.xml.sax.EntityResolver resolver)
+    setErrorHandler(org.xml.sax.ErrorHandler handler)
+    setLocale(java.util.Locale locale)
+    skippedEntity(java.lang.String name)
+    startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)
+    startPrefixMapping(java.lang.String prefix, java.lang.String uri)
+    #ctor(org.xml.sax.XMLReader xmlReader)
+  class XMLReaderFactory
+    createXMLReader(java.lang.String className)
+
+package org.xmlpull.v1
+;---------------------------------------
+  interface XmlPullParser
+    defineEntityReplacementText(java.lang.String entityName, java.lang.String replacementText)
+    getAttributeName(int index)
+    getAttributeNamespace(int index)
+    getAttributePrefix(int index)
+    getAttributeType(int index)
+    getAttributeValue(int index)
+    getAttributeValue(java.lang.String namespace, java.lang.String name)
+    getFeature(java.lang.String name)
+    getNamespace(java.lang.String prefix)
+    getNamespaceCount(int depth)
+    getNamespacePrefix(int pos)
+    getNamespaceUri(int pos)
+    getProperty(java.lang.String name)
+    getTextCharacters(int[] holderForStartAndLength)
+    isAttributeDefault(int index)
+    require(int type, java.lang.String namespace, java.lang.String name)
+    setFeature(java.lang.String name, boolean state)
+    setInput(java.io.InputStream inputStream, java.lang.String inputEncoding)
+    setInput(java.io.Reader in)
+    setProperty(java.lang.String name, java.lang.Object value)
+  class XmlPullParserException
+    #ctor(java.lang.String s)
+    #ctor(java.lang.String msg, org.xmlpull.v1.XmlPullParser parser, java.lang.Throwable chain)
+  class XmlPullParserFactory
+    getFeature(java.lang.String name)
+    newInstance(java.lang.String unused, java.lang.Class unused2)
+    setFeature(java.lang.String name, boolean state)
+    setNamespaceAware(boolean awareness)
+    setValidating(boolean validating)
+  interface XmlSerializer
+    attribute(java.lang.String namespace, java.lang.String name, java.lang.String value)
+    cdsect(java.lang.String text)
+    comment(java.lang.String text)
+    docdecl(java.lang.String text)
+    endTag(java.lang.String namespace, java.lang.String name)
+    entityRef(java.lang.String text)
+    getFeature(java.lang.String name)
+    getPrefix(java.lang.String namespace, boolean generatePrefix)
+    getProperty(java.lang.String name)
+    ignorableWhitespace(java.lang.String text)
+    processingInstruction(java.lang.String text)
+    setFeature(java.lang.String name, boolean state)
+    setOutput(java.io.OutputStream os, java.lang.String encoding)
+    setOutput(java.io.Writer writer)
+    setPrefix(java.lang.String prefix, java.lang.String namespace)
+    setProperty(java.lang.String name, java.lang.Object value)
+    startDocument(java.lang.String encoding, java.lang.Boolean standalone)
+    startTag(java.lang.String namespace, java.lang.String name)
+    text(char[] buf, int start, int len)
+    text(java.lang.String text)
+
+package org.xmlpull.v1.sax2
+;---------------------------------------
+  class Driver
+    #ctor(org.xmlpull.v1.XmlPullParser pp)
+    getFeature(java.lang.String name)
+    getIndex(java.lang.String qName)
+    getIndex(java.lang.String uri, java.lang.String localName)
+    getLocalName(int index)
+    getProperty(java.lang.String name)
+    getQName(int index)
+    getType(int index)
+    getType(java.lang.String qName)
+    getType(java.lang.String uri, java.lang.String localName)
+    getURI(int index)
+    getValue(int index)
+    getValue(java.lang.String qName)
+    getValue(java.lang.String uri, java.lang.String localName)
+    parse(java.lang.String systemId)
+    parse(org.xml.sax.InputSource source)
+    parseSubTree(org.xmlpull.v1.XmlPullParser pp)
+    setContentHandler(org.xml.sax.ContentHandler handler)
+    setDTDHandler(org.xml.sax.DTDHandler handler)
+    setEntityResolver(org.xml.sax.EntityResolver resolver)
+    setErrorHandler(org.xml.sax.ErrorHandler handler)
+    setFeature(java.lang.String name, boolean value)
+    setProperty(java.lang.String name, java.lang.Object value)
+    startElement(java.lang.String namespace, java.lang.String localName, java.lang.String qName)
diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata
index 6e6aa5f145c..6d5c8925d62 100644
--- a/src/Mono.Android/metadata
+++ b/src/Mono.Android/metadata
@@ -1722,6 +1722,15 @@
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='View']/method[@name='setSystemUiVisibility']" name="deprecated">This property has an incorrect enumeration type. Use the SystemUiFlags property instead.</attr>
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='View']/method[@name='setSystemUiVisibility']" name="deprecated-since">0</attr>
 
+  <!-- An abstract Buffer.Duplicate () method got added in 34. It creates covariant return type issue with already existing derived class methods -->
+  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='duplicate' and count(parameter)=0]" />
+  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='slice' and count(parameter)=0]" />
+  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='slice' and count(parameter)=2]" />
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedReturn">Java.Nio.ByteBuffer</attr>
+  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" />
+  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" />
+  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" />
+	
   <!--
     ***********************************************************************
     THE FOLLOWING LINES MUST BE CREATED FOR ANY NEW PLATFORM THAT IS ADDED.
@@ -1740,6 +1749,8 @@
   <attr api-since="32" path="/api/package/interface[contains(@merge.SourceFile,'api-Sv2.xml.in')]" name="no-alternatives">true</attr>
   <attr api-since="33" path="/api/package/interface[contains(@merge.SourceFile,'api-33.xml.in')]" name="no-alternatives">true</attr>
   <attr api-since="33" path="/api/package/interface[contains(@merge.SourceFile,'api-Tiramisu.xml.in')]" name="no-alternatives">true</attr>
+  <attr api-since="34" path="/api/package/interface[contains(@merge.SourceFile,'api-34.xml.in')]" name="no-alternatives">true</attr>
+  <attr api-since="34" path="/api/package/interface[contains(@merge.SourceFile,'api-UpsideDownCake.xml.in')]" name="no-alternatives">true</attr>
 
   <!-- Set ApiSince based on merge sourcefile. -->
   <attr api-since="22" path="/api//*[contains(@merge.SourceFile,'api-22.xml.in')]" name="api-since">22</attr>
@@ -1758,6 +1769,8 @@
   <attr api-since="32" path="/api//*[contains(@merge.SourceFile,'api-Sv2.xml.in')]" name="api-since">32</attr>
   <attr api-since="33" path="/api//*[contains(@merge.SourceFile,'api-33.xml.in')]" name="api-since">33</attr>
   <attr api-since="33" path="/api//*[contains(@merge.SourceFile,'api-Tiramisu.xml.in')]" name="api-since">33</attr>
+  <attr api-since="34" path="/api//*[contains(@merge.SourceFile,'api-34.xml.in')]" name="api-since">34</attr>
+  <attr api-since="34" path="/api//*[contains(@merge.SourceFile,'api-UpsideDownCake.xml.in')]" name="api-since">34</attr>
 
   <!-- Erase some 'api-since' attributes (This has to be done after they are set above) -->
 
diff --git a/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.json b/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.json
index 13173b670ab..5f9ea6f6c04 100644
--- a/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.json
+++ b/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.json
@@ -20,6 +20,18 @@
         "microsoft-net-runtime-android",
         "microsoft-net-runtime-android-aot"
       ]
+    },
+    "android-34": {
+      "description": "Preview support for Android API-34.",
+      "packs": [
+        "Microsoft.Android.Ref.34",
+        "Microsoft.Android.Runtime.34.android-arm",
+        "Microsoft.Android.Runtime.34.android-arm64",
+        "Microsoft.Android.Runtime.34.android-x86",
+        "Microsoft.Android.Runtime.34.android-x64"
+      ],
+      "platforms": [ "win-x64", "linux-x64", "osx-x64", "osx-arm64" ],
+      "extends" : [ "android" ]
     }
   },
   "packs": {
@@ -67,6 +79,26 @@
       "kind": "framework",
       "version": "@WORKLOAD_VERSION@"
     },
+    "Microsoft.Android.Ref.34": {
+      "kind": "framework",
+      "version": "@WORKLOAD_VERSION@"
+    },
+    "Microsoft.Android.Runtime.34.android-arm": {
+      "kind": "framework",
+      "version": "@WORKLOAD_VERSION@"
+    },
+    "Microsoft.Android.Runtime.34.android-arm64": {
+      "kind": "framework",
+      "version": "@WORKLOAD_VERSION@"
+    },
+    "Microsoft.Android.Runtime.34.android-x86": {
+      "kind": "framework",
+      "version": "@WORKLOAD_VERSION@"
+    },
+    "Microsoft.Android.Runtime.34.android-x64": {
+      "kind": "framework",
+      "version": "@WORKLOAD_VERSION@"
+    },
     "Microsoft.Android.Templates": {
       "kind": "template",
       "version": "@WORKLOAD_VERSION@"
diff --git a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
new file mode 100644
index 00000000000..d349a9a17f8
--- /dev/null
+++ b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
@@ -0,0 +1,15 @@
+Compat issues with assembly Mono.Android:
+MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Surface, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
+MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Surface, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
+MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.SurfaceView, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
+MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.SurfaceView, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
+MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
+MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
+CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Dalvik.SystemInterop.DexFile' in the contract but not the implementation.
+CannotAddAbstractMembers : Member 'public Java.Nio.ByteBuffer Java.Nio.ByteBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.CharBuffer Java.Nio.CharBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.DoubleBuffer Java.Nio.DoubleBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.FloatBuffer Java.Nio.FloatBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.IntBuffer Java.Nio.IntBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.LongBuffer Java.Nio.LongBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.ShortBuffer Java.Nio.ShortBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.

From 6b60a33cc0945985c03a8e83051c23d76626262e Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Tue, 21 Feb 2023 14:42:06 -1000
Subject: [PATCH 2/9] Fix for Mono.Android.Runtime optimization.

---
 src/Mono.Android.Runtime/Mono.Android.Runtime.csproj | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj b/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
index c8d9755eb58..c7e4b9d34c9 100644
--- a/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
+++ b/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
@@ -31,13 +31,13 @@
 
   <Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
 
-  <!-- Only build the .NET 6+ version of 'Mono.Android.Export.dll' for the latest stable Android version.
-  <PropertyGroup Condition=" '$(AndroidApiLevel)' != '$(AndroidLatestStableApiLevel)' ">
+  <!-- Only build the .NET 6+ version of 'Mono.Android.Export.dll' for the latest stable Android version. -->
+  <PropertyGroup Condition=" '$(TargetFramework)' != 'monoandroid10' And '$(AndroidApiLevel)' &lt; '$(AndroidDefaultTargetDotnetApiLevel)' ">
     <BuildDependsOn></BuildDependsOn>
   </PropertyGroup>
- -->
+ 
   <!-- Copy .NET ref/runtime assemblies to bin/$(Configuration)/dotnet/packs folder -->
-  <PropertyGroup Condition=" '$(AndroidApiLevel)' == '$(AndroidLatestStableApiLevel)' ">
+  <PropertyGroup Condition=" '$(TargetFramework)' != 'monoandroid10' And '$(AndroidApiLevel)' &gt;= '$(AndroidDefaultTargetDotnetApiLevel)' ">
     <BuildDependsOn>
       $(BuildDependsOn);
       _CopyToPackDirs;

From 597bbcebbddd9b55a8c1ba4701029dcf51c56953 Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Wed, 8 Mar 2023 10:33:55 -1000
Subject: [PATCH 3/9] =?UTF-8?q?=EF=BB=BFFix=20reabstracted=20methods.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/Mono.Android/metadata | 61 ++++++++++++++++++++++++++++++++++-----
 1 file changed, 53 insertions(+), 8 deletions(-)

diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata
index 6d5c8925d62..5035f8f8a51 100644
--- a/src/Mono.Android/metadata
+++ b/src/Mono.Android/metadata
@@ -1722,15 +1722,60 @@
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='View']/method[@name='setSystemUiVisibility']" name="deprecated">This property has an incorrect enumeration type. Use the SystemUiFlags property instead.</attr>
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='View']/method[@name='setSystemUiVisibility']" name="deprecated-since">0</attr>
 
-  <!-- An abstract Buffer.Duplicate () method got added in 34. It creates covariant return type issue with already existing derived class methods -->
-  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='duplicate' and count(parameter)=0]" />
-  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='slice' and count(parameter)=0]" />
-  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='slice' and count(parameter)=2]" />
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedReturn">Java.Nio.ByteBuffer</attr>
-  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" />
-  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" />
-  <remove-node api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" />
+  <!-- These reabstracted methods with covariant return types need to be manaully marked as 'override'. -->
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer; java/nio/ByteBuffer.slice(II)Ljava/nio/ByteBuffer;</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
 	
+  <!-- A new nested class "Request" was added which has a name conflict with existing methods named "Request" -->
+  <attr api-since="34" path="/api/package[@name='android.view']/class[@name='PixelCopy.Request']" name="managedName">PixelCopyRequest</attr>
+
+  <!-- Rename Namespaces -->
+  <attr api-since="34" path="/api/package[@name='android.adservices.adid']" name="managedName">Android.AdServices.AdIds</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.adselection']" name="managedName">Android.AdServices.AdSelection</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.appsetid']" name="managedName">Android.AdServices.AppSetIds</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.common']" name="managedName">Android.AdServices.Common</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.customaudience']" name="managedName">Android.AdServices.CustomAudiences</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.exceptions']" name="managedName">Android.AdServices.Exceptions</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.measurement']" name="managedName">Android.AdServices.Measurement</attr>
+  <attr api-since="34" path="/api/package[@name='android.adservices.topics']" name="managedName">Android.AdServices.Topics</attr>
+  <attr api-since="34" path="/api/package[@name='android.app.appsearch.util']" name="managedName">Android.App.AppSearch.Util</attr>
+  <attr api-since="34" path="/api/package[@name='android.app.sdksandbox.sdkprovider']" name="managedName">Android.App.SdkSandbox.SdkProvider</attr>
+  <attr api-since="34" path="/api/package[@name='android.devicelock']" name="managedName">Android.DeviceLock</attr>
+  <attr api-since="34" path="/api/package[@name='android.healthconnect']" name="managedName">Android.HealthConnect</attr>
+  <attr api-since="34" path="/api/package[@name='android.healthconnect.datatypes']" name="managedName">Android.HealthConnect.DataTypes</attr>
+  <attr api-since="34" path="/api/package[@name='android.healthconnect.datatypes.units']" name="managedName">Android.HealthConnect.DataTypes.Units</attr>
+  <attr api-since="34" path="/api/package[@name='android.location.altitude']" name="managedName">Android.Locations.Altitude</attr>
+
   <!--
     ***********************************************************************
     THE FOLLOWING LINES MUST BE CREATED FOR ANY NEW PLATFORM THAT IS ADDED.

From 795f463c749d6fa874e9070229705d1a213960ae Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Wed, 8 Mar 2023 13:05:20 -1000
Subject: [PATCH 4/9] Don't build API-34 for Classic.

---
 src/Mono.Android.Runtime/Mono.Android.Runtime.csproj | 9 +++++++--
 src/Mono.Android/Mono.Android.csproj                 | 5 +++++
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj b/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
index c7e4b9d34c9..7612d7a2835 100644
--- a/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
+++ b/src/Mono.Android.Runtime/Mono.Android.Runtime.csproj
@@ -31,11 +31,16 @@
 
   <Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
 
-  <!-- Only build the .NET 6+ version of 'Mono.Android.Export.dll' for the latest stable Android version. -->
+  <!-- Only build the .NET 6+ version of 'Mono.Android.Runtime.dll' for the latest stable Android version. -->
   <PropertyGroup Condition=" '$(TargetFramework)' != 'monoandroid10' And '$(AndroidApiLevel)' &lt; '$(AndroidDefaultTargetDotnetApiLevel)' ">
     <BuildDependsOn></BuildDependsOn>
   </PropertyGroup>
- 
+  
+  <!-- Do not build classic for API versions above 33 -->
+  <PropertyGroup Condition=" '$(TargetFramework)' == 'monoandroid10' And '$(AndroidApiLevel)' &gt; '33'">
+    <BuildDependsOn></BuildDependsOn>
+  </PropertyGroup> 
+  
   <!-- Copy .NET ref/runtime assemblies to bin/$(Configuration)/dotnet/packs folder -->
   <PropertyGroup Condition=" '$(TargetFramework)' != 'monoandroid10' And '$(AndroidApiLevel)' &gt;= '$(AndroidDefaultTargetDotnetApiLevel)' ">
     <BuildDependsOn>
diff --git a/src/Mono.Android/Mono.Android.csproj b/src/Mono.Android/Mono.Android.csproj
index 93b503ec884..7a780bc3151 100644
--- a/src/Mono.Android/Mono.Android.csproj
+++ b/src/Mono.Android/Mono.Android.csproj
@@ -413,6 +413,11 @@
     <BuildDependsOn></BuildDependsOn>
   </PropertyGroup>
 
+  <!-- Do not build classic for API versions above 33 -->
+  <PropertyGroup Condition=" '$(TargetFramework)' == 'monoandroid10' And '$(AndroidApiLevel)' &gt; '33'">
+    <BuildDependsOn></BuildDependsOn>
+  </PropertyGroup>
+  
   <PropertyGroup Condition=" '$(TargetFramework)' != 'monoandroid10' And '$(AndroidApiLevel)' &gt;= '$(AndroidDefaultTargetDotnetApiLevel)' ">
     <BuildDependsOn>
       $(BuildDependsOn);

From aa096b975f3479c004acff144381a409f721a47b Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Mon, 20 Mar 2023 16:23:37 -0500
Subject: [PATCH 5/9] =?UTF-8?q?=EF=BB=BFTest=20'compatVirtualMethod'=20gen?=
 =?UTF-8?q?erator=20support.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/Mono.Android/metadata                     | 31 ++++++++++++++-----
 .../acceptable-breakages-v13.0.99.txt         |  7 -----
 2 files changed, 23 insertions(+), 15 deletions(-)

diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata
index 5035f8f8a51..e09aa2ac784 100644
--- a/src/Mono.Android/metadata
+++ b/src/Mono.Android/metadata
@@ -1725,37 +1725,52 @@
   <!-- These reabstracted methods with covariant return types need to be manaully marked as 'override'. -->
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer; java/nio/ByteBuffer.slice(II)Ljava/nio/ByteBuffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
 	
+  <!-- These are new abstract methods in existing classes, so they must be converted to virtual compatible method for back-compat. -->
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+
   <!-- A new nested class "Request" was added which has a name conflict with existing methods named "Request" -->
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='PixelCopy.Request']" name="managedName">PixelCopyRequest</attr>
 
diff --git a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
index d349a9a17f8..cb0e52d2a98 100644
--- a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
+++ b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
@@ -6,10 +6,3 @@ MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.V
 MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
 MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
 CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Dalvik.SystemInterop.DexFile' in the contract but not the implementation.
-CannotAddAbstractMembers : Member 'public Java.Nio.ByteBuffer Java.Nio.ByteBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.CharBuffer Java.Nio.CharBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.DoubleBuffer Java.Nio.DoubleBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.FloatBuffer Java.Nio.FloatBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.IntBuffer Java.Nio.IntBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.LongBuffer Java.Nio.LongBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.ShortBuffer Java.Nio.ShortBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.

From e40ef00cb3dfa78da14625d430db83af71ebd2d5 Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Thu, 23 Mar 2023 09:02:03 -0500
Subject: [PATCH 6/9] =?UTF-8?q?=EF=BB=BF[metadata]=20No=20longer=20need=20?=
 =?UTF-8?q?to=20set=20'abstract=20=3D=20false'=20for=20'compatVirtualMetho?=
 =?UTF-8?q?d'.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/Mono.Android/metadata                     | 31 +++++--------------
 .../acceptable-breakages-v13.0.99.txt         |  7 +++++
 2 files changed, 15 insertions(+), 23 deletions(-)

diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata
index e09aa2ac784..5035f8f8a51 100644
--- a/src/Mono.Android/metadata
+++ b/src/Mono.Android/metadata
@@ -1725,52 +1725,37 @@
   <!-- These reabstracted methods with covariant return types need to be manaully marked as 'override'. -->
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer; java/nio/ByteBuffer.slice(II)Ljava/nio/ByteBuffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
 	
-  <!-- These are new abstract methods in existing classes, so they must be converted to virtual compatible method for back-compat. -->
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="abstract">false</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
-
   <!-- A new nested class "Request" was added which has a name conflict with existing methods named "Request" -->
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='PixelCopy.Request']" name="managedName">PixelCopyRequest</attr>
 
diff --git a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
index cb0e52d2a98..d349a9a17f8 100644
--- a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
+++ b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
@@ -6,3 +6,10 @@ MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.V
 MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
 MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
 CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Dalvik.SystemInterop.DexFile' in the contract but not the implementation.
+CannotAddAbstractMembers : Member 'public Java.Nio.ByteBuffer Java.Nio.ByteBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.CharBuffer Java.Nio.CharBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.DoubleBuffer Java.Nio.DoubleBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.FloatBuffer Java.Nio.FloatBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.IntBuffer Java.Nio.IntBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.LongBuffer Java.Nio.LongBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
+CannotAddAbstractMembers : Member 'public Java.Nio.ShortBuffer Java.Nio.ShortBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.

From 923924faf410a98afed44aa2fa562887756e2deb Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Thu, 23 Mar 2023 09:59:06 -0500
Subject: [PATCH 7/9] [ci] Add policheck exclusions.

---
 build-tools/automation/guardian/PoliCheck.Exclusions.xml | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/build-tools/automation/guardian/PoliCheck.Exclusions.xml b/build-tools/automation/guardian/PoliCheck.Exclusions.xml
index 3df47bb4a1a..e124c813528 100644
--- a/build-tools/automation/guardian/PoliCheck.Exclusions.xml
+++ b/build-tools/automation/guardian/PoliCheck.Exclusions.xml
@@ -1,13 +1,11 @@
 <PoliCheckExclusions>
   <!-- Each of these exclusions is a folder name - if \[name]\ exists in the file path, it will be skipped -->
   <Exclusion Type="FolderPathFull">LICENSE-DATA|NREFACTORY|LOCALIZE</Exclusion>
+  <Exclusion Type="FolderPathStart">src\Mono.Android\Profiles</Exclusion>
   <!-- Each of these exclusions is a folder name - if any folder or file starts with "\[name]", it will be skipped -->
   <!--<Exclusion Type="FolderPathStart">ABC|XYZ</Exclusion>-->
   <!-- Each of these file types will be completely skipped for the entire scan -->
   <!--<Exclusion Type="FileType">.ABC|.XYZ</Exclusion>-->
   <!-- The specified file names will be skipped during the scan regardless which folder they are in -->
-  <Exclusion Type="FileName">REMAINING-INT-CONSTS.TXT|TAIWANCALENDAR.XML|XAMARIN-ANDROID-SDK-9.XML|SQLITE3.C|MAP.CSV|METHODMAP.EXT.CSV|EXTERNALWHITELIST.CSV|SYMBOLARCHIVEWHITELIST.CSV|POLICHECK.EXCLUSIONS.xml
-|API-10.PARAMS.TXT|API-15.PARAMS.TXT|API-16.PARAMS.TXT|API-17.PARAMS.TXT|API-18.PARAMS.TXT|API-19.PARAMS.TXT|API-20.PARAMS.TXT|API-21.PARAMS.TXT|API-22.PARAMS.TXT|API-23.PARAMS.TXT|API-24.PARAMS.TXT
-|API-25.PARAMS.TXT|API-26.PARAMS.TXT|API-27.PARAMS.TXT|API-28.PARAMS.TXT|API-29.PARAMS.TXT|API-30.PARAMS.TXT|API-31.PARAMS.TXT|API-32.PARAMS.TXT|API-33.PARAMS.TXT
-  </Exclusion>
+  <Exclusion Type="FileName">REMAINING-INT-CONSTS.TXT|TAIWANCALENDAR.XML|XAMARIN-ANDROID-SDK-9.XML|SQLITE3.C|MAP.CSV|METHODMAP.EXT.CSV|EXTERNALWHITELIST.CSV|SYMBOLARCHIVEWHITELIST.CSV|POLICHECK.EXCLUSIONS.xml</Exclusion>
 </PoliCheckExclusions>

From 1846ec9bc3e1f52df1fa01626d4c126fe2c9b105 Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Thu, 23 Mar 2023 14:29:24 -0500
Subject: [PATCH 8/9] Fix merge mistake.

---
 src/Mono.Android/metadata | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata
index 5035f8f8a51..e8507e913ca 100644
--- a/src/Mono.Android/metadata
+++ b/src/Mono.Android/metadata
@@ -1725,37 +1725,45 @@
   <!-- These reabstracted methods with covariant return types need to be manaully marked as 'override'. -->
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer; java/nio/ByteBuffer.slice(II)Ljava/nio/ByteBuffer;</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
-  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
 	
+  <!-- These are new abstract methods in existing classes, so they must be converted to virtual compatible method for back-compat. -->
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='DoubleBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='FloatBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+
   <!-- A new nested class "Request" was added which has a name conflict with existing methods named "Request" -->
   <attr api-since="34" path="/api/package[@name='android.view']/class[@name='PixelCopy.Request']" name="managedName">PixelCopyRequest</attr>
 

From 60b6634007c42359dc9cf40c4ea8f108d6bf1223 Mon Sep 17 00:00:00 2001
From: Jonathan Pobst <jonathan.pobst@microsoft.com>
Date: Mon, 27 Mar 2023 15:01:08 -0500
Subject: [PATCH 9/9] Address feedback.

---
 src/Mono.Android/Android.Graphics/PathIterator.cs   |  1 +
 src/Mono.Android/metadata                           |  9 +++++++++
 .../acceptable-breakages-v13.0.99.txt               | 13 -------------
 3 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/src/Mono.Android/Android.Graphics/PathIterator.cs b/src/Mono.Android/Android.Graphics/PathIterator.cs
index f0639171c08..03001e23bbd 100644
--- a/src/Mono.Android/Android.Graphics/PathIterator.cs
+++ b/src/Mono.Android/Android.Graphics/PathIterator.cs
@@ -7,6 +7,7 @@ namespace Android.Graphics
 
 #if ANDROID_34
 		// This implements an interface method that should be marked as 'default' but isn't.
+		// https://developer.android.com/reference/java/util/Iterator#remove()
 		public void Remove ()
 		{
 			throw new Java.Lang.UnsupportedOperationException ();
diff --git a/src/Mono.Android/metadata b/src/Mono.Android/metadata
index e8507e913ca..36e5450bea5 100644
--- a/src/Mono.Android/metadata
+++ b/src/Mono.Android/metadata
@@ -1749,6 +1749,9 @@
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']" name="skipInvokerMethods">java/nio/Buffer.duplicate()Ljava/nio/Buffer; java/nio/Buffer.slice()Ljava/nio/Buffer; java/nio/Buffer.slice(II)Ljava/nio/Buffer;</attr>
 	
   <!-- These are new abstract methods in existing classes, so they must be converted to virtual compatible method for back-compat. -->
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='duplicate' and count(parameter)=0]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='slice' and count(parameter)=0]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='Buffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ByteBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='CharBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
@@ -1761,6 +1764,12 @@
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='IntBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='LongBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='duplicate' and count(parameter)=0]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=0]" name="compatVirtualMethod">true</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
+  <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='MappedByteBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="managedOverride">override</attr>
   <attr api-since="34" path="/api/package[@name='java.nio']/class[@name='ShortBuffer']/method[@name='slice' and count(parameter)=2]" name="compatVirtualMethod">true</attr>
 
diff --git a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
index d349a9a17f8..bc2359eb1c8 100644
--- a/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
+++ b/tests/api-compatibility/acceptable-breakages-v13.0.99.txt
@@ -1,15 +1,2 @@
 Compat issues with assembly Mono.Android:
-MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Surface, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
-MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Surface, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
-MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.SurfaceView, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
-MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.SurfaceView, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
-MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
-MembersMustExist : Member 'public void Android.Views.PixelCopy.Request(Android.Views.Window, Android.Graphics.Rect, Android.Graphics.Bitmap, Android.Views.PixelCopy.IOnPixelCopyFinishedListener, Android.OS.Handler)' does not exist in the implementation but it does exist in the contract.
 CannotRemoveAttribute : Attribute 'System.ObsoleteAttribute' exists on 'Dalvik.SystemInterop.DexFile' in the contract but not the implementation.
-CannotAddAbstractMembers : Member 'public Java.Nio.ByteBuffer Java.Nio.ByteBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.CharBuffer Java.Nio.CharBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.DoubleBuffer Java.Nio.DoubleBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.FloatBuffer Java.Nio.FloatBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.IntBuffer Java.Nio.IntBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.LongBuffer Java.Nio.LongBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
-CannotAddAbstractMembers : Member 'public Java.Nio.ShortBuffer Java.Nio.ShortBuffer.Slice(System.Int32, System.Int32)' is abstract in the implementation but is missing in the contract.
