Remove car-support-lib.

This has been checked into google3 (cl/210748364), and I'll be cleaning
that up and making sure the projected dependencies work there.

Bug: 76168796
Test: make clean && make
Change-Id: Ic214b84aaff7cdd891783364d538766331fa4c77
diff --git a/car-support-lib/Android.bp b/car-support-lib/Android.bp
deleted file mode 100644
index 2d4269e..0000000
--- a/car-support-lib/Android.bp
+++ /dev/null
@@ -1,103 +0,0 @@
-// Copyright (C) 2018 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-//      http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-java_library_static {
-    name: "android.support.car",
-    srcs: [
-        "src/**/*.java",
-        "src/**/I*.aidl",
-    ],
-    aidl: {
-        include_dirs: [
-            "system/bt/binder",
-        ],
-    },
-    libs: [
-        "android.car",
-    ],
-    static_libs: [
-        "androidx.annotation_annotation",
-    ],
-    platform_apis: true,
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-    installable: true,
-}
-
-doc_defaults {
-    name: "android.support.car-docs-default",
-    srcs: [
-        "src/**/*.java",
-    ],
-    libs: [
-        "android.car",
-        "android.support.car",
-        "androidx.annotation_annotation",
-    ],
-    custom_template: "droiddoc-templates-sdk",
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-}
-
-droiddoc {
-    name: "android.support.car-stubs-docs",
-    defaults: ["android.support.car-docs-default"],
-    api_tag_name: "ANDROID_SUPPORT_CAR",
-    api_filename: "api.txt",
-    removed_api_filename: "removed.txt",
-    args: "-hide 113 -hide 110 -nodocs -stubpackages android.support.car* ",
-    installable: false,
-    check_api: {
-        current: {
-            api_file: "api/current.txt",
-            removed_api_file: "api/removed.txt",
-            args: " -error 2 -error 3 -error 4 -error 5 -error 6 -error 7 -error 8 -error 9 -error 10 -error 11 " +
-                  " -error 12 -error 13 -error 14 -error 15 -error 16 -error 17 -error 18 -error 19 -error 20 " +
-                  " -error 21 -error 23 -error 24 -error 25 -hide 113 ",
-        },
-    },
-}
-
-droiddoc {
-    name: "android.support.car-proguard-docs",
-    defaults: ["android.support.car-docs-default"],
-    api_tag_name: "ANDROID_SUPPORT_CAR_PROGUARD",
-    proguard_filename: "keep_list.proguard",
-    create_stubs: false,
-}
-
-// TODO(deanh) support lib should be able to be using public APIs only
-droiddoc {
-    name: "android.support.car-docs",
-    srcs: [
-        "src/**/*.java",
-    ],
-    libs: [
-        "android.car",
-        "androidx.annotation_annotation",
-    ],
-    custom_template: "droiddoc-templates-sdk",
-    create_stubs: false,
-    product_variables: {
-        pdk: {
-            enabled: false,
-        },
-    },
-}
diff --git a/car-support-lib/Android.mk b/car-support-lib/Android.mk
deleted file mode 100644
index cfa40be..0000000
--- a/car-support-lib/Android.mk
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright (C) 2015 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-#disble build in PDK, should add prebuilts/fullsdk to make this work
-ifneq ($(TARGET_BUILD_PDK),true)
-
-LOCAL_PATH:= $(call my-dir)
-
-# Build prebuilt android.support.car library
-# ---------------------------------------------
-include $(CLEAR_VARS)
-
-LOCAL_AAPT_FLAGS := --auto-add-overlay
-LOCAL_MODULE := android.support.car-prebuilt
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-#TODO(b/72620511) support lib should be able to be using public APIs only
-#LOCAL_SDK_VERSION := current
-LOCAL_PRIVATE_PLATFORM_APIS := true
-
-LOCAL_MANIFEST_FILE := AndroidManifest.xml
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src) $(call all-Iaidl-files-under, src)
-LOCAL_JAVA_LIBRARIES += android.car\
-                        androidx.annotation_annotation
-
-LOCAL_PROGUARD_ENABLED := custom optimization obfuscation
-LOCAL_PROGUARD_FLAGS := -dontwarn
-LOCAL_PROGUARD_FLAG_FILES := proguard-release.flags proguard-extra-keeps.flags
-
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-ifeq ($(BOARD_IS_AUTOMOTIVE), true)
-    $(call dist-for-goals, dist_files, $(built_aar):android.support.car.aar)
-endif
-
-# Same as above, except without proguard.
-# ---------------------------------------------
-include $(CLEAR_VARS)
-
-LOCAL_AAPT_FLAGS := --auto-add-overlay
-LOCAL_MODULE := android.support.car-1p-prebuilt
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-#TODO(b/72620511) support lib should be able to be using public APIs only
-#LOCAL_SDK_VERSION := current
-LOCAL_PRIVATE_PLATFORM_APIS := true
-
-LOCAL_MANIFEST_FILE := AndroidManifest.xml
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src) $(call all-Iaidl-files-under, src)
-LOCAL_JAVA_LIBRARIES += android.car\
-                        androidx.annotation_annotation
-
-LOCAL_PROGUARD_ENABLED := disabled
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-ifeq ($(BOARD_IS_AUTOMOTIVE), true)
-    $(call dist-for-goals, dist_files, $(built_aar):android.support.car-1p.aar)
-endif
-
-.PHONY: update-support-car-proguard-api
-update-support-car-proguard-api: $(INTERNAL_PLATFORM_ANDROID_SUPPORT_CAR_PROGUARD_PROGUARD_FILE) | $(ACP)
-	@echo $(PRIVATE_CAR_MODULE) copying $(INTERNAL_PLATFORM_ANDROID_SUPPORT_CAR_PROGUARD_PROGUARD_FILE) to $(LOCAL_PATH)/proguard-release.flags
-	$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_SUPPORT_CAR_PROGUARD_PROGUARD_FILE) $(LOCAL_PATH)/proguard-release.flags
-
-endif #TARGET_BUILD_PDK
diff --git a/car-support-lib/AndroidManifest.xml b/car-support-lib/AndroidManifest.xml
deleted file mode 100644
index f92f21b..0000000
--- a/car-support-lib/AndroidManifest.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
-        package="android.support.car.ui" >
-    <uses-sdk android:minSdkVersion="21"
-        android:targetSdkVersion="23" />
-</manifest>
diff --git a/car-support-lib/api/current.txt b/car-support-lib/api/current.txt
deleted file mode 100644
index 7ee1246..0000000
--- a/car-support-lib/api/current.txt
+++ /dev/null
@@ -1,228 +0,0 @@
-package android.support.car {
-
-  public class Car {
-    method public void connect() throws java.lang.IllegalStateException;
-    method public static android.support.car.Car createCar(android.content.Context, android.support.car.CarConnectionCallback, android.os.Handler);
-    method public static android.support.car.Car createCar(android.content.Context, android.support.car.CarConnectionCallback);
-    method public void disconnect();
-    method public java.lang.Object getCarManager(java.lang.String) throws android.support.car.CarNotConnectedException;
-    method public <T> T getCarManager(java.lang.Class<T>) throws android.support.car.CarNotConnectedException;
-    method public boolean isConnected();
-    method public boolean isConnecting();
-    field public static final java.lang.String APP_FOCUS_SERVICE = "app_focus";
-    field public static final java.lang.String AUDIO_SERVICE = "audio";
-    field public static final java.lang.String INFO_SERVICE = "info";
-    field public static final java.lang.String NAVIGATION_STATUS_SERVICE = "car_navigation_service";
-    field public static final java.lang.String PERMISSION_CAR_NAVIGATION_MANAGER = "android.car.permission.PERMISSION_CAR_NAVIGATION_MANAGER";
-    field public static final java.lang.String PERMISSION_VENDOR_EXTENSION = "android.car.permission.CAR_VENDOR_EXTENSION";
-    field public static final java.lang.String SENSOR_SERVICE = "sensor";
-  }
-
-  public abstract class CarAppFocusManager {
-    ctor public CarAppFocusManager();
-    method public abstract void abandonAppFocus(android.support.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int);
-    method public abstract void abandonAppFocus(android.support.car.CarAppFocusManager.OnAppFocusOwnershipCallback);
-    method public abstract void addFocusListener(android.support.car.CarAppFocusManager.OnAppFocusChangedListener, int) throws android.support.car.CarNotConnectedException;
-    method public abstract boolean isOwningFocus(int, android.support.car.CarAppFocusManager.OnAppFocusOwnershipCallback) throws android.support.car.CarNotConnectedException;
-    method public abstract void removeFocusListener(android.support.car.CarAppFocusManager.OnAppFocusChangedListener, int);
-    method public abstract void removeFocusListener(android.support.car.CarAppFocusManager.OnAppFocusChangedListener);
-    method public abstract int requestAppFocus(int, android.support.car.CarAppFocusManager.OnAppFocusOwnershipCallback) throws android.support.car.CarNotConnectedException, java.lang.SecurityException;
-    field public static final int APP_FOCUS_REQUEST_FAILED = 0; // 0x0
-    field public static final int APP_FOCUS_REQUEST_SUCCEEDED = 1; // 0x1
-    field public static final int APP_FOCUS_TYPE_NAVIGATION = 1; // 0x1
-  }
-
-  public static abstract interface CarAppFocusManager.OnAppFocusChangedListener {
-    method public abstract void onAppFocusChanged(android.support.car.CarAppFocusManager, int, boolean);
-  }
-
-  public static abstract interface CarAppFocusManager.OnAppFocusOwnershipCallback {
-    method public abstract void onAppFocusOwnershipGranted(android.support.car.CarAppFocusManager, int);
-    method public abstract void onAppFocusOwnershipLost(android.support.car.CarAppFocusManager, int);
-  }
-
-  public abstract class CarConnectionCallback {
-    ctor public CarConnectionCallback();
-    method public abstract void onConnected(android.support.car.Car);
-    method public abstract void onDisconnected(android.support.car.Car);
-  }
-
-  public abstract class CarInfoManager {
-    ctor public CarInfoManager();
-    method public abstract int getDriverPosition() throws android.support.car.CarNotConnectedException;
-    method public abstract float getEvBatteryCapacity() throws android.support.car.CarNotConnectedException;
-    method public abstract int[] getEvConnectorTypes() throws android.support.car.CarNotConnectedException;
-    method public abstract float getFuelCapacity() throws android.support.car.CarNotConnectedException;
-    method public abstract int[] getFuelTypes() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getHeadunitManufacturer() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getHeadunitModel() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getHeadunitSoftwareBuild() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getHeadunitSoftwareVersion() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getManufacturer() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getModel() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getModelYear() throws android.support.car.CarNotConnectedException;
-    method public abstract java.lang.String getVehicleId() throws android.support.car.CarNotConnectedException;
-    field public static final int DRIVER_SIDE_CENTER = 3; // 0x3
-    field public static final int DRIVER_SIDE_LEFT = 1; // 0x1
-    field public static final int DRIVER_SIDE_RIGHT = 2; // 0x2
-    field public static final int DRIVER_SIDE_UNKNOWN = 0; // 0x0
-  }
-
-  public class CarNotConnectedException extends java.lang.Exception {
-    ctor public CarNotConnectedException();
-    ctor public CarNotConnectedException(java.lang.String);
-    ctor public CarNotConnectedException(java.lang.String, java.lang.Throwable);
-    ctor public CarNotConnectedException(java.lang.Exception);
-  }
-
-}
-
-package android.support.car.annotation {
-
-  public abstract class ValueTypeDef implements java.lang.annotation.Annotation {
-  }
-
-  public abstract class VersionDef implements java.lang.annotation.Annotation {
-  }
-
-}
-
-package android.support.car.hardware {
-
-  public class CarSensorEvent {
-    method public android.support.car.hardware.CarSensorEvent.CompassData getCompassData();
-    method public android.support.car.hardware.CarSensorEvent.DrivingStatusData getDrivingStatusData();
-    method public android.support.car.hardware.CarSensorEvent.NightData getNightData();
-    method public android.support.car.hardware.CarSensorEvent.ParkingBrakeData getParkingBrakeData();
-    field public static final int DRIVE_STATUS_FULLY_RESTRICTED = 31; // 0x1f
-    field public static final int DRIVE_STATUS_LIMIT_MESSAGE_LEN = 16; // 0x10
-    field public static final int DRIVE_STATUS_NO_CONFIG = 8; // 0x8
-    field public static final int DRIVE_STATUS_NO_KEYBOARD_INPUT = 2; // 0x2
-    field public static final int DRIVE_STATUS_NO_VIDEO = 1; // 0x1
-    field public static final int DRIVE_STATUS_NO_VOICE_INPUT = 4; // 0x4
-    field public static final int DRIVE_STATUS_UNRESTRICTED = 0; // 0x0
-    field public static final int INDEX_COMPASS_BEARING = 0; // 0x0
-    field public static final int INDEX_COMPASS_PITCH = 1; // 0x1
-    field public static final int INDEX_COMPASS_ROLL = 2; // 0x2
-    field public static final int INDEX_WHEEL_DISTANCE_FRONT_LEFT = 1; // 0x1
-    field public static final int INDEX_WHEEL_DISTANCE_FRONT_RIGHT = 2; // 0x2
-    field public static final int INDEX_WHEEL_DISTANCE_REAR_LEFT = 4; // 0x4
-    field public static final int INDEX_WHEEL_DISTANCE_REAR_RIGHT = 3; // 0x3
-    field public static final int INDEX_WHEEL_DISTANCE_RESET_COUNT = 0; // 0x0
-    field public final float[] floatValues;
-    field public final int[] intValues;
-    field public final long[] longValues;
-    field public final int sensorType;
-    field public final long timestamp;
-  }
-
-  public static class CarSensorEvent.CompassData {
-    field public final float bearing;
-    field public final float pitch;
-    field public final float roll;
-    field public final long timestamp;
-  }
-
-  public static class CarSensorEvent.DrivingStatusData {
-    method public boolean isConfigurationRestricted();
-    method public boolean isFullyRestricted();
-    method public boolean isKeyboardRestricted();
-    method public boolean isMessageLengthRestricted();
-    method public boolean isVideoRestricted();
-    method public boolean isVoiceRestricted();
-    field public final int status;
-    field public final long timestamp;
-  }
-
-  public static class CarSensorEvent.NightData {
-    field public final boolean isNightMode;
-    field public final long timestamp;
-  }
-
-  public static class CarSensorEvent.ParkingBrakeData {
-    field public final boolean isEngaged;
-    field public final long timestamp;
-  }
-
-  public abstract class CarSensorManager {
-    ctor public CarSensorManager();
-    method public abstract boolean addListener(android.support.car.hardware.CarSensorManager.OnSensorChangedListener, int, int) throws android.support.car.CarNotConnectedException, java.lang.IllegalArgumentException;
-    method public abstract android.support.car.hardware.CarSensorEvent getLatestSensorEvent(int) throws android.support.car.CarNotConnectedException;
-    method public abstract int[] getSupportedSensors() throws android.support.car.CarNotConnectedException;
-    method public abstract boolean isSensorSupported(int) throws android.support.car.CarNotConnectedException;
-    method public abstract void removeListener(android.support.car.hardware.CarSensorManager.OnSensorChangedListener);
-    method public abstract void removeListener(android.support.car.hardware.CarSensorManager.OnSensorChangedListener, int);
-    field public static final int SENSOR_RATE_FASTEST = 100; // 0x64
-    field public static final int SENSOR_RATE_NORMAL = 1; // 0x1
-    field public static final int SENSOR_TYPE_ABS_ACTIVE = 24; // 0x18
-    field public static final int SENSOR_TYPE_COMPASS = 1; // 0x1
-    field public static final int SENSOR_TYPE_DRIVING_STATUS = 11; // 0xb
-    field public static final int SENSOR_TYPE_EV_BATTERY_CHARGE_RATE = 31; // 0x1f
-    field public static final int SENSOR_TYPE_EV_BATTERY_LEVEL = 28; // 0x1c
-    field public static final int SENSOR_TYPE_EV_CHARGE_PORT_CONNECTED = 30; // 0x1e
-    field public static final int SENSOR_TYPE_EV_CHARGE_PORT_OPEN = 29; // 0x1d
-    field public static final int SENSOR_TYPE_FUEL_DOOR_OPEN = 27; // 0x1b
-    field public static final int SENSOR_TYPE_NIGHT = 9; // 0x9
-    field public static final int SENSOR_TYPE_PARKING_BRAKE = 6; // 0x6
-    field public static final int SENSOR_TYPE_TRACTION_CONTROL_ACTIVE = 25; // 0x19
-    field public static final int SENSOR_TYPE_WHEEL_TICK_DISTANCE = 23; // 0x17
-  }
-
-  public static abstract interface CarSensorManager.OnSensorChangedListener {
-    method public abstract void onSensorChanged(android.support.car.hardware.CarSensorManager, android.support.car.hardware.CarSensorEvent);
-  }
-
-}
-
-package android.support.car.media {
-
-  public abstract class CarAudioManager {
-    ctor public CarAudioManager();
-    method public abstract android.support.car.media.CarAudioRecord createCarAudioRecord(int) throws android.support.car.CarNotConnectedException, java.lang.SecurityException;
-    method public abstract android.media.AudioFormat getAudioRecordAudioFormat() throws android.support.car.CarNotConnectedException;
-    method public abstract int getAudioRecordMaxBufferSize() throws android.support.car.CarNotConnectedException;
-    method public abstract int getAudioRecordMinBufferSize() throws android.support.car.CarNotConnectedException;
-    method public abstract boolean isAudioRecordSupported() throws android.support.car.CarNotConnectedException;
-  }
-
-  public abstract class CarAudioRecord {
-    ctor public CarAudioRecord();
-    method public abstract int getAudioSessionId() throws android.support.car.CarNotConnectedException;
-    method public abstract int getBufferSize() throws android.support.car.CarNotConnectedException;
-    method public abstract int getRecordingState() throws android.support.car.CarNotConnectedException;
-    method public abstract int getState() throws android.support.car.CarNotConnectedException;
-    method public abstract int read(byte[], int, int) throws android.support.car.CarNotConnectedException, java.lang.IllegalStateException;
-    method public abstract void release();
-    method public abstract void startRecording() throws android.support.car.CarNotConnectedException;
-    method public abstract void stop();
-  }
-
-}
-
-package android.support.car.navigation {
-
-  public class CarNavigationInstrumentCluster {
-    method public int getImageColorDepthBits();
-    method public int getImageHeight();
-    method public int getImageWidth();
-    method public int getMinIntervalMillis();
-    method public int getType();
-    method public boolean supportsCustomImages();
-    field public static final int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED = 1; // 0x1
-    field public static final int CLUSTER_TYPE_IMAGE_CODES_ONLY = 2; // 0x2
-  }
-
-  public abstract class CarNavigationStatusManager {
-    ctor public CarNavigationStatusManager();
-    method public abstract void addListener(android.support.car.navigation.CarNavigationStatusManager.CarNavigationCallback) throws android.support.car.CarNotConnectedException;
-    method public abstract void removeListener();
-    method public abstract void sendEvent(int, android.os.Bundle) throws android.support.car.CarNotConnectedException;
-  }
-
-  public static abstract interface CarNavigationStatusManager.CarNavigationCallback {
-    method public abstract void onInstrumentClusterStarted(android.support.car.navigation.CarNavigationStatusManager, android.support.car.navigation.CarNavigationInstrumentCluster);
-    method public abstract void onInstrumentClusterStopped(android.support.car.navigation.CarNavigationStatusManager);
-  }
-
-}
-
diff --git a/car-support-lib/api/removed.txt b/car-support-lib/api/removed.txt
deleted file mode 100644
index e69de29..0000000
--- a/car-support-lib/api/removed.txt
+++ /dev/null
diff --git a/car-support-lib/car-support.mk b/car-support-lib/car-support.mk
deleted file mode 100644
index 7feba67..0000000
--- a/car-support-lib/car-support.mk
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# Include this make file to build your application with car friendly UI.
-#
-# Make sure to include it after you've set all your desired LOCAL variables.
-# Note that you must explicitly set your LOCAL_RESOURCE_DIR before including this file.
-#
-# For example:
-#
-#   LOCAL_RESOURCE_DIR := \
-#        $(LOCAL_PATH)/res
-#
-#   include packages/services/Car/car-support-lib/car-support.mk
-#
-
-# Check that LOCAL_RESOURCE_DIR is defined
-ifeq (,$(LOCAL_RESOURCE_DIR))
-$(error LOCAL_RESOURCE_DIR must be defined)
-endif
-
-# Add --auto-add-overlay flag if not present
-ifeq (,$(findstring --auto-add-overlay, $(LOCAL_AAPT_FLAGS)))
-LOCAL_AAPT_FLAGS += --auto-add-overlay
-endif
-
-# Include car support library, if not already included
-ifeq (,$(findstring android.support.car, $(LOCAL_STATIC_JAVA_LIBRARIES)))
-LOCAL_STATIC_JAVA_LIBRARIES += android.support.car
-endif
-
-LOCAL_JAVA_LIBRARIES += android.car
diff --git a/car-support-lib/proguard-extra-keeps.flags b/car-support-lib/proguard-extra-keeps.flags
deleted file mode 100644
index 72ea927..0000000
--- a/car-support-lib/proguard-extra-keeps.flags
+++ /dev/null
@@ -1,23 +0,0 @@
--keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,EnclosingMethod,*Annotation*
-
--keep class android.support.car.CarServiceLoader {
-    public protected *;
-    class CarConnectionCallbackProxy;
-}
-
--keep class android.support.car.CarServiceLoader$CarConnectionCallbackProxy {
-    *;
-}
-
--keep class android.support.car.hardware.CarSensorEvent {
-    public <init>(...);
-}
-
--keep class android.support.car.navigation.CarNavigationInstrumentCluster {
-    public static ... createCluster(...);
-    public static ... createCustomImageCluster(...);
-}
-
--keep class android.support.car.CarManagerBase {
-  *;
-}
diff --git a/car-support-lib/proguard-release.flags b/car-support-lib/proguard-release.flags
deleted file mode 100644
index bb250cf..0000000
--- a/car-support-lib/proguard-release.flags
+++ /dev/null
@@ -1,31396 +0,0 @@
--keep class android.accessibilityservice.AccessibilityServiceInfo {
-    <init>();
-    <init>(android.content.pm.ResolveInfo, android.content.Context);
-
-    public static java.lang.String capabilityToString(int);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static java.lang.String feedbackTypeToString(int);
-    public static java.lang.String flagToString(int);
-    public boolean getCanRetrieveWindowContent();
-    public int getCapabilities();
-    public java.util.List getCapabilityInfos();
-    public java.util.List getCapabilityInfos(android.content.Context);
-    public android.content.ComponentName getComponentName();
-    public java.lang.String getDescription();
-    public java.lang.String getId();
-    public android.content.pm.ResolveInfo getResolveInfo();
-    public java.lang.String getSettingsActivityName();
-    public int hashCode();
-    public boolean isDirectBootAware();
-    public java.lang.String loadDescription(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadSummary(android.content.pm.PackageManager);
-    public void setCapabilities(int);
-    public void setComponentName(android.content.ComponentName);
-    public java.lang.String toString();
-    public void updateDynamicallyConfigurableProperties(android.accessibilityservice.AccessibilityServiceInfo);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int CAPABILITY_CAN_CONTROL_MAGNIFICATION;
-    public static int CAPABILITY_CAN_PERFORM_GESTURES;
-    public static int CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY;
-    public static int CAPABILITY_CAN_REQUEST_FILTER_KEY_EVENTS;
-    public static int CAPABILITY_CAN_REQUEST_FINGERPRINT_GESTURES;
-    public static int CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION;
-    public static int CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DEFAULT;
-    public static int FEEDBACK_ALL_MASK;
-    public static int FEEDBACK_AUDIBLE;
-    public static int FEEDBACK_BRAILLE;
-    public static int FEEDBACK_GENERIC;
-    public static int FEEDBACK_HAPTIC;
-    public static int FEEDBACK_SPOKEN;
-    public static int FEEDBACK_VISUAL;
-    public static int FLAG_ENABLE_ACCESSIBILITY_VOLUME;
-    public static int FLAG_FORCE_DIRECT_BOOT_AWARE;
-    public static int FLAG_INCLUDE_NOT_IMPORTANT_VIEWS;
-    public static int FLAG_REPORT_VIEW_IDS;
-    public static int FLAG_REQUEST_ACCESSIBILITY_BUTTON;
-    public static int FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY;
-    public static int FLAG_REQUEST_FILTER_KEY_EVENTS;
-    public static int FLAG_REQUEST_FINGERPRINT_GESTURES;
-    public static int FLAG_REQUEST_TOUCH_EXPLORATION_MODE;
-    public static int FLAG_RETRIEVE_INTERACTIVE_WINDOWS;
-    public boolean crashed;
-    public int eventTypes;
-    public int feedbackType;
-    public int flags;
-    public long notificationTimeout;
-    public java.lang.String[] packageNames;
-}
-
--keep class android.accessibilityservice.AccessibilityServiceInfo$CapabilityInfo {
-    <init>(int, int, int);
-
-
-
-    public int capability;
-    public int descResId;
-    public int titleResId;
-}
-
--keep class android.accessibilityservice.IAccessibilityServiceClient {
-
-    public abstract void clearAccessibilityCache();
-    public abstract void init(android.accessibilityservice.IAccessibilityServiceConnection, int, android.os.IBinder);
-    public abstract void onAccessibilityButtonAvailabilityChanged(boolean);
-    public abstract void onAccessibilityButtonClicked();
-    public abstract void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent, boolean);
-    public abstract void onFingerprintCapturingGesturesChanged(boolean);
-    public abstract void onFingerprintGesture(int);
-    public abstract void onGesture(int);
-    public abstract void onInterrupt();
-    public abstract void onKeyEvent(android.view.KeyEvent, int);
-    public abstract void onMagnificationChanged(android.graphics.Region, float, float, float);
-    public abstract void onPerformGestureResult(int, boolean);
-    public abstract void onSoftKeyboardShowModeChanged(int);
-
-
-}
-
--keep class android.accessibilityservice.IAccessibilityServiceConnection {
-
-    public abstract void disableSelf();
-    public abstract java.lang.String[] findAccessibilityNodeInfoByAccessibilityId(int, long, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, long, android.os.Bundle);
-    public abstract java.lang.String[] findAccessibilityNodeInfosByText(int, long, java.lang.String, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, long);
-    public abstract java.lang.String[] findAccessibilityNodeInfosByViewId(int, long, java.lang.String, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, long);
-    public abstract java.lang.String[] findFocus(int, long, int, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, long);
-    public abstract java.lang.String[] focusSearch(int, long, int, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, long);
-    public abstract float getMagnificationCenterX();
-    public abstract float getMagnificationCenterY();
-    public abstract android.graphics.Region getMagnificationRegion();
-    public abstract float getMagnificationScale();
-    public abstract android.accessibilityservice.AccessibilityServiceInfo getServiceInfo();
-    public abstract android.view.accessibility.AccessibilityWindowInfo getWindow(int);
-    public abstract java.util.List getWindows();
-    public abstract boolean isAccessibilityButtonAvailable();
-    public abstract boolean isFingerprintGestureDetectionAvailable();
-    public abstract boolean performAccessibilityAction(int, long, int, android.os.Bundle, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, long);
-    public abstract boolean performGlobalAction(int);
-    public abstract boolean resetMagnification(boolean);
-    public abstract void sendGesture(int, android.content.pm.ParceledListSlice);
-    public abstract void setMagnificationCallbackEnabled(boolean);
-    public abstract boolean setMagnificationScaleAndCenter(float, float, float, boolean);
-    public abstract void setOnKeyEventResult(boolean, int);
-    public abstract void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo);
-    public abstract void setSoftKeyboardCallbackEnabled(boolean);
-    public abstract boolean setSoftKeyboardShowMode(int);
-
-
-}
-
--keep class android.accounts.Account {
-    <init>(java.lang.String, java.lang.String);
-    <init>(android.accounts.Account, java.lang.String);
-    <init>(java.lang.String, java.lang.String, java.lang.String);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.String getAccessId();
-    public int hashCode();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String name;
-    public java.lang.String type;
-}
-
--keep class android.animation.AnimationHandler {
-    <init>();
-
-    public void addAnimationFrameCallback(android.animation.AnimationHandler$AnimationFrameCallback, long);
-    public void addOneShotCommitCallback(android.animation.AnimationHandler$AnimationFrameCallback);
-    public static int getAnimationCount();
-    public static long getFrameDelay();
-    public static android.animation.AnimationHandler getInstance();
-    public void removeCallback(android.animation.AnimationHandler$AnimationFrameCallback);
-    public static void setFrameDelay(long);
-    public void setProvider(android.animation.AnimationHandler$AnimationFrameCallbackProvider);
-
-
-    public static java.lang.ThreadLocal sAnimatorHandler;
-}
-
--keep class android.animation.AnimationHandler$AnimationFrameCallback {
-
-    public abstract void commitAnimationFrame(long);
-    public abstract boolean doAnimationFrame(long);
-
-
-}
-
--keep class android.animation.AnimationHandler$AnimationFrameCallbackProvider {
-
-    public abstract long getFrameDelay();
-    public abstract long getFrameTime();
-    public abstract void postCommitCallback(java.lang.Runnable);
-    public abstract void postFrameCallback(android.view.Choreographer$FrameCallback);
-    public abstract void setFrameDelay(long);
-
-
-}
-
--keep class android.animation.Animator {
-    <init>();
-
-    public void addListener(android.animation.Animator$AnimatorListener);
-    public void addPauseListener(android.animation.Animator$AnimatorPauseListener);
-    public void appendChangingConfigurations(int);
-    public boolean canReverse();
-    public void cancel();
-    public android.animation.Animator clone();
-    public java.lang.Object clone();
-    public android.content.res.ConstantState createConstantState();
-    public void end();
-    public int getChangingConfigurations();
-    public abstract long getDuration();
-    public android.animation.TimeInterpolator getInterpolator();
-    public java.util.ArrayList getListeners();
-    public abstract long getStartDelay();
-    public long getTotalDuration();
-    public boolean isPaused();
-    public abstract boolean isRunning();
-    public boolean isStarted();
-    public void pause();
-    public void removeAllListeners();
-    public void removeListener(android.animation.Animator$AnimatorListener);
-    public void removePauseListener(android.animation.Animator$AnimatorPauseListener);
-    public void resume();
-    public void reverse();
-    public void setAllowRunningAsynchronously(boolean);
-    public void setChangingConfigurations(int);
-    public abstract android.animation.Animator setDuration(long);
-    public abstract void setInterpolator(android.animation.TimeInterpolator);
-    public abstract void setStartDelay(long);
-    public void setTarget(java.lang.Object);
-    public void setupEndValues();
-    public void setupStartValues();
-    public void start();
-
-
-    public static long DURATION_INFINITE;
-}
-
--keep class android.animation.Animator$AnimatorListener {
-
-    public abstract void onAnimationCancel(android.animation.Animator);
-    public void onAnimationEnd(android.animation.Animator, boolean);
-    public abstract void onAnimationEnd(android.animation.Animator);
-    public abstract void onAnimationRepeat(android.animation.Animator);
-    public void onAnimationStart(android.animation.Animator, boolean);
-    public abstract void onAnimationStart(android.animation.Animator);
-
-
-}
-
--keep class android.animation.Animator$AnimatorPauseListener {
-
-    public abstract void onAnimationPause(android.animation.Animator);
-    public abstract void onAnimationResume(android.animation.Animator);
-
-
-}
-
--keep class android.animation.AnimatorSet {
-    <init>();
-
-    public boolean canReverse();
-    public void cancel();
-    public android.animation.AnimatorSet clone();
-    public android.animation.Animator clone();
-    public java.lang.Object clone();
-    public void commitAnimationFrame(long);
-    public boolean doAnimationFrame(long);
-    public void end();
-    public int getChangingConfigurations();
-    public java.util.ArrayList getChildAnimations();
-    public long getCurrentPlayTime();
-    public long getDuration();
-    public android.animation.TimeInterpolator getInterpolator();
-    public long getStartDelay();
-    public long getTotalDuration();
-    public boolean isRunning();
-    public boolean isStarted();
-    public void pause();
-    public android.animation.AnimatorSet$Builder play(android.animation.Animator);
-    public void playSequentially(android.animation.Animator[]);
-    public void playSequentially(java.util.List);
-    public void playTogether(android.animation.Animator[]);
-    public void playTogether(java.util.Collection);
-    public void resume();
-    public void reverse();
-    public void setCurrentPlayTime(long);
-    public android.animation.AnimatorSet setDuration(long);
-    public android.animation.Animator setDuration(long);
-    public void setInterpolator(android.animation.TimeInterpolator);
-    public void setStartDelay(long);
-    public void setTarget(java.lang.Object);
-    public void setupEndValues();
-    public void setupStartValues();
-    public boolean shouldPlayTogether();
-    public void start();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.animation.AnimatorSet$Builder {
-
-    public android.animation.AnimatorSet$Builder after(android.animation.Animator);
-    public android.animation.AnimatorSet$Builder after(long);
-    public android.animation.AnimatorSet$Builder before(android.animation.Animator);
-    public android.animation.AnimatorSet$Builder with(android.animation.Animator);
-
-
-}
-
--keep class android.animation.Keyframe {
-    <init>();
-
-    public abstract android.animation.Keyframe clone();
-    public java.lang.Object clone();
-    public float getFraction();
-    public android.animation.TimeInterpolator getInterpolator();
-    public java.lang.Class getType();
-    public abstract java.lang.Object getValue();
-    public boolean hasValue();
-    public static android.animation.Keyframe ofFloat(float, float);
-    public static android.animation.Keyframe ofFloat(float);
-    public static android.animation.Keyframe ofInt(float, int);
-    public static android.animation.Keyframe ofInt(float);
-    public static android.animation.Keyframe ofObject(float, java.lang.Object);
-    public static android.animation.Keyframe ofObject(float);
-    public void setFraction(float);
-    public void setInterpolator(android.animation.TimeInterpolator);
-    public abstract void setValue(java.lang.Object);
-
-
-}
-
--keep class android.animation.LayoutTransition {
-    <init>();
-
-    public void addChild(android.view.ViewGroup, android.view.View);
-    public void addTransitionListener(android.animation.LayoutTransition$TransitionListener);
-    public void cancel();
-    public void cancel(int);
-    public void disableTransitionType(int);
-    public void enableTransitionType(int);
-    public void endChangingAnimations();
-    public android.animation.Animator getAnimator(int);
-    public long getDuration(int);
-    public android.animation.TimeInterpolator getInterpolator(int);
-    public long getStagger(int);
-    public long getStartDelay(int);
-    public java.util.List getTransitionListeners();
-    public void hideChild(android.view.ViewGroup, android.view.View);
-    public void hideChild(android.view.ViewGroup, android.view.View, int);
-    public boolean isChangingLayout();
-    public boolean isRunning();
-    public boolean isTransitionTypeEnabled(int);
-    public void layoutChange(android.view.ViewGroup);
-    public void removeChild(android.view.ViewGroup, android.view.View);
-    public void removeTransitionListener(android.animation.LayoutTransition$TransitionListener);
-    public void setAnimateParentHierarchy(boolean);
-    public void setAnimator(int, android.animation.Animator);
-    public void setDuration(long);
-    public void setDuration(int, long);
-    public void setInterpolator(int, android.animation.TimeInterpolator);
-    public void setStagger(int, long);
-    public void setStartDelay(int, long);
-    public void showChild(android.view.ViewGroup, android.view.View);
-    public void showChild(android.view.ViewGroup, android.view.View, int);
-    public void startChangingAnimations();
-
-
-    public static int APPEARING;
-    public static int CHANGE_APPEARING;
-    public static int CHANGE_DISAPPEARING;
-    public static int CHANGING;
-    public static int DISAPPEARING;
-}
-
--keep class android.animation.LayoutTransition$TransitionListener {
-
-    public abstract void endTransition(android.animation.LayoutTransition, android.view.ViewGroup, android.view.View, int);
-    public abstract void startTransition(android.animation.LayoutTransition, android.view.ViewGroup, android.view.View, int);
-
-
-}
-
--keep class android.animation.PropertyValuesHolder {
-
-    public android.animation.PropertyValuesHolder clone();
-    public java.lang.Object clone();
-    public java.lang.String getPropertyName();
-    public void getPropertyValues(android.animation.PropertyValuesHolder$PropertyValues);
-    public java.lang.Class getValueType();
-    public static android.animation.PropertyValuesHolder ofFloat(java.lang.String, float[]);
-    public static android.animation.PropertyValuesHolder ofFloat(android.util.Property, float[]);
-    public static android.animation.PropertyValuesHolder ofInt(java.lang.String, int[]);
-    public static android.animation.PropertyValuesHolder ofInt(android.util.Property, int[]);
-    public static android.animation.PropertyValuesHolder ofKeyframe(java.lang.String, android.animation.Keyframe[]);
-    public static android.animation.PropertyValuesHolder ofKeyframe(android.util.Property, android.animation.Keyframe[]);
-    public static android.animation.PropertyValuesHolder ofMultiFloat(java.lang.String, float[][]);
-    public static android.animation.PropertyValuesHolder ofMultiFloat(java.lang.String, android.graphics.Path);
-    public static android.animation.PropertyValuesHolder ofMultiFloat(java.lang.String, android.animation.TypeConverter, android.animation.TypeEvaluator, java.lang.Object[]);
-    public static android.animation.PropertyValuesHolder ofMultiFloat(java.lang.String, android.animation.TypeConverter, android.animation.TypeEvaluator, android.animation.Keyframe[]);
-    public static android.animation.PropertyValuesHolder ofMultiInt(java.lang.String, int[][]);
-    public static android.animation.PropertyValuesHolder ofMultiInt(java.lang.String, android.graphics.Path);
-    public static android.animation.PropertyValuesHolder ofMultiInt(java.lang.String, android.animation.TypeConverter, android.animation.TypeEvaluator, java.lang.Object[]);
-    public static android.animation.PropertyValuesHolder ofMultiInt(java.lang.String, android.animation.TypeConverter, android.animation.TypeEvaluator, android.animation.Keyframe[]);
-    public static android.animation.PropertyValuesHolder ofObject(java.lang.String, android.animation.TypeEvaluator, java.lang.Object[]);
-    public static android.animation.PropertyValuesHolder ofObject(java.lang.String, android.animation.TypeConverter, android.graphics.Path);
-    public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeEvaluator, java.lang.Object[]);
-    public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeConverter, android.animation.TypeEvaluator, java.lang.Object[]);
-    public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeConverter, android.graphics.Path);
-    public void setConverter(android.animation.TypeConverter);
-    public void setEvaluator(android.animation.TypeEvaluator);
-    public void setFloatValues(float[]);
-    public void setIntValues(int[]);
-    public void setKeyframes(android.animation.Keyframe[]);
-    public void setObjectValues(java.lang.Object[]);
-    public void setProperty(android.util.Property);
-    public void setPropertyName(java.lang.String);
-    public java.lang.String toString();
-
-
-    protected android.util.Property mProperty;
-}
-
--keep class android.animation.PropertyValuesHolder$PropertyValues {
-    <init>();
-
-    public java.lang.String toString();
-
-
-    public android.animation.PropertyValuesHolder$PropertyValues$DataSource dataSource;
-    public java.lang.Object endValue;
-    public java.lang.String propertyName;
-    public java.lang.Object startValue;
-    public java.lang.Class type;
-}
-
--keep class android.animation.PropertyValuesHolder$PropertyValues$DataSource {
-
-    public abstract java.lang.Object getValueAtFraction(float);
-
-
-}
-
--keep class android.animation.StateListAnimator {
-    <init>();
-
-    public void addState(int[], android.animation.Animator);
-    public void appendChangingConfigurations(int);
-    public android.animation.StateListAnimator clone();
-    public java.lang.Object clone();
-    public android.content.res.ConstantState createConstantState();
-    public int getChangingConfigurations();
-    public android.animation.Animator getRunningAnimator();
-    public android.view.View getTarget();
-    public java.util.ArrayList getTuples();
-    public void jumpToCurrentState();
-    public void setChangingConfigurations(int);
-    public void setState(int[]);
-    public void setTarget(android.view.View);
-
-
-}
-
--keep class android.animation.StateListAnimator$Tuple {
-
-    public android.animation.Animator getAnimator();
-    public int[] getSpecs();
-
-
-}
-
--keep class android.animation.TimeInterpolator {
-
-    public abstract float getInterpolation(float);
-
-
-}
-
--keep class android.animation.TypeConverter {
-    <init>(java.lang.Class, java.lang.Class);
-
-    public abstract java.lang.Object convert(java.lang.Object);
-
-
-}
-
--keep class android.animation.TypeEvaluator {
-
-    public abstract java.lang.Object evaluate(float, java.lang.Object, java.lang.Object);
-
-
-}
-
--keep class android.animation.ValueAnimator {
-    <init>();
-
-    public void addUpdateListener(android.animation.ValueAnimator$AnimatorUpdateListener);
-    public static boolean areAnimatorsEnabled();
-    public boolean canReverse();
-    public void cancel();
-    public android.animation.ValueAnimator clone();
-    public android.animation.Animator clone();
-    public java.lang.Object clone();
-    public void commitAnimationFrame(long);
-    public boolean doAnimationFrame(long);
-    public void end();
-    public float getAnimatedFraction();
-    public java.lang.Object getAnimatedValue();
-    public java.lang.Object getAnimatedValue(java.lang.String);
-    public android.animation.AnimationHandler getAnimationHandler();
-    public static int getCurrentAnimationsCount();
-    public long getCurrentPlayTime();
-    public long getDuration();
-    public static float getDurationScale();
-    public static long getFrameDelay();
-    public android.animation.TimeInterpolator getInterpolator();
-    public int getRepeatCount();
-    public int getRepeatMode();
-    public long getStartDelay();
-    public long getTotalDuration();
-    public android.animation.PropertyValuesHolder[] getValues();
-    public boolean isRunning();
-    public boolean isStarted();
-    public static android.animation.ValueAnimator ofArgb(int[]);
-    public static android.animation.ValueAnimator ofFloat(float[]);
-    public static android.animation.ValueAnimator ofInt(int[]);
-    public static android.animation.ValueAnimator ofObject(android.animation.TypeEvaluator, java.lang.Object[]);
-    public static android.animation.ValueAnimator ofPropertyValuesHolder(android.animation.PropertyValuesHolder[]);
-    public void overrideDurationScale(float);
-    public void pause();
-    public void removeAllUpdateListeners();
-    public void removeUpdateListener(android.animation.ValueAnimator$AnimatorUpdateListener);
-    public void resume();
-    public void reverse();
-    public void setAllowRunningAsynchronously(boolean);
-    public void setCurrentFraction(float);
-    public void setCurrentPlayTime(long);
-    public android.animation.ValueAnimator setDuration(long);
-    public android.animation.Animator setDuration(long);
-    public static void setDurationScale(float);
-    public void setEvaluator(android.animation.TypeEvaluator);
-    public void setFloatValues(float[]);
-    public static void setFrameDelay(long);
-    public void setIntValues(int[]);
-    public void setInterpolator(android.animation.TimeInterpolator);
-    public void setObjectValues(java.lang.Object[]);
-    public void setRepeatCount(int);
-    public void setRepeatMode(int);
-    public void setStartDelay(long);
-    public void setValues(android.animation.PropertyValuesHolder[]);
-    public void start();
-    public java.lang.String toString();
-
-
-    public static int INFINITE;
-    public static int RESTART;
-    public static int REVERSE;
-}
-
--keep class android.animation.ValueAnimator$AnimatorUpdateListener {
-
-    public abstract void onAnimationUpdate(android.animation.ValueAnimator);
-
-
-}
-
--keep class android.app.ActionBar {
-    <init>();
-
-    public abstract void addOnMenuVisibilityListener(android.app.ActionBar$OnMenuVisibilityListener);
-    public abstract void addTab(android.app.ActionBar$Tab);
-    public abstract void addTab(android.app.ActionBar$Tab, boolean);
-    public abstract void addTab(android.app.ActionBar$Tab, int);
-    public abstract void addTab(android.app.ActionBar$Tab, int, boolean);
-    public boolean closeOptionsMenu();
-    public boolean collapseActionView();
-    public void dispatchMenuVisibilityChanged(boolean);
-    public abstract android.view.View getCustomView();
-    public abstract int getDisplayOptions();
-    public float getElevation();
-    public abstract int getHeight();
-    public int getHideOffset();
-    public abstract int getNavigationItemCount();
-    public abstract int getNavigationMode();
-    public abstract int getSelectedNavigationIndex();
-    public abstract android.app.ActionBar$Tab getSelectedTab();
-    public abstract java.lang.CharSequence getSubtitle();
-    public abstract android.app.ActionBar$Tab getTabAt(int);
-    public abstract int getTabCount();
-    public android.content.Context getThemedContext();
-    public abstract java.lang.CharSequence getTitle();
-    public abstract void hide();
-    public boolean invalidateOptionsMenu();
-    public boolean isHideOnContentScrollEnabled();
-    public abstract boolean isShowing();
-    public boolean isTitleTruncated();
-    public abstract android.app.ActionBar$Tab newTab();
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public void onDestroy();
-    public boolean onKeyShortcut(int, android.view.KeyEvent);
-    public boolean onMenuKeyEvent(android.view.KeyEvent);
-    public boolean openOptionsMenu();
-    public abstract void removeAllTabs();
-    public abstract void removeOnMenuVisibilityListener(android.app.ActionBar$OnMenuVisibilityListener);
-    public abstract void removeTab(android.app.ActionBar$Tab);
-    public abstract void removeTabAt(int);
-    public abstract void selectTab(android.app.ActionBar$Tab);
-    public abstract void setBackgroundDrawable(android.graphics.drawable.Drawable);
-    public abstract void setCustomView(android.view.View);
-    public abstract void setCustomView(android.view.View, android.app.ActionBar$LayoutParams);
-    public abstract void setCustomView(int);
-    public void setDefaultDisplayHomeAsUpEnabled(boolean);
-    public abstract void setDisplayHomeAsUpEnabled(boolean);
-    public abstract void setDisplayOptions(int);
-    public abstract void setDisplayOptions(int, int);
-    public abstract void setDisplayShowCustomEnabled(boolean);
-    public abstract void setDisplayShowHomeEnabled(boolean);
-    public abstract void setDisplayShowTitleEnabled(boolean);
-    public abstract void setDisplayUseLogoEnabled(boolean);
-    public void setElevation(float);
-    public void setHideOffset(int);
-    public void setHideOnContentScrollEnabled(boolean);
-    public void setHomeActionContentDescription(java.lang.CharSequence);
-    public void setHomeActionContentDescription(int);
-    public void setHomeAsUpIndicator(android.graphics.drawable.Drawable);
-    public void setHomeAsUpIndicator(int);
-    public void setHomeButtonEnabled(boolean);
-    public abstract void setIcon(int);
-    public abstract void setIcon(android.graphics.drawable.Drawable);
-    public abstract void setListNavigationCallbacks(android.widget.SpinnerAdapter, android.app.ActionBar$OnNavigationListener);
-    public abstract void setLogo(int);
-    public abstract void setLogo(android.graphics.drawable.Drawable);
-    public abstract void setNavigationMode(int);
-    public abstract void setSelectedNavigationItem(int);
-    public void setShowHideAnimationEnabled(boolean);
-    public void setSplitBackgroundDrawable(android.graphics.drawable.Drawable);
-    public void setStackedBackgroundDrawable(android.graphics.drawable.Drawable);
-    public abstract void setSubtitle(java.lang.CharSequence);
-    public abstract void setSubtitle(int);
-    public abstract void setTitle(java.lang.CharSequence);
-    public abstract void setTitle(int);
-    public void setWindowTitle(java.lang.CharSequence);
-    public abstract void show();
-    public android.view.ActionMode startActionMode(android.view.ActionMode$Callback);
-
-
-    public static int DISPLAY_HOME_AS_UP;
-    public static int DISPLAY_SHOW_CUSTOM;
-    public static int DISPLAY_SHOW_HOME;
-    public static int DISPLAY_SHOW_TITLE;
-    public static int DISPLAY_TITLE_MULTIPLE_LINES;
-    public static int DISPLAY_USE_LOGO;
-    public static int NAVIGATION_MODE_LIST;
-    public static int NAVIGATION_MODE_STANDARD;
-    public static int NAVIGATION_MODE_TABS;
-}
-
--keep class android.app.ActionBar$LayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(int, int);
-    <init>(int, int, int);
-    <init>(int);
-    <init>(android.app.ActionBar$LayoutParams);
-    <init>(android.view.ViewGroup$LayoutParams);
-
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-
-
-    public int gravity;
-}
-
--keep class android.app.ActionBar$OnMenuVisibilityListener {
-
-    public abstract void onMenuVisibilityChanged(boolean);
-
-
-}
-
--keep class android.app.ActionBar$OnNavigationListener {
-
-    public abstract boolean onNavigationItemSelected(int, long);
-
-
-}
-
--keep class android.app.ActionBar$Tab {
-    <init>();
-
-    public abstract java.lang.CharSequence getContentDescription();
-    public abstract android.view.View getCustomView();
-    public abstract android.graphics.drawable.Drawable getIcon();
-    public abstract int getPosition();
-    public abstract java.lang.Object getTag();
-    public abstract java.lang.CharSequence getText();
-    public abstract void select();
-    public abstract android.app.ActionBar$Tab setContentDescription(int);
-    public abstract android.app.ActionBar$Tab setContentDescription(java.lang.CharSequence);
-    public abstract android.app.ActionBar$Tab setCustomView(android.view.View);
-    public abstract android.app.ActionBar$Tab setCustomView(int);
-    public abstract android.app.ActionBar$Tab setIcon(android.graphics.drawable.Drawable);
-    public abstract android.app.ActionBar$Tab setIcon(int);
-    public abstract android.app.ActionBar$Tab setTabListener(android.app.ActionBar$TabListener);
-    public abstract android.app.ActionBar$Tab setTag(java.lang.Object);
-    public abstract android.app.ActionBar$Tab setText(java.lang.CharSequence);
-    public abstract android.app.ActionBar$Tab setText(int);
-
-
-    public static int INVALID_POSITION;
-}
-
--keep class android.app.ActionBar$TabListener {
-
-    public abstract void onTabReselected(android.app.ActionBar$Tab, android.app.FragmentTransaction);
-    public abstract void onTabSelected(android.app.ActionBar$Tab, android.app.FragmentTransaction);
-    public abstract void onTabUnselected(android.app.ActionBar$Tab, android.app.FragmentTransaction);
-
-
-}
-
--keep class android.app.Activity {
-    <init>();
-
-    public void addContentView(android.view.View, android.view.ViewGroup$LayoutParams);
-    protected void attachBaseContext(android.content.Context);
-    public void autofillClientAuthenticate(int, android.content.IntentSender, android.content.Intent);
-    public void autofillClientDispatchUnhandledKey(android.view.View, android.view.KeyEvent);
-    public android.view.View autofillClientFindViewByAccessibilityIdTraversal(int, int);
-    public android.view.View autofillClientFindViewByAutofillIdTraversal(android.view.autofill.AutofillId);
-    public android.view.View[] autofillClientFindViewsByAutofillIdTraversal(android.view.autofill.AutofillId[]);
-    public android.os.IBinder autofillClientGetActivityToken();
-    public android.content.ComponentName autofillClientGetComponentName();
-    public android.view.autofill.AutofillId autofillClientGetNextAutofillId();
-    public boolean[] autofillClientGetViewVisibility(android.view.autofill.AutofillId[]);
-    public boolean autofillClientIsCompatibilityModeEnabled();
-    public boolean autofillClientIsFillUiShowing();
-    public boolean autofillClientIsVisibleForAutofill();
-    public boolean autofillClientRequestHideFillUi();
-    public boolean autofillClientRequestShowFillUi(android.view.View, int, int, android.graphics.Rect, android.view.autofill.IAutofillWindowPresenter);
-    public void autofillClientResetableStateAvailable();
-    public void autofillClientRunOnUiThread(java.lang.Runnable);
-    public boolean canStartActivityForResult();
-    public void closeContextMenu();
-    public void closeOptionsMenu();
-    public void convertFromTranslucent();
-    public boolean convertToTranslucent(android.app.Activity$TranslucentConversionListener, android.app.ActivityOptions);
-    public android.app.PendingIntent createPendingResult(int, android.content.Intent, int);
-    public void dismissDialog(int);
-    public void dismissKeyboardShortcutsHelper();
-    public void dispatchEnterAnimationComplete();
-    public boolean dispatchGenericMotionEvent(android.view.MotionEvent);
-    public boolean dispatchKeyEvent(android.view.KeyEvent);
-    public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
-    public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-    public boolean dispatchTouchEvent(android.view.MotionEvent);
-    public boolean dispatchTrackballEvent(android.view.MotionEvent);
-    public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public void enterPictureInPictureMode();
-    public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs);
-    public boolean enterPictureInPictureMode(android.app.PictureInPictureParams);
-    public void enterPictureInPictureModeIfPossible();
-    public void exitFreeformMode();
-    public android.view.View findViewById(int);
-    public void finish();
-    public void finishActivity(int);
-    public void finishActivityFromChild(android.app.Activity, int);
-    public void finishAffinity();
-    public void finishAfterTransition();
-    public void finishAndRemoveTask();
-    public void finishFromChild(android.app.Activity);
-    public android.app.ActionBar getActionBar();
-    public android.app.ActivityThread getActivityThread();
-    public android.os.IBinder getActivityToken();
-    public android.app.Application getApplication();
-    public android.view.autofill.AutofillManager$AutofillClient getAutofillClient();
-    public android.content.ComponentName getCallingActivity();
-    public java.lang.String getCallingPackage();
-    public int getChangingConfigurations();
-    public android.content.ComponentName getComponentName();
-    public android.transition.Scene getContentScene();
-    public android.transition.TransitionManager getContentTransitionManager();
-    public android.view.View getCurrentFocus();
-    public android.app.FragmentManager getFragmentManager();
-    public android.content.Intent getIntent();
-    public java.lang.Object getLastNonConfigurationInstance();
-    public android.view.LayoutInflater getLayoutInflater();
-    public android.app.LoaderManager getLoaderManager();
-    public java.lang.String getLocalClassName();
-    public int getMaxNumPictureInPictureActions();
-    public android.media.session.MediaController getMediaController();
-    public android.view.MenuInflater getMenuInflater();
-    public int getNextAutofillId();
-    public android.app.Activity getParent();
-    public android.content.Intent getParentActivityIntent();
-    public android.content.SharedPreferences getPreferences(int);
-    public android.net.Uri getReferrer();
-    public int getRequestedOrientation();
-    public android.view.SearchEvent getSearchEvent();
-    public java.lang.Object getSystemService(java.lang.String);
-    public int getTaskId();
-    public java.lang.CharSequence getTitle();
-    public int getTitleColor();
-    public android.app.VoiceInteractor getVoiceInteractor();
-    public int getVolumeControlStream();
-    public android.view.Window getWindow();
-    public android.view.WindowManager getWindowManager();
-    public boolean hasWindowFocus();
-    public void invalidateOptionsMenu();
-    public boolean isActivityTransitionRunning();
-    public boolean isBackgroundVisibleBehind();
-    public boolean isChangingConfigurations();
-    public boolean isChild();
-    public boolean isDestroyed();
-    public boolean isDisablingEnterExitEventForAutofill();
-    public boolean isFinishing();
-    public boolean isImmersive();
-    public boolean isInMultiWindowMode();
-    public boolean isInPictureInPictureMode();
-    public boolean isLocalVoiceInteractionSupported();
-    public boolean isOverlayWithDecorCaptionEnabled();
-    public boolean isResumed();
-    public boolean isTaskRoot();
-    public boolean isVoiceInteraction();
-    public boolean isVoiceInteractionRoot();
-    public android.database.Cursor managedQuery(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String);
-    public android.database.Cursor managedQuery(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
-    public boolean moveTaskToBack(boolean);
-    public boolean navigateUpTo(android.content.Intent);
-    public boolean navigateUpToFromChild(android.app.Activity, android.content.Intent);
-    public void onActionModeFinished(android.view.ActionMode);
-    public void onActionModeStarted(android.view.ActionMode);
-    public void onActivityReenter(int, android.content.Intent);
-    protected void onActivityResult(int, int, android.content.Intent);
-    protected void onApplyThemeResource(android.content.res.Resources$Theme, int, boolean);
-    public void onAttachFragment(android.app.Fragment);
-    public void onAttachedToWindow();
-    public void onBackPressed();
-    public void onBackgroundVisibleBehindChanged(boolean);
-    protected void onChildTitleChanged(android.app.Activity, java.lang.CharSequence);
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public void onContentChanged();
-    public boolean onContextItemSelected(android.view.MenuItem);
-    public void onContextMenuClosed(android.view.Menu);
-    protected void onCreate(android.os.Bundle);
-    public void onCreate(android.os.Bundle, android.os.PersistableBundle);
-    public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu$ContextMenuInfo);
-    public java.lang.CharSequence onCreateDescription();
-    protected android.app.Dialog onCreateDialog(int);
-    protected android.app.Dialog onCreateDialog(int, android.os.Bundle);
-    public void onCreateNavigateUpTaskStack(android.app.TaskStackBuilder);
-    public boolean onCreateOptionsMenu(android.view.Menu);
-    public boolean onCreatePanelMenu(int, android.view.Menu);
-    public android.view.View onCreatePanelView(int);
-    public boolean onCreateThumbnail(android.graphics.Bitmap, android.graphics.Canvas);
-    public android.view.View onCreateView(java.lang.String, android.content.Context, android.util.AttributeSet);
-    public android.view.View onCreateView(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet);
-    protected void onDestroy();
-    public void onDetachedFromWindow();
-    public void onEnterAnimationComplete();
-    public boolean onGenericMotionEvent(android.view.MotionEvent);
-    public boolean onKeyDown(int, android.view.KeyEvent);
-    public boolean onKeyLongPress(int, android.view.KeyEvent);
-    public boolean onKeyMultiple(int, int, android.view.KeyEvent);
-    public boolean onKeyShortcut(int, android.view.KeyEvent);
-    public boolean onKeyUp(int, android.view.KeyEvent);
-    public void onLocalVoiceInteractionStarted();
-    public void onLocalVoiceInteractionStopped();
-    public void onLowMemory();
-    public boolean onMenuItemSelected(int, android.view.MenuItem);
-    public boolean onMenuOpened(int, android.view.Menu);
-    public void onMovedToDisplay(int, android.content.res.Configuration);
-    public void onMultiWindowModeChanged(boolean, android.content.res.Configuration);
-    public void onMultiWindowModeChanged(boolean);
-    public boolean onNavigateUp();
-    public boolean onNavigateUpFromChild(android.app.Activity);
-    public void onNewActivityOptions(android.app.ActivityOptions);
-    protected void onNewIntent(android.content.Intent);
-    public boolean onOptionsItemSelected(android.view.MenuItem);
-    public void onOptionsMenuClosed(android.view.Menu);
-    public void onPanelClosed(int, android.view.Menu);
-    protected void onPause();
-    public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration);
-    public void onPictureInPictureModeChanged(boolean);
-    protected void onPostCreate(android.os.Bundle);
-    public void onPostCreate(android.os.Bundle, android.os.PersistableBundle);
-    protected void onPostResume();
-    protected void onPrepareDialog(int, android.app.Dialog);
-    protected void onPrepareDialog(int, android.app.Dialog, android.os.Bundle);
-    public void onPrepareNavigateUpTaskStack(android.app.TaskStackBuilder);
-    public boolean onPrepareOptionsMenu(android.view.Menu);
-    public boolean onPreparePanel(int, android.view.View, android.view.Menu);
-    public void onProvideAssistContent(android.app.assist.AssistContent);
-    public void onProvideAssistData(android.os.Bundle);
-    public void onProvideKeyboardShortcuts(java.util.List, android.view.Menu, int);
-    public android.net.Uri onProvideReferrer();
-    public void onRequestPermissionsResult(int, java.lang.String[], int[]);
-    protected void onRestart();
-    protected void onRestoreInstanceState(android.os.Bundle);
-    public void onRestoreInstanceState(android.os.Bundle, android.os.PersistableBundle);
-    protected void onResume();
-    public java.lang.Object onRetainNonConfigurationInstance();
-    protected void onSaveInstanceState(android.os.Bundle);
-    public void onSaveInstanceState(android.os.Bundle, android.os.PersistableBundle);
-    public boolean onSearchRequested(android.view.SearchEvent);
-    public boolean onSearchRequested();
-    protected void onStart();
-    public void onStateNotSaved();
-    protected void onStop();
-    protected void onTitleChanged(java.lang.CharSequence, int);
-    public boolean onTouchEvent(android.view.MotionEvent);
-    public boolean onTrackballEvent(android.view.MotionEvent);
-    public void onTrimMemory(int);
-    public void onUserInteraction();
-    protected void onUserLeaveHint();
-    public void onVisibleBehindCanceled();
-    public void onWindowAttributesChanged(android.view.WindowManager$LayoutParams);
-    public void onWindowDismissed(boolean, boolean);
-    public void onWindowFocusChanged(boolean);
-    public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback);
-    public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback, int);
-    public void openContextMenu(android.view.View);
-    public void openOptionsMenu();
-    public void overridePendingTransition(int, int);
-    public void postponeEnterTransition();
-    public void recreate();
-    public void registerForContextMenu(android.view.View);
-    public void registerRemoteAnimations(android.view.RemoteAnimationDefinition);
-    public boolean releaseInstance();
-    public void removeDialog(int);
-    public void reportFullyDrawn();
-    public android.view.DragAndDropPermissions requestDragAndDropPermissions(android.view.DragEvent);
-    public void requestPermissions(java.lang.String[], int);
-    public void requestShowKeyboardShortcuts();
-    public boolean requestVisibleBehind(boolean);
-    public boolean requestWindowFeature(int);
-    public android.view.View requireViewById(int);
-    public void runOnUiThread(java.lang.Runnable);
-    public void setActionBar(android.widget.Toolbar);
-    public void setContentTransitionManager(android.transition.TransitionManager);
-    public void setContentView(int);
-    public void setContentView(android.view.View);
-    public void setContentView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void setDefaultKeyMode(int);
-    public void setDisablePreviewScreenshots(boolean);
-    public void setEnterSharedElementCallback(android.app.SharedElementCallback);
-    public void setExitSharedElementCallback(android.app.SharedElementCallback);
-    public void setFeatureDrawable(int, android.graphics.drawable.Drawable);
-    public void setFeatureDrawableAlpha(int, int);
-    public void setFeatureDrawableResource(int, int);
-    public void setFeatureDrawableUri(int, android.net.Uri);
-    public void setFinishOnTouchOutside(boolean);
-    public void setImmersive(boolean);
-    public void setIntent(android.content.Intent);
-    public void setMediaController(android.media.session.MediaController);
-    public void setOverlayWithDecorCaptionEnabled(boolean);
-    public void setPersistent(boolean);
-    public void setPictureInPictureArgs(android.app.PictureInPictureArgs);
-    public void setPictureInPictureParams(android.app.PictureInPictureParams);
-    public void setProgress(int);
-    public void setProgressBarIndeterminate(boolean);
-    public void setProgressBarIndeterminateVisibility(boolean);
-    public void setProgressBarVisibility(boolean);
-    public void setRequestedOrientation(int);
-    public void setResult(int);
-    public void setResult(int, android.content.Intent);
-    public void setSecondaryProgress(int);
-    public void setShowWhenLocked(boolean);
-    public void setTaskDescription(android.app.ActivityManager$TaskDescription);
-    public void setTheme(int);
-    public void setTitle(java.lang.CharSequence);
-    public void setTitle(int);
-    public void setTitleColor(int);
-    public void setTurnScreenOn(boolean);
-    public void setVisible(boolean);
-    public void setVolumeControlStream(int);
-    public void setVrModeEnabled(boolean, android.content.ComponentName);
-    public boolean shouldShowRequestPermissionRationale(java.lang.String);
-    public boolean shouldUpRecreateTask(android.content.Intent);
-    public boolean showAssist(android.os.Bundle);
-    public void showDialog(int);
-    public boolean showDialog(int, android.os.Bundle);
-    public void showLockTaskEscapeMessage();
-    public android.view.ActionMode startActionMode(android.view.ActionMode$Callback);
-    public android.view.ActionMode startActionMode(android.view.ActionMode$Callback, int);
-    public void startActivities(android.content.Intent[]);
-    public void startActivities(android.content.Intent[], android.os.Bundle);
-    public void startActivity(android.content.Intent);
-    public void startActivity(android.content.Intent, android.os.Bundle);
-    public void startActivityAsCaller(android.content.Intent, android.os.Bundle, boolean, int);
-    public void startActivityAsUser(android.content.Intent, android.os.UserHandle);
-    public void startActivityAsUser(android.content.Intent, android.os.Bundle, android.os.UserHandle);
-    public void startActivityAsUserFromFragment(android.app.Fragment, android.content.Intent, int, android.os.Bundle, android.os.UserHandle);
-    public void startActivityForResult(android.content.Intent, int);
-    public void startActivityForResult(android.content.Intent, int, android.os.Bundle);
-    public void startActivityForResult(java.lang.String, android.content.Intent, int, android.os.Bundle);
-    public void startActivityForResultAsUser(android.content.Intent, int, android.os.UserHandle);
-    public void startActivityForResultAsUser(android.content.Intent, int, android.os.Bundle, android.os.UserHandle);
-    public void startActivityForResultAsUser(android.content.Intent, java.lang.String, int, android.os.Bundle, android.os.UserHandle);
-    public void startActivityFromChild(android.app.Activity, android.content.Intent, int);
-    public void startActivityFromChild(android.app.Activity, android.content.Intent, int, android.os.Bundle);
-    public void startActivityFromFragment(android.app.Fragment, android.content.Intent, int);
-    public void startActivityFromFragment(android.app.Fragment, android.content.Intent, int, android.os.Bundle);
-    public boolean startActivityIfNeeded(android.content.Intent, int);
-    public boolean startActivityIfNeeded(android.content.Intent, int, android.os.Bundle);
-    public void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int);
-    public void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle);
-    public void startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int);
-    public void startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle);
-    public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int);
-    public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle);
-    public void startIntentSenderFromChildFragment(android.app.Fragment, android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle);
-    public void startLocalVoiceInteraction(android.os.Bundle);
-    public void startLockTask();
-    public void startManagingCursor(android.database.Cursor);
-    public boolean startNextMatchingActivity(android.content.Intent);
-    public boolean startNextMatchingActivity(android.content.Intent, android.os.Bundle);
-    public void startPostponedEnterTransition();
-    public void startSearch(java.lang.String, boolean, android.os.Bundle, boolean);
-    public void stopLocalVoiceInteraction();
-    public void stopLockTask();
-    public void stopManagingCursor(android.database.Cursor);
-    public void takeKeyEvents(boolean);
-    public void triggerSearch(java.lang.String, android.os.Bundle);
-    public void unregisterForContextMenu(android.view.View);
-
-
-    public static int DEFAULT_KEYS_DIALER;
-    public static int DEFAULT_KEYS_DISABLE;
-    public static int DEFAULT_KEYS_SEARCH_GLOBAL;
-    public static int DEFAULT_KEYS_SEARCH_LOCAL;
-    public static int DEFAULT_KEYS_SHORTCUT;
-    public static int DONT_FINISH_TASK_WITH_ACTIVITY;
-    public static int FINISH_TASK_WITH_ACTIVITY;
-    public static int FINISH_TASK_WITH_ROOT_ACTIVITY;
-    protected static int[] FOCUSED_STATE_SET;
-    public static int RESULT_CANCELED;
-    public static int RESULT_FIRST_USER;
-    public static int RESULT_OK;
-}
-
--keep class android.app.Activity$NonConfigurationInstances {
-
-
-
-}
-
--keep class android.app.Activity$TranslucentConversionListener {
-
-    public abstract void onTranslucentConversionComplete(boolean);
-
-
-}
-
--keep class android.app.ActivityManager {
-
-    public int addAppTask(android.app.Activity, android.content.Intent, android.app.ActivityManager$TaskDescription, android.graphics.Bitmap);
-    public void addOnUidImportanceListener(android.app.ActivityManager$OnUidImportanceListener, int);
-    public void alwaysShowUnsupportedCompileSdkWarning(android.content.ComponentName);
-    public static void broadcastStickyIntent(android.content.Intent, int);
-    public static void broadcastStickyIntent(android.content.Intent, int, int);
-    public static int checkComponentPermission(java.lang.String, int, int, boolean);
-    public static int checkUidPermission(java.lang.String, int);
-    public boolean clearApplicationUserData(java.lang.String, android.content.pm.IPackageDataObserver);
-    public boolean clearApplicationUserData();
-    public void clearGrantedUriPermissions(java.lang.String);
-    public void clearWatchHeapLimit();
-    public void dumpPackageState(java.io.FileDescriptor, java.lang.String);
-    public static void dumpPackageStateStatic(java.io.FileDescriptor, java.lang.String);
-    public void forceStopPackage(java.lang.String);
-    public void forceStopPackageAsUser(java.lang.String, int);
-    public android.util.Size getAppTaskThumbnailSize();
-    public java.util.List getAppTasks();
-    public static int getCurrentUser();
-    public static int getDefaultAppRecentsLimitStatic();
-    public android.content.pm.ConfigurationInfo getDeviceConfigurationInfo();
-    public int getFrontActivityScreenCompatMode();
-    public android.content.pm.ParceledListSlice getGrantedUriPermissions(java.lang.String);
-    public int getLargeMemoryClass();
-    public int getLauncherLargeIconDensity();
-    public int getLauncherLargeIconSize();
-    public int getLockTaskModeState();
-    public static int getMaxAppRecentsLimitStatic();
-    public static int getMaxNumPictureInPictureActions();
-    public static int getMaxRecentTasksStatic();
-    public int getMemoryClass();
-    public void getMemoryInfo(android.app.ActivityManager$MemoryInfo);
-    public static void getMyMemoryState(android.app.ActivityManager$RunningAppProcessInfo);
-    public boolean getPackageAskScreenCompat(java.lang.String);
-    public int getPackageImportance(java.lang.String);
-    public int getPackageScreenCompatMode(java.lang.String);
-    public android.os.Debug$MemoryInfo[] getProcessMemoryInfo(int[]);
-    public java.util.List getProcessesInErrorState();
-    public java.util.List getRecentTasks(int, int);
-    public java.util.List getRunningAppProcesses();
-    public java.util.List getRunningExternalApplications();
-    public android.app.PendingIntent getRunningServiceControlPanel(android.content.ComponentName);
-    public java.util.List getRunningServices(int);
-    public java.util.List getRunningTasks(int);
-    public static android.app.IActivityManager getService();
-    public long getTotalRam();
-    public int getUidImportance(int);
-    public static int handleIncomingUser(int, int, int, boolean, boolean, java.lang.String, java.lang.String);
-    public boolean isBackgroundRestricted();
-    public static boolean isHighEndGfx();
-    public boolean isInLockTaskMode();
-    public boolean isLowRamDevice();
-    public static boolean isLowRamDeviceStatic();
-    public static boolean isProcStateBackground(int);
-    public static boolean isRunningInTestHarness();
-    public static boolean isSmallBatteryDevice();
-    public static boolean isStartResultFatalError(int);
-    public static boolean isStartResultSuccessful(int);
-    public static boolean isSystemReady();
-    public static boolean isUserAMonkey();
-    public boolean isUserRunning(int);
-    public boolean isVrModePackageEnabled(android.content.ComponentName);
-    public void killBackgroundProcesses(java.lang.String);
-    public void killUid(int, java.lang.String);
-    public static void logoutCurrentUser();
-    public void moveTaskToFront(int, int);
-    public void moveTaskToFront(int, int, android.os.Bundle);
-    public static void noteAlarmFinish(android.app.PendingIntent, android.os.WorkSource, int, java.lang.String);
-    public static void noteAlarmStart(android.app.PendingIntent, android.os.WorkSource, int, java.lang.String);
-    public static void noteWakeupAlarm(android.app.PendingIntent, android.os.WorkSource, int, java.lang.String, java.lang.String);
-    public static int processStateAmToProto(int);
-    public void removeOnUidImportanceListener(android.app.ActivityManager$OnUidImportanceListener);
-    public void removeStacksInWindowingModes(int[]);
-    public void removeStacksWithActivityTypes(int[]);
-    public void resizeStack(int, android.graphics.Rect);
-    public void restartPackage(java.lang.String);
-    public void setFrontActivityScreenCompatMode(int);
-    public void setPackageAskScreenCompat(java.lang.String, boolean);
-    public void setPackageScreenCompatMode(java.lang.String, int);
-    public static void setPersistentVrThread(int);
-    public boolean setProcessMemoryTrimLevel(java.lang.String, int, int);
-    public void setTaskWindowingMode(int, int, boolean);
-    public void setTaskWindowingModeSplitScreenPrimary(int, int, boolean, boolean, android.graphics.Rect, boolean);
-    public static void setVrThread(int);
-    public void setWatchHeapLimit(long);
-    public static int staticGetLargeMemoryClass();
-    public static int staticGetMemoryClass();
-    public static boolean supportsMultiWindow(android.content.Context);
-    public static boolean supportsSplitScreenMultiWindow(android.content.Context);
-    public boolean switchUser(int);
-
-
-    public static java.lang.String ACTION_REPORT_HEAP_LIMIT;
-    public static int APP_START_MODE_DELAYED;
-    public static int APP_START_MODE_DELAYED_RIGID;
-    public static int APP_START_MODE_DISABLED;
-    public static int APP_START_MODE_NORMAL;
-    public static int ASSIST_CONTEXT_AUTOFILL;
-    public static int ASSIST_CONTEXT_BASIC;
-    public static int ASSIST_CONTEXT_FULL;
-    public static int BROADCAST_FAILED_USER_STOPPED;
-    public static int BROADCAST_STICKY_CANT_HAVE_PERMISSION;
-    public static int BROADCAST_SUCCESS;
-    public static int BUGREPORT_OPTION_FULL;
-    public static int BUGREPORT_OPTION_INTERACTIVE;
-    public static int BUGREPORT_OPTION_REMOTE;
-    public static int BUGREPORT_OPTION_TELEPHONY;
-    public static int BUGREPORT_OPTION_WEAR;
-    public static int BUGREPORT_OPTION_WIFI;
-    public static int COMPAT_MODE_ALWAYS;
-    public static int COMPAT_MODE_DISABLED;
-    public static int COMPAT_MODE_ENABLED;
-    public static int COMPAT_MODE_NEVER;
-    public static int COMPAT_MODE_TOGGLE;
-    public static int COMPAT_MODE_UNKNOWN;
-    public static int FLAG_AND_LOCKED;
-    public static int FLAG_AND_UNLOCKED;
-    public static int FLAG_AND_UNLOCKING_OR_UNLOCKED;
-    public static int FLAG_OR_STOPPED;
-    public static int INTENT_SENDER_ACTIVITY;
-    public static int INTENT_SENDER_ACTIVITY_RESULT;
-    public static int INTENT_SENDER_BROADCAST;
-    public static int INTENT_SENDER_FOREGROUND_SERVICE;
-    public static int INTENT_SENDER_SERVICE;
-    public static int LOCK_TASK_MODE_LOCKED;
-    public static int LOCK_TASK_MODE_NONE;
-    public static int LOCK_TASK_MODE_PINNED;
-    public static int MAX_PROCESS_STATE;
-    public static java.lang.String META_HOME_ALTERNATE;
-    public static int MIN_PROCESS_STATE;
-    public static int MOVE_TASK_NO_USER_ACTION;
-    public static int MOVE_TASK_WITH_HOME;
-    public static int PROCESS_STATE_BACKUP;
-    public static int PROCESS_STATE_BOUND_FOREGROUND_SERVICE;
-    public static int PROCESS_STATE_CACHED_ACTIVITY;
-    public static int PROCESS_STATE_CACHED_ACTIVITY_CLIENT;
-    public static int PROCESS_STATE_CACHED_EMPTY;
-    public static int PROCESS_STATE_CACHED_RECENT;
-    public static int PROCESS_STATE_FOREGROUND_SERVICE;
-    public static int PROCESS_STATE_HEAVY_WEIGHT;
-    public static int PROCESS_STATE_HOME;
-    public static int PROCESS_STATE_IMPORTANT_BACKGROUND;
-    public static int PROCESS_STATE_IMPORTANT_FOREGROUND;
-    public static int PROCESS_STATE_LAST_ACTIVITY;
-    public static int PROCESS_STATE_NONEXISTENT;
-    public static int PROCESS_STATE_PERSISTENT;
-    public static int PROCESS_STATE_PERSISTENT_UI;
-    public static int PROCESS_STATE_RECEIVER;
-    public static int PROCESS_STATE_SERVICE;
-    public static int PROCESS_STATE_TOP;
-    public static int PROCESS_STATE_TOP_SLEEPING;
-    public static int PROCESS_STATE_TRANSIENT_BACKGROUND;
-    public static int PROCESS_STATE_UNKNOWN;
-    public static int RECENT_IGNORE_UNAVAILABLE;
-    public static int RECENT_WITH_EXCLUDED;
-    public static int RESIZE_MODE_FORCED;
-    public static int RESIZE_MODE_PRESERVE_WINDOW;
-    public static int RESIZE_MODE_SYSTEM;
-    public static int RESIZE_MODE_SYSTEM_SCREEN_ROTATION;
-    public static int RESIZE_MODE_USER;
-    public static int RESIZE_MODE_USER_FORCED;
-    public static int SPLIT_SCREEN_CREATE_MODE_BOTTOM_OR_RIGHT;
-    public static int SPLIT_SCREEN_CREATE_MODE_TOP_OR_LEFT;
-    public static int START_ABORTED;
-    public static int START_ASSISTANT_HIDDEN_SESSION;
-    public static int START_ASSISTANT_NOT_ACTIVE_SESSION;
-    public static int START_CANCELED;
-    public static int START_CLASS_NOT_FOUND;
-    public static int START_DELIVERED_TO_TOP;
-    public static int START_FLAG_DEBUG;
-    public static int START_FLAG_NATIVE_DEBUGGING;
-    public static int START_FLAG_ONLY_IF_NEEDED;
-    public static int START_FLAG_TRACK_ALLOCATION;
-    public static int START_FORWARD_AND_REQUEST_CONFLICT;
-    public static int START_INTENT_NOT_RESOLVED;
-    public static int START_NOT_ACTIVITY;
-    public static int START_NOT_CURRENT_USER_ACTIVITY;
-    public static int START_NOT_VOICE_COMPATIBLE;
-    public static int START_PERMISSION_DENIED;
-    public static int START_RETURN_INTENT_TO_CALLER;
-    public static int START_RETURN_LOCK_TASK_MODE_VIOLATION;
-    public static int START_SUCCESS;
-    public static int START_SWITCHES_CANCELED;
-    public static int START_TASK_TO_FRONT;
-    public static int START_VOICE_HIDDEN_SESSION;
-    public static int START_VOICE_NOT_ACTIVE_SESSION;
-    public static int UID_OBSERVER_ACTIVE;
-    public static int UID_OBSERVER_CACHED;
-    public static int UID_OBSERVER_GONE;
-    public static int UID_OBSERVER_IDLE;
-    public static int UID_OBSERVER_PROCSTATE;
-    public static int USER_OP_ERROR_IS_SYSTEM;
-    public static int USER_OP_ERROR_RELATED_USERS_CANNOT_STOP;
-    public static int USER_OP_IS_CURRENT;
-    public static int USER_OP_SUCCESS;
-    public static int USER_OP_UNKNOWN_USER;
-}
-
--keep class android.app.ActivityManager$AppTask {
-    <init>(android.app.IAppTask);
-
-    public void finishAndRemoveTask();
-    public android.app.ActivityManager$RecentTaskInfo getTaskInfo();
-    public void moveToFront();
-    public void setExcludeFromRecents(boolean);
-    public void startActivity(android.content.Context, android.content.Intent, android.os.Bundle);
-
-
-}
-
--keep class android.app.ActivityManager$MemoryInfo {
-    <init>();
-
-    public int describeContents();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public long availMem;
-    public long foregroundAppThreshold;
-    public long hiddenAppThreshold;
-    public boolean lowMemory;
-    public long secondaryServerThreshold;
-    public long threshold;
-    public long totalMem;
-    public long visibleAppThreshold;
-}
-
--keep class android.app.ActivityManager$OnUidImportanceListener {
-
-    public abstract void onUidImportance(int, int);
-
-
-}
-
--keep class android.app.ActivityManager$ProcessErrorStateInfo {
-    <init>();
-
-    public int describeContents();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int CRASHED;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int NOT_RESPONDING;
-    public static int NO_ERROR;
-    public int condition;
-    public byte[] crashData;
-    public java.lang.String longMsg;
-    public int pid;
-    public java.lang.String processName;
-    public java.lang.String shortMsg;
-    public java.lang.String stackTrace;
-    public java.lang.String tag;
-    public int uid;
-}
-
--keep class android.app.ActivityManager$RecentTaskInfo {
-    <init>();
-
-    public int describeContents();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int affiliatedTaskColor;
-    public int affiliatedTaskId;
-    public android.content.ComponentName baseActivity;
-    public android.content.Intent baseIntent;
-    public android.graphics.Rect bounds;
-    public android.content.res.Configuration configuration;
-    public java.lang.CharSequence description;
-    public long firstActiveTime;
-    public int id;
-    public long lastActiveTime;
-    public int numActivities;
-    public android.content.ComponentName origActivity;
-    public int persistentId;
-    public android.content.ComponentName realActivity;
-    public int resizeMode;
-    public int stackId;
-    public boolean supportsSplitScreenMultiWindow;
-    public android.app.ActivityManager$TaskDescription taskDescription;
-    public android.content.ComponentName topActivity;
-    public int userId;
-}
-
--keep class android.app.ActivityManager$RunningAppProcessInfo {
-    <init>();
-    <init>(java.lang.String, int, java.lang.String[]);
-
-    public int describeContents();
-    public static int importanceToProcState(int);
-    public static int procStateToImportance(int);
-    public static int procStateToImportanceForClient(int, android.content.Context);
-    public static int procStateToImportanceForTargetSdk(int, int);
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_CANT_SAVE_STATE;
-    public static int FLAG_HAS_ACTIVITIES;
-    public static int FLAG_PERSISTENT;
-    public static int IMPORTANCE_BACKGROUND;
-    public static int IMPORTANCE_CACHED;
-    public static int IMPORTANCE_CANT_SAVE_STATE;
-    public static int IMPORTANCE_CANT_SAVE_STATE_PRE_26;
-    public static int IMPORTANCE_EMPTY;
-    public static int IMPORTANCE_FOREGROUND;
-    public static int IMPORTANCE_FOREGROUND_SERVICE;
-    public static int IMPORTANCE_GONE;
-    public static int IMPORTANCE_PERCEPTIBLE;
-    public static int IMPORTANCE_PERCEPTIBLE_PRE_26;
-    public static int IMPORTANCE_SERVICE;
-    public static int IMPORTANCE_TOP_SLEEPING;
-    public static int IMPORTANCE_TOP_SLEEPING_PRE_28;
-    public static int IMPORTANCE_VISIBLE;
-    public static int REASON_PROVIDER_IN_USE;
-    public static int REASON_SERVICE_IN_USE;
-    public static int REASON_UNKNOWN;
-    public int flags;
-    public int importance;
-    public int importanceReasonCode;
-    public android.content.ComponentName importanceReasonComponent;
-    public int importanceReasonImportance;
-    public int importanceReasonPid;
-    public int lastTrimLevel;
-    public int lru;
-    public int pid;
-    public java.lang.String[] pkgList;
-    public java.lang.String processName;
-    public int processState;
-    public int uid;
-}
-
--keep class android.app.ActivityManager$RunningServiceInfo {
-    <init>();
-
-    public int describeContents();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_FOREGROUND;
-    public static int FLAG_PERSISTENT_PROCESS;
-    public static int FLAG_STARTED;
-    public static int FLAG_SYSTEM_PROCESS;
-    public long activeSince;
-    public int clientCount;
-    public int clientLabel;
-    public java.lang.String clientPackage;
-    public int crashCount;
-    public int flags;
-    public boolean foreground;
-    public long lastActivityTime;
-    public int pid;
-    public java.lang.String process;
-    public long restarting;
-    public android.content.ComponentName service;
-    public boolean started;
-    public int uid;
-}
-
--keep class android.app.ActivityManager$RunningTaskInfo {
-    <init>();
-
-    public int describeContents();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.ComponentName baseActivity;
-    public android.content.res.Configuration configuration;
-    public java.lang.CharSequence description;
-    public int id;
-    public long lastActiveTime;
-    public int numActivities;
-    public int numRunning;
-    public int resizeMode;
-    public int stackId;
-    public boolean supportsSplitScreenMultiWindow;
-    public android.graphics.Bitmap thumbnail;
-    public android.content.ComponentName topActivity;
-}
-
--keep class android.app.ActivityManager$StackInfo {
-    <init>();
-
-    public int describeContents();
-    public void readFromParcel(android.os.Parcel);
-    public java.lang.String toString(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.graphics.Rect bounds;
-    public android.content.res.Configuration configuration;
-    public int displayId;
-    public int position;
-    public int stackId;
-    public android.graphics.Rect[] taskBounds;
-    public int[] taskIds;
-    public java.lang.String[] taskNames;
-    public int[] taskUserIds;
-    public android.content.ComponentName topActivity;
-    public int userId;
-    public boolean visible;
-}
-
--keep class android.app.ActivityManager$TaskDescription {
-    <init>(java.lang.String, android.graphics.Bitmap, int);
-    <init>(java.lang.String, int, int);
-    <init>(java.lang.String, android.graphics.Bitmap);
-    <init>(java.lang.String, int);
-    <init>(java.lang.String);
-    <init>();
-    <init>(java.lang.String, android.graphics.Bitmap, int, java.lang.String, int, int, int, int);
-    <init>(android.app.ActivityManager$TaskDescription);
-
-    public void copyFrom(android.app.ActivityManager$TaskDescription);
-    public void copyFromPreserveHiddenFields(android.app.ActivityManager$TaskDescription);
-    public int describeContents();
-    public int getBackgroundColor();
-    public android.graphics.Bitmap getIcon();
-    public java.lang.String getIconFilename();
-    public int getIconResource();
-    public android.graphics.Bitmap getInMemoryIcon();
-    public java.lang.String getLabel();
-    public int getNavigationBarColor();
-    public int getPrimaryColor();
-    public int getStatusBarColor();
-    public static android.graphics.Bitmap loadTaskDescriptionIcon(java.lang.String, int);
-    public void readFromParcel(android.os.Parcel);
-    public void restoreFromXml(java.lang.String, java.lang.String);
-    public void saveToXml(org.xmlpull.v1.XmlSerializer);
-    public void setBackgroundColor(int);
-    public void setIcon(android.graphics.Bitmap);
-    public void setIcon(int);
-    public void setIconFilename(java.lang.String);
-    public void setLabel(java.lang.String);
-    public void setNavigationBarColor(int);
-    public void setPrimaryColor(int);
-    public void setStatusBarColor(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static java.lang.String ATTR_TASKDESCRIPTION_PREFIX;
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.ActivityManager$TaskSnapshot {
-    <init>(android.graphics.GraphicBuffer, int, android.graphics.Rect, boolean, float, boolean, int, int, boolean);
-
-    public int describeContents();
-    public android.graphics.Rect getContentInsets();
-    public int getOrientation();
-    public float getScale();
-    public android.graphics.GraphicBuffer getSnapshot();
-    public int getSystemUiVisibility();
-    public int getWindowingMode();
-    public boolean isRealSnapshot();
-    public boolean isReducedResolution();
-    public boolean isTranslucent();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.ActivityOptions {
-    <init>(android.os.Bundle);
-
-    public void abort();
-    public static void abort(android.app.ActivityOptions);
-    public boolean canTaskOverlayResume();
-    public boolean disallowEnterPictureInPictureWhileLaunching();
-    public android.app.ActivityOptions forTargetActivity();
-    public static android.app.ActivityOptions fromBundle(android.os.Bundle);
-    public android.view.AppTransitionAnimationSpec[] getAnimSpecs();
-    public android.os.IRemoteCallback getAnimationFinishedListener();
-    public int getAnimationType();
-    public boolean getAvoidMoveToFront();
-    public int getCustomEnterResId();
-    public int getCustomExitResId();
-    public int getCustomInPlaceResId();
-    public int getExitCoordinatorKey();
-    public int getHeight();
-    public int getLaunchActivityType();
-    public android.graphics.Rect getLaunchBounds();
-    public int getLaunchDisplayId();
-    public boolean getLaunchTaskBehind();
-    public int getLaunchTaskId();
-    public int getLaunchWindowingMode();
-    public boolean getLockTaskMode();
-    public android.os.IRemoteCallback getOnAnimationStartListener();
-    public java.lang.String getPackageName();
-    public android.view.RemoteAnimationAdapter getRemoteAnimationAdapter();
-    public int getResultCode();
-    public android.content.Intent getResultData();
-    public android.os.ResultReceiver getResultReceiver();
-    public int getRotationAnimationHint();
-    public java.util.ArrayList getSharedElementNames();
-    public android.view.IAppTransitionAnimationSpecsFuture getSpecsFuture();
-    public int getSplitScreenCreateMode();
-    public int getStartX();
-    public int getStartY();
-    public boolean getTaskOverlay();
-    public android.graphics.GraphicBuffer getThumbnail();
-    public android.app.PendingIntent getUsageTimeReport();
-    public int getWidth();
-    public boolean isReturning();
-    public static android.app.ActivityOptions makeBasic();
-    public static android.app.ActivityOptions makeClipRevealAnimation(android.view.View, int, int, int, int);
-    public static android.app.ActivityOptions makeCustomAnimation(android.content.Context, int, int);
-    public static android.app.ActivityOptions makeCustomAnimation(android.content.Context, int, int, android.os.Handler, android.app.ActivityOptions$OnAnimationStartedListener);
-    public static android.app.ActivityOptions makeCustomInPlaceAnimation(android.content.Context, int);
-    public static android.app.ActivityOptions makeMultiThumbFutureAspectScaleAnimation(android.content.Context, android.os.Handler, android.view.IAppTransitionAnimationSpecsFuture, android.app.ActivityOptions$OnAnimationStartedListener, boolean);
-    public static android.app.ActivityOptions makeOpenCrossProfileAppsAnimation();
-    public static android.app.ActivityOptions makeRemoteAnimation(android.view.RemoteAnimationAdapter);
-    public static android.app.ActivityOptions makeScaleUpAnimation(android.view.View, int, int, int, int);
-    public static android.app.ActivityOptions makeSceneTransitionAnimation(android.app.Activity, android.view.View, java.lang.String);
-    public static android.app.ActivityOptions makeSceneTransitionAnimation(android.app.Activity, android.util.Pair[]);
-    public static android.app.ActivityOptions makeTaskLaunchBehind();
-    public static android.app.ActivityOptions makeThumbnailAspectScaleDownAnimation(android.view.View, android.graphics.Bitmap, int, int, int, int, android.os.Handler, android.app.ActivityOptions$OnAnimationStartedListener);
-    public static android.app.ActivityOptions makeThumbnailAspectScaleDownAnimation(android.view.View, android.view.AppTransitionAnimationSpec[], android.os.Handler, android.app.ActivityOptions$OnAnimationStartedListener, android.app.ActivityOptions$OnAnimationFinishedListener);
-    public static android.app.ActivityOptions makeThumbnailScaleUpAnimation(android.view.View, android.graphics.Bitmap, int, int);
-    public android.os.Bundle popAppVerificationBundle();
-    public void requestUsageTimeReport(android.app.PendingIntent);
-    public android.app.ActivityOptions setAppVerificationBundle(android.os.Bundle);
-    public void setAvoidMoveToFront();
-    public void setDisallowEnterPictureInPictureWhileLaunching(boolean);
-    public void setLaunchActivityType(int);
-    public android.app.ActivityOptions setLaunchBounds(android.graphics.Rect);
-    public android.app.ActivityOptions setLaunchDisplayId(int);
-    public void setLaunchTaskId(int);
-    public void setLaunchWindowingMode(int);
-    public android.app.ActivityOptions setLockTaskEnabled(boolean);
-    public void setRemoteAnimationAdapter(android.view.RemoteAnimationAdapter);
-    public void setRotationAnimationHint(int);
-    public void setSplitScreenCreateMode(int);
-    public void setTaskOverlay(boolean, boolean);
-    public static android.app.ActivityOptions startSharedElementAnimation(android.view.Window, android.util.Pair[]);
-    public static void stopSharedElementAnimation(android.view.Window);
-    public android.os.Bundle toBundle();
-    public java.lang.String toString();
-    public void update(android.app.ActivityOptions);
-
-
-    public static int ANIM_CLIP_REVEAL;
-    public static int ANIM_CUSTOM;
-    public static int ANIM_CUSTOM_IN_PLACE;
-    public static int ANIM_DEFAULT;
-    public static int ANIM_LAUNCH_TASK_BEHIND;
-    public static int ANIM_NONE;
-    public static int ANIM_OPEN_CROSS_PROFILE_APPS;
-    public static int ANIM_REMOTE_ANIMATION;
-    public static int ANIM_SCALE_UP;
-    public static int ANIM_SCENE_TRANSITION;
-    public static int ANIM_THUMBNAIL_ASPECT_SCALE_DOWN;
-    public static int ANIM_THUMBNAIL_ASPECT_SCALE_UP;
-    public static int ANIM_THUMBNAIL_SCALE_DOWN;
-    public static int ANIM_THUMBNAIL_SCALE_UP;
-    public static java.lang.String EXTRA_USAGE_TIME_REPORT;
-    public static java.lang.String EXTRA_USAGE_TIME_REPORT_PACKAGES;
-    public static java.lang.String KEY_ANIM_ENTER_RES_ID;
-    public static java.lang.String KEY_ANIM_EXIT_RES_ID;
-    public static java.lang.String KEY_ANIM_HEIGHT;
-    public static java.lang.String KEY_ANIM_IN_PLACE_RES_ID;
-    public static java.lang.String KEY_ANIM_START_LISTENER;
-    public static java.lang.String KEY_ANIM_START_X;
-    public static java.lang.String KEY_ANIM_START_Y;
-    public static java.lang.String KEY_ANIM_THUMBNAIL;
-    public static java.lang.String KEY_ANIM_TYPE;
-    public static java.lang.String KEY_ANIM_WIDTH;
-    public static java.lang.String KEY_LAUNCH_BOUNDS;
-    public static java.lang.String KEY_PACKAGE_NAME;
-}
-
--keep class android.app.ActivityOptions$OnAnimationFinishedListener {
-
-    public abstract void onAnimationFinished();
-
-
-}
-
--keep class android.app.ActivityOptions$OnAnimationStartedListener {
-
-    public abstract void onAnimationStarted();
-
-
-}
-
--keep class android.app.ActivityThread {
-
-    public android.content.IContentProvider acquireExistingProvider(android.content.Context, java.lang.String, int, boolean);
-    public android.content.IContentProvider acquireProvider(android.content.Context, java.lang.String, int, boolean);
-    public void applyConfigurationToResources(android.content.res.Configuration);
-    public static android.app.ActivityThread currentActivityThread();
-    public static android.app.Application currentApplication();
-    public static java.lang.String currentOpPackageName();
-    public static java.lang.String currentPackageName();
-    public static java.lang.String currentProcessName();
-    public static void dumpMemInfoTable(java.io.PrintWriter, android.os.Debug$MemoryInfo, boolean, boolean, boolean, boolean, int, java.lang.String, long, long, long, long, long, long);
-    public static void dumpMemInfoTable(android.util.proto.ProtoOutputStream, android.os.Debug$MemoryInfo, boolean, boolean, long, long, long, long, long, long);
-    public android.app.Activity getActivity(android.os.IBinder);
-    public android.app.ActivityThread$ActivityClientRecord getActivityClient(android.os.IBinder);
-    public android.app.Application getApplication();
-    public android.app.ActivityThread$ApplicationThread getApplicationThread();
-    public java.util.concurrent.Executor getExecutor();
-    public android.app.Instrumentation getInstrumentation();
-    public int getIntCoreSetting(java.lang.String, int);
-    public static android.content.Intent getIntentBeingBroadcast();
-    public android.os.Looper getLooper();
-    public android.app.LoadedApk getPackageInfo(java.lang.String, android.content.res.CompatibilityInfo, int);
-    public android.app.LoadedApk getPackageInfo(java.lang.String, android.content.res.CompatibilityInfo, int, int);
-    public android.app.LoadedApk getPackageInfo(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo, int);
-    public android.app.LoadedApk getPackageInfoNoCheck(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo);
-    public static android.content.pm.IPackageManager getPackageManager();
-    public java.lang.String getProcessName();
-    public java.lang.String getProfileFilePath();
-    public android.app.ContextImpl getSystemContext();
-    public android.app.ContextImpl getSystemUiContext();
-    public void handleActivityConfigurationChanged(android.os.IBinder, android.content.res.Configuration, int);
-    public void handleConfigurationChanged(android.content.res.Configuration);
-    public void handleDestroyActivity(android.os.IBinder, boolean, int, boolean, java.lang.String);
-    public void handleInstallProvider(android.content.pm.ProviderInfo);
-    public android.app.Activity handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions, android.content.Intent);
-    public void handleMultiWindowModeChanged(android.os.IBinder, boolean, android.content.res.Configuration);
-    public void handleNewIntent(android.os.IBinder, java.util.List, boolean);
-    public void handlePauseActivity(android.os.IBinder, boolean, boolean, int, android.app.servertransaction.PendingTransactionActions, java.lang.String);
-    public void handlePictureInPictureModeChanged(android.os.IBinder, boolean, android.content.res.Configuration);
-    public void handleRelaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions);
-    public void handleRequestAssistContextExtras(android.app.ActivityThread$RequestAssistContextExtras);
-    public void handleResumeActivity(android.os.IBinder, boolean, boolean, java.lang.String);
-    public void handleSendResult(android.os.IBinder, java.util.List, java.lang.String);
-    public void handleStartActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions);
-    public void handleStopActivity(android.os.IBinder, boolean, int, android.app.servertransaction.PendingTransactionActions, boolean, java.lang.String);
-    public void handleTranslucentConversionComplete(android.os.IBinder, boolean);
-    public void handleWindowVisibility(android.os.IBinder, boolean);
-    public void installSystemApplicationInfo(android.content.pm.ApplicationInfo, java.lang.ClassLoader);
-    public void installSystemProviders(java.util.List);
-    public boolean isProfiling();
-    public static boolean isSystem();
-    public static void main(java.lang.String[]);
-    public void onNewActivityOptions(android.os.IBinder, android.app.ActivityOptions);
-    public android.app.LoadedApk peekPackageInfo(java.lang.String, boolean);
-    public void performRestartActivity(android.os.IBinder, boolean);
-    public android.app.ActivityThread$ActivityClientRecord performResumeActivity(android.os.IBinder, boolean, java.lang.String);
-    public android.app.ActivityThread$ActivityClientRecord prepareRelaunchActivity(android.os.IBinder, java.util.List, java.util.List, int, android.util.MergedConfiguration, boolean);
-    public void registerOnActivityPausedListener(android.app.Activity, android.app.OnActivityPausedListener);
-    public boolean releaseProvider(android.content.IContentProvider, boolean);
-    public void reportRelaunch(android.os.IBinder, android.app.servertransaction.PendingTransactionActions);
-    public void reportStop(android.app.servertransaction.PendingTransactionActions);
-    public android.content.pm.ActivityInfo resolveActivityInfo(android.content.Intent);
-    public void sendActivityResult(android.os.IBinder, java.lang.String, int, int, android.content.Intent);
-    public android.app.Activity startActivityNow(android.app.Activity, java.lang.String, android.content.Intent, android.content.pm.ActivityInfo, android.os.IBinder, android.os.Bundle, android.app.Activity$NonConfigurationInstances);
-    public void stopProfiling();
-    public static android.app.ActivityThread systemMain();
-    public void unregisterOnActivityPausedListener(android.app.Activity, android.app.OnActivityPausedListener);
-    public void updatePendingConfiguration(android.content.res.Configuration);
-    public void updateProcessState(int, boolean);
-
-
-    public static boolean DEBUG_BROADCAST;
-    public static boolean DEBUG_CONFIGURATION;
-    public static boolean DEBUG_MEMORY_TRIM;
-    public static boolean DEBUG_ORDER;
-    public static long INVALID_PROC_STATE_SEQ;
-    public static java.lang.String PROC_START_SEQ_IDENT;
-    public static int SERVICE_DONE_EXECUTING_ANON;
-    public static int SERVICE_DONE_EXECUTING_START;
-    public static int SERVICE_DONE_EXECUTING_STOP;
-    public static java.lang.String TAG;
-}
-
--keep class android.app.ActivityThread$ActivityClientRecord {
-    <init>();
-    <init>(android.os.IBinder, android.content.Intent, int, android.content.pm.ActivityInfo, android.content.res.Configuration, android.content.res.CompatibilityInfo, java.lang.String, com.android.internal.app.IVoiceInteractor, android.os.Bundle, android.os.PersistableBundle, java.util.List, java.util.List, boolean, android.app.ProfilerInfo, android.app.ClientTransactionHandler);
-
-    public int getLifecycleState();
-    public java.lang.String getStateString();
-    public boolean isPersistable();
-    public boolean isVisibleFromServer();
-    public void setState(int);
-    public java.lang.String toString();
-
-
-    public boolean isForward;
-    public android.app.LoadedApk packageInfo;
-    public android.os.IBinder token;
-}
-
--keep class android.app.ActivityThread$ApplicationThread {
-
-    public void attachAgent(java.lang.String);
-    public void bindApplication(java.lang.String, android.content.pm.ApplicationInfo, java.util.List, android.content.ComponentName, android.app.ProfilerInfo, android.os.Bundle, android.app.IInstrumentationWatcher, android.app.IUiAutomationConnection, int, boolean, boolean, boolean, boolean, android.content.res.Configuration, android.content.res.CompatibilityInfo, java.util.Map, android.os.Bundle, java.lang.String, boolean);
-    public void clearDnsCache();
-    public void dispatchPackageBroadcast(int, java.lang.String[]);
-    public void dumpActivity(android.os.ParcelFileDescriptor, android.os.IBinder, java.lang.String, java.lang.String[]);
-    public void dumpDbInfo(android.os.ParcelFileDescriptor, java.lang.String[]);
-    public void dumpGfxInfo(android.os.ParcelFileDescriptor, java.lang.String[]);
-    public void dumpHeap(boolean, boolean, boolean, java.lang.String, android.os.ParcelFileDescriptor);
-    public void dumpMemInfo(android.os.ParcelFileDescriptor, android.os.Debug$MemoryInfo, boolean, boolean, boolean, boolean, boolean, java.lang.String[]);
-    public void dumpMemInfoProto(android.os.ParcelFileDescriptor, android.os.Debug$MemoryInfo, boolean, boolean, boolean, boolean, java.lang.String[]);
-    public void dumpProvider(android.os.ParcelFileDescriptor, android.os.IBinder, java.lang.String[]);
-    public void dumpService(android.os.ParcelFileDescriptor, android.os.IBinder, java.lang.String[]);
-    public void handleTrustStorageUpdate();
-    public void notifyCleartextNetwork(byte[]);
-    public void processInBackground();
-    public void profilerControl(boolean, android.app.ProfilerInfo, int);
-    public void requestAssistContextExtras(android.os.IBinder, android.os.IBinder, int, int, int);
-    public void runIsolatedEntryPoint(java.lang.String, java.lang.String[]);
-    public void scheduleApplicationInfoChanged(android.content.pm.ApplicationInfo);
-    public void scheduleBindService(android.os.IBinder, android.content.Intent, boolean, int);
-    public void scheduleCrash(java.lang.String);
-    public void scheduleCreateBackupAgent(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo, int);
-    public void scheduleCreateService(android.os.IBinder, android.content.pm.ServiceInfo, android.content.res.CompatibilityInfo, int);
-    public void scheduleDestroyBackupAgent(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo);
-    public void scheduleEnterAnimationComplete(android.os.IBinder);
-    public void scheduleExit();
-    public void scheduleInstallProvider(android.content.pm.ProviderInfo);
-    public void scheduleLocalVoiceInteractionStarted(android.os.IBinder, com.android.internal.app.IVoiceInteractor);
-    public void scheduleLowMemory();
-    public void scheduleOnNewActivityOptions(android.os.IBinder, android.os.Bundle);
-    public void scheduleReceiver(android.content.Intent, android.content.pm.ActivityInfo, android.content.res.CompatibilityInfo, int, java.lang.String, android.os.Bundle, boolean, int, int);
-    public void scheduleRegisteredReceiver(android.content.IIntentReceiver, android.content.Intent, int, java.lang.String, android.os.Bundle, boolean, boolean, int, int);
-    public void scheduleServiceArgs(android.os.IBinder, android.content.pm.ParceledListSlice);
-    public void scheduleSleeping(android.os.IBinder, boolean);
-    public void scheduleStopService(android.os.IBinder);
-    public void scheduleSuicide();
-    public void scheduleTransaction(android.app.servertransaction.ClientTransaction);
-    public void scheduleTranslucentConversionComplete(android.os.IBinder, boolean);
-    public void scheduleTrimMemory(int);
-    public void scheduleUnbindService(android.os.IBinder, android.content.Intent);
-    public void setCoreSettings(android.os.Bundle);
-    public void setHttpProxy(java.lang.String, java.lang.String, java.lang.String, android.net.Uri);
-    public void setNetworkBlockSeq(long);
-    public void setProcessState(int);
-    public void setSchedulingGroup(int);
-    public void startBinderTracking();
-    public void stopBinderTrackingAndDump(android.os.ParcelFileDescriptor);
-    public void unstableProviderDied(android.os.IBinder);
-    public void updatePackageCompatibilityInfo(java.lang.String, android.content.res.CompatibilityInfo);
-    public void updateProcessState(int, boolean);
-    public void updateTimePrefs(int);
-    public void updateTimeZone();
-
-
-}
-
--keep class android.app.ActivityThread$RequestAssistContextExtras {
-
-
-
-}
-
--keep class android.app.AppComponentFactory {
-    <init>();
-
-    public android.app.Activity instantiateActivity(java.lang.ClassLoader, java.lang.String, android.content.Intent);
-    public android.app.Application instantiateApplication(java.lang.ClassLoader, java.lang.String);
-    public android.content.ContentProvider instantiateProvider(java.lang.ClassLoader, java.lang.String);
-    public android.content.BroadcastReceiver instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent);
-    public android.app.Service instantiateService(java.lang.ClassLoader, java.lang.String, android.content.Intent);
-
-
-    public static android.app.AppComponentFactory DEFAULT;
-}
-
--keep class android.app.AppOpsManager {
-
-    public int checkAudioOp(int, int, int, java.lang.String);
-    public int checkAudioOpNoThrow(int, int, int, java.lang.String);
-    public int checkOp(java.lang.String, int, java.lang.String);
-    public int checkOp(int, int, java.lang.String);
-    public int checkOpNoThrow(java.lang.String, int, java.lang.String);
-    public int checkOpNoThrow(int, int, java.lang.String);
-    public void checkPackage(int, java.lang.String);
-    public void finishOp(java.lang.String, int, java.lang.String);
-    public void finishOp(int, int, java.lang.String);
-    public void finishOp(int);
-    public static int getNumOps();
-    public static java.lang.String[] getOpStrs();
-    public java.util.List getOpsForPackage(int, java.lang.String, int[]);
-    public java.util.List getPackagesForOps(int[]);
-    public static android.os.IBinder getToken(com.android.internal.app.IAppOpsService);
-    public boolean isOperationActive(int, int, java.lang.String);
-    public static long maxTime(long[], int, int);
-    public static java.lang.String modeToName(int);
-    public int noteOp(java.lang.String, int, java.lang.String);
-    public int noteOp(int, int, java.lang.String);
-    public int noteOp(int);
-    public int noteOpNoThrow(java.lang.String, int, java.lang.String);
-    public int noteOpNoThrow(int, int, java.lang.String);
-    public int noteProxyOp(java.lang.String, java.lang.String);
-    public int noteProxyOp(int, java.lang.String);
-    public int noteProxyOpNoThrow(java.lang.String, java.lang.String);
-    public int noteProxyOpNoThrow(int, java.lang.String);
-    public static boolean opAllowSystemBypassRestriction(int);
-    public static boolean opAllowsReset(int);
-    public static int opToDefaultMode(int);
-    public static java.lang.String opToName(int);
-    public static java.lang.String opToPermission(int);
-    public static java.lang.String opToRestriction(int);
-    public static int opToSwitch(int);
-    public static java.lang.String permissionToOp(java.lang.String);
-    public static int permissionToOpCode(java.lang.String);
-    public void resetAllModes();
-    public void setMode(int, int, java.lang.String, int);
-    public void setMode(java.lang.String, int, java.lang.String, int);
-    public void setRestriction(int, int, int, java.lang.String[]);
-    public void setUidMode(int, int, int);
-    public void setUidMode(java.lang.String, int, int);
-    public void setUserRestriction(int, boolean, android.os.IBinder);
-    public void setUserRestriction(int, boolean, android.os.IBinder, java.lang.String[]);
-    public void setUserRestrictionForUser(int, boolean, android.os.IBinder, java.lang.String[], int);
-    public int startOp(java.lang.String, int, java.lang.String);
-    public int startOp(int);
-    public int startOp(int, int, java.lang.String);
-    public int startOp(int, int, java.lang.String, boolean);
-    public int startOpNoThrow(java.lang.String, int, java.lang.String);
-    public int startOpNoThrow(int, int, java.lang.String);
-    public int startOpNoThrow(int, int, java.lang.String, boolean);
-    public void startWatchingActive(int[], android.app.AppOpsManager$OnOpActiveChangedListener);
-    public void startWatchingMode(java.lang.String, java.lang.String, android.app.AppOpsManager$OnOpChangedListener);
-    public void startWatchingMode(java.lang.String, java.lang.String, int, android.app.AppOpsManager$OnOpChangedListener);
-    public void startWatchingMode(int, java.lang.String, android.app.AppOpsManager$OnOpChangedListener);
-    public void startWatchingMode(int, java.lang.String, int, android.app.AppOpsManager$OnOpChangedListener);
-    public void stopWatchingActive(android.app.AppOpsManager$OnOpActiveChangedListener);
-    public void stopWatchingMode(android.app.AppOpsManager$OnOpChangedListener);
-    public static int strDebugOpToOp(java.lang.String);
-    public static int strOpToOp(java.lang.String);
-    public int unsafeCheckOpRaw(java.lang.String, int, java.lang.String);
-
-
-    public static int MODE_ALLOWED;
-    public static int MODE_DEFAULT;
-    public static int MODE_ERRORED;
-    public static int MODE_FOREGROUND;
-    public static int MODE_IGNORED;
-    public static java.lang.String[] MODE_NAMES;
-    public static java.lang.String OPSTR_ACCEPT_HANDOVER;
-    public static java.lang.String OPSTR_ACCESS_NOTIFICATIONS;
-    public static java.lang.String OPSTR_ACTIVATE_VPN;
-    public static java.lang.String OPSTR_ADD_VOICEMAIL;
-    public static java.lang.String OPSTR_ANSWER_PHONE_CALLS;
-    public static java.lang.String OPSTR_ASSIST_SCREENSHOT;
-    public static java.lang.String OPSTR_ASSIST_STRUCTURE;
-    public static java.lang.String OPSTR_AUDIO_ACCESSIBILITY_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_ALARM_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_BLUETOOTH_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_MASTER_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_MEDIA_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_NOTIFICATION_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_RING_VOLUME;
-    public static java.lang.String OPSTR_AUDIO_VOICE_VOLUME;
-    public static java.lang.String OPSTR_BIND_ACCESSIBILITY_SERVICE;
-    public static java.lang.String OPSTR_BLUETOOTH_SCAN;
-    public static java.lang.String OPSTR_BODY_SENSORS;
-    public static java.lang.String OPSTR_CALL_PHONE;
-    public static java.lang.String OPSTR_CAMERA;
-    public static java.lang.String OPSTR_CHANGE_WIFI_STATE;
-    public static java.lang.String OPSTR_COARSE_LOCATION;
-    public static java.lang.String OPSTR_FINE_LOCATION;
-    public static java.lang.String OPSTR_GET_ACCOUNTS;
-    public static java.lang.String OPSTR_GET_USAGE_STATS;
-    public static java.lang.String OPSTR_GPS;
-    public static java.lang.String OPSTR_INSTANT_APP_START_FOREGROUND;
-    public static java.lang.String OPSTR_MANAGE_IPSEC_TUNNELS;
-    public static java.lang.String OPSTR_MOCK_LOCATION;
-    public static java.lang.String OPSTR_MONITOR_HIGH_POWER_LOCATION;
-    public static java.lang.String OPSTR_MONITOR_LOCATION;
-    public static java.lang.String OPSTR_MUTE_MICROPHONE;
-    public static java.lang.String OPSTR_NEIGHBORING_CELLS;
-    public static java.lang.String OPSTR_PICTURE_IN_PICTURE;
-    public static java.lang.String OPSTR_PLAY_AUDIO;
-    public static java.lang.String OPSTR_POST_NOTIFICATION;
-    public static java.lang.String OPSTR_PROCESS_OUTGOING_CALLS;
-    public static java.lang.String OPSTR_PROJECT_MEDIA;
-    public static java.lang.String OPSTR_READ_CALENDAR;
-    public static java.lang.String OPSTR_READ_CALL_LOG;
-    public static java.lang.String OPSTR_READ_CELL_BROADCASTS;
-    public static java.lang.String OPSTR_READ_CLIPBOARD;
-    public static java.lang.String OPSTR_READ_CONTACTS;
-    public static java.lang.String OPSTR_READ_EXTERNAL_STORAGE;
-    public static java.lang.String OPSTR_READ_ICC_SMS;
-    public static java.lang.String OPSTR_READ_PHONE_NUMBERS;
-    public static java.lang.String OPSTR_READ_PHONE_STATE;
-    public static java.lang.String OPSTR_READ_SMS;
-    public static java.lang.String OPSTR_RECEIVE_EMERGENCY_BROADCAST;
-    public static java.lang.String OPSTR_RECEIVE_MMS;
-    public static java.lang.String OPSTR_RECEIVE_SMS;
-    public static java.lang.String OPSTR_RECEIVE_WAP_PUSH;
-    public static java.lang.String OPSTR_RECORD_AUDIO;
-    public static java.lang.String OPSTR_REQUEST_DELETE_PACKAGES;
-    public static java.lang.String OPSTR_REQUEST_INSTALL_PACKAGES;
-    public static java.lang.String OPSTR_RUN_ANY_IN_BACKGROUND;
-    public static java.lang.String OPSTR_RUN_IN_BACKGROUND;
-    public static java.lang.String OPSTR_SEND_SMS;
-    public static java.lang.String OPSTR_START_FOREGROUND;
-    public static java.lang.String OPSTR_SYSTEM_ALERT_WINDOW;
-    public static java.lang.String OPSTR_TAKE_AUDIO_FOCUS;
-    public static java.lang.String OPSTR_TAKE_MEDIA_BUTTONS;
-    public static java.lang.String OPSTR_TOAST_WINDOW;
-    public static java.lang.String OPSTR_TURN_SCREEN_ON;
-    public static java.lang.String OPSTR_USE_FINGERPRINT;
-    public static java.lang.String OPSTR_USE_SIP;
-    public static java.lang.String OPSTR_VIBRATE;
-    public static java.lang.String OPSTR_WAKE_LOCK;
-    public static java.lang.String OPSTR_WIFI_SCAN;
-    public static java.lang.String OPSTR_WRITE_CALENDAR;
-    public static java.lang.String OPSTR_WRITE_CALL_LOG;
-    public static java.lang.String OPSTR_WRITE_CLIPBOARD;
-    public static java.lang.String OPSTR_WRITE_CONTACTS;
-    public static java.lang.String OPSTR_WRITE_EXTERNAL_STORAGE;
-    public static java.lang.String OPSTR_WRITE_ICC_SMS;
-    public static java.lang.String OPSTR_WRITE_SETTINGS;
-    public static java.lang.String OPSTR_WRITE_SMS;
-    public static java.lang.String OPSTR_WRITE_WALLPAPER;
-    public static int OP_ACCEPT_HANDOVER;
-    public static int OP_ACCESS_NOTIFICATIONS;
-    public static int OP_ACTIVATE_VPN;
-    public static int OP_ADD_VOICEMAIL;
-    public static int OP_ANSWER_PHONE_CALLS;
-    public static int OP_ASSIST_SCREENSHOT;
-    public static int OP_ASSIST_STRUCTURE;
-    public static int OP_AUDIO_ACCESSIBILITY_VOLUME;
-    public static int OP_AUDIO_ALARM_VOLUME;
-    public static int OP_AUDIO_BLUETOOTH_VOLUME;
-    public static int OP_AUDIO_MASTER_VOLUME;
-    public static int OP_AUDIO_MEDIA_VOLUME;
-    public static int OP_AUDIO_NOTIFICATION_VOLUME;
-    public static int OP_AUDIO_RING_VOLUME;
-    public static int OP_AUDIO_VOICE_VOLUME;
-    public static int OP_BIND_ACCESSIBILITY_SERVICE;
-    public static int OP_BLUETOOTH_SCAN;
-    public static int OP_BODY_SENSORS;
-    public static int OP_CALL_PHONE;
-    public static int OP_CAMERA;
-    public static int OP_CHANGE_WIFI_STATE;
-    public static int OP_COARSE_LOCATION;
-    public static int OP_FINE_LOCATION;
-    public static int OP_GET_ACCOUNTS;
-    public static int OP_GET_USAGE_STATS;
-    public static int OP_GPS;
-    public static int OP_INSTANT_APP_START_FOREGROUND;
-    public static int OP_MANAGE_IPSEC_TUNNELS;
-    public static int OP_MOCK_LOCATION;
-    public static int OP_MONITOR_HIGH_POWER_LOCATION;
-    public static int OP_MONITOR_LOCATION;
-    public static int OP_MUTE_MICROPHONE;
-    public static int OP_NEIGHBORING_CELLS;
-    public static int OP_NONE;
-    public static int OP_PICTURE_IN_PICTURE;
-    public static int OP_PLAY_AUDIO;
-    public static int OP_POST_NOTIFICATION;
-    public static int OP_PROCESS_OUTGOING_CALLS;
-    public static int OP_PROJECT_MEDIA;
-    public static int OP_READ_CALENDAR;
-    public static int OP_READ_CALL_LOG;
-    public static int OP_READ_CELL_BROADCASTS;
-    public static int OP_READ_CLIPBOARD;
-    public static int OP_READ_CONTACTS;
-    public static int OP_READ_EXTERNAL_STORAGE;
-    public static int OP_READ_ICC_SMS;
-    public static int OP_READ_PHONE_NUMBERS;
-    public static int OP_READ_PHONE_STATE;
-    public static int OP_READ_SMS;
-    public static int OP_RECEIVE_EMERGECY_SMS;
-    public static int OP_RECEIVE_MMS;
-    public static int OP_RECEIVE_SMS;
-    public static int OP_RECEIVE_WAP_PUSH;
-    public static int OP_RECORD_AUDIO;
-    public static int OP_REQUEST_DELETE_PACKAGES;
-    public static int OP_REQUEST_INSTALL_PACKAGES;
-    public static int OP_RUN_ANY_IN_BACKGROUND;
-    public static int OP_RUN_IN_BACKGROUND;
-    public static int OP_SEND_SMS;
-    public static int OP_START_FOREGROUND;
-    public static int OP_SYSTEM_ALERT_WINDOW;
-    public static int OP_TAKE_AUDIO_FOCUS;
-    public static int OP_TAKE_MEDIA_BUTTONS;
-    public static int OP_TOAST_WINDOW;
-    public static int OP_TURN_SCREEN_ON;
-    public static int OP_USE_FINGERPRINT;
-    public static int OP_USE_SIP;
-    public static int OP_VIBRATE;
-    public static int OP_WAKE_LOCK;
-    public static int OP_WIFI_SCAN;
-    public static int OP_WRITE_CALENDAR;
-    public static int OP_WRITE_CALL_LOG;
-    public static int OP_WRITE_CLIPBOARD;
-    public static int OP_WRITE_CONTACTS;
-    public static int OP_WRITE_EXTERNAL_STORAGE;
-    public static int OP_WRITE_ICC_SMS;
-    public static int OP_WRITE_SETTINGS;
-    public static int OP_WRITE_SMS;
-    public static int OP_WRITE_WALLPAPER;
-    public static int UID_STATE_BACKGROUND;
-    public static int UID_STATE_CACHED;
-    public static int UID_STATE_FOREGROUND;
-    public static int UID_STATE_FOREGROUND_SERVICE;
-    public static int UID_STATE_LAST_NON_RESTRICTED;
-    public static int UID_STATE_PERSISTENT;
-    public static int UID_STATE_TOP;
-    public static int WATCH_FOREGROUND_CHANGES;
-    public static int _NUM_OP;
-    public static int _NUM_UID_STATE;
-}
-
--keep class android.app.AppOpsManager$OnOpActiveChangedListener {
-
-    public abstract void onOpActiveChanged(int, int, java.lang.String, boolean);
-
-
-}
-
--keep class android.app.AppOpsManager$OnOpChangedListener {
-
-    public abstract void onOpChanged(java.lang.String, java.lang.String);
-
-
-}
-
--keep class android.app.AppOpsManager$OpEntry {
-    <init>(int, int, long, long, int, int, java.lang.String);
-    <init>(int, int, long[], long[], int, boolean, int, java.lang.String);
-    <init>(int, int, long[], long[], int, int, java.lang.String);
-
-    public int describeContents();
-    public int getDuration();
-    public long getLastAccessBackgroundTime();
-    public long getLastAccessForegroundTime();
-    public long getLastAccessTime();
-    public long getLastRejectBackgroundTime();
-    public long getLastRejectForegroundTime();
-    public long getLastRejectTime();
-    public long getLastRejectTimeFor(int);
-    public long getLastTimeFor(int);
-    public int getMode();
-    public int getOp();
-    public java.lang.String getProxyPackageName();
-    public int getProxyUid();
-    public long getRejectTime();
-    public long getTime();
-    public boolean isRunning();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.AppOpsManager$PackageOps {
-    <init>(java.lang.String, int, java.util.List);
-
-    public int describeContents();
-    public java.util.List getOps();
-    public java.lang.String getPackageName();
-    public int getUid();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.Application {
-    <init>();
-
-    public android.view.autofill.AutofillManager$AutofillClient getAutofillClient();
-    public static java.lang.String getProcessName();
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public void onCreate();
-    public void onLowMemory();
-    public void onTerminate();
-    public void onTrimMemory(int);
-    public void registerActivityLifecycleCallbacks(android.app.Application$ActivityLifecycleCallbacks);
-    public void registerComponentCallbacks(android.content.ComponentCallbacks);
-    public void registerOnProvideAssistDataListener(android.app.Application$OnProvideAssistDataListener);
-    public void unregisterActivityLifecycleCallbacks(android.app.Application$ActivityLifecycleCallbacks);
-    public void unregisterComponentCallbacks(android.content.ComponentCallbacks);
-    public void unregisterOnProvideAssistDataListener(android.app.Application$OnProvideAssistDataListener);
-
-
-    public android.app.LoadedApk mLoadedApk;
-}
-
--keep class android.app.Application$ActivityLifecycleCallbacks {
-
-    public abstract void onActivityCreated(android.app.Activity, android.os.Bundle);
-    public abstract void onActivityDestroyed(android.app.Activity);
-    public abstract void onActivityPaused(android.app.Activity);
-    public abstract void onActivityResumed(android.app.Activity);
-    public abstract void onActivitySaveInstanceState(android.app.Activity, android.os.Bundle);
-    public abstract void onActivityStarted(android.app.Activity);
-    public abstract void onActivityStopped(android.app.Activity);
-
-
-}
-
--keep class android.app.Application$OnProvideAssistDataListener {
-
-    public abstract void onProvideAssistData(android.app.Activity, android.os.Bundle);
-
-
-}
-
--keep class android.app.ApplicationErrorReport {
-    <init>();
-
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public static android.content.ComponentName getErrorReportReceiver(android.content.Context, java.lang.String, int);
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int TYPE_ANR;
-    public static int TYPE_BATTERY;
-    public static int TYPE_CRASH;
-    public static int TYPE_NONE;
-    public static int TYPE_RUNNING_SERVICE;
-    public android.app.ApplicationErrorReport$AnrInfo anrInfo;
-    public android.app.ApplicationErrorReport$BatteryInfo batteryInfo;
-    public android.app.ApplicationErrorReport$CrashInfo crashInfo;
-    public java.lang.String installerPackageName;
-    public java.lang.String packageName;
-    public java.lang.String processName;
-    public android.app.ApplicationErrorReport$RunningServiceInfo runningServiceInfo;
-    public boolean systemApp;
-    public long time;
-    public int type;
-}
-
--keep class android.app.ApplicationErrorReport$AnrInfo {
-    <init>();
-    <init>(android.os.Parcel);
-
-    public void dump(android.util.Printer, java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public java.lang.String activity;
-    public java.lang.String cause;
-    public java.lang.String info;
-}
-
--keep class android.app.ApplicationErrorReport$BatteryInfo {
-    <init>();
-    <init>(android.os.Parcel);
-
-    public void dump(android.util.Printer, java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public java.lang.String checkinDetails;
-    public long durationMicros;
-    public java.lang.String usageDetails;
-    public int usagePercent;
-}
-
--keep class android.app.ApplicationErrorReport$CrashInfo {
-    <init>();
-    <init>(java.lang.Throwable);
-    <init>(android.os.Parcel);
-
-    public void appendStackTrace(java.lang.String);
-    public void dump(android.util.Printer, java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public java.lang.String exceptionClassName;
-    public java.lang.String exceptionMessage;
-    public java.lang.String stackTrace;
-    public java.lang.String throwClassName;
-    public java.lang.String throwFileName;
-    public int throwLineNumber;
-    public java.lang.String throwMethodName;
-}
-
--keep class android.app.ApplicationErrorReport$ParcelableCrashInfo {
-    <init>();
-    <init>(java.lang.Throwable);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.ApplicationErrorReport$RunningServiceInfo {
-    <init>();
-    <init>(android.os.Parcel);
-
-    public void dump(android.util.Printer, java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public long durationMillis;
-    public java.lang.String serviceDetails;
-}
-
--keep class android.app.ClientTransactionHandler {
-    <init>();
-
-    public void executeTransaction(android.app.servertransaction.ClientTransaction);
-    public abstract android.app.ActivityThread$ActivityClientRecord getActivityClient(android.os.IBinder);
-    public abstract android.app.LoadedApk getPackageInfoNoCheck(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo);
-    public abstract void handleActivityConfigurationChanged(android.os.IBinder, android.content.res.Configuration, int);
-    public abstract void handleConfigurationChanged(android.content.res.Configuration);
-    public abstract void handleDestroyActivity(android.os.IBinder, boolean, int, boolean, java.lang.String);
-    public abstract android.app.Activity handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions, android.content.Intent);
-    public abstract void handleMultiWindowModeChanged(android.os.IBinder, boolean, android.content.res.Configuration);
-    public abstract void handleNewIntent(android.os.IBinder, java.util.List, boolean);
-    public abstract void handlePauseActivity(android.os.IBinder, boolean, boolean, int, android.app.servertransaction.PendingTransactionActions, java.lang.String);
-    public abstract void handlePictureInPictureModeChanged(android.os.IBinder, boolean, android.content.res.Configuration);
-    public abstract void handleRelaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions);
-    public abstract void handleResumeActivity(android.os.IBinder, boolean, boolean, java.lang.String);
-    public abstract void handleSendResult(android.os.IBinder, java.util.List, java.lang.String);
-    public abstract void handleStartActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions);
-    public abstract void handleStopActivity(android.os.IBinder, boolean, int, android.app.servertransaction.PendingTransactionActions, boolean, java.lang.String);
-    public abstract void handleWindowVisibility(android.os.IBinder, boolean);
-    public abstract void performRestartActivity(android.os.IBinder, boolean);
-    public abstract android.app.ActivityThread$ActivityClientRecord prepareRelaunchActivity(android.os.IBinder, java.util.List, java.util.List, int, android.util.MergedConfiguration, boolean);
-    public abstract void reportRelaunch(android.os.IBinder, android.app.servertransaction.PendingTransactionActions);
-    public abstract void reportStop(android.app.servertransaction.PendingTransactionActions);
-    public abstract void updatePendingConfiguration(android.content.res.Configuration);
-    public abstract void updateProcessState(int, boolean);
-
-
-}
-
--keep class android.app.ContentProviderHolder {
-    <init>(android.content.pm.ProviderInfo);
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.os.IBinder connection;
-    public android.content.pm.ProviderInfo info;
-    public boolean noReleaseNeeded;
-    public android.content.IContentProvider provider;
-}
-
--keep class android.app.ContextImpl {
-
-    public boolean bindService(android.content.Intent, android.content.ServiceConnection, int);
-    public boolean bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle);
-    public boolean bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.Handler, android.os.UserHandle);
-    public boolean canLoadUnsafeResources();
-    public int checkCallingOrSelfPermission(java.lang.String);
-    public int checkCallingOrSelfUriPermission(android.net.Uri, int);
-    public int checkCallingPermission(java.lang.String);
-    public int checkCallingUriPermission(android.net.Uri, int);
-    public int checkPermission(java.lang.String, int, int);
-    public int checkPermission(java.lang.String, int, int, android.os.IBinder);
-    public int checkSelfPermission(java.lang.String);
-    public int checkUriPermission(android.net.Uri, int, int, int);
-    public int checkUriPermission(android.net.Uri, int, int, int, android.os.IBinder);
-    public int checkUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int);
-    public void clearWallpaper();
-    public android.content.Context createApplicationContext(android.content.pm.ApplicationInfo, int);
-    public android.content.Context createConfigurationContext(android.content.res.Configuration);
-    public android.content.Context createContextForSplit(java.lang.String);
-    public android.content.Context createCredentialProtectedStorageContext();
-    public android.content.Context createDeviceProtectedStorageContext();
-    public android.content.Context createDisplayContext(android.view.Display);
-    public android.content.Context createPackageContext(java.lang.String, int);
-    public android.content.Context createPackageContextAsUser(java.lang.String, int, android.os.UserHandle);
-    public java.lang.String[] databaseList();
-    public boolean deleteDatabase(java.lang.String);
-    public boolean deleteFile(java.lang.String);
-    public boolean deleteSharedPreferences(java.lang.String);
-    public void enforceCallingOrSelfPermission(java.lang.String, java.lang.String);
-    public void enforceCallingOrSelfUriPermission(android.net.Uri, int, java.lang.String);
-    public void enforceCallingPermission(java.lang.String, java.lang.String);
-    public void enforceCallingUriPermission(android.net.Uri, int, java.lang.String);
-    public void enforcePermission(java.lang.String, int, int, java.lang.String);
-    public void enforceUriPermission(android.net.Uri, int, int, int, java.lang.String);
-    public void enforceUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int, java.lang.String);
-    public java.lang.String[] fileList();
-    public android.os.IBinder getActivityToken();
-    public android.content.Context getApplicationContext();
-    public android.content.pm.ApplicationInfo getApplicationInfo();
-    public android.content.res.AssetManager getAssets();
-    public android.view.autofill.AutofillManager$AutofillClient getAutofillClient();
-    public java.lang.String getBasePackageName();
-    public java.io.File getCacheDir();
-    public java.lang.ClassLoader getClassLoader();
-    public java.io.File getCodeCacheDir();
-    public android.content.ContentResolver getContentResolver();
-    public java.io.File getDataDir();
-    public java.io.File getDatabasePath(java.lang.String);
-    public java.io.File getDir(java.lang.String, int);
-    public android.view.Display getDisplay();
-    public android.view.DisplayAdjustments getDisplayAdjustments(int);
-    public java.io.File getExternalCacheDir();
-    public java.io.File[] getExternalCacheDirs();
-    public java.io.File getExternalFilesDir(java.lang.String);
-    public java.io.File[] getExternalFilesDirs(java.lang.String);
-    public java.io.File[] getExternalMediaDirs();
-    public java.io.File getFileStreamPath(java.lang.String);
-    public java.io.File getFilesDir();
-    public android.app.IApplicationThread getIApplicationThread();
-    public java.util.concurrent.Executor getMainExecutor();
-    public android.os.Looper getMainLooper();
-    public android.os.Handler getMainThreadHandler();
-    public java.io.File getNoBackupFilesDir();
-    public java.io.File getObbDir();
-    public java.io.File[] getObbDirs();
-    public java.lang.String getOpPackageName();
-    public java.lang.String getPackageCodePath();
-    public android.content.pm.PackageManager getPackageManager();
-    public java.lang.String getPackageName();
-    public java.lang.String getPackageResourcePath();
-    public java.io.File getPreloadsFileCache();
-    public android.content.res.Resources getResources();
-    public android.app.IServiceConnection getServiceDispatcher(android.content.ServiceConnection, android.os.Handler, int);
-    public android.content.SharedPreferences getSharedPreferences(java.lang.String, int);
-    public android.content.SharedPreferences getSharedPreferences(java.io.File, int);
-    public java.io.File getSharedPreferencesPath(java.lang.String);
-    public java.lang.Object getSystemService(java.lang.String);
-    public java.lang.String getSystemServiceName(java.lang.Class);
-    public android.content.res.Resources$Theme getTheme();
-    public int getThemeResId();
-    public android.os.UserHandle getUser();
-    public int getUserId();
-    public android.graphics.drawable.Drawable getWallpaper();
-    public int getWallpaperDesiredMinimumHeight();
-    public int getWallpaperDesiredMinimumWidth();
-    public void grantUriPermission(java.lang.String, android.net.Uri, int);
-    public boolean isAutofillCompatibilityEnabled();
-    public boolean isCredentialProtectedStorage();
-    public boolean isDeviceProtectedStorage();
-    public boolean isRestricted();
-    public boolean moveDatabaseFrom(android.content.Context, java.lang.String);
-    public boolean moveSharedPreferencesFrom(android.content.Context, java.lang.String);
-    public java.io.FileInputStream openFileInput(java.lang.String);
-    public java.io.FileOutputStream openFileOutput(java.lang.String, int);
-    public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CursorFactory, android.database.DatabaseErrorHandler);
-    public android.graphics.drawable.Drawable peekWallpaper();
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter);
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, int);
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler);
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler, int);
-    public android.content.Intent registerReceiverAsUser(android.content.BroadcastReceiver, android.os.UserHandle, android.content.IntentFilter, java.lang.String, android.os.Handler);
-    public void reloadSharedPreferences();
-    public void removeStickyBroadcast(android.content.Intent);
-    public void removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public void revokeUriPermission(android.net.Uri, int);
-    public void revokeUriPermission(java.lang.String, android.net.Uri, int);
-    public void sendBroadcast(android.content.Intent);
-    public void sendBroadcast(android.content.Intent, java.lang.String);
-    public void sendBroadcast(android.content.Intent, java.lang.String, android.os.Bundle);
-    public void sendBroadcast(android.content.Intent, java.lang.String, int);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.os.Bundle);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int);
-    public void sendBroadcastAsUserMultiplePermissions(android.content.Intent, android.os.UserHandle, java.lang.String[]);
-    public void sendBroadcastMultiplePermissions(android.content.Intent, java.lang.String[]);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String, int, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendStickyBroadcast(android.content.Intent);
-    public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.os.Bundle);
-    public void sendStickyOrderedBroadcast(android.content.Intent, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void setAutofillClient(android.view.autofill.AutofillManager$AutofillClient);
-    public void setAutofillCompatibilityEnabled(boolean);
-    public void setTheme(int);
-    public void setWallpaper(android.graphics.Bitmap);
-    public void setWallpaper(java.io.InputStream);
-    public void startActivities(android.content.Intent[]);
-    public void startActivities(android.content.Intent[], android.os.Bundle);
-    public int startActivitiesAsUser(android.content.Intent[], android.os.Bundle, android.os.UserHandle);
-    public void startActivity(android.content.Intent);
-    public void startActivity(android.content.Intent, android.os.Bundle);
-    public void startActivityAsUser(android.content.Intent, android.os.UserHandle);
-    public void startActivityAsUser(android.content.Intent, android.os.Bundle, android.os.UserHandle);
-    public android.content.ComponentName startForegroundService(android.content.Intent);
-    public android.content.ComponentName startForegroundServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public boolean startInstrumentation(android.content.ComponentName, java.lang.String, android.os.Bundle);
-    public void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int);
-    public void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle);
-    public android.content.ComponentName startService(android.content.Intent);
-    public android.content.ComponentName startServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public boolean stopService(android.content.Intent);
-    public boolean stopServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public void unbindService(android.content.ServiceConnection);
-    public void unregisterReceiver(android.content.BroadcastReceiver);
-    public void updateDisplay(int);
-
-
-}
-
--keep class android.app.Dialog {
-    <init>(android.content.Context);
-    <init>(android.content.Context, int);
-    <init>(android.content.Context, boolean, android.os.Message);
-    <init>(android.content.Context, boolean, android.content.DialogInterface$OnCancelListener);
-
-    public void addContentView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void cancel();
-    public void closeOptionsMenu();
-    public void create();
-    public void dismiss();
-    public boolean dispatchGenericMotionEvent(android.view.MotionEvent);
-    public boolean dispatchKeyEvent(android.view.KeyEvent);
-    public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
-    public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-    public boolean dispatchTouchEvent(android.view.MotionEvent);
-    public boolean dispatchTrackballEvent(android.view.MotionEvent);
-    public android.view.View findViewById(int);
-    public android.app.ActionBar getActionBar();
-    public android.content.Context getContext();
-    public android.view.View getCurrentFocus();
-    public android.view.LayoutInflater getLayoutInflater();
-    public android.app.Activity getOwnerActivity();
-    public android.view.SearchEvent getSearchEvent();
-    public int getVolumeControlStream();
-    public android.view.Window getWindow();
-    public void hide();
-    public void invalidateOptionsMenu();
-    public boolean isShowing();
-    public void onActionModeFinished(android.view.ActionMode);
-    public void onActionModeStarted(android.view.ActionMode);
-    public void onAttachedToWindow();
-    public void onBackPressed();
-    public void onContentChanged();
-    public boolean onContextItemSelected(android.view.MenuItem);
-    public void onContextMenuClosed(android.view.Menu);
-    protected void onCreate(android.os.Bundle);
-    public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu$ContextMenuInfo);
-    public boolean onCreateOptionsMenu(android.view.Menu);
-    public boolean onCreatePanelMenu(int, android.view.Menu);
-    public android.view.View onCreatePanelView(int);
-    public void onDetachedFromWindow();
-    public boolean onGenericMotionEvent(android.view.MotionEvent);
-    public boolean onKeyDown(int, android.view.KeyEvent);
-    public boolean onKeyLongPress(int, android.view.KeyEvent);
-    public boolean onKeyMultiple(int, int, android.view.KeyEvent);
-    public boolean onKeyShortcut(int, android.view.KeyEvent);
-    public boolean onKeyUp(int, android.view.KeyEvent);
-    public boolean onMenuItemSelected(int, android.view.MenuItem);
-    public boolean onMenuOpened(int, android.view.Menu);
-    public boolean onOptionsItemSelected(android.view.MenuItem);
-    public void onOptionsMenuClosed(android.view.Menu);
-    public void onPanelClosed(int, android.view.Menu);
-    public boolean onPrepareOptionsMenu(android.view.Menu);
-    public boolean onPreparePanel(int, android.view.View, android.view.Menu);
-    public void onRestoreInstanceState(android.os.Bundle);
-    public android.os.Bundle onSaveInstanceState();
-    public boolean onSearchRequested(android.view.SearchEvent);
-    public boolean onSearchRequested();
-    protected void onStart();
-    protected void onStop();
-    public boolean onTouchEvent(android.view.MotionEvent);
-    public boolean onTrackballEvent(android.view.MotionEvent);
-    public void onWindowAttributesChanged(android.view.WindowManager$LayoutParams);
-    public void onWindowDismissed(boolean, boolean);
-    public void onWindowFocusChanged(boolean);
-    public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback);
-    public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback, int);
-    public void openContextMenu(android.view.View);
-    public void openOptionsMenu();
-    public void registerForContextMenu(android.view.View);
-    public boolean requestWindowFeature(int);
-    public android.view.View requireViewById(int);
-    public void setCancelMessage(android.os.Message);
-    public void setCancelable(boolean);
-    public void setCanceledOnTouchOutside(boolean);
-    public void setContentView(int);
-    public void setContentView(android.view.View);
-    public void setContentView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void setDismissMessage(android.os.Message);
-    public void setFeatureDrawable(int, android.graphics.drawable.Drawable);
-    public void setFeatureDrawableAlpha(int, int);
-    public void setFeatureDrawableResource(int, int);
-    public void setFeatureDrawableUri(int, android.net.Uri);
-    public void setOnCancelListener(android.content.DialogInterface$OnCancelListener);
-    public void setOnDismissListener(android.content.DialogInterface$OnDismissListener);
-    public void setOnKeyListener(android.content.DialogInterface$OnKeyListener);
-    public void setOnShowListener(android.content.DialogInterface$OnShowListener);
-    public void setOwnerActivity(android.app.Activity);
-    public void setTitle(java.lang.CharSequence);
-    public void setTitle(int);
-    public void setVolumeControlStream(int);
-    public void show();
-    public boolean takeCancelAndDismissListeners(java.lang.String, android.content.DialogInterface$OnCancelListener, android.content.DialogInterface$OnDismissListener);
-    public void takeKeyEvents(boolean);
-    public void unregisterForContextMenu(android.view.View);
-
-
-    protected boolean mCancelable;
-}
-
--keep class android.app.Fragment {
-    <init>();
-
-    public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public boolean equals(java.lang.Object);
-    public android.app.Activity getActivity();
-    public boolean getAllowEnterTransitionOverlap();
-    public boolean getAllowReturnTransitionOverlap();
-    public android.os.Bundle getArguments();
-    public android.app.FragmentManager getChildFragmentManager();
-    public android.content.Context getContext();
-    public android.transition.Transition getEnterTransition();
-    public android.transition.Transition getExitTransition();
-    public android.app.FragmentManager getFragmentManager();
-    public java.lang.Object getHost();
-    public int getId();
-    public android.view.LayoutInflater getLayoutInflater();
-    public android.app.LoaderManager getLoaderManager();
-    public android.app.Fragment getParentFragment();
-    public android.transition.Transition getReenterTransition();
-    public android.content.res.Resources getResources();
-    public boolean getRetainInstance();
-    public android.transition.Transition getReturnTransition();
-    public android.transition.Transition getSharedElementEnterTransition();
-    public android.transition.Transition getSharedElementReturnTransition();
-    public java.lang.String getString(int);
-    public java.lang.String getString(int, java.lang.Object[]);
-    public java.lang.String getTag();
-    public android.app.Fragment getTargetFragment();
-    public int getTargetRequestCode();
-    public java.lang.CharSequence getText(int);
-    public boolean getUserVisibleHint();
-    public android.view.View getView();
-    public int hashCode();
-    public static android.app.Fragment instantiate(android.content.Context, java.lang.String);
-    public static android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle);
-    public boolean isAdded();
-    public boolean isDetached();
-    public boolean isHidden();
-    public boolean isInLayout();
-    public boolean isRemoving();
-    public boolean isResumed();
-    public boolean isStateSaved();
-    public boolean isVisible();
-    public void onActivityCreated(android.os.Bundle);
-    public void onActivityResult(int, int, android.content.Intent);
-    public void onAttach(android.content.Context);
-    public void onAttach(android.app.Activity);
-    public void onAttachFragment(android.app.Fragment);
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public boolean onContextItemSelected(android.view.MenuItem);
-    public void onCreate(android.os.Bundle);
-    public android.animation.Animator onCreateAnimator(int, boolean, int);
-    public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu$ContextMenuInfo);
-    public void onCreateOptionsMenu(android.view.Menu, android.view.MenuInflater);
-    public android.view.View onCreateView(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle);
-    public void onDestroy();
-    public void onDestroyOptionsMenu();
-    public void onDestroyView();
-    public void onDetach();
-    public android.view.LayoutInflater onGetLayoutInflater(android.os.Bundle);
-    public void onHiddenChanged(boolean);
-    public void onInflate(android.util.AttributeSet, android.os.Bundle);
-    public void onInflate(android.content.Context, android.util.AttributeSet, android.os.Bundle);
-    public void onInflate(android.app.Activity, android.util.AttributeSet, android.os.Bundle);
-    public void onLowMemory();
-    public void onMultiWindowModeChanged(boolean, android.content.res.Configuration);
-    public void onMultiWindowModeChanged(boolean);
-    public boolean onOptionsItemSelected(android.view.MenuItem);
-    public void onOptionsMenuClosed(android.view.Menu);
-    public void onPause();
-    public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration);
-    public void onPictureInPictureModeChanged(boolean);
-    public void onPrepareOptionsMenu(android.view.Menu);
-    public void onRequestPermissionsResult(int, java.lang.String[], int[]);
-    public void onResume();
-    public void onSaveInstanceState(android.os.Bundle);
-    public void onStart();
-    public void onStop();
-    public void onTrimMemory(int);
-    public void onViewCreated(android.view.View, android.os.Bundle);
-    public void onViewStateRestored(android.os.Bundle);
-    public void postponeEnterTransition();
-    public void registerForContextMenu(android.view.View);
-    public void requestPermissions(java.lang.String[], int);
-    public void setAllowEnterTransitionOverlap(boolean);
-    public void setAllowReturnTransitionOverlap(boolean);
-    public void setArguments(android.os.Bundle);
-    public void setEnterSharedElementCallback(android.app.SharedElementCallback);
-    public void setEnterTransition(android.transition.Transition);
-    public void setExitSharedElementCallback(android.app.SharedElementCallback);
-    public void setExitTransition(android.transition.Transition);
-    public void setHasOptionsMenu(boolean);
-    public void setInitialSavedState(android.app.Fragment$SavedState);
-    public void setMenuVisibility(boolean);
-    public void setReenterTransition(android.transition.Transition);
-    public void setRetainInstance(boolean);
-    public void setReturnTransition(android.transition.Transition);
-    public void setSharedElementEnterTransition(android.transition.Transition);
-    public void setSharedElementReturnTransition(android.transition.Transition);
-    public void setTargetFragment(android.app.Fragment, int);
-    public void setUserVisibleHint(boolean);
-    public boolean shouldShowRequestPermissionRationale(java.lang.String);
-    public void startActivity(android.content.Intent);
-    public void startActivity(android.content.Intent, android.os.Bundle);
-    public void startActivityForResult(android.content.Intent, int);
-    public void startActivityForResult(android.content.Intent, int, android.os.Bundle);
-    public void startActivityForResultAsUser(android.content.Intent, int, android.os.Bundle, android.os.UserHandle);
-    public void startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle);
-    public void startPostponedEnterTransition();
-    public java.lang.String toString();
-    public void unregisterForContextMenu(android.view.View);
-
-
-}
-
--keep class android.app.Fragment$SavedState {
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$ClassLoaderCreator CREATOR;
-}
-
--keep class android.app.FragmentContainer {
-    <init>();
-
-    public android.app.Fragment instantiate(android.content.Context, java.lang.String, android.os.Bundle);
-    public abstract android.view.View onFindViewById(int);
-    public abstract boolean onHasView();
-
-
-}
-
--keep class android.app.FragmentHostCallback {
-    <init>(android.content.Context, android.os.Handler, int);
-
-    public void onAttachFragment(android.app.Fragment);
-    public void onDump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public android.view.View onFindViewById(int);
-    public abstract java.lang.Object onGetHost();
-    public android.view.LayoutInflater onGetLayoutInflater();
-    public int onGetWindowAnimations();
-    public boolean onHasView();
-    public boolean onHasWindowAnimations();
-    public void onInvalidateOptionsMenu();
-    public void onRequestPermissionsFromFragment(android.app.Fragment, java.lang.String[], int);
-    public boolean onShouldSaveFragmentState(android.app.Fragment);
-    public void onStartActivityAsUserFromFragment(android.app.Fragment, android.content.Intent, int, android.os.Bundle, android.os.UserHandle);
-    public void onStartActivityFromFragment(android.app.Fragment, android.content.Intent, int, android.os.Bundle);
-    public void onStartIntentSenderFromFragment(android.app.Fragment, android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle);
-    public boolean onUseFragmentManagerInflaterFactory();
-
-
-}
-
--keep class android.app.FragmentManager {
-    <init>();
-
-    public abstract void addOnBackStackChangedListener(android.app.FragmentManager$OnBackStackChangedListener);
-    public abstract android.app.FragmentTransaction beginTransaction();
-    public abstract void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public static void enableDebugLogging(boolean);
-    public abstract boolean executePendingTransactions();
-    public abstract android.app.Fragment findFragmentById(int);
-    public abstract android.app.Fragment findFragmentByTag(java.lang.String);
-    public abstract android.app.FragmentManager$BackStackEntry getBackStackEntryAt(int);
-    public abstract int getBackStackEntryCount();
-    public abstract android.app.Fragment getFragment(android.os.Bundle, java.lang.String);
-    public abstract java.util.List getFragments();
-    public abstract android.app.Fragment getPrimaryNavigationFragment();
-    public void invalidateOptionsMenu();
-    public abstract boolean isDestroyed();
-    public abstract boolean isStateSaved();
-    public android.app.FragmentTransaction openTransaction();
-    public abstract void popBackStack();
-    public abstract void popBackStack(java.lang.String, int);
-    public abstract void popBackStack(int, int);
-    public abstract boolean popBackStackImmediate();
-    public abstract boolean popBackStackImmediate(java.lang.String, int);
-    public abstract boolean popBackStackImmediate(int, int);
-    public abstract void putFragment(android.os.Bundle, java.lang.String, android.app.Fragment);
-    public abstract void registerFragmentLifecycleCallbacks(android.app.FragmentManager$FragmentLifecycleCallbacks, boolean);
-    public abstract void removeOnBackStackChangedListener(android.app.FragmentManager$OnBackStackChangedListener);
-    public abstract android.app.Fragment$SavedState saveFragmentInstanceState(android.app.Fragment);
-    public abstract void unregisterFragmentLifecycleCallbacks(android.app.FragmentManager$FragmentLifecycleCallbacks);
-
-
-    public static int POP_BACK_STACK_INCLUSIVE;
-}
-
--keep class android.app.FragmentManager$BackStackEntry {
-
-    public abstract java.lang.CharSequence getBreadCrumbShortTitle();
-    public abstract int getBreadCrumbShortTitleRes();
-    public abstract java.lang.CharSequence getBreadCrumbTitle();
-    public abstract int getBreadCrumbTitleRes();
-    public abstract int getId();
-    public abstract java.lang.String getName();
-
-
-}
-
--keep class android.app.FragmentManager$FragmentLifecycleCallbacks {
-    <init>();
-
-    public void onFragmentActivityCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle);
-    public void onFragmentAttached(android.app.FragmentManager, android.app.Fragment, android.content.Context);
-    public void onFragmentCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle);
-    public void onFragmentDestroyed(android.app.FragmentManager, android.app.Fragment);
-    public void onFragmentDetached(android.app.FragmentManager, android.app.Fragment);
-    public void onFragmentPaused(android.app.FragmentManager, android.app.Fragment);
-    public void onFragmentPreAttached(android.app.FragmentManager, android.app.Fragment, android.content.Context);
-    public void onFragmentPreCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle);
-    public void onFragmentResumed(android.app.FragmentManager, android.app.Fragment);
-    public void onFragmentSaveInstanceState(android.app.FragmentManager, android.app.Fragment, android.os.Bundle);
-    public void onFragmentStarted(android.app.FragmentManager, android.app.Fragment);
-    public void onFragmentStopped(android.app.FragmentManager, android.app.Fragment);
-    public void onFragmentViewCreated(android.app.FragmentManager, android.app.Fragment, android.view.View, android.os.Bundle);
-    public void onFragmentViewDestroyed(android.app.FragmentManager, android.app.Fragment);
-
-
-}
-
--keep class android.app.FragmentManager$OnBackStackChangedListener {
-
-    public abstract void onBackStackChanged();
-
-
-}
-
--keep class android.app.FragmentTransaction {
-    <init>();
-
-    public abstract android.app.FragmentTransaction add(android.app.Fragment, java.lang.String);
-    public abstract android.app.FragmentTransaction add(int, android.app.Fragment);
-    public abstract android.app.FragmentTransaction add(int, android.app.Fragment, java.lang.String);
-    public abstract android.app.FragmentTransaction addSharedElement(android.view.View, java.lang.String);
-    public abstract android.app.FragmentTransaction addToBackStack(java.lang.String);
-    public abstract android.app.FragmentTransaction attach(android.app.Fragment);
-    public abstract int commit();
-    public abstract int commitAllowingStateLoss();
-    public abstract void commitNow();
-    public abstract void commitNowAllowingStateLoss();
-    public abstract android.app.FragmentTransaction detach(android.app.Fragment);
-    public abstract android.app.FragmentTransaction disallowAddToBackStack();
-    public abstract android.app.FragmentTransaction hide(android.app.Fragment);
-    public abstract boolean isAddToBackStackAllowed();
-    public abstract boolean isEmpty();
-    public abstract android.app.FragmentTransaction remove(android.app.Fragment);
-    public abstract android.app.FragmentTransaction replace(int, android.app.Fragment);
-    public abstract android.app.FragmentTransaction replace(int, android.app.Fragment, java.lang.String);
-    public abstract android.app.FragmentTransaction runOnCommit(java.lang.Runnable);
-    public abstract android.app.FragmentTransaction setBreadCrumbShortTitle(int);
-    public abstract android.app.FragmentTransaction setBreadCrumbShortTitle(java.lang.CharSequence);
-    public abstract android.app.FragmentTransaction setBreadCrumbTitle(int);
-    public abstract android.app.FragmentTransaction setBreadCrumbTitle(java.lang.CharSequence);
-    public abstract android.app.FragmentTransaction setCustomAnimations(int, int);
-    public abstract android.app.FragmentTransaction setCustomAnimations(int, int, int, int);
-    public abstract android.app.FragmentTransaction setPrimaryNavigationFragment(android.app.Fragment);
-    public abstract android.app.FragmentTransaction setReorderingAllowed(boolean);
-    public abstract android.app.FragmentTransaction setTransition(int);
-    public abstract android.app.FragmentTransaction setTransitionStyle(int);
-    public abstract android.app.FragmentTransaction show(android.app.Fragment);
-
-
-    public static int TRANSIT_ENTER_MASK;
-    public static int TRANSIT_EXIT_MASK;
-    public static int TRANSIT_FRAGMENT_CLOSE;
-    public static int TRANSIT_FRAGMENT_FADE;
-    public static int TRANSIT_FRAGMENT_OPEN;
-    public static int TRANSIT_NONE;
-    public static int TRANSIT_UNSET;
-}
-
--keep class android.app.GrantedUriPermission {
-    <init>(android.net.Uri, java.lang.String);
-
-    public int describeContents();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String packageName;
-    public android.net.Uri uri;
-}
-
--keep class android.app.IActivityController {
-
-    public abstract boolean activityResuming(java.lang.String);
-    public abstract boolean activityStarting(android.content.Intent, java.lang.String);
-    public abstract boolean appCrashed(java.lang.String, int, java.lang.String, java.lang.String, long, java.lang.String);
-    public abstract int appEarlyNotResponding(java.lang.String, int, java.lang.String);
-    public abstract int appNotResponding(java.lang.String, int, java.lang.String);
-    public abstract int systemNotResponding(java.lang.String);
-
-
-}
-
--keep class android.app.IActivityManager {
-
-    public abstract void activityDestroyed(android.os.IBinder);
-    public abstract void activityIdle(android.os.IBinder, android.content.res.Configuration, boolean);
-    public abstract void activityPaused(android.os.IBinder);
-    public abstract void activityRelaunched(android.os.IBinder);
-    public abstract void activityResumed(android.os.IBinder);
-    public abstract void activitySlept(android.os.IBinder);
-    public abstract void activityStopped(android.os.IBinder, android.os.Bundle, android.os.PersistableBundle, java.lang.CharSequence);
-    public abstract int addAppTask(android.os.IBinder, android.content.Intent, android.app.ActivityManager$TaskDescription, android.graphics.Bitmap);
-    public abstract void addInstrumentationResults(android.app.IApplicationThread, android.os.Bundle);
-    public abstract void addPackageDependency(java.lang.String);
-    public abstract void alwaysShowUnsupportedCompileSdkWarning(android.content.ComponentName);
-    public abstract void appNotRespondingViaProvider(android.os.IBinder);
-    public abstract void attachApplication(android.app.IApplicationThread, long);
-    public abstract void backgroundWhitelistUid(int);
-    public abstract void backupAgentCreated(java.lang.String, android.os.IBinder);
-    public abstract boolean bindBackupAgent(java.lang.String, int, int);
-    public abstract int bindService(android.app.IApplicationThread, android.os.IBinder, android.content.Intent, java.lang.String, android.app.IServiceConnection, int, java.lang.String, int);
-    public abstract void bootAnimationComplete();
-    public abstract int broadcastIntent(android.app.IApplicationThread, android.content.Intent, java.lang.String, android.content.IIntentReceiver, int, java.lang.String, android.os.Bundle, java.lang.String[], int, android.os.Bundle, boolean, boolean, int);
-    public abstract void cancelIntentSender(android.content.IIntentSender);
-    public abstract void cancelRecentsAnimation(boolean);
-    public abstract void cancelTaskWindowTransition(int);
-    public abstract int checkGrantUriPermission(int, java.lang.String, android.net.Uri, int, int);
-    public abstract int checkPermission(java.lang.String, int, int);
-    public abstract int checkPermissionWithToken(java.lang.String, int, int, android.os.IBinder);
-    public abstract int checkUriPermission(android.net.Uri, int, int, int, int, android.os.IBinder);
-    public abstract boolean clearApplicationUserData(java.lang.String, boolean, android.content.pm.IPackageDataObserver, int);
-    public abstract void clearGrantedUriPermissions(java.lang.String, int);
-    public abstract void clearPendingBackup();
-    public abstract void closeSystemDialogs(java.lang.String);
-    public abstract boolean convertFromTranslucent(android.os.IBinder);
-    public abstract boolean convertToTranslucent(android.os.IBinder, android.os.Bundle);
-    public abstract void crashApplication(int, int, java.lang.String, int, java.lang.String);
-    public abstract int createStackOnDisplay(int);
-    public abstract void dismissKeyguard(android.os.IBinder, com.android.internal.policy.IKeyguardDismissCallback, java.lang.CharSequence);
-    public abstract void dismissPip(boolean, int);
-    public abstract void dismissSplitScreenMode(boolean);
-    public abstract boolean dumpHeap(java.lang.String, int, boolean, boolean, boolean, java.lang.String, android.os.ParcelFileDescriptor);
-    public abstract void dumpHeapFinished(java.lang.String);
-    public abstract boolean enterPictureInPictureMode(android.os.IBinder, android.app.PictureInPictureParams);
-    public abstract void enterSafeMode();
-    public abstract void exitFreeformMode(android.os.IBinder);
-    public abstract boolean finishActivity(android.os.IBinder, int, android.content.Intent, int);
-    public abstract boolean finishActivityAffinity(android.os.IBinder);
-    public abstract void finishHeavyWeightApp();
-    public abstract void finishInstrumentation(android.app.IApplicationThread, int, android.os.Bundle);
-    public abstract void finishReceiver(android.os.IBinder, int, java.lang.String, android.os.Bundle, boolean, int);
-    public abstract void finishSubActivity(android.os.IBinder, java.lang.String, int);
-    public abstract void finishVoiceTask(android.service.voice.IVoiceInteractionSession);
-    public abstract void forceStopPackage(java.lang.String, int);
-    public abstract android.content.ComponentName getActivityClassForToken(android.os.IBinder);
-    public abstract int getActivityDisplayId(android.os.IBinder);
-    public abstract android.os.Bundle getActivityOptions(android.os.IBinder);
-    public abstract java.util.List getAllStackInfos();
-    public abstract android.graphics.Point getAppTaskThumbnailSize();
-    public abstract java.util.List getAppTasks(java.lang.String);
-    public abstract android.os.Bundle getAssistContextExtras(int);
-    public abstract android.content.ComponentName getCallingActivity(android.os.IBinder);
-    public abstract java.lang.String getCallingPackage(android.os.IBinder);
-    public abstract android.content.res.Configuration getConfiguration();
-    public abstract android.app.ContentProviderHolder getContentProvider(android.app.IApplicationThread, java.lang.String, int, boolean);
-    public abstract android.app.ContentProviderHolder getContentProviderExternal(java.lang.String, int, android.os.IBinder);
-    public abstract android.content.pm.UserInfo getCurrentUser();
-    public abstract android.content.pm.ConfigurationInfo getDeviceConfigurationInfo();
-    public abstract java.util.List getFilteredTasks(int, int, int);
-    public abstract android.app.ActivityManager$StackInfo getFocusedStackInfo();
-    public abstract int getFrontActivityScreenCompatMode();
-    public abstract android.content.pm.ParceledListSlice getGrantedUriPermissions(java.lang.String, int);
-    public abstract android.content.Intent getIntentForIntentSender(android.content.IIntentSender);
-    public abstract android.content.IIntentSender getIntentSender(int, java.lang.String, android.os.IBinder, java.lang.String, int, android.content.Intent[], java.lang.String[], int, android.os.Bundle, int);
-    public abstract int getLastResumedActivityUserId();
-    public abstract java.lang.String getLaunchedFromPackage(android.os.IBinder);
-    public abstract int getLaunchedFromUid(android.os.IBinder);
-    public abstract int getLockTaskModeState();
-    public abstract int getMaxNumPictureInPictureActions(android.os.IBinder);
-    public abstract void getMemoryInfo(android.app.ActivityManager$MemoryInfo);
-    public abstract int getMemoryTrimLevel();
-    public abstract void getMyMemoryState(android.app.ActivityManager$RunningAppProcessInfo);
-    public abstract boolean getPackageAskScreenCompat(java.lang.String);
-    public abstract java.lang.String getPackageForIntentSender(android.content.IIntentSender);
-    public abstract java.lang.String getPackageForToken(android.os.IBinder);
-    public abstract int getPackageProcessState(java.lang.String, java.lang.String);
-    public abstract int getPackageScreenCompatMode(java.lang.String);
-    public abstract android.content.pm.ParceledListSlice getPersistedUriPermissions(java.lang.String, boolean);
-    public abstract int getProcessLimit();
-    public abstract android.os.Debug$MemoryInfo[] getProcessMemoryInfo(int[]);
-    public abstract long[] getProcessPss(int[]);
-    public abstract java.util.List getProcessesInErrorState();
-    public abstract java.lang.String getProviderMimeType(android.net.Uri, int);
-    public abstract android.content.pm.ParceledListSlice getRecentTasks(int, int, int);
-    public abstract int getRequestedOrientation(android.os.IBinder);
-    public abstract java.util.List getRunningAppProcesses();
-    public abstract java.util.List getRunningExternalApplications();
-    public abstract android.app.PendingIntent getRunningServiceControlPanel(android.content.ComponentName);
-    public abstract int[] getRunningUserIds();
-    public abstract java.util.List getServices(int, int);
-    public abstract android.app.ActivityManager$StackInfo getStackInfo(int, int);
-    public abstract java.lang.String getTagForIntentSender(android.content.IIntentSender, java.lang.String);
-    public abstract android.graphics.Rect getTaskBounds(int);
-    public abstract android.app.ActivityManager$TaskDescription getTaskDescription(int);
-    public abstract android.graphics.Bitmap getTaskDescriptionIcon(java.lang.String, int);
-    public abstract int getTaskForActivity(android.os.IBinder, boolean);
-    public abstract android.app.ActivityManager$TaskSnapshot getTaskSnapshot(int, boolean);
-    public abstract java.util.List getTasks(int);
-    public abstract int getUidForIntentSender(android.content.IIntentSender);
-    public abstract int getUidProcessState(int, java.lang.String);
-    public abstract android.os.IBinder getUriPermissionOwnerForActivity(android.os.IBinder);
-    public abstract void grantUriPermission(android.app.IApplicationThread, java.lang.String, android.net.Uri, int, int);
-    public abstract void grantUriPermissionFromOwner(android.os.IBinder, int, java.lang.String, android.net.Uri, int, int, int);
-    public abstract void handleApplicationCrash(android.os.IBinder, android.app.ApplicationErrorReport$ParcelableCrashInfo);
-    public abstract void handleApplicationStrictModeViolation(android.os.IBinder, int, android.os.StrictMode$ViolationInfo);
-    public abstract boolean handleApplicationWtf(android.os.IBinder, java.lang.String, boolean, android.app.ApplicationErrorReport$ParcelableCrashInfo);
-    public abstract int handleIncomingUser(int, int, int, boolean, boolean, java.lang.String, java.lang.String);
-    public abstract void hang(android.os.IBinder, boolean);
-    public abstract long inputDispatchingTimedOut(int, boolean, java.lang.String);
-    public abstract boolean isAppForeground(int);
-    public abstract boolean isAppStartModeDisabled(int, java.lang.String);
-    public abstract boolean isAssistDataAllowedOnCurrentActivity();
-    public abstract boolean isBackgroundRestricted(java.lang.String);
-    public abstract boolean isImmersive(android.os.IBinder);
-    public abstract boolean isInLockTaskMode();
-    public abstract boolean isInMultiWindowMode(android.os.IBinder);
-    public abstract boolean isInPictureInPictureMode(android.os.IBinder);
-    public abstract boolean isIntentSenderAForegroundService(android.content.IIntentSender);
-    public abstract boolean isIntentSenderAnActivity(android.content.IIntentSender);
-    public abstract boolean isIntentSenderTargetedToPackage(android.content.IIntentSender);
-    public abstract boolean isRootVoiceInteraction(android.os.IBinder);
-    public abstract boolean isTopActivityImmersive();
-    public abstract boolean isTopOfTask(android.os.IBinder);
-    public abstract boolean isUidActive(int, java.lang.String);
-    public abstract boolean isUserAMonkey();
-    public abstract boolean isUserRunning(int, int);
-    public abstract boolean isVrModePackageEnabled(android.content.ComponentName);
-    public abstract void keyguardGoingAway(int);
-    public abstract void killAllBackgroundProcesses();
-    public abstract void killApplication(java.lang.String, int, int, java.lang.String);
-    public abstract void killApplicationProcess(java.lang.String, int);
-    public abstract void killBackgroundProcesses(java.lang.String, int);
-    public abstract void killPackageDependents(java.lang.String, int);
-    public abstract boolean killPids(int[], java.lang.String, boolean);
-    public abstract boolean killProcessesBelowForeground(java.lang.String);
-    public abstract void killUid(int, int, java.lang.String);
-    public abstract boolean launchAssistIntent(android.content.Intent, int, java.lang.String, int, android.os.Bundle);
-    public abstract void makePackageIdle(java.lang.String, int);
-    public abstract boolean moveActivityTaskToBack(android.os.IBinder, boolean);
-    public abstract void moveStackToDisplay(int, int);
-    public abstract void moveTaskBackwards(int);
-    public abstract void moveTaskToFront(int, int, android.os.Bundle);
-    public abstract void moveTaskToStack(int, int, boolean);
-    public abstract void moveTasksToFullscreenStack(int, boolean);
-    public abstract boolean moveTopActivityToPinnedStack(int, android.graphics.Rect);
-    public abstract boolean navigateUpTo(android.os.IBinder, android.content.Intent, int, android.content.Intent);
-    public abstract android.os.IBinder newUriPermissionOwner(java.lang.String);
-    public abstract void noteAlarmFinish(android.content.IIntentSender, android.os.WorkSource, int, java.lang.String);
-    public abstract void noteAlarmStart(android.content.IIntentSender, android.os.WorkSource, int, java.lang.String);
-    public abstract void noteWakeupAlarm(android.content.IIntentSender, android.os.WorkSource, int, java.lang.String, java.lang.String);
-    public abstract void notifyActivityDrawn(android.os.IBinder);
-    public abstract void notifyCleartextNetwork(int, byte[]);
-    public abstract void notifyEnterAnimationComplete(android.os.IBinder);
-    public abstract void notifyLaunchTaskBehindComplete(android.os.IBinder);
-    public abstract void notifyLockedProfile(int);
-    public abstract void notifyPinnedStackAnimationEnded();
-    public abstract void notifyPinnedStackAnimationStarted();
-    public abstract android.os.ParcelFileDescriptor openContentUri(java.lang.String);
-    public abstract void overridePendingTransition(android.os.IBinder, java.lang.String, int, int);
-    public abstract android.os.IBinder peekService(android.content.Intent, java.lang.String, java.lang.String);
-    public abstract void performIdleMaintenance();
-    public abstract void positionTaskInStack(int, int, int);
-    public abstract boolean profileControl(java.lang.String, int, boolean, android.app.ProfilerInfo, int);
-    public abstract void publishContentProviders(android.app.IApplicationThread, java.util.List);
-    public abstract void publishService(android.os.IBinder, android.content.Intent, android.os.IBinder);
-    public abstract boolean refContentProvider(android.os.IBinder, int, int);
-    public abstract void registerIntentSenderCancelListener(android.content.IIntentSender, com.android.internal.os.IResultReceiver);
-    public abstract void registerProcessObserver(android.app.IProcessObserver);
-    public abstract android.content.Intent registerReceiver(android.app.IApplicationThread, java.lang.String, android.content.IIntentReceiver, android.content.IntentFilter, java.lang.String, int, int);
-    public abstract void registerRemoteAnimationForNextActivityStart(java.lang.String, android.view.RemoteAnimationAdapter);
-    public abstract void registerRemoteAnimations(android.os.IBinder, android.view.RemoteAnimationDefinition);
-    public abstract void registerTaskStackListener(android.app.ITaskStackListener);
-    public abstract void registerUidObserver(android.app.IUidObserver, int, int, java.lang.String);
-    public abstract void registerUserSwitchObserver(android.app.IUserSwitchObserver, java.lang.String);
-    public abstract boolean releaseActivityInstance(android.os.IBinder);
-    public abstract void releasePersistableUriPermission(android.net.Uri, int, java.lang.String, int);
-    public abstract void releaseSomeActivities(android.app.IApplicationThread);
-    public abstract void removeContentProvider(android.os.IBinder, boolean);
-    public abstract void removeContentProviderExternal(java.lang.String, android.os.IBinder);
-    public abstract void removeStack(int);
-    public abstract void removeStacksInWindowingModes(int[]);
-    public abstract void removeStacksWithActivityTypes(int[]);
-    public abstract boolean removeTask(int);
-    public abstract void reportActivityFullyDrawn(android.os.IBinder, boolean);
-    public abstract void reportAssistContextExtras(android.os.IBinder, android.os.Bundle, android.app.assist.AssistStructure, android.app.assist.AssistContent, android.net.Uri);
-    public abstract void reportSizeConfigurations(android.os.IBinder, int[], int[], int[]);
-    public abstract boolean requestAssistContextExtras(int, android.app.IAssistDataReceiver, android.os.Bundle, android.os.IBinder, boolean, boolean);
-    public abstract boolean requestAutofillData(android.app.IAssistDataReceiver, android.os.Bundle, android.os.IBinder, int);
-    public abstract void requestBugReport(int);
-    public abstract void requestTelephonyBugReport(java.lang.String, java.lang.String);
-    public abstract void requestWifiBugReport(java.lang.String, java.lang.String);
-    public abstract void resizeDockedStack(android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, android.graphics.Rect);
-    public abstract void resizePinnedStack(android.graphics.Rect, android.graphics.Rect);
-    public abstract void resizeStack(int, android.graphics.Rect, boolean, boolean, boolean, int);
-    public abstract void resizeTask(int, android.graphics.Rect, int);
-    public abstract void restart();
-    public abstract int restartUserInBackground(int);
-    public abstract void resumeAppSwitches();
-    public abstract void revokeUriPermission(android.app.IApplicationThread, java.lang.String, android.net.Uri, int, int);
-    public abstract void revokeUriPermissionFromOwner(android.os.IBinder, android.net.Uri, int, int);
-    public abstract void scheduleApplicationInfoChanged(java.util.List, int);
-    public abstract void sendIdleJobTrigger();
-    public abstract int sendIntentSender(android.content.IIntentSender, android.os.IBinder, int, android.content.Intent, java.lang.String, android.content.IIntentReceiver, java.lang.String, android.os.Bundle);
-    public abstract void serviceDoneExecuting(android.os.IBinder, int, int, int);
-    public abstract void setActivityController(android.app.IActivityController, boolean);
-    public abstract void setAgentApp(java.lang.String, java.lang.String);
-    public abstract void setAlwaysFinish(boolean);
-    public abstract void setDebugApp(java.lang.String, boolean, boolean);
-    public abstract void setDisablePreviewScreenshots(android.os.IBinder, boolean);
-    public abstract void setDumpHeapDebugLimit(java.lang.String, int, long, java.lang.String);
-    public abstract void setFocusedStack(int);
-    public abstract void setFocusedTask(int);
-    public abstract void setFrontActivityScreenCompatMode(int);
-    public abstract void setHasTopUi(boolean);
-    public abstract void setImmersive(android.os.IBinder, boolean);
-    public abstract void setLockScreenShown(boolean, boolean, int);
-    public abstract void setPackageAskScreenCompat(java.lang.String, boolean);
-    public abstract void setPackageScreenCompatMode(java.lang.String, int);
-    public abstract void setPersistentVrThread(int);
-    public abstract void setPictureInPictureParams(android.os.IBinder, android.app.PictureInPictureParams);
-    public abstract void setProcessImportant(android.os.IBinder, int, boolean, java.lang.String);
-    public abstract void setProcessLimit(int);
-    public abstract boolean setProcessMemoryTrimLevel(java.lang.String, int, int);
-    public abstract void setRenderThread(int);
-    public abstract void setRequestedOrientation(android.os.IBinder, int);
-    public abstract void setServiceForeground(android.content.ComponentName, android.os.IBinder, int, android.app.Notification, int);
-    public abstract void setShowWhenLocked(android.os.IBinder, boolean);
-    public abstract void setSplitScreenResizing(boolean);
-    public abstract void setTaskDescription(android.os.IBinder, android.app.ActivityManager$TaskDescription);
-    public abstract void setTaskResizeable(int, int);
-    public abstract void setTaskWindowingMode(int, int, boolean);
-    public abstract boolean setTaskWindowingModeSplitScreenPrimary(int, int, boolean, boolean, android.graphics.Rect, boolean);
-    public abstract void setTurnScreenOn(android.os.IBinder, boolean);
-    public abstract void setUserIsMonkey(boolean);
-    public abstract void setVoiceKeepAwake(android.service.voice.IVoiceInteractionSession, boolean);
-    public abstract int setVrMode(android.os.IBinder, boolean, android.content.ComponentName);
-    public abstract void setVrThread(int);
-    public abstract boolean shouldUpRecreateTask(android.os.IBinder, java.lang.String);
-    public abstract boolean showAssistFromActivity(android.os.IBinder, android.os.Bundle);
-    public abstract void showBootMessage(java.lang.CharSequence, boolean);
-    public abstract void showLockTaskEscapeMessage(android.os.IBinder);
-    public abstract void showWaitingForDebugger(android.app.IApplicationThread, boolean);
-    public abstract boolean shutdown(int);
-    public abstract void signalPersistentProcesses(int);
-    public abstract int startActivities(android.app.IApplicationThread, java.lang.String, android.content.Intent[], java.lang.String[], android.os.IBinder, android.os.Bundle, int);
-    public abstract int startActivity(android.app.IApplicationThread, java.lang.String, android.content.Intent, java.lang.String, android.os.IBinder, java.lang.String, int, int, android.app.ProfilerInfo, android.os.Bundle);
-    public abstract android.app.WaitResult startActivityAndWait(android.app.IApplicationThread, java.lang.String, android.content.Intent, java.lang.String, android.os.IBinder, java.lang.String, int, int, android.app.ProfilerInfo, android.os.Bundle, int);
-    public abstract int startActivityAsCaller(android.app.IApplicationThread, java.lang.String, android.content.Intent, java.lang.String, android.os.IBinder, java.lang.String, int, int, android.app.ProfilerInfo, android.os.Bundle, boolean, int);
-    public abstract int startActivityAsUser(android.app.IApplicationThread, java.lang.String, android.content.Intent, java.lang.String, android.os.IBinder, java.lang.String, int, int, android.app.ProfilerInfo, android.os.Bundle, int);
-    public abstract int startActivityFromRecents(int, android.os.Bundle);
-    public abstract int startActivityIntentSender(android.app.IApplicationThread, android.content.IIntentSender, android.os.IBinder, android.content.Intent, java.lang.String, android.os.IBinder, java.lang.String, int, int, int, android.os.Bundle);
-    public abstract int startActivityWithConfig(android.app.IApplicationThread, java.lang.String, android.content.Intent, java.lang.String, android.os.IBinder, java.lang.String, int, int, android.content.res.Configuration, android.os.Bundle, int);
-    public abstract int startAssistantActivity(java.lang.String, int, int, android.content.Intent, java.lang.String, android.os.Bundle, int);
-    public abstract boolean startBinderTracking();
-    public abstract void startConfirmDeviceCredentialIntent(android.content.Intent, android.os.Bundle);
-    public abstract void startInPlaceAnimationOnFrontMostApplication(android.os.Bundle);
-    public abstract boolean startInstrumentation(android.content.ComponentName, java.lang.String, int, android.os.Bundle, android.app.IInstrumentationWatcher, android.app.IUiAutomationConnection, int, java.lang.String);
-    public abstract void startLocalVoiceInteraction(android.os.IBinder, android.os.Bundle);
-    public abstract void startLockTaskModeByToken(android.os.IBinder);
-    public abstract boolean startNextMatchingActivity(android.os.IBinder, android.content.Intent, android.os.Bundle);
-    public abstract void startRecentsActivity(android.content.Intent, android.app.IAssistDataReceiver, android.view.IRecentsAnimationRunner);
-    public abstract android.content.ComponentName startService(android.app.IApplicationThread, android.content.Intent, java.lang.String, boolean, java.lang.String, int);
-    public abstract void startSystemLockTaskMode(int);
-    public abstract boolean startUserInBackground(int);
-    public abstract boolean startUserInBackgroundWithListener(int, android.os.IProgressListener);
-    public abstract int startVoiceActivity(java.lang.String, int, int, android.content.Intent, java.lang.String, android.service.voice.IVoiceInteractionSession, com.android.internal.app.IVoiceInteractor, int, android.app.ProfilerInfo, android.os.Bundle, int);
-    public abstract void stopAppSwitches();
-    public abstract boolean stopBinderTrackingAndDump(android.os.ParcelFileDescriptor);
-    public abstract void stopLocalVoiceInteraction(android.os.IBinder);
-    public abstract void stopLockTaskModeByToken(android.os.IBinder);
-    public abstract int stopService(android.app.IApplicationThread, android.content.Intent, java.lang.String, int);
-    public abstract boolean stopServiceToken(android.content.ComponentName, android.os.IBinder, int);
-    public abstract void stopSystemLockTaskMode();
-    public abstract int stopUser(int, boolean, android.app.IStopUserCallback);
-    public abstract boolean supportsLocalVoiceInteraction();
-    public abstract void suppressResizeConfigChanges(boolean);
-    public abstract boolean switchUser(int);
-    public abstract void takePersistableUriPermission(android.net.Uri, int, java.lang.String, int);
-    public abstract void unbindBackupAgent(android.content.pm.ApplicationInfo);
-    public abstract void unbindFinished(android.os.IBinder, android.content.Intent, boolean);
-    public abstract boolean unbindService(android.app.IServiceConnection);
-    public abstract void unbroadcastIntent(android.app.IApplicationThread, android.content.Intent, int);
-    public abstract void unhandledBack();
-    public abstract boolean unlockUser(int, byte[], byte[], android.os.IProgressListener);
-    public abstract void unregisterIntentSenderCancelListener(android.content.IIntentSender, com.android.internal.os.IResultReceiver);
-    public abstract void unregisterProcessObserver(android.app.IProcessObserver);
-    public abstract void unregisterReceiver(android.content.IIntentReceiver);
-    public abstract void unregisterTaskStackListener(android.app.ITaskStackListener);
-    public abstract void unregisterUidObserver(android.app.IUidObserver);
-    public abstract void unregisterUserSwitchObserver(android.app.IUserSwitchObserver);
-    public abstract void unstableProviderDied(android.os.IBinder);
-    public abstract boolean updateConfiguration(android.content.res.Configuration);
-    public abstract void updateDeviceOwner(java.lang.String);
-    public abstract boolean updateDisplayOverrideConfiguration(android.content.res.Configuration, int);
-    public abstract void updateLockTaskFeatures(int, int);
-    public abstract void updateLockTaskPackages(int, java.lang.String[]);
-    public abstract void updatePersistentConfiguration(android.content.res.Configuration);
-    public abstract void waitForNetworkStateUpdate(long);
-    public abstract boolean willActivityBeVisible(android.os.IBinder);
-
-
-}
-
--keep class android.app.IAppTask {
-
-    public abstract void finishAndRemoveTask();
-    public abstract android.app.ActivityManager$RecentTaskInfo getTaskInfo();
-    public abstract void moveToFront();
-    public abstract void setExcludeFromRecents(boolean);
-    public abstract int startActivity(android.os.IBinder, java.lang.String, android.content.Intent, java.lang.String, android.os.Bundle);
-
-
-}
-
--keep class android.app.IApplicationThread {
-
-    public abstract void attachAgent(java.lang.String);
-    public abstract void bindApplication(java.lang.String, android.content.pm.ApplicationInfo, java.util.List, android.content.ComponentName, android.app.ProfilerInfo, android.os.Bundle, android.app.IInstrumentationWatcher, android.app.IUiAutomationConnection, int, boolean, boolean, boolean, boolean, android.content.res.Configuration, android.content.res.CompatibilityInfo, java.util.Map, android.os.Bundle, java.lang.String, boolean);
-    public abstract void clearDnsCache();
-    public abstract void dispatchPackageBroadcast(int, java.lang.String[]);
-    public abstract void dumpActivity(android.os.ParcelFileDescriptor, android.os.IBinder, java.lang.String, java.lang.String[]);
-    public abstract void dumpDbInfo(android.os.ParcelFileDescriptor, java.lang.String[]);
-    public abstract void dumpGfxInfo(android.os.ParcelFileDescriptor, java.lang.String[]);
-    public abstract void dumpHeap(boolean, boolean, boolean, java.lang.String, android.os.ParcelFileDescriptor);
-    public abstract void dumpMemInfo(android.os.ParcelFileDescriptor, android.os.Debug$MemoryInfo, boolean, boolean, boolean, boolean, boolean, java.lang.String[]);
-    public abstract void dumpMemInfoProto(android.os.ParcelFileDescriptor, android.os.Debug$MemoryInfo, boolean, boolean, boolean, boolean, java.lang.String[]);
-    public abstract void dumpProvider(android.os.ParcelFileDescriptor, android.os.IBinder, java.lang.String[]);
-    public abstract void dumpService(android.os.ParcelFileDescriptor, android.os.IBinder, java.lang.String[]);
-    public abstract void handleTrustStorageUpdate();
-    public abstract void notifyCleartextNetwork(byte[]);
-    public abstract void processInBackground();
-    public abstract void profilerControl(boolean, android.app.ProfilerInfo, int);
-    public abstract void requestAssistContextExtras(android.os.IBinder, android.os.IBinder, int, int, int);
-    public abstract void runIsolatedEntryPoint(java.lang.String, java.lang.String[]);
-    public abstract void scheduleApplicationInfoChanged(android.content.pm.ApplicationInfo);
-    public abstract void scheduleBindService(android.os.IBinder, android.content.Intent, boolean, int);
-    public abstract void scheduleCrash(java.lang.String);
-    public abstract void scheduleCreateBackupAgent(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo, int);
-    public abstract void scheduleCreateService(android.os.IBinder, android.content.pm.ServiceInfo, android.content.res.CompatibilityInfo, int);
-    public abstract void scheduleDestroyBackupAgent(android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo);
-    public abstract void scheduleEnterAnimationComplete(android.os.IBinder);
-    public abstract void scheduleExit();
-    public abstract void scheduleInstallProvider(android.content.pm.ProviderInfo);
-    public abstract void scheduleLocalVoiceInteractionStarted(android.os.IBinder, com.android.internal.app.IVoiceInteractor);
-    public abstract void scheduleLowMemory();
-    public abstract void scheduleOnNewActivityOptions(android.os.IBinder, android.os.Bundle);
-    public abstract void scheduleReceiver(android.content.Intent, android.content.pm.ActivityInfo, android.content.res.CompatibilityInfo, int, java.lang.String, android.os.Bundle, boolean, int, int);
-    public abstract void scheduleRegisteredReceiver(android.content.IIntentReceiver, android.content.Intent, int, java.lang.String, android.os.Bundle, boolean, boolean, int, int);
-    public abstract void scheduleServiceArgs(android.os.IBinder, android.content.pm.ParceledListSlice);
-    public abstract void scheduleSleeping(android.os.IBinder, boolean);
-    public abstract void scheduleStopService(android.os.IBinder);
-    public abstract void scheduleSuicide();
-    public abstract void scheduleTransaction(android.app.servertransaction.ClientTransaction);
-    public abstract void scheduleTranslucentConversionComplete(android.os.IBinder, boolean);
-    public abstract void scheduleTrimMemory(int);
-    public abstract void scheduleUnbindService(android.os.IBinder, android.content.Intent);
-    public abstract void setCoreSettings(android.os.Bundle);
-    public abstract void setHttpProxy(java.lang.String, java.lang.String, java.lang.String, android.net.Uri);
-    public abstract void setNetworkBlockSeq(long);
-    public abstract void setProcessState(int);
-    public abstract void setSchedulingGroup(int);
-    public abstract void startBinderTracking();
-    public abstract void stopBinderTrackingAndDump(android.os.ParcelFileDescriptor);
-    public abstract void unstableProviderDied(android.os.IBinder);
-    public abstract void updatePackageCompatibilityInfo(java.lang.String, android.content.res.CompatibilityInfo);
-    public abstract void updateTimePrefs(int);
-    public abstract void updateTimeZone();
-
-
-}
-
--keep class android.app.IApplicationThread$Stub {
-    <init>();
-
-    public android.os.IBinder asBinder();
-    public static android.app.IApplicationThread asInterface(android.os.IBinder);
-    public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int);
-
-
-}
-
--keep class android.app.IAssistDataReceiver {
-
-    public abstract void onHandleAssistData(android.os.Bundle);
-    public abstract void onHandleAssistScreenshot(android.graphics.Bitmap);
-
-
-}
-
--keep class android.app.IInstrumentationWatcher {
-
-    public abstract void instrumentationFinished(android.content.ComponentName, int, android.os.Bundle);
-    public abstract void instrumentationStatus(android.content.ComponentName, int, android.os.Bundle);
-
-
-}
-
--keep class android.app.IProcessObserver {
-
-    public abstract void onForegroundActivitiesChanged(int, int, boolean);
-    public abstract void onProcessDied(int, int);
-
-
-}
-
--keep class android.app.IServiceConnection {
-
-    public abstract void connected(android.content.ComponentName, android.os.IBinder, boolean);
-
-
-}
-
--keep class android.app.IStopUserCallback {
-
-    public abstract void userStopAborted(int);
-    public abstract void userStopped(int);
-
-
-}
-
--keep class android.app.ITaskStackListener {
-
-    public abstract void onActivityDismissingDockedStack();
-    public abstract void onActivityForcedResizable(java.lang.String, int, int);
-    public abstract void onActivityLaunchOnSecondaryDisplayFailed();
-    public abstract void onActivityPinned(java.lang.String, int, int, int);
-    public abstract void onActivityRequestedOrientationChanged(int, int);
-    public abstract void onActivityUnpinned();
-    public abstract void onPinnedActivityRestartAttempt(boolean);
-    public abstract void onPinnedStackAnimationEnded();
-    public abstract void onPinnedStackAnimationStarted();
-    public abstract void onTaskCreated(int, android.content.ComponentName);
-    public abstract void onTaskDescriptionChanged(int, android.app.ActivityManager$TaskDescription);
-    public abstract void onTaskMovedToFront(int);
-    public abstract void onTaskProfileLocked(int, int);
-    public abstract void onTaskRemovalStarted(int);
-    public abstract void onTaskRemoved(int);
-    public abstract void onTaskSnapshotChanged(int, android.app.ActivityManager$TaskSnapshot);
-    public abstract void onTaskStackChanged();
-
-
-    public static int FORCED_RESIZEABLE_REASON_SECONDARY_DISPLAY;
-    public static int FORCED_RESIZEABLE_REASON_SPLIT_SCREEN;
-}
-
--keep class android.app.IUiAutomationConnection {
-
-    public abstract void clearWindowAnimationFrameStats();
-    public abstract boolean clearWindowContentFrameStats(int);
-    public abstract void connect(android.accessibilityservice.IAccessibilityServiceClient, int);
-    public abstract void disconnect();
-    public abstract void executeShellCommand(java.lang.String, android.os.ParcelFileDescriptor, android.os.ParcelFileDescriptor);
-    public abstract android.view.WindowAnimationFrameStats getWindowAnimationFrameStats();
-    public abstract android.view.WindowContentFrameStats getWindowContentFrameStats(int);
-    public abstract void grantRuntimePermission(java.lang.String, java.lang.String, int);
-    public abstract boolean injectInputEvent(android.view.InputEvent, boolean);
-    public abstract void revokeRuntimePermission(java.lang.String, java.lang.String, int);
-    public abstract boolean setRotation(int);
-    public abstract void shutdown();
-    public abstract android.graphics.Bitmap takeScreenshot(android.graphics.Rect, int);
-
-
-}
-
--keep class android.app.IUidObserver {
-
-    public abstract void onUidActive(int);
-    public abstract void onUidCachedChanged(int, boolean);
-    public abstract void onUidGone(int, boolean);
-    public abstract void onUidIdle(int, boolean);
-    public abstract void onUidStateChanged(int, int, long);
-
-
-}
-
--keep class android.app.IUserSwitchObserver {
-
-    public abstract void onForegroundProfileSwitch(int);
-    public abstract void onLockedBootComplete(int);
-    public abstract void onUserSwitchComplete(int);
-    public abstract void onUserSwitching(int, android.os.IRemoteCallback);
-
-
-}
-
--keep class android.app.Instrumentation {
-    <init>();
-
-    public android.os.TestLooperManager acquireLooperManager(android.os.Looper);
-    public void addMonitor(android.app.Instrumentation$ActivityMonitor);
-    public android.app.Instrumentation$ActivityMonitor addMonitor(android.content.IntentFilter, android.app.Instrumentation$ActivityResult, boolean);
-    public android.app.Instrumentation$ActivityMonitor addMonitor(java.lang.String, android.app.Instrumentation$ActivityResult, boolean);
-    public void addResults(android.os.Bundle);
-    public void callActivityOnCreate(android.app.Activity, android.os.Bundle);
-    public void callActivityOnCreate(android.app.Activity, android.os.Bundle, android.os.PersistableBundle);
-    public void callActivityOnDestroy(android.app.Activity);
-    public void callActivityOnNewIntent(android.app.Activity, android.content.Intent);
-    public void callActivityOnNewIntent(android.app.Activity, com.android.internal.content.ReferrerIntent);
-    public void callActivityOnPause(android.app.Activity);
-    public void callActivityOnPostCreate(android.app.Activity, android.os.Bundle);
-    public void callActivityOnPostCreate(android.app.Activity, android.os.Bundle, android.os.PersistableBundle);
-    public void callActivityOnRestart(android.app.Activity);
-    public void callActivityOnRestoreInstanceState(android.app.Activity, android.os.Bundle);
-    public void callActivityOnRestoreInstanceState(android.app.Activity, android.os.Bundle, android.os.PersistableBundle);
-    public void callActivityOnResume(android.app.Activity);
-    public void callActivityOnSaveInstanceState(android.app.Activity, android.os.Bundle);
-    public void callActivityOnSaveInstanceState(android.app.Activity, android.os.Bundle, android.os.PersistableBundle);
-    public void callActivityOnStart(android.app.Activity);
-    public void callActivityOnStop(android.app.Activity);
-    public void callActivityOnUserLeaving(android.app.Activity);
-    public void callApplicationOnCreate(android.app.Application);
-    public boolean checkMonitorHit(android.app.Instrumentation$ActivityMonitor, int);
-    public static void checkStartActivityResult(int, java.lang.Object);
-    public void endPerformanceSnapshot();
-    public void execStartActivities(android.content.Context, android.os.IBinder, android.os.IBinder, android.app.Activity, android.content.Intent[], android.os.Bundle);
-    public int execStartActivitiesAsUser(android.content.Context, android.os.IBinder, android.os.IBinder, android.app.Activity, android.content.Intent[], android.os.Bundle, int);
-    public android.app.Instrumentation$ActivityResult execStartActivity(android.content.Context, android.os.IBinder, android.os.IBinder, android.app.Activity, android.content.Intent, int, android.os.Bundle);
-    public android.app.Instrumentation$ActivityResult execStartActivity(android.content.Context, android.os.IBinder, android.os.IBinder, java.lang.String, android.content.Intent, int, android.os.Bundle);
-    public android.app.Instrumentation$ActivityResult execStartActivity(android.content.Context, android.os.IBinder, android.os.IBinder, java.lang.String, android.content.Intent, int, android.os.Bundle, android.os.UserHandle);
-    public android.app.Instrumentation$ActivityResult execStartActivityAsCaller(android.content.Context, android.os.IBinder, android.os.IBinder, android.app.Activity, android.content.Intent, int, android.os.Bundle, boolean, int);
-    public void execStartActivityFromAppTask(android.content.Context, android.os.IBinder, android.app.IAppTask, android.content.Intent, android.os.Bundle);
-    public void finish(int, android.os.Bundle);
-    public android.os.Bundle getAllocCounts();
-    public android.os.Bundle getBinderCounts();
-    public android.content.ComponentName getComponentName();
-    public android.content.Context getContext();
-    public java.lang.String getProcessName();
-    public android.content.Context getTargetContext();
-    public android.app.UiAutomation getUiAutomation();
-    public android.app.UiAutomation getUiAutomation(int);
-    public boolean invokeContextMenuAction(android.app.Activity, int, int);
-    public boolean invokeMenuActionSync(android.app.Activity, int, int);
-    public boolean isProfiling();
-    public android.app.Activity newActivity(java.lang.Class, android.content.Context, android.os.IBinder, android.app.Application, android.content.Intent, android.content.pm.ActivityInfo, java.lang.CharSequence, android.app.Activity, java.lang.String, java.lang.Object);
-    public android.app.Activity newActivity(java.lang.ClassLoader, java.lang.String, android.content.Intent);
-    public android.app.Application newApplication(java.lang.ClassLoader, java.lang.String, android.content.Context);
-    public static android.app.Application newApplication(java.lang.Class, android.content.Context);
-    public void onCreate(android.os.Bundle);
-    public void onDestroy();
-    public boolean onException(java.lang.Object, java.lang.Throwable);
-    public void onStart();
-    public void removeMonitor(android.app.Instrumentation$ActivityMonitor);
-    public void runOnMainSync(java.lang.Runnable);
-    public void sendCharacterSync(int);
-    public void sendKeyDownUpSync(int);
-    public void sendKeySync(android.view.KeyEvent);
-    public void sendPointerSync(android.view.MotionEvent);
-    public void sendStatus(int, android.os.Bundle);
-    public void sendStringSync(java.lang.String);
-    public void sendTrackballEventSync(android.view.MotionEvent);
-    public void setAutomaticPerformanceSnapshots();
-    public void setInTouchMode(boolean);
-    public void start();
-    public android.app.Activity startActivitySync(android.content.Intent);
-    public android.app.Activity startActivitySync(android.content.Intent, android.os.Bundle);
-    public void startAllocCounting();
-    public void startPerformanceSnapshot();
-    public void startProfiling();
-    public void stopAllocCounting();
-    public void stopProfiling();
-    public void waitForIdle(java.lang.Runnable);
-    public void waitForIdleSync();
-    public android.app.Activity waitForMonitor(android.app.Instrumentation$ActivityMonitor);
-    public android.app.Activity waitForMonitorWithTimeout(android.app.Instrumentation$ActivityMonitor, long);
-
-
-    public static java.lang.String REPORT_KEY_IDENTIFIER;
-    public static java.lang.String REPORT_KEY_STREAMRESULT;
-}
-
--keep class android.app.Instrumentation$ActivityMonitor {
-    <init>(android.content.IntentFilter, android.app.Instrumentation$ActivityResult, boolean);
-    <init>(java.lang.String, android.app.Instrumentation$ActivityResult, boolean);
-    <init>();
-
-    public android.content.IntentFilter getFilter();
-    public int getHits();
-    public android.app.Activity getLastActivity();
-    public android.app.Instrumentation$ActivityResult getResult();
-    public boolean isBlocking();
-    public android.app.Instrumentation$ActivityResult onStartActivity(android.content.Intent);
-    public android.app.Activity waitForActivity();
-    public android.app.Activity waitForActivityWithTimeout(long);
-
-
-}
-
--keep class android.app.Instrumentation$ActivityResult {
-    <init>(int, android.content.Intent);
-
-    public int getResultCode();
-    public android.content.Intent getResultData();
-
-
-}
-
--keep class android.app.LoadedApk {
-    <init>(android.app.ActivityThread, android.content.pm.ApplicationInfo, android.content.res.CompatibilityInfo, java.lang.ClassLoader, boolean, boolean, boolean);
-
-    public android.content.IIntentReceiver forgetReceiverDispatcher(android.content.Context, android.content.BroadcastReceiver);
-    public android.app.IServiceConnection forgetServiceDispatcher(android.content.Context, android.content.ServiceConnection);
-    public java.lang.String getAppDir();
-    public android.app.AppComponentFactory getAppFactory();
-    public android.content.pm.ApplicationInfo getApplicationInfo();
-    public android.content.res.AssetManager getAssets();
-    public java.lang.ClassLoader getClassLoader();
-    public android.content.res.CompatibilityInfo getCompatibilityInfo();
-    public java.io.File getCredentialProtectedDataDirFile();
-    public java.lang.String getDataDir();
-    public java.io.File getDataDirFile();
-    public java.io.File getDeviceProtectedDataDirFile();
-    public java.lang.String getLibDir();
-    public java.lang.String[] getOverlayDirs();
-    public java.lang.String getPackageName();
-    public android.content.IIntentReceiver getReceiverDispatcher(android.content.BroadcastReceiver, android.content.Context, android.os.Handler, android.app.Instrumentation, boolean);
-    public java.lang.String getResDir();
-    public android.content.res.Resources getResources();
-    public android.app.IServiceConnection getServiceDispatcher(android.content.ServiceConnection, android.content.Context, android.os.Handler, int);
-    public java.lang.String[] getSplitAppDirs();
-    public java.lang.String[] getSplitResDirs();
-    public int getTargetSdkVersion();
-    public boolean isSecurityViolation();
-    public android.app.Application makeApplication(boolean, android.app.Instrumentation);
-    public static void makePaths(android.app.ActivityThread, android.content.pm.ApplicationInfo, java.util.List);
-    public static void makePaths(android.app.ActivityThread, boolean, android.content.pm.ApplicationInfo, java.util.List, java.util.List);
-    public void removeContextRegistrations(android.content.Context, java.lang.String, java.lang.String);
-    public void setCompatibilityInfo(android.content.res.CompatibilityInfo);
-    public void updateApplicationInfo(android.content.pm.ApplicationInfo, java.util.List);
-
-
-}
-
--keep class android.app.LoaderManager {
-    <init>();
-
-    public abstract void destroyLoader(int);
-    public abstract void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public static void enableDebugLogging(boolean);
-    public android.app.FragmentHostCallback getFragmentHostCallback();
-    public abstract android.content.Loader getLoader(int);
-    public abstract android.content.Loader initLoader(int, android.os.Bundle, android.app.LoaderManager$LoaderCallbacks);
-    public abstract android.content.Loader restartLoader(int, android.os.Bundle, android.app.LoaderManager$LoaderCallbacks);
-
-
-}
-
--keep class android.app.LoaderManager$LoaderCallbacks {
-
-    public abstract android.content.Loader onCreateLoader(int, android.os.Bundle);
-    public abstract void onLoadFinished(android.content.Loader, java.lang.Object);
-    public abstract void onLoaderReset(android.content.Loader);
-
-
-}
-
--keep class android.app.Notification {
-    <init>();
-    <init>(android.content.Context, int, java.lang.CharSequence, long, java.lang.CharSequence, java.lang.CharSequence, android.content.Intent);
-    <init>(int, java.lang.CharSequence, long);
-    <init>(android.os.Parcel);
-
-    public static void addFieldsFromContext(android.content.Context, android.app.Notification);
-    public static void addFieldsFromContext(android.content.pm.ApplicationInfo, android.app.Notification);
-    public static boolean areActionsVisiblyDifferent(android.app.Notification, android.app.Notification);
-    public static boolean areRemoteViewsChanged(android.app.Notification$Builder, android.app.Notification$Builder);
-    public static boolean areStyledNotificationsVisiblyDifferent(android.app.Notification$Builder, android.app.Notification$Builder);
-    public android.app.Notification clone();
-    public java.lang.Object clone();
-    public void cloneInto(android.app.Notification, boolean);
-    public int describeContents();
-    public int getBadgeIconType();
-    public java.lang.String getChannel();
-    public java.lang.String getChannelId();
-    public java.lang.String getGroup();
-    public int getGroupAlertBehavior();
-    public android.graphics.drawable.Icon getLargeIcon();
-    public java.lang.Class getNotificationStyle();
-    public static java.lang.Class getNotificationStyleClass(java.lang.String);
-    public java.lang.CharSequence getSettingsText();
-    public java.lang.String getShortcutId();
-    public android.graphics.drawable.Icon getSmallIcon();
-    public java.lang.String getSortKey();
-    public long getTimeout();
-    public long getTimeoutAfter();
-    public boolean hasCompletedProgress();
-    public boolean hasMediaSession();
-    public boolean isColorized();
-    public boolean isColorizedMedia();
-    public boolean isGroupChild();
-    public boolean isGroupSummary();
-    public boolean isMediaNotification();
-    public void lightenPayload();
-    public static java.lang.String priorityToString(int);
-    public static java.lang.CharSequence safeCharSequence(java.lang.CharSequence);
-    public void setLatestEventInfo(android.content.Context, java.lang.CharSequence, java.lang.CharSequence, android.app.PendingIntent);
-    public void setSmallIcon(android.graphics.drawable.Icon);
-    public boolean showsChronometer();
-    public boolean showsTime();
-    public boolean suppressAlertingDueToGrouping();
-    public java.lang.String toString();
-    public static java.lang.String visibilityToString(int);
-    public void visitUris(java.util.function.Consumer);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.media.AudioAttributes AUDIO_ATTRIBUTES_DEFAULT;
-    public static int BADGE_ICON_LARGE;
-    public static int BADGE_ICON_NONE;
-    public static int BADGE_ICON_SMALL;
-    public static java.lang.String CATEGORY_ALARM;
-    public static java.lang.String CATEGORY_CALL;
-    public static java.lang.String CATEGORY_CAR_EMERGENCY;
-    public static java.lang.String CATEGORY_CAR_INFORMATION;
-    public static java.lang.String CATEGORY_CAR_WARNING;
-    public static java.lang.String CATEGORY_EMAIL;
-    public static java.lang.String CATEGORY_ERROR;
-    public static java.lang.String CATEGORY_EVENT;
-    public static java.lang.String CATEGORY_MESSAGE;
-    public static java.lang.String CATEGORY_NAVIGATION;
-    public static java.lang.String CATEGORY_PROGRESS;
-    public static java.lang.String CATEGORY_PROMO;
-    public static java.lang.String CATEGORY_RECOMMENDATION;
-    public static java.lang.String CATEGORY_REMINDER;
-    public static java.lang.String CATEGORY_SERVICE;
-    public static java.lang.String CATEGORY_SOCIAL;
-    public static java.lang.String CATEGORY_STATUS;
-    public static java.lang.String CATEGORY_SYSTEM;
-    public static java.lang.String CATEGORY_TRANSPORT;
-    public static int COLOR_DEFAULT;
-    public static int COLOR_INVALID;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DEFAULT_ALL;
-    public static int DEFAULT_LIGHTS;
-    public static int DEFAULT_SOUND;
-    public static int DEFAULT_VIBRATE;
-    public static java.lang.String EXTRA_ALLOW_DURING_SETUP;
-    public static java.lang.String EXTRA_AUDIO_CONTENTS_URI;
-    public static java.lang.String EXTRA_BACKGROUND_IMAGE_URI;
-    public static java.lang.String EXTRA_BIG_TEXT;
-    public static java.lang.String EXTRA_BUILDER_APPLICATION_INFO;
-    public static java.lang.String EXTRA_CHANNEL_GROUP_ID;
-    public static java.lang.String EXTRA_CHANNEL_ID;
-    public static java.lang.String EXTRA_CHRONOMETER_COUNT_DOWN;
-    public static java.lang.String EXTRA_COLORIZED;
-    public static java.lang.String EXTRA_COMPACT_ACTIONS;
-    public static java.lang.String EXTRA_CONTAINS_CUSTOM_VIEW;
-    public static java.lang.String EXTRA_CONVERSATION_TITLE;
-    public static java.lang.String EXTRA_FOREGROUND_APPS;
-    public static java.lang.String EXTRA_HIDE_SMART_REPLIES;
-    public static java.lang.String EXTRA_HISTORIC_MESSAGES;
-    public static java.lang.String EXTRA_INFO_TEXT;
-    public static java.lang.String EXTRA_IS_GROUP_CONVERSATION;
-    public static java.lang.String EXTRA_LARGE_ICON;
-    public static java.lang.String EXTRA_LARGE_ICON_BIG;
-    public static java.lang.String EXTRA_MEDIA_SESSION;
-    public static java.lang.String EXTRA_MESSAGES;
-    public static java.lang.String EXTRA_MESSAGING_PERSON;
-    public static java.lang.String EXTRA_NOTIFICATION_ID;
-    public static java.lang.String EXTRA_NOTIFICATION_TAG;
-    public static java.lang.String EXTRA_PEOPLE;
-    public static java.lang.String EXTRA_PEOPLE_LIST;
-    public static java.lang.String EXTRA_PICTURE;
-    public static java.lang.String EXTRA_PROGRESS;
-    public static java.lang.String EXTRA_PROGRESS_INDETERMINATE;
-    public static java.lang.String EXTRA_PROGRESS_MAX;
-    public static java.lang.String EXTRA_REDUCED_IMAGES;
-    public static java.lang.String EXTRA_REMOTE_INPUT_DRAFT;
-    public static java.lang.String EXTRA_REMOTE_INPUT_HISTORY;
-    public static java.lang.String EXTRA_SELF_DISPLAY_NAME;
-    public static java.lang.String EXTRA_SHOW_CHRONOMETER;
-    public static java.lang.String EXTRA_SHOW_REMOTE_INPUT_SPINNER;
-    public static java.lang.String EXTRA_SHOW_WHEN;
-    public static java.lang.String EXTRA_SMALL_ICON;
-    public static java.lang.String EXTRA_SUBSTITUTE_APP_NAME;
-    public static java.lang.String EXTRA_SUB_TEXT;
-    public static java.lang.String EXTRA_SUMMARY_TEXT;
-    public static java.lang.String EXTRA_TEMPLATE;
-    public static java.lang.String EXTRA_TEXT;
-    public static java.lang.String EXTRA_TEXT_LINES;
-    public static java.lang.String EXTRA_TITLE;
-    public static java.lang.String EXTRA_TITLE_BIG;
-    public static int FLAG_AUTOGROUP_SUMMARY;
-    public static int FLAG_AUTO_CANCEL;
-    public static int FLAG_CAN_COLORIZE;
-    public static int FLAG_FOREGROUND_SERVICE;
-    public static int FLAG_GROUP_SUMMARY;
-    public static int FLAG_HIGH_PRIORITY;
-    public static int FLAG_INSISTENT;
-    public static int FLAG_LOCAL_ONLY;
-    public static int FLAG_NO_CLEAR;
-    public static int FLAG_ONGOING_EVENT;
-    public static int FLAG_ONLY_ALERT_ONCE;
-    public static int FLAG_SHOW_LIGHTS;
-    public static int GROUP_ALERT_ALL;
-    public static int GROUP_ALERT_CHILDREN;
-    public static int GROUP_ALERT_SUMMARY;
-    public static java.lang.String INTENT_CATEGORY_NOTIFICATION_PREFERENCES;
-    public static int PRIORITY_DEFAULT;
-    public static int PRIORITY_HIGH;
-    public static int PRIORITY_LOW;
-    public static int PRIORITY_MAX;
-    public static int PRIORITY_MIN;
-    public static int STREAM_DEFAULT;
-    public static int VISIBILITY_PRIVATE;
-    public static int VISIBILITY_PUBLIC;
-    public static int VISIBILITY_SECRET;
-    public android.app.Notification$Action[] actions;
-    public android.util.ArraySet allPendingIntents;
-    public android.media.AudioAttributes audioAttributes;
-    public int audioStreamType;
-    public android.widget.RemoteViews bigContentView;
-    public java.lang.String category;
-    public int color;
-    public android.app.PendingIntent contentIntent;
-    public android.widget.RemoteViews contentView;
-    public int defaults;
-    public android.app.PendingIntent deleteIntent;
-    public android.os.Bundle extras;
-    public int flags;
-    public android.app.PendingIntent fullScreenIntent;
-    public android.widget.RemoteViews headsUpContentView;
-    public int icon;
-    public int iconLevel;
-    public android.graphics.Bitmap largeIcon;
-    public int ledARGB;
-    public int ledOffMS;
-    public int ledOnMS;
-    public int number;
-    public int priority;
-    public static android.os.IBinder processWhitelistToken;
-    public android.app.Notification publicVersion;
-    public android.net.Uri sound;
-    public java.lang.CharSequence tickerText;
-    public android.widget.RemoteViews tickerView;
-    public long[] vibrate;
-    public int visibility;
-    public long when;
-}
-
--keep class android.app.Notification$Action {
-    <init>(int, java.lang.CharSequence, android.app.PendingIntent);
-
-    public android.app.Notification$Action clone();
-    public java.lang.Object clone();
-    public int describeContents();
-    public boolean getAllowGeneratedReplies();
-    public android.app.RemoteInput[] getDataOnlyRemoteInputs();
-    public android.os.Bundle getExtras();
-    public android.graphics.drawable.Icon getIcon();
-    public android.app.RemoteInput[] getRemoteInputs();
-    public int getSemanticAction();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int SEMANTIC_ACTION_ARCHIVE;
-    public static int SEMANTIC_ACTION_CALL;
-    public static int SEMANTIC_ACTION_DELETE;
-    public static int SEMANTIC_ACTION_MARK_AS_READ;
-    public static int SEMANTIC_ACTION_MARK_AS_UNREAD;
-    public static int SEMANTIC_ACTION_MUTE;
-    public static int SEMANTIC_ACTION_NONE;
-    public static int SEMANTIC_ACTION_REPLY;
-    public static int SEMANTIC_ACTION_THUMBS_DOWN;
-    public static int SEMANTIC_ACTION_THUMBS_UP;
-    public static int SEMANTIC_ACTION_UNMUTE;
-    public android.app.PendingIntent actionIntent;
-    public int icon;
-    public java.lang.CharSequence title;
-}
-
--keep class android.app.Notification$Builder {
-    <init>(android.content.Context, java.lang.String);
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.app.Notification);
-
-    public android.app.Notification$Builder addAction(int, java.lang.CharSequence, android.app.PendingIntent);
-    public android.app.Notification$Builder addAction(android.app.Notification$Action);
-    public android.app.Notification$Builder addExtras(android.os.Bundle);
-    public android.app.Notification$Builder addPerson(java.lang.String);
-    public android.app.Notification$Builder addPerson(android.app.Person);
-    public android.app.Notification build();
-    public android.app.Notification buildInto(android.app.Notification);
-    public android.app.Notification buildUnstyled();
-    public android.widget.RemoteViews createBigContentView();
-    public android.widget.RemoteViews createContentView();
-    public android.widget.RemoteViews createContentView(boolean);
-    public android.widget.RemoteViews createHeadsUpContentView(boolean);
-    public android.widget.RemoteViews createHeadsUpContentView();
-    public android.app.Notification$Builder extend(android.app.Notification$Extender);
-    public android.os.Bundle getExtras();
-    public java.lang.CharSequence getHeadsUpStatusBarText(boolean);
-    public android.app.Notification getNotification();
-    public int getPrimaryTextColor();
-    public int getSecondaryTextColor();
-    public android.app.Notification$Style getStyle();
-    public java.lang.String loadHeaderAppName();
-    public android.widget.RemoteViews makeAmbientNotification();
-    public static void makeHeaderExpanded(android.widget.RemoteViews);
-    public android.widget.RemoteViews makeLowPriorityContentView(boolean);
-    public android.widget.RemoteViews makeNotificationHeader(boolean);
-    public android.widget.RemoteViews makePublicAmbientNotification();
-    public android.widget.RemoteViews makePublicContentView();
-    public static android.app.Notification maybeCloneStrippedForDelivery(android.app.Notification, boolean, android.content.Context);
-    public static android.app.Notification$Builder recoverBuilder(android.content.Context, android.app.Notification);
-    public android.app.Notification$Builder setActions(android.app.Notification$Action[]);
-    public android.app.Notification$Builder setAutoCancel(boolean);
-    public android.app.Notification$Builder setBadgeIconType(int);
-    public android.app.Notification$Builder setCategory(java.lang.String);
-    public android.app.Notification$Builder setChannel(java.lang.String);
-    public android.app.Notification$Builder setChannelId(java.lang.String);
-    public android.app.Notification$Builder setChronometerCountDown(boolean);
-    public android.app.Notification$Builder setColor(int);
-    public void setColorPalette(int, int);
-    public android.app.Notification$Builder setColorized(boolean);
-    public android.app.Notification$Builder setContent(android.widget.RemoteViews);
-    public android.app.Notification$Builder setContentInfo(java.lang.CharSequence);
-    public android.app.Notification$Builder setContentIntent(android.app.PendingIntent);
-    public android.app.Notification$Builder setContentText(java.lang.CharSequence);
-    public android.app.Notification$Builder setContentTitle(java.lang.CharSequence);
-    public android.app.Notification$Builder setCustomBigContentView(android.widget.RemoteViews);
-    public android.app.Notification$Builder setCustomContentView(android.widget.RemoteViews);
-    public android.app.Notification$Builder setCustomHeadsUpContentView(android.widget.RemoteViews);
-    public android.app.Notification$Builder setDefaults(int);
-    public android.app.Notification$Builder setDeleteIntent(android.app.PendingIntent);
-    public android.app.Notification$Builder setExtras(android.os.Bundle);
-    public android.app.Notification$Builder setFlag(int, boolean);
-    public android.app.Notification$Builder setFullScreenIntent(android.app.PendingIntent, boolean);
-    public android.app.Notification$Builder setGroup(java.lang.String);
-    public android.app.Notification$Builder setGroupAlertBehavior(int);
-    public android.app.Notification$Builder setGroupSummary(boolean);
-    public android.app.Notification$Builder setHideSmartReplies(boolean);
-    public android.app.Notification$Builder setLargeIcon(android.graphics.Bitmap);
-    public android.app.Notification$Builder setLargeIcon(android.graphics.drawable.Icon);
-    public android.app.Notification$Builder setLights(int, int, int);
-    public android.app.Notification$Builder setLocalOnly(boolean);
-    public android.app.Notification$Builder setNumber(int);
-    public android.app.Notification$Builder setOngoing(boolean);
-    public android.app.Notification$Builder setOnlyAlertOnce(boolean);
-    public android.app.Notification$Builder setPriority(int);
-    public android.app.Notification$Builder setProgress(int, int, boolean);
-    public android.app.Notification$Builder setPublicVersion(android.app.Notification);
-    public void setRebuildStyledRemoteViews(boolean);
-    public android.app.Notification$Builder setRemoteInputHistory(java.lang.CharSequence[]);
-    public android.app.Notification$Builder setSettingsText(java.lang.CharSequence);
-    public android.app.Notification$Builder setShortcutId(java.lang.String);
-    public android.app.Notification$Builder setShowRemoteInputSpinner(boolean);
-    public android.app.Notification$Builder setShowWhen(boolean);
-    public android.app.Notification$Builder setSmallIcon(int);
-    public android.app.Notification$Builder setSmallIcon(int, int);
-    public android.app.Notification$Builder setSmallIcon(android.graphics.drawable.Icon);
-    public android.app.Notification$Builder setSortKey(java.lang.String);
-    public android.app.Notification$Builder setSound(android.net.Uri);
-    public android.app.Notification$Builder setSound(android.net.Uri, int);
-    public android.app.Notification$Builder setSound(android.net.Uri, android.media.AudioAttributes);
-    public android.app.Notification$Builder setStyle(android.app.Notification$Style);
-    public android.app.Notification$Builder setSubText(java.lang.CharSequence);
-    public android.app.Notification$Builder setTicker(java.lang.CharSequence);
-    public android.app.Notification$Builder setTicker(java.lang.CharSequence, android.widget.RemoteViews);
-    public android.app.Notification$Builder setTimeout(long);
-    public android.app.Notification$Builder setTimeoutAfter(long);
-    public android.app.Notification$Builder setUsesChronometer(boolean);
-    public android.app.Notification$Builder setVibrate(long[]);
-    public android.app.Notification$Builder setVisibility(int);
-    public android.app.Notification$Builder setWhen(long);
-    public boolean usesStandardHeader();
-
-
-    public static java.lang.String EXTRA_REBUILD_BIG_CONTENT_VIEW_ACTION_COUNT;
-    public static java.lang.String EXTRA_REBUILD_CONTENT_VIEW_ACTION_COUNT;
-    public static java.lang.String EXTRA_REBUILD_HEADS_UP_CONTENT_VIEW_ACTION_COUNT;
-}
-
--keep class android.app.Notification$Extender {
-
-    public abstract android.app.Notification$Builder extend(android.app.Notification$Builder);
-
-
-}
-
--keep class android.app.Notification$Style {
-    <init>();
-
-    public void addExtras(android.os.Bundle);
-    public abstract boolean areNotificationsVisiblyDifferent(android.app.Notification$Style);
-    public android.app.Notification build();
-    public android.app.Notification buildStyled(android.app.Notification);
-    protected void checkBuilder();
-    public boolean displayCustomViewInline();
-    public java.lang.CharSequence getHeadsUpStatusBarText();
-    protected android.widget.RemoteViews getStandardView(int);
-    protected android.widget.RemoteViews getStandardView(int, android.app.Notification$TemplateBindResult);
-    protected boolean hasProgress();
-    public boolean hasSummaryInHeader();
-    protected void internalSetBigContentTitle(java.lang.CharSequence);
-    protected void internalSetSummaryText(java.lang.CharSequence);
-    public android.widget.RemoteViews makeBigContentView();
-    public android.widget.RemoteViews makeContentView(boolean);
-    public android.widget.RemoteViews makeHeadsUpContentView(boolean);
-    public void purgeResources();
-    public void reduceImageSizes(android.content.Context);
-    protected void restoreFromExtras(android.os.Bundle);
-    public void setBuilder(android.app.Notification$Builder);
-    public void validate(android.content.Context);
-
-
-    protected android.app.Notification$Builder mBuilder;
-    protected java.lang.CharSequence mSummaryText;
-    protected boolean mSummaryTextSet;
-}
-
--keep class android.app.Notification$TemplateBindResult {
-
-    public int getIconMarginEnd();
-    public void setIconMarginEnd(int);
-
-
-}
-
--keep class android.app.OnActivityPausedListener {
-
-    public abstract void onPaused(android.app.Activity);
-
-
-}
-
--keep class android.app.PendingIntent {
-
-    public void cancel();
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static android.app.PendingIntent getActivities(android.content.Context, int, android.content.Intent[], int);
-    public static android.app.PendingIntent getActivities(android.content.Context, int, android.content.Intent[], int, android.os.Bundle);
-    public static android.app.PendingIntent getActivitiesAsUser(android.content.Context, int, android.content.Intent[], int, android.os.Bundle, android.os.UserHandle);
-    public static android.app.PendingIntent getActivity(android.content.Context, int, android.content.Intent, int);
-    public static android.app.PendingIntent getActivity(android.content.Context, int, android.content.Intent, int, android.os.Bundle);
-    public static android.app.PendingIntent getActivityAsUser(android.content.Context, int, android.content.Intent, int, android.os.Bundle, android.os.UserHandle);
-    public static android.app.PendingIntent getBroadcast(android.content.Context, int, android.content.Intent, int);
-    public static android.app.PendingIntent getBroadcastAsUser(android.content.Context, int, android.content.Intent, int, android.os.UserHandle);
-    public java.lang.String getCreatorPackage();
-    public int getCreatorUid();
-    public android.os.UserHandle getCreatorUserHandle();
-    public static android.app.PendingIntent getForegroundService(android.content.Context, int, android.content.Intent, int);
-    public android.content.Intent getIntent();
-    public android.content.IntentSender getIntentSender();
-    public static android.app.PendingIntent getService(android.content.Context, int, android.content.Intent, int);
-    public java.lang.String getTag(java.lang.String);
-    public android.content.IIntentSender getTarget();
-    public java.lang.String getTargetPackage();
-    public android.os.IBinder getWhitelistToken();
-    public int hashCode();
-    public boolean isActivity();
-    public boolean isForegroundService();
-    public boolean isTargetedToPackage();
-    public static android.app.PendingIntent readPendingIntentOrNullFromParcel(android.os.Parcel);
-    public void registerCancelListener(android.app.PendingIntent$CancelListener);
-    public void send();
-    public void send(int);
-    public void send(android.content.Context, int, android.content.Intent);
-    public void send(int, android.app.PendingIntent$OnFinished, android.os.Handler);
-    public void send(android.content.Context, int, android.content.Intent, android.app.PendingIntent$OnFinished, android.os.Handler);
-    public void send(android.content.Context, int, android.content.Intent, android.app.PendingIntent$OnFinished, android.os.Handler, java.lang.String);
-    public void send(android.content.Context, int, android.content.Intent, android.app.PendingIntent$OnFinished, android.os.Handler, java.lang.String, android.os.Bundle);
-    public int sendAndReturnResult(android.content.Context, int, android.content.Intent, android.app.PendingIntent$OnFinished, android.os.Handler, java.lang.String, android.os.Bundle);
-    public static void setOnMarshaledListener(android.app.PendingIntent$OnMarshaledListener);
-    public java.lang.String toString();
-    public void unregisterCancelListener(android.app.PendingIntent$CancelListener);
-    public static void writePendingIntentOrNullToParcel(android.app.PendingIntent, android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_CANCEL_CURRENT;
-    public static int FLAG_IMMUTABLE;
-    public static int FLAG_NO_CREATE;
-    public static int FLAG_ONE_SHOT;
-    public static int FLAG_UPDATE_CURRENT;
-}
-
--keep class android.app.PendingIntent$CancelListener {
-
-    public abstract void onCancelled(android.app.PendingIntent);
-
-
-}
-
--keep class android.app.PendingIntent$CanceledException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.Exception);
-
-
-
-}
-
--keep class android.app.PendingIntent$OnFinished {
-
-    public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle);
-
-
-}
-
--keep class android.app.PendingIntent$OnMarshaledListener {
-
-    public abstract void onMarshaled(android.app.PendingIntent, android.os.Parcel, int);
-
-
-}
-
--keep class android.app.Person {
-
-    public int describeContents();
-    public android.graphics.drawable.Icon getIcon();
-    public java.lang.String getKey();
-    public java.lang.CharSequence getName();
-    public java.lang.String getUri();
-    public boolean isBot();
-    public boolean isImportant();
-    public java.lang.String resolveToLegacyUri();
-    public android.app.Person$Builder toBuilder();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.Person$Builder {
-    <init>();
-
-    public android.app.Person build();
-    public android.app.Person$Builder setBot(boolean);
-    public android.app.Person$Builder setIcon(android.graphics.drawable.Icon);
-    public android.app.Person$Builder setImportant(boolean);
-    public android.app.Person$Builder setKey(java.lang.String);
-    public android.app.Person$Builder setName(java.lang.CharSequence);
-    public android.app.Person$Builder setUri(java.lang.String);
-
-
-}
-
--keep class android.app.PictureInPictureArgs {
-    <init>();
-    <init>(float, java.util.List);
-
-    public static android.app.PictureInPictureArgs convert(android.app.PictureInPictureParams);
-    public static android.app.PictureInPictureParams convert(android.app.PictureInPictureArgs);
-    public void copyOnlySet(android.app.PictureInPictureArgs);
-    public int describeContents();
-    public java.util.List getActions();
-    public float getAspectRatio();
-    public android.util.Rational getAspectRatioRational();
-    public android.graphics.Rect getSourceRectHint();
-    public android.graphics.Rect getSourceRectHintInsets();
-    public boolean hasSetActions();
-    public boolean hasSetAspectRatio();
-    public boolean hasSourceBoundsHint();
-    public boolean hasSourceBoundsHintInsets();
-    public void setActions(java.util.List);
-    public void setAspectRatio(float);
-    public void setSourceRectHint(android.graphics.Rect);
-    public void setSourceRectHintInsets(android.graphics.Rect);
-    public void truncateActions(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.PictureInPictureParams {
-
-    public void copyOnlySet(android.app.PictureInPictureParams);
-    public int describeContents();
-    public java.util.List getActions();
-    public float getAspectRatio();
-    public android.util.Rational getAspectRatioRational();
-    public android.graphics.Rect getSourceRectHint();
-    public boolean hasSetActions();
-    public boolean hasSetAspectRatio();
-    public boolean hasSourceBoundsHint();
-    public void truncateActions(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.ProfilerInfo {
-    <init>(java.lang.String, android.os.ParcelFileDescriptor, int, boolean, boolean, java.lang.String, boolean);
-    <init>(android.app.ProfilerInfo);
-
-    public void closeFd();
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public android.app.ProfilerInfo setAgent(java.lang.String, boolean);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String agent;
-    public boolean attachAgentDuringBind;
-    public boolean autoStopProfiler;
-    public android.os.ParcelFileDescriptor profileFd;
-    public java.lang.String profileFile;
-    public int samplingInterval;
-    public boolean streamingOutput;
-}
-
--keep class android.app.RemoteAction {
-    <init>(android.graphics.drawable.Icon, java.lang.CharSequence, java.lang.CharSequence, android.app.PendingIntent);
-
-    public android.app.RemoteAction clone();
-    public java.lang.Object clone();
-    public int describeContents();
-    public void dump(java.lang.String, java.io.PrintWriter);
-    public android.app.PendingIntent getActionIntent();
-    public java.lang.CharSequence getContentDescription();
-    public android.graphics.drawable.Icon getIcon();
-    public java.lang.CharSequence getTitle();
-    public boolean isEnabled();
-    public void setEnabled(boolean);
-    public void setShouldShowIcon(boolean);
-    public boolean shouldShowIcon();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.RemoteInput {
-
-    public static void addDataResultToIntent(android.app.RemoteInput, android.content.Intent, java.util.Map);
-    public static void addResultsToIntent(android.app.RemoteInput[], android.content.Intent, android.os.Bundle);
-    public int describeContents();
-    public boolean getAllowFreeFormInput();
-    public java.util.Set getAllowedDataTypes();
-    public java.lang.CharSequence[] getChoices();
-    public static java.util.Map getDataResultsFromIntent(android.content.Intent, java.lang.String);
-    public android.os.Bundle getExtras();
-    public java.lang.CharSequence getLabel();
-    public java.lang.String getResultKey();
-    public static android.os.Bundle getResultsFromIntent(android.content.Intent);
-    public static int getResultsSource(android.content.Intent);
-    public boolean isDataOnly();
-    public static void setResultsSource(android.content.Intent, int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_RESULTS_DATA;
-    public static java.lang.String RESULTS_CLIP_LABEL;
-    public static int SOURCE_CHOICE;
-    public static int SOURCE_FREE_FORM_INPUT;
-}
-
--keep class android.app.ResultInfo {
-    <init>(java.lang.String, int, int, android.content.Intent);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.Intent mData;
-    public int mRequestCode;
-    public int mResultCode;
-    public java.lang.String mResultWho;
-}
-
--keep class android.app.Service {
-    <init>();
-
-    public void attach(android.content.Context, android.app.ActivityThread, java.lang.String, android.os.IBinder, android.app.Application, java.lang.Object);
-    public void detachAndCleanUp();
-    protected void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public android.app.Application getApplication();
-    public abstract android.os.IBinder onBind(android.content.Intent);
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public void onCreate();
-    public void onDestroy();
-    public void onLowMemory();
-    public void onRebind(android.content.Intent);
-    public void onStart(android.content.Intent, int);
-    public int onStartCommand(android.content.Intent, int, int);
-    public void onTaskRemoved(android.content.Intent);
-    public void onTrimMemory(int);
-    public boolean onUnbind(android.content.Intent);
-    public void setForeground(boolean);
-    public void startForeground(int, android.app.Notification);
-    public void stopForeground(boolean);
-    public void stopForeground(int);
-    public void stopSelf();
-    public void stopSelf(int);
-    public boolean stopSelfResult(int);
-
-
-    public static int START_CONTINUATION_MASK;
-    public static int START_FLAG_REDELIVERY;
-    public static int START_FLAG_RETRY;
-    public static int START_NOT_STICKY;
-    public static int START_REDELIVER_INTENT;
-    public static int START_STICKY;
-    public static int START_STICKY_COMPATIBILITY;
-    public static int START_TASK_REMOVED_COMPLETE;
-    public static int STOP_FOREGROUND_DETACH;
-    public static int STOP_FOREGROUND_REMOVE;
-}
-
--keep class android.app.SharedElementCallback {
-    <init>();
-
-    public android.os.Parcelable onCaptureSharedElementSnapshot(android.view.View, android.graphics.Matrix, android.graphics.RectF);
-    public android.view.View onCreateSnapshotView(android.content.Context, android.os.Parcelable);
-    public void onMapSharedElements(java.util.List, java.util.Map);
-    public void onRejectSharedElements(java.util.List);
-    public void onSharedElementEnd(java.util.List, java.util.List, java.util.List);
-    public void onSharedElementStart(java.util.List, java.util.List, java.util.List);
-    public void onSharedElementsArrived(java.util.List, java.util.List, android.app.SharedElementCallback$OnSharedElementsReadyListener);
-
-
-}
-
--keep class android.app.SharedElementCallback$OnSharedElementsReadyListener {
-
-    public abstract void onSharedElementsReady();
-
-
-}
-
--keep class android.app.TaskStackBuilder {
-
-    public android.app.TaskStackBuilder addNextIntent(android.content.Intent);
-    public android.app.TaskStackBuilder addNextIntentWithParentStack(android.content.Intent);
-    public android.app.TaskStackBuilder addParentStack(android.app.Activity);
-    public android.app.TaskStackBuilder addParentStack(java.lang.Class);
-    public android.app.TaskStackBuilder addParentStack(android.content.ComponentName);
-    public static android.app.TaskStackBuilder create(android.content.Context);
-    public android.content.Intent editIntentAt(int);
-    public int getIntentCount();
-    public android.content.Intent[] getIntents();
-    public android.app.PendingIntent getPendingIntent(int, int);
-    public android.app.PendingIntent getPendingIntent(int, int, android.os.Bundle);
-    public android.app.PendingIntent getPendingIntent(int, int, android.os.Bundle, android.os.UserHandle);
-    public void startActivities();
-    public int startActivities(android.os.Bundle, android.os.UserHandle);
-    public void startActivities(android.os.Bundle);
-
-
-}
-
--keep class android.app.UiAutomation {
-    <init>(android.os.Looper, android.app.IUiAutomationConnection);
-
-    public void clearWindowAnimationFrameStats();
-    public boolean clearWindowContentFrameStats(int);
-    public void connect();
-    public void connect(int);
-    public void destroy();
-    public void disconnect();
-    public android.view.accessibility.AccessibilityEvent executeAndWaitForEvent(java.lang.Runnable, android.app.UiAutomation$AccessibilityEventFilter, long);
-    public android.os.ParcelFileDescriptor executeShellCommand(java.lang.String);
-    public android.os.ParcelFileDescriptor[] executeShellCommandRw(java.lang.String);
-    public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
-    public int getConnectionId();
-    public int getFlags();
-    public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow();
-    public android.accessibilityservice.AccessibilityServiceInfo getServiceInfo();
-    public android.view.WindowAnimationFrameStats getWindowAnimationFrameStats();
-    public android.view.WindowContentFrameStats getWindowContentFrameStats(int);
-    public java.util.List getWindows();
-    public void grantRuntimePermission(java.lang.String, java.lang.String);
-    public boolean grantRuntimePermission(java.lang.String, java.lang.String, android.os.UserHandle);
-    public void grantRuntimePermissionAsUser(java.lang.String, java.lang.String, android.os.UserHandle);
-    public boolean injectInputEvent(android.view.InputEvent, boolean);
-    public boolean isDestroyed();
-    public boolean performGlobalAction(int);
-    public void revokeRuntimePermission(java.lang.String, java.lang.String);
-    public boolean revokeRuntimePermission(java.lang.String, java.lang.String, android.os.UserHandle);
-    public void revokeRuntimePermissionAsUser(java.lang.String, java.lang.String, android.os.UserHandle);
-    public void setOnAccessibilityEventListener(android.app.UiAutomation$OnAccessibilityEventListener);
-    public boolean setRotation(int);
-    public void setRunAsMonkey(boolean);
-    public void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo);
-    public android.graphics.Bitmap takeScreenshot();
-    public void waitForIdle(long, long);
-
-
-    public static int FLAG_DONT_SUPPRESS_ACCESSIBILITY_SERVICES;
-    public static int ROTATION_FREEZE_0;
-    public static int ROTATION_FREEZE_180;
-    public static int ROTATION_FREEZE_270;
-    public static int ROTATION_FREEZE_90;
-    public static int ROTATION_FREEZE_CURRENT;
-    public static int ROTATION_UNFREEZE;
-}
-
--keep class android.app.UiAutomation$AccessibilityEventFilter {
-
-    public abstract boolean accept(android.view.accessibility.AccessibilityEvent);
-
-
-}
-
--keep class android.app.UiAutomation$OnAccessibilityEventListener {
-
-    public abstract void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-
-
-}
-
--keep class android.app.VoiceInteractor {
-
-    public android.app.VoiceInteractor$Request getActiveRequest(java.lang.String);
-    public android.app.VoiceInteractor$Request[] getActiveRequests();
-    public boolean submitRequest(android.app.VoiceInteractor$Request);
-    public boolean submitRequest(android.app.VoiceInteractor$Request, java.lang.String);
-    public boolean[] supportsCommands(java.lang.String[]);
-
-
-}
-
--keep class android.app.VoiceInteractor$PickOptionRequest {
-    <init>(android.app.VoiceInteractor$Prompt, android.app.VoiceInteractor$PickOptionRequest$Option[], android.os.Bundle);
-    <init>(java.lang.CharSequence, android.app.VoiceInteractor$PickOptionRequest$Option[], android.os.Bundle);
-
-    public void onPickOptionResult(boolean, android.app.VoiceInteractor$PickOptionRequest$Option[], android.os.Bundle);
-
-
-}
-
--keep class android.app.VoiceInteractor$PickOptionRequest$Option {
-    <init>(java.lang.CharSequence);
-    <init>(java.lang.CharSequence, int);
-
-    public android.app.VoiceInteractor$PickOptionRequest$Option addSynonym(java.lang.CharSequence);
-    public int countSynonyms();
-    public int describeContents();
-    public android.os.Bundle getExtras();
-    public int getIndex();
-    public java.lang.CharSequence getLabel();
-    public java.lang.CharSequence getSynonymAt(int);
-    public void setExtras(android.os.Bundle);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.VoiceInteractor$Prompt {
-    <init>(java.lang.CharSequence[], java.lang.CharSequence);
-    <init>(java.lang.CharSequence);
-
-    public int countVoicePrompts();
-    public int describeContents();
-    public java.lang.CharSequence getVisualPrompt();
-    public java.lang.CharSequence getVoicePromptAt(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.VoiceInteractor$Request {
-
-    public void cancel();
-    public android.app.Activity getActivity();
-    public android.content.Context getContext();
-    public java.lang.String getName();
-    public void onAttached(android.app.Activity);
-    public void onCancel();
-    public void onDetached();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.app.WaitResult {
-    <init>();
-
-    public int describeContents();
-    public void dump(java.io.PrintWriter, java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int result;
-    public long thisTime;
-    public boolean timeout;
-    public long totalTime;
-    public android.content.ComponentName who;
-}
-
--keep class android.app.WindowConfiguration {
-    <init>();
-    <init>(android.app.WindowConfiguration);
-
-    public static java.lang.String activityTypeToString(int);
-    public boolean canReceiveKeys();
-    public boolean canResizeTask();
-    public int compareTo(android.app.WindowConfiguration);
-    public int compareTo(java.lang.Object);
-    public int describeContents();
-    public long diff(android.app.WindowConfiguration, boolean);
-    public boolean equals(java.lang.Object);
-    public int getActivityType();
-    public android.graphics.Rect getAppBounds();
-    public android.graphics.Rect getBounds();
-    public int getWindowingMode();
-    public boolean hasMovementAnimations();
-    public boolean hasWindowDecorCaption();
-    public boolean hasWindowShadow();
-    public int hashCode();
-    public boolean isAlwaysOnTop();
-    public static boolean isFloating(int);
-    public boolean keepVisibleDeadAppWindowOnScreen();
-    public boolean persistTaskBounds();
-    public void setActivityType(int);
-    public void setAppBounds(android.graphics.Rect);
-    public void setAppBounds(int, int, int, int);
-    public void setBounds(android.graphics.Rect);
-    public void setTo(android.app.WindowConfiguration);
-    public void setToDefaults();
-    public void setWindowingMode(int);
-    public boolean supportSplitScreenWindowingMode();
-    public static boolean supportSplitScreenWindowingMode(int);
-    public boolean tasksAreFloating();
-    public java.lang.String toString();
-    public void unset();
-    public int updateFrom(android.app.WindowConfiguration);
-    public boolean useWindowFrameForBackdrop();
-    public static java.lang.String windowingModeToString(int);
-    public boolean windowsAreScaleable();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static int ACTIVITY_TYPE_ASSISTANT;
-    public static int ACTIVITY_TYPE_HOME;
-    public static int ACTIVITY_TYPE_RECENTS;
-    public static int ACTIVITY_TYPE_STANDARD;
-    public static int ACTIVITY_TYPE_UNDEFINED;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int PINNED_WINDOWING_MODE_ELEVATION_IN_DIP;
-    public static int WINDOWING_MODE_FREEFORM;
-    public static int WINDOWING_MODE_FULLSCREEN;
-    public static int WINDOWING_MODE_FULLSCREEN_OR_SPLIT_SCREEN_SECONDARY;
-    public static int WINDOWING_MODE_PINNED;
-    public static int WINDOWING_MODE_SPLIT_SCREEN_PRIMARY;
-    public static int WINDOWING_MODE_SPLIT_SCREEN_SECONDARY;
-    public static int WINDOWING_MODE_UNDEFINED;
-    public static int WINDOW_CONFIG_ACTIVITY_TYPE;
-    public static int WINDOW_CONFIG_APP_BOUNDS;
-    public static int WINDOW_CONFIG_BOUNDS;
-    public static int WINDOW_CONFIG_WINDOWING_MODE;
-}
-
--keep class android.app.assist.AssistContent {
-    <init>();
-
-    public int describeContents();
-    public android.content.ClipData getClipData();
-    public android.os.Bundle getExtras();
-    public android.content.Intent getIntent();
-    public java.lang.String getStructuredData();
-    public android.net.Uri getWebUri();
-    public boolean isAppProvidedIntent();
-    public boolean isAppProvidedWebUri();
-    public void setClipData(android.content.ClipData);
-    public void setDefaultIntent(android.content.Intent);
-    public void setIntent(android.content.Intent);
-    public void setStructuredData(java.lang.String);
-    public void setWebUri(android.net.Uri);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.assist.AssistStructure {
-    <init>(android.app.Activity, boolean, int);
-    <init>();
-    <init>(android.os.Parcel);
-
-    public void clearSendChannel();
-    public int describeContents();
-    public void dump(boolean);
-    public void ensureData();
-    public long getAcquisitionEndTime();
-    public long getAcquisitionStartTime();
-    public android.content.ComponentName getActivityComponent();
-    public int getFlags();
-    public android.app.assist.AssistStructure$WindowNode getWindowNodeAt(int);
-    public int getWindowNodeCount();
-    public boolean isHomeActivity();
-    public void sanitizeForParceling(boolean);
-    public void setAcquisitionEndTime(long);
-    public void setAcquisitionStartTime(long);
-    public void setActivityComponent(android.content.ComponentName);
-    public void setHomeActivity(boolean);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.assist.AssistStructure$AutofillOverlay {
-    <init>();
-
-
-
-    public boolean focused;
-    public android.view.autofill.AutofillValue value;
-}
-
--keep class android.app.assist.AssistStructure$ViewNode {
-
-    public float getAlpha();
-    public java.lang.String[] getAutofillHints();
-    public android.view.autofill.AutofillId getAutofillId();
-    public java.lang.CharSequence[] getAutofillOptions();
-    public int getAutofillType();
-    public android.view.autofill.AutofillValue getAutofillValue();
-    public android.app.assist.AssistStructure$ViewNode getChildAt(int);
-    public int getChildCount();
-    public java.lang.String getClassName();
-    public java.lang.CharSequence getContentDescription();
-    public float getElevation();
-    public android.os.Bundle getExtras();
-    public int getHeight();
-    public java.lang.String getHint();
-    public android.view.ViewStructure$HtmlInfo getHtmlInfo();
-    public int getId();
-    public java.lang.String getIdEntry();
-    public java.lang.String getIdPackage();
-    public java.lang.String getIdType();
-    public int getImportantForAutofill();
-    public int getInputType();
-    public int getLeft();
-    public android.os.LocaleList getLocaleList();
-    public int getMaxTextEms();
-    public int getMaxTextLength();
-    public int getMinTextEms();
-    public int getScrollX();
-    public int getScrollY();
-    public java.lang.CharSequence getText();
-    public int getTextBackgroundColor();
-    public int getTextColor();
-    public java.lang.String getTextIdEntry();
-    public int[] getTextLineBaselines();
-    public int[] getTextLineCharOffsets();
-    public int getTextSelectionEnd();
-    public int getTextSelectionStart();
-    public float getTextSize();
-    public int getTextStyle();
-    public int getTop();
-    public android.graphics.Matrix getTransformation();
-    public int getVisibility();
-    public java.lang.String getWebDomain();
-    public java.lang.String getWebScheme();
-    public int getWidth();
-    public boolean isAccessibilityFocused();
-    public boolean isActivated();
-    public boolean isAssistBlocked();
-    public boolean isCheckable();
-    public boolean isChecked();
-    public boolean isClickable();
-    public boolean isContextClickable();
-    public boolean isEnabled();
-    public boolean isFocusable();
-    public boolean isFocused();
-    public boolean isLongClickable();
-    public boolean isOpaque();
-    public boolean isSanitized();
-    public boolean isSelected();
-    public void setAutofillOverlay(android.app.assist.AssistStructure$AutofillOverlay);
-    public void setWebDomain(java.lang.String);
-    public void updateAutofillValue(android.view.autofill.AutofillValue);
-
-
-    public static int TEXT_COLOR_UNDEFINED;
-    public static int TEXT_STYLE_BOLD;
-    public static int TEXT_STYLE_ITALIC;
-    public static int TEXT_STYLE_STRIKE_THRU;
-    public static int TEXT_STYLE_UNDERLINE;
-}
-
--keep class android.app.assist.AssistStructure$WindowNode {
-
-    public int getDisplayId();
-    public int getHeight();
-    public int getLeft();
-    public android.app.assist.AssistStructure$ViewNode getRootViewNode();
-    public java.lang.CharSequence getTitle();
-    public int getTop();
-    public int getWidth();
-
-
-}
-
--keep class android.app.servertransaction.ActivityLifecycleItem {
-    <init>();
-
-    public abstract int getTargetState();
-    public void recycle();
-
-
-    public static int ON_CREATE;
-    public static int ON_DESTROY;
-    public static int ON_PAUSE;
-    public static int ON_RESTART;
-    public static int ON_RESUME;
-    public static int ON_START;
-    public static int ON_STOP;
-    public static int PRE_ON_CREATE;
-    public static int UNDEFINED;
-}
-
--keep class android.app.servertransaction.ClientTransaction {
-
-    public void addCallback(android.app.servertransaction.ClientTransactionItem);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.os.IBinder getActivityToken();
-    public android.app.IApplicationThread getClient();
-    public android.app.servertransaction.ActivityLifecycleItem getLifecycleStateRequest();
-    public int hashCode();
-    public static android.app.servertransaction.ClientTransaction obtain(android.app.IApplicationThread, android.os.IBinder);
-    public void preExecute(android.app.ClientTransactionHandler);
-    public void recycle();
-    public void schedule();
-    public void setLifecycleStateRequest(android.app.servertransaction.ActivityLifecycleItem);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.app.servertransaction.ClientTransactionItem {
-    <init>();
-
-    public int describeContents();
-    public int getPostExecutionState();
-
-
-}
-
--keep class android.app.servertransaction.PendingTransactionActions {
-    <init>();
-
-    public void clear();
-    public android.os.Bundle getOldState();
-    public android.app.servertransaction.PendingTransactionActions$StopInfo getStopInfo();
-    public void setCallOnPostCreate(boolean);
-    public void setOldState(android.os.Bundle);
-    public void setReportRelaunchToWindowManager(boolean);
-    public void setRestoreInstanceState(boolean);
-    public void setStopInfo(android.app.servertransaction.PendingTransactionActions$StopInfo);
-    public boolean shouldCallOnPostCreate();
-    public boolean shouldReportRelaunchToWindowManager();
-    public boolean shouldRestoreInstanceState();
-
-
-}
-
--keep class android.app.servertransaction.PendingTransactionActions$StopInfo {
-    <init>();
-
-    public void run();
-    public void setActivity(android.app.ActivityThread$ActivityClientRecord);
-    public void setDescription(java.lang.CharSequence);
-    public void setPersistentState(android.os.PersistableBundle);
-    public void setState(android.os.Bundle);
-
-
-}
-
--keep class android.content.BroadcastReceiver {
-    <init>();
-
-    public void abortBroadcast();
-    public void clearAbortBroadcast();
-    public boolean getAbortBroadcast();
-    public boolean getDebugUnregister();
-    public android.content.BroadcastReceiver$PendingResult getPendingResult();
-    public int getResultCode();
-    public java.lang.String getResultData();
-    public android.os.Bundle getResultExtras(boolean);
-    public int getSendingUserId();
-    public android.content.BroadcastReceiver$PendingResult goAsync();
-    public boolean isInitialStickyBroadcast();
-    public boolean isOrderedBroadcast();
-    public abstract void onReceive(android.content.Context, android.content.Intent);
-    public android.os.IBinder peekService(android.content.Context, android.content.Intent);
-    public void setDebugUnregister(boolean);
-    public void setOrderedHint(boolean);
-    public void setPendingResult(android.content.BroadcastReceiver$PendingResult);
-    public void setResult(int, java.lang.String, android.os.Bundle);
-    public void setResultCode(int);
-    public void setResultData(java.lang.String);
-    public void setResultExtras(android.os.Bundle);
-
-
-}
-
--keep class android.content.BroadcastReceiver$PendingResult {
-    <init>(int, java.lang.String, android.os.Bundle, int, boolean, boolean, android.os.IBinder, int, int);
-
-    public void abortBroadcast();
-    public void clearAbortBroadcast();
-    public void finish();
-    public boolean getAbortBroadcast();
-    public int getResultCode();
-    public java.lang.String getResultData();
-    public android.os.Bundle getResultExtras(boolean);
-    public int getSendingUserId();
-    public void sendFinished(android.app.IActivityManager);
-    public void setExtrasClassLoader(java.lang.ClassLoader);
-    public void setResult(int, java.lang.String, android.os.Bundle);
-    public void setResultCode(int);
-    public void setResultData(java.lang.String);
-    public void setResultExtras(android.os.Bundle);
-
-
-    public static int TYPE_COMPONENT;
-    public static int TYPE_REGISTERED;
-    public static int TYPE_UNREGISTERED;
-}
-
--keep class android.content.ClipData {
-    <init>(java.lang.CharSequence, java.lang.String[], android.content.ClipData$Item);
-    <init>(android.content.ClipDescription, android.content.ClipData$Item);
-    <init>(android.content.ClipDescription, java.util.ArrayList);
-    <init>(android.content.ClipData);
-
-    public void addItem(android.content.ClipData$Item);
-    public void addItem(android.content.ClipData$Item, android.content.ContentResolver);
-    public void addItem(android.content.ContentResolver, android.content.ClipData$Item);
-    public void collectUris(java.util.List);
-    public int describeContents();
-    public void fixUris(int);
-    public void fixUrisLight(int);
-    public android.content.ClipDescription getDescription();
-    public android.graphics.Bitmap getIcon();
-    public android.content.ClipData$Item getItemAt(int);
-    public int getItemCount();
-    public static android.content.ClipData newHtmlText(java.lang.CharSequence, java.lang.CharSequence, java.lang.String);
-    public static android.content.ClipData newIntent(java.lang.CharSequence, android.content.Intent);
-    public static android.content.ClipData newPlainText(java.lang.CharSequence, java.lang.CharSequence);
-    public static android.content.ClipData newRawUri(java.lang.CharSequence, android.net.Uri);
-    public static android.content.ClipData newUri(android.content.ContentResolver, java.lang.CharSequence, android.net.Uri);
-    public void prepareToEnterProcess();
-    public void prepareToLeaveProcess(boolean);
-    public void prepareToLeaveProcess(boolean, int);
-    public void setItemAt(int, android.content.ClipData$Item);
-    public void toShortString(java.lang.StringBuilder);
-    public void toShortStringShortItems(java.lang.StringBuilder, boolean);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.ClipData$Item {
-    <init>(android.content.ClipData$Item);
-    <init>(java.lang.CharSequence);
-    <init>(java.lang.CharSequence, java.lang.String);
-    <init>(android.content.Intent);
-    <init>(android.net.Uri);
-    <init>(java.lang.CharSequence, android.content.Intent, android.net.Uri);
-    <init>(java.lang.CharSequence, java.lang.String, android.content.Intent, android.net.Uri);
-
-    public java.lang.String coerceToHtmlText(android.content.Context);
-    public java.lang.CharSequence coerceToStyledText(android.content.Context);
-    public java.lang.CharSequence coerceToText(android.content.Context);
-    public java.lang.String getHtmlText();
-    public android.content.Intent getIntent();
-    public java.lang.CharSequence getText();
-    public android.net.Uri getUri();
-    public void toShortString(java.lang.StringBuilder);
-    public void toShortSummaryString(java.lang.StringBuilder);
-    public java.lang.String toString();
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-}
-
--keep class android.content.ClipDescription {
-    <init>(java.lang.CharSequence, java.lang.String[]);
-    <init>(android.content.ClipDescription);
-
-    public static boolean compareMimeTypes(java.lang.String, java.lang.String);
-    public int describeContents();
-    public java.lang.String[] filterMimeTypes(java.lang.String);
-    public android.os.PersistableBundle getExtras();
-    public java.lang.CharSequence getLabel();
-    public java.lang.String getMimeType(int);
-    public int getMimeTypeCount();
-    public long getTimestamp();
-    public boolean hasMimeType(java.lang.String);
-    public void setExtras(android.os.PersistableBundle);
-    public void setTimestamp(long);
-    public boolean toShortString(java.lang.StringBuilder);
-    public boolean toShortStringTypesOnly(java.lang.StringBuilder);
-    public java.lang.String toString();
-    public void validate();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_TARGET_COMPONENT_NAME;
-    public static java.lang.String EXTRA_USER_SERIAL_NUMBER;
-    public static java.lang.String MIMETYPE_TEXT_HTML;
-    public static java.lang.String MIMETYPE_TEXT_INTENT;
-    public static java.lang.String MIMETYPE_TEXT_PLAIN;
-    public static java.lang.String MIMETYPE_TEXT_URILIST;
-}
-
--keep class android.content.ComponentCallbacks {
-
-    public abstract void onConfigurationChanged(android.content.res.Configuration);
-    public abstract void onLowMemory();
-
-
-}
-
--keep class android.content.ComponentName {
-    <init>(java.lang.String, java.lang.String);
-    <init>(android.content.Context, java.lang.String);
-    <init>(android.content.Context, java.lang.Class);
-    <init>(android.os.Parcel);
-
-    public void appendShortString(java.lang.StringBuilder);
-    public static void appendShortString(java.lang.StringBuilder, java.lang.String, java.lang.String);
-    public android.content.ComponentName clone();
-    public java.lang.Object clone();
-    public int compareTo(android.content.ComponentName);
-    public int compareTo(java.lang.Object);
-    public static android.content.ComponentName createRelative(java.lang.String, java.lang.String);
-    public static android.content.ComponentName createRelative(android.content.Context, java.lang.String);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.String flattenToShortString();
-    public java.lang.String flattenToString();
-    public java.lang.String getClassName();
-    public java.lang.String getPackageName();
-    public java.lang.String getShortClassName();
-    public int hashCode();
-    public static void printShortString(java.io.PrintWriter, java.lang.String, java.lang.String);
-    public static android.content.ComponentName readFromParcel(android.os.Parcel);
-    public java.lang.String toShortString();
-    public java.lang.String toString();
-    public static android.content.ComponentName unflattenFromString(java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-    public static void writeToParcel(android.content.ComponentName, android.os.Parcel);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.ContentProvider {
-    <init>();
-    <init>(android.content.Context, java.lang.String, java.lang.String, android.content.pm.PathPermission[]);
-
-    public android.content.ContentProviderResult[] applyBatch(java.util.ArrayList);
-    public void attachInfo(android.content.Context, android.content.pm.ProviderInfo);
-    public void attachInfoForTesting(android.content.Context, android.content.pm.ProviderInfo);
-    public int bulkInsert(android.net.Uri, android.content.ContentValues[]);
-    public android.os.Bundle call(java.lang.String, java.lang.String, android.os.Bundle);
-    public android.net.Uri canonicalize(android.net.Uri);
-    public static android.content.ContentProvider coerceToLocalContentProvider(android.content.IContentProvider);
-    public abstract int delete(android.net.Uri, java.lang.String, java.lang.String[]);
-    public void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    protected int enforceReadPermissionInner(android.net.Uri, java.lang.String, android.os.IBinder);
-    protected int enforceWritePermissionInner(android.net.Uri, java.lang.String, android.os.IBinder);
-    public android.app.AppOpsManager getAppOpsManager();
-    public static java.lang.String getAuthorityWithoutUserId(java.lang.String);
-    public java.lang.String getCallingPackage();
-    public android.content.Context getContext();
-    public android.content.IContentProvider getIContentProvider();
-    public android.content.pm.PathPermission[] getPathPermissions();
-    public java.lang.String getReadPermission();
-    public java.lang.String[] getStreamTypes(android.net.Uri, java.lang.String);
-    public abstract java.lang.String getType(android.net.Uri);
-    public static android.net.Uri getUriWithoutUserId(android.net.Uri);
-    public static int getUserIdFromAuthority(java.lang.String, int);
-    public static int getUserIdFromAuthority(java.lang.String);
-    public static int getUserIdFromUri(android.net.Uri, int);
-    public static int getUserIdFromUri(android.net.Uri);
-    public java.lang.String getWritePermission();
-    public abstract android.net.Uri insert(android.net.Uri, android.content.ContentValues);
-    protected boolean isTemporary();
-    protected boolean matchesOurAuthorities(java.lang.String);
-    public static android.net.Uri maybeAddUserId(android.net.Uri, int);
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public abstract boolean onCreate();
-    public void onLowMemory();
-    public void onTrimMemory(int);
-    public android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, java.lang.String);
-    public android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, java.lang.String, android.os.CancellationSignal);
-    public android.os.ParcelFileDescriptor openFile(android.net.Uri, java.lang.String);
-    public android.os.ParcelFileDescriptor openFile(android.net.Uri, java.lang.String, android.os.CancellationSignal);
-    protected android.os.ParcelFileDescriptor openFileHelper(android.net.Uri, java.lang.String);
-    public android.os.ParcelFileDescriptor openPipeHelper(android.net.Uri, java.lang.String, android.os.Bundle, java.lang.Object, android.content.ContentProvider$PipeDataWriter);
-    public android.content.res.AssetFileDescriptor openTypedAssetFile(android.net.Uri, java.lang.String, android.os.Bundle);
-    public android.content.res.AssetFileDescriptor openTypedAssetFile(android.net.Uri, java.lang.String, android.os.Bundle, android.os.CancellationSignal);
-    public abstract android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], android.os.Bundle, android.os.CancellationSignal);
-    public boolean refresh(android.net.Uri, android.os.Bundle, android.os.CancellationSignal);
-    public android.net.Uri rejectInsert(android.net.Uri, android.content.ContentValues);
-    public void setAppOps(int, int);
-    protected void setAuthorities(java.lang.String);
-    protected void setPathPermissions(android.content.pm.PathPermission[]);
-    protected void setReadPermission(java.lang.String);
-    protected void setWritePermission(java.lang.String);
-    public void shutdown();
-    public android.net.Uri uncanonicalize(android.net.Uri);
-    public abstract int update(android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]);
-    public static boolean uriHasUserId(android.net.Uri);
-
-
-}
-
--keep class android.content.ContentProvider$PipeDataWriter {
-
-    public abstract void writeDataToPipe(android.os.ParcelFileDescriptor, android.net.Uri, java.lang.String, android.os.Bundle, java.lang.Object);
-
-
-}
-
--keep class android.content.ContentProviderClient {
-    <init>(android.content.ContentResolver, android.content.IContentProvider, boolean);
-
-    public android.content.ContentProviderResult[] applyBatch(java.util.ArrayList);
-    public int bulkInsert(android.net.Uri, android.content.ContentValues[]);
-    public android.os.Bundle call(java.lang.String, java.lang.String, android.os.Bundle);
-    public android.net.Uri canonicalize(android.net.Uri);
-    public void close();
-    public int delete(android.net.Uri, java.lang.String, java.lang.String[]);
-    protected void finalize();
-    public android.content.ContentProvider getLocalContentProvider();
-    public java.lang.String[] getStreamTypes(android.net.Uri, java.lang.String);
-    public java.lang.String getType(android.net.Uri);
-    public android.net.Uri insert(android.net.Uri, android.content.ContentValues);
-    public android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, java.lang.String);
-    public android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, java.lang.String, android.os.CancellationSignal);
-    public android.os.ParcelFileDescriptor openFile(android.net.Uri, java.lang.String);
-    public android.os.ParcelFileDescriptor openFile(android.net.Uri, java.lang.String, android.os.CancellationSignal);
-    public android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(android.net.Uri, java.lang.String, android.os.Bundle);
-    public android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(android.net.Uri, java.lang.String, android.os.Bundle, android.os.CancellationSignal);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], android.os.Bundle, android.os.CancellationSignal);
-    public boolean refresh(android.net.Uri, android.os.Bundle, android.os.CancellationSignal);
-    public boolean release();
-    public static void releaseQuietly(android.content.ContentProviderClient);
-    public void setDetectNotResponding(long);
-    public android.net.Uri uncanonicalize(android.net.Uri);
-    public int update(android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]);
-
-
-}
-
--keep class android.content.ContentProviderOperation {
-    <init>(android.content.ContentProviderOperation, boolean);
-
-    public android.content.ContentProviderResult apply(android.content.ContentProvider, android.content.ContentProviderResult[], int);
-    public int describeContents();
-    public int getType();
-    public android.net.Uri getUri();
-    public android.content.ContentProviderOperation getWithoutUserIdInUri();
-    public boolean isAssertQuery();
-    public boolean isDelete();
-    public boolean isInsert();
-    public boolean isReadOperation();
-    public boolean isUpdate();
-    public boolean isWriteOperation();
-    public boolean isYieldAllowed();
-    public static android.content.ContentProviderOperation$Builder newAssertQuery(android.net.Uri);
-    public static android.content.ContentProviderOperation$Builder newDelete(android.net.Uri);
-    public static android.content.ContentProviderOperation$Builder newInsert(android.net.Uri);
-    public static android.content.ContentProviderOperation$Builder newUpdate(android.net.Uri);
-    public java.lang.String[] resolveSelectionArgsBackReferences(android.content.ContentProviderResult[], int);
-    public android.content.ContentValues resolveValueBackReferences(android.content.ContentProviderResult[], int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int TYPE_ASSERT;
-    public static int TYPE_DELETE;
-    public static int TYPE_INSERT;
-    public static int TYPE_UPDATE;
-}
-
--keep class android.content.ContentProviderOperation$Builder {
-
-    public android.content.ContentProviderOperation build();
-    public android.content.ContentProviderOperation$Builder withExpectedCount(int);
-    public android.content.ContentProviderOperation$Builder withSelection(java.lang.String, java.lang.String[]);
-    public android.content.ContentProviderOperation$Builder withSelectionBackReference(int, int);
-    public android.content.ContentProviderOperation$Builder withValue(java.lang.String, java.lang.Object);
-    public android.content.ContentProviderOperation$Builder withValueBackReference(java.lang.String, int);
-    public android.content.ContentProviderOperation$Builder withValueBackReferences(android.content.ContentValues);
-    public android.content.ContentProviderOperation$Builder withValues(android.content.ContentValues);
-    public android.content.ContentProviderOperation$Builder withYieldAllowed(boolean);
-
-
-}
-
--keep class android.content.ContentProviderResult {
-    <init>(android.net.Uri);
-    <init>(int);
-    <init>(android.os.Parcel);
-    <init>(android.content.ContentProviderResult, int);
-
-    public int describeContents();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.Integer count;
-    public android.net.Uri uri;
-}
-
--keep class android.content.ContentResolver {
-    <init>(android.content.Context);
-
-    public android.content.ContentProviderClient acquireContentProviderClient(android.net.Uri);
-    public android.content.ContentProviderClient acquireContentProviderClient(java.lang.String);
-    protected android.content.IContentProvider acquireExistingProvider(android.content.Context, java.lang.String);
-    public android.content.IContentProvider acquireExistingProvider(android.net.Uri);
-    protected abstract android.content.IContentProvider acquireProvider(android.content.Context, java.lang.String);
-    public android.content.IContentProvider acquireProvider(android.net.Uri);
-    public android.content.IContentProvider acquireProvider(java.lang.String);
-    public android.content.ContentProviderClient acquireUnstableContentProviderClient(android.net.Uri);
-    public android.content.ContentProviderClient acquireUnstableContentProviderClient(java.lang.String);
-    protected abstract android.content.IContentProvider acquireUnstableProvider(android.content.Context, java.lang.String);
-    public android.content.IContentProvider acquireUnstableProvider(android.net.Uri);
-    public android.content.IContentProvider acquireUnstableProvider(java.lang.String);
-    public static void addPeriodicSync(android.accounts.Account, java.lang.String, android.os.Bundle, long);
-    public static java.lang.Object addStatusChangeListener(int, android.content.SyncStatusObserver);
-    public void appNotRespondingViaProvider(android.content.IContentProvider);
-    public android.content.ContentProviderResult[] applyBatch(java.lang.String, java.util.ArrayList);
-    public int bulkInsert(android.net.Uri, android.content.ContentValues[]);
-    public android.os.Bundle call(android.net.Uri, java.lang.String, java.lang.String, android.os.Bundle);
-    public void cancelSync(android.net.Uri);
-    public static void cancelSync(android.accounts.Account, java.lang.String);
-    public static void cancelSync(android.content.SyncRequest);
-    public static void cancelSyncAsUser(android.accounts.Account, java.lang.String, int);
-    public android.net.Uri canonicalize(android.net.Uri);
-    public static android.os.Bundle createSqlQueryBundle(java.lang.String, java.lang.String[], java.lang.String);
-    public static java.lang.String createSqlSortClause(android.os.Bundle);
-    public int delete(android.net.Uri, java.lang.String, java.lang.String[]);
-    public android.os.Bundle getCache(android.net.Uri);
-    public static android.content.IContentService getContentService();
-    public static android.content.SyncInfo getCurrentSync();
-    public static java.util.List getCurrentSyncs();
-    public static java.util.List getCurrentSyncsAsUser(int);
-    public static int getIsSyncable(android.accounts.Account, java.lang.String);
-    public static int getIsSyncableAsUser(android.accounts.Account, java.lang.String, int);
-    public static boolean getMasterSyncAutomatically();
-    public static boolean getMasterSyncAutomaticallyAsUser(int);
-    public java.util.List getOutgoingPersistedUriPermissions();
-    public java.lang.String getPackageName();
-    public static java.util.List getPeriodicSyncs(android.accounts.Account, java.lang.String);
-    public java.util.List getPersistedUriPermissions();
-    public android.content.ContentResolver$OpenResourceIdResult getResourceId(android.net.Uri);
-    public java.lang.String[] getStreamTypes(android.net.Uri, java.lang.String);
-    public static java.lang.String[] getSyncAdapterPackagesForAuthorityAsUser(java.lang.String, int);
-    public static android.content.SyncAdapterType[] getSyncAdapterTypes();
-    public static android.content.SyncAdapterType[] getSyncAdapterTypesAsUser(int);
-    public static boolean getSyncAutomatically(android.accounts.Account, java.lang.String);
-    public static boolean getSyncAutomaticallyAsUser(android.accounts.Account, java.lang.String, int);
-    public static android.content.SyncStatusInfo getSyncStatus(android.accounts.Account, java.lang.String);
-    public static android.content.SyncStatusInfo getSyncStatusAsUser(android.accounts.Account, java.lang.String, int);
-    public int getTargetSdkVersion();
-    public java.lang.String getType(android.net.Uri);
-    public android.graphics.drawable.Drawable getTypeDrawable(java.lang.String);
-    public int getUserId();
-    public android.net.Uri insert(android.net.Uri, android.content.ContentValues);
-    public static boolean invalidPeriodicExtras(android.os.Bundle);
-    public static boolean isSyncActive(android.accounts.Account, java.lang.String);
-    public static boolean isSyncPending(android.accounts.Account, java.lang.String);
-    public static boolean isSyncPendingAsUser(android.accounts.Account, java.lang.String, int);
-    public void notifyChange(android.net.Uri, android.database.ContentObserver);
-    public void notifyChange(android.net.Uri, android.database.ContentObserver, boolean);
-    public void notifyChange(android.net.Uri, android.database.ContentObserver, int);
-    public void notifyChange(android.net.Uri, android.database.ContentObserver, boolean, int);
-    public void notifyChange(android.net.Uri, android.database.ContentObserver, int, int);
-    public android.content.res.AssetFileDescriptor openAssetFileDescriptor(android.net.Uri, java.lang.String);
-    public android.content.res.AssetFileDescriptor openAssetFileDescriptor(android.net.Uri, java.lang.String, android.os.CancellationSignal);
-    public android.os.ParcelFileDescriptor openFileDescriptor(android.net.Uri, java.lang.String);
-    public android.os.ParcelFileDescriptor openFileDescriptor(android.net.Uri, java.lang.String, android.os.CancellationSignal);
-    public java.io.InputStream openInputStream(android.net.Uri);
-    public java.io.OutputStream openOutputStream(android.net.Uri);
-    public java.io.OutputStream openOutputStream(android.net.Uri, java.lang.String);
-    public android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(android.net.Uri, java.lang.String, android.os.Bundle);
-    public android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(android.net.Uri, java.lang.String, android.os.Bundle, android.os.CancellationSignal);
-    public void putCache(android.net.Uri, android.os.Bundle);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal);
-    public android.database.Cursor query(android.net.Uri, java.lang.String[], android.os.Bundle, android.os.CancellationSignal);
-    public boolean refresh(android.net.Uri, android.os.Bundle, android.os.CancellationSignal);
-    public void registerContentObserver(android.net.Uri, boolean, android.database.ContentObserver);
-    public void registerContentObserver(android.net.Uri, boolean, android.database.ContentObserver, int);
-    public void releasePersistableUriPermission(android.net.Uri, int);
-    public abstract boolean releaseProvider(android.content.IContentProvider);
-    public abstract boolean releaseUnstableProvider(android.content.IContentProvider);
-    public static void removePeriodicSync(android.accounts.Account, java.lang.String, android.os.Bundle);
-    public static void removeStatusChangeListener(java.lang.Object);
-    public static void requestSync(android.accounts.Account, java.lang.String, android.os.Bundle);
-    public static void requestSync(android.content.SyncRequest);
-    public static void requestSyncAsUser(android.accounts.Account, java.lang.String, int, android.os.Bundle);
-    public int resolveUserId(android.net.Uri);
-    public static void setIsSyncable(android.accounts.Account, java.lang.String, int);
-    public static void setMasterSyncAutomatically(boolean);
-    public static void setMasterSyncAutomaticallyAsUser(boolean, int);
-    public static void setSyncAutomatically(android.accounts.Account, java.lang.String, boolean);
-    public static void setSyncAutomaticallyAsUser(android.accounts.Account, java.lang.String, boolean, int);
-    public void startSync(android.net.Uri, android.os.Bundle);
-    public static int syncErrorStringToInt(java.lang.String);
-    public static java.lang.String syncErrorToString(int);
-    public void takePersistableUriPermission(android.net.Uri, int);
-    public void takePersistableUriPermission(java.lang.String, android.net.Uri, int);
-    public android.net.Uri uncanonicalize(android.net.Uri);
-    public void unregisterContentObserver(android.database.ContentObserver);
-    public abstract void unstableProviderDied(android.content.IContentProvider);
-    public int update(android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]);
-    public static void validateSyncExtrasBundle(android.os.Bundle);
-
-
-    public static android.content.Intent ACTION_SYNC_CONN_STATUS_CHANGED;
-    public static java.lang.String ANY_CURSOR_ITEM_TYPE;
-    public static java.lang.String CONTENT_SERVICE_NAME;
-    public static java.lang.String CURSOR_DIR_BASE_TYPE;
-    public static java.lang.String CURSOR_ITEM_BASE_TYPE;
-    public static java.lang.String EXTRA_HONORED_ARGS;
-    public static java.lang.String EXTRA_REFRESH_SUPPORTED;
-    public static java.lang.String EXTRA_SIZE;
-    public static java.lang.String EXTRA_TOTAL_COUNT;
-    public static int NOTIFY_SKIP_NOTIFY_FOR_DESCENDANTS;
-    public static int NOTIFY_SYNC_TO_NETWORK;
-    public static java.lang.String QUERY_ARG_LIMIT;
-    public static java.lang.String QUERY_ARG_OFFSET;
-    public static java.lang.String QUERY_ARG_SORT_COLLATION;
-    public static java.lang.String QUERY_ARG_SORT_COLUMNS;
-    public static java.lang.String QUERY_ARG_SORT_DIRECTION;
-    public static java.lang.String QUERY_ARG_SQL_SELECTION;
-    public static java.lang.String QUERY_ARG_SQL_SELECTION_ARGS;
-    public static java.lang.String QUERY_ARG_SQL_SORT_ORDER;
-    public static int QUERY_SORT_DIRECTION_ASCENDING;
-    public static int QUERY_SORT_DIRECTION_DESCENDING;
-    public static java.lang.String SCHEME_ANDROID_RESOURCE;
-    public static java.lang.String SCHEME_CONTENT;
-    public static java.lang.String SCHEME_FILE;
-    public static int SYNC_ERROR_AUTHENTICATION;
-    public static int SYNC_ERROR_CONFLICT;
-    public static int SYNC_ERROR_INTERNAL;
-    public static int SYNC_ERROR_IO;
-    public static int SYNC_ERROR_PARSE;
-    public static int SYNC_ERROR_SYNC_ALREADY_IN_PROGRESS;
-    public static int SYNC_ERROR_TOO_MANY_DELETIONS;
-    public static int SYNC_ERROR_TOO_MANY_RETRIES;
-    public static int SYNC_EXEMPTION_NONE;
-    public static int SYNC_EXEMPTION_PROMOTE_BUCKET;
-    public static int SYNC_EXEMPTION_PROMOTE_BUCKET_WITH_TEMP;
-    public static java.lang.String SYNC_EXTRAS_ACCOUNT;
-    public static java.lang.String SYNC_EXTRAS_DISALLOW_METERED;
-    public static java.lang.String SYNC_EXTRAS_DISCARD_LOCAL_DELETIONS;
-    public static java.lang.String SYNC_EXTRAS_DO_NOT_RETRY;
-    public static java.lang.String SYNC_EXTRAS_EXPECTED_DOWNLOAD;
-    public static java.lang.String SYNC_EXTRAS_EXPECTED_UPLOAD;
-    public static java.lang.String SYNC_EXTRAS_EXPEDITED;
-    public static java.lang.String SYNC_EXTRAS_FORCE;
-    public static java.lang.String SYNC_EXTRAS_IGNORE_BACKOFF;
-    public static java.lang.String SYNC_EXTRAS_IGNORE_SETTINGS;
-    public static java.lang.String SYNC_EXTRAS_INITIALIZE;
-    public static java.lang.String SYNC_EXTRAS_MANUAL;
-    public static java.lang.String SYNC_EXTRAS_OVERRIDE_TOO_MANY_DELETIONS;
-    public static java.lang.String SYNC_EXTRAS_PRIORITY;
-    public static java.lang.String SYNC_EXTRAS_REQUIRE_CHARGING;
-    public static java.lang.String SYNC_EXTRAS_UPLOAD;
-    public static int SYNC_OBSERVER_TYPE_ACTIVE;
-    public static int SYNC_OBSERVER_TYPE_ALL;
-    public static int SYNC_OBSERVER_TYPE_PENDING;
-    public static int SYNC_OBSERVER_TYPE_SETTINGS;
-    public static int SYNC_OBSERVER_TYPE_STATUS;
-    public static java.lang.String SYNC_VIRTUAL_EXTRAS_EXEMPTION_FLAG;
-}
-
--keep class android.content.ContentResolver$OpenResourceIdResult {
-    <init>();
-
-
-
-    public int id;
-    public android.content.res.Resources r;
-}
-
--keep class android.content.ContentValues {
-    <init>();
-    <init>(int);
-    <init>(android.content.ContentValues);
-
-    public void clear();
-    public boolean containsKey(java.lang.String);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.Object get(java.lang.String);
-    public java.lang.Boolean getAsBoolean(java.lang.String);
-    public java.lang.Byte getAsByte(java.lang.String);
-    public byte[] getAsByteArray(java.lang.String);
-    public java.lang.Double getAsDouble(java.lang.String);
-    public java.lang.Float getAsFloat(java.lang.String);
-    public java.lang.Integer getAsInteger(java.lang.String);
-    public java.lang.Long getAsLong(java.lang.String);
-    public java.lang.Short getAsShort(java.lang.String);
-    public java.lang.String getAsString(java.lang.String);
-    public java.util.ArrayList getStringArrayList(java.lang.String);
-    public int hashCode();
-    public boolean isEmpty();
-    public java.util.Set keySet();
-    public void put(java.lang.String, java.lang.String);
-    public void put(java.lang.String, java.lang.Byte);
-    public void put(java.lang.String, java.lang.Short);
-    public void put(java.lang.String, java.lang.Integer);
-    public void put(java.lang.String, java.lang.Long);
-    public void put(java.lang.String, java.lang.Float);
-    public void put(java.lang.String, java.lang.Double);
-    public void put(java.lang.String, java.lang.Boolean);
-    public void put(java.lang.String, byte[]);
-    public void putAll(android.content.ContentValues);
-    public void putNull(java.lang.String);
-    public void putStringArrayList(java.lang.String, java.util.ArrayList);
-    public void remove(java.lang.String);
-    public int size();
-    public java.lang.String toString();
-    public java.util.Set valueSet();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String TAG;
-}
-
--keep class android.content.Context {
-    <init>();
-
-    public void assertRuntimeOverlayThemable();
-    public abstract boolean bindService(android.content.Intent, android.content.ServiceConnection, int);
-    public boolean bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle);
-    public boolean bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.Handler, android.os.UserHandle);
-    public abstract boolean canLoadUnsafeResources();
-    public boolean canStartActivityForResult();
-    public abstract int checkCallingOrSelfPermission(java.lang.String);
-    public abstract int checkCallingOrSelfUriPermission(android.net.Uri, int);
-    public abstract int checkCallingPermission(java.lang.String);
-    public abstract int checkCallingUriPermission(android.net.Uri, int);
-    public abstract int checkPermission(java.lang.String, int, int);
-    public abstract int checkPermission(java.lang.String, int, int, android.os.IBinder);
-    public abstract int checkSelfPermission(java.lang.String);
-    public abstract int checkUriPermission(android.net.Uri, int, int, int);
-    public abstract int checkUriPermission(android.net.Uri, int, int, int, android.os.IBinder);
-    public abstract int checkUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int);
-    public abstract void clearWallpaper();
-    public abstract android.content.Context createApplicationContext(android.content.pm.ApplicationInfo, int);
-    public abstract android.content.Context createConfigurationContext(android.content.res.Configuration);
-    public abstract android.content.Context createContextForSplit(java.lang.String);
-    public abstract android.content.Context createCredentialProtectedStorageContext();
-    public abstract android.content.Context createDeviceProtectedStorageContext();
-    public abstract android.content.Context createDisplayContext(android.view.Display);
-    public abstract android.content.Context createPackageContext(java.lang.String, int);
-    public android.content.Context createPackageContextAsUser(java.lang.String, int, android.os.UserHandle);
-    public abstract java.lang.String[] databaseList();
-    public abstract boolean deleteDatabase(java.lang.String);
-    public abstract boolean deleteFile(java.lang.String);
-    public abstract boolean deleteSharedPreferences(java.lang.String);
-    public abstract void enforceCallingOrSelfPermission(java.lang.String, java.lang.String);
-    public abstract void enforceCallingOrSelfUriPermission(android.net.Uri, int, java.lang.String);
-    public abstract void enforceCallingPermission(java.lang.String, java.lang.String);
-    public abstract void enforceCallingUriPermission(android.net.Uri, int, java.lang.String);
-    public abstract void enforcePermission(java.lang.String, int, int, java.lang.String);
-    public abstract void enforceUriPermission(android.net.Uri, int, int, int, java.lang.String);
-    public abstract void enforceUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int, java.lang.String);
-    public abstract java.lang.String[] fileList();
-    public android.os.IBinder getActivityToken();
-    public abstract android.content.Context getApplicationContext();
-    public abstract android.content.pm.ApplicationInfo getApplicationInfo();
-    public abstract android.content.res.AssetManager getAssets();
-    public android.view.autofill.AutofillManager$AutofillClient getAutofillClient();
-    public abstract java.lang.String getBasePackageName();
-    public abstract java.io.File getCacheDir();
-    public abstract java.lang.ClassLoader getClassLoader();
-    public abstract java.io.File getCodeCacheDir();
-    public int getColor(int);
-    public android.content.res.ColorStateList getColorStateList(int);
-    public abstract android.content.ContentResolver getContentResolver();
-    public abstract java.io.File getDataDir();
-    public abstract java.io.File getDatabasePath(java.lang.String);
-    public abstract java.io.File getDir(java.lang.String, int);
-    public abstract android.view.Display getDisplay();
-    public abstract android.view.DisplayAdjustments getDisplayAdjustments(int);
-    public android.graphics.drawable.Drawable getDrawable(int);
-    public abstract java.io.File getExternalCacheDir();
-    public abstract java.io.File[] getExternalCacheDirs();
-    public abstract java.io.File getExternalFilesDir(java.lang.String);
-    public abstract java.io.File[] getExternalFilesDirs(java.lang.String);
-    public abstract java.io.File[] getExternalMediaDirs();
-    public abstract java.io.File getFileStreamPath(java.lang.String);
-    public abstract java.io.File getFilesDir();
-    public android.app.IApplicationThread getIApplicationThread();
-    public java.util.concurrent.Executor getMainExecutor();
-    public abstract android.os.Looper getMainLooper();
-    public android.os.Handler getMainThreadHandler();
-    public int getNextAutofillId();
-    public abstract java.io.File getNoBackupFilesDir();
-    public abstract java.io.File getObbDir();
-    public abstract java.io.File[] getObbDirs();
-    public abstract java.lang.String getOpPackageName();
-    public abstract java.lang.String getPackageCodePath();
-    public abstract android.content.pm.PackageManager getPackageManager();
-    public abstract java.lang.String getPackageName();
-    public abstract java.lang.String getPackageResourcePath();
-    public abstract java.io.File getPreloadsFileCache();
-    public abstract android.content.res.Resources getResources();
-    public android.app.IServiceConnection getServiceDispatcher(android.content.ServiceConnection, android.os.Handler, int);
-    public abstract android.content.SharedPreferences getSharedPreferences(java.lang.String, int);
-    public abstract android.content.SharedPreferences getSharedPreferences(java.io.File, int);
-    public abstract java.io.File getSharedPreferencesPath(java.lang.String);
-    public java.io.File getSharedPrefsFile(java.lang.String);
-    public java.lang.String getString(int);
-    public java.lang.String getString(int, java.lang.Object[]);
-    public abstract java.lang.Object getSystemService(java.lang.String);
-    public java.lang.Object getSystemService(java.lang.Class);
-    public abstract java.lang.String getSystemServiceName(java.lang.Class);
-    public java.lang.CharSequence getText(int);
-    public abstract android.content.res.Resources$Theme getTheme();
-    public int getThemeResId();
-    public android.os.UserHandle getUser();
-    public int getUserId();
-    public abstract android.graphics.drawable.Drawable getWallpaper();
-    public abstract int getWallpaperDesiredMinimumHeight();
-    public abstract int getWallpaperDesiredMinimumWidth();
-    public abstract void grantUriPermission(java.lang.String, android.net.Uri, int);
-    public boolean isAutofillCompatibilityEnabled();
-    public abstract boolean isCredentialProtectedStorage();
-    public abstract boolean isDeviceProtectedStorage();
-    public boolean isRestricted();
-    public abstract boolean moveDatabaseFrom(android.content.Context, java.lang.String);
-    public abstract boolean moveSharedPreferencesFrom(android.content.Context, java.lang.String);
-    public android.content.res.TypedArray obtainStyledAttributes(int[]);
-    public android.content.res.TypedArray obtainStyledAttributes(int, int[]);
-    public android.content.res.TypedArray obtainStyledAttributes(android.util.AttributeSet, int[]);
-    public android.content.res.TypedArray obtainStyledAttributes(android.util.AttributeSet, int[], int, int);
-    public abstract java.io.FileInputStream openFileInput(java.lang.String);
-    public abstract java.io.FileOutputStream openFileOutput(java.lang.String, int);
-    public abstract android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public abstract android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CursorFactory, android.database.DatabaseErrorHandler);
-    public abstract android.graphics.drawable.Drawable peekWallpaper();
-    public void registerComponentCallbacks(android.content.ComponentCallbacks);
-    public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter);
-    public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, int);
-    public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler);
-    public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler, int);
-    public abstract android.content.Intent registerReceiverAsUser(android.content.BroadcastReceiver, android.os.UserHandle, android.content.IntentFilter, java.lang.String, android.os.Handler);
-    public abstract void reloadSharedPreferences();
-    public abstract void removeStickyBroadcast(android.content.Intent);
-    public abstract void removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public abstract void revokeUriPermission(android.net.Uri, int);
-    public abstract void revokeUriPermission(java.lang.String, android.net.Uri, int);
-    public abstract void sendBroadcast(android.content.Intent);
-    public abstract void sendBroadcast(android.content.Intent, java.lang.String);
-    public abstract void sendBroadcast(android.content.Intent, java.lang.String, android.os.Bundle);
-    public abstract void sendBroadcast(android.content.Intent, java.lang.String, int);
-    public abstract void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public abstract void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String);
-    public abstract void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.os.Bundle);
-    public abstract void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int);
-    public abstract void sendBroadcastAsUserMultiplePermissions(android.content.Intent, android.os.UserHandle, java.lang.String[]);
-    public abstract void sendBroadcastMultiplePermissions(android.content.Intent, java.lang.String[]);
-    public abstract void sendOrderedBroadcast(android.content.Intent, java.lang.String);
-    public abstract void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendOrderedBroadcast(android.content.Intent, java.lang.String, int, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendStickyBroadcast(android.content.Intent);
-    public abstract void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public abstract void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.os.Bundle);
-    public abstract void sendStickyOrderedBroadcast(android.content.Intent, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public abstract void sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void setAutofillClient(android.view.autofill.AutofillManager$AutofillClient);
-    public void setAutofillCompatibilityEnabled(boolean);
-    public abstract void setTheme(int);
-    public abstract void setWallpaper(android.graphics.Bitmap);
-    public abstract void setWallpaper(java.io.InputStream);
-    public abstract void startActivities(android.content.Intent[]);
-    public abstract void startActivities(android.content.Intent[], android.os.Bundle);
-    public int startActivitiesAsUser(android.content.Intent[], android.os.Bundle, android.os.UserHandle);
-    public abstract void startActivity(android.content.Intent);
-    public abstract void startActivity(android.content.Intent, android.os.Bundle);
-    public void startActivityAsUser(android.content.Intent, android.os.UserHandle);
-    public void startActivityAsUser(android.content.Intent, android.os.Bundle, android.os.UserHandle);
-    public void startActivityForResult(java.lang.String, android.content.Intent, int, android.os.Bundle);
-    public abstract android.content.ComponentName startForegroundService(android.content.Intent);
-    public abstract android.content.ComponentName startForegroundServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public abstract boolean startInstrumentation(android.content.ComponentName, java.lang.String, android.os.Bundle);
-    public abstract void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int);
-    public abstract void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle);
-    public abstract android.content.ComponentName startService(android.content.Intent);
-    public abstract android.content.ComponentName startServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public abstract boolean stopService(android.content.Intent);
-    public abstract boolean stopServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public abstract void unbindService(android.content.ServiceConnection);
-    public void unregisterComponentCallbacks(android.content.ComponentCallbacks);
-    public abstract void unregisterReceiver(android.content.BroadcastReceiver);
-    public abstract void updateDisplay(int);
-
-
-    public static java.lang.String ACCESSIBILITY_SERVICE;
-    public static java.lang.String ACCOUNT_SERVICE;
-    public static java.lang.String ACTIVITY_SERVICE;
-    public static java.lang.String ALARM_SERVICE;
-    public static java.lang.String APPWIDGET_SERVICE;
-    public static java.lang.String APP_OPS_SERVICE;
-    public static java.lang.String AUDIO_SERVICE;
-    public static java.lang.String AUTOFILL_MANAGER_SERVICE;
-    public static java.lang.String BACKUP_SERVICE;
-    public static java.lang.String BATTERY_SERVICE;
-    public static int BIND_ABOVE_CLIENT;
-    public static int BIND_ADJUST_WITH_ACTIVITY;
-    public static int BIND_ALLOW_INSTANT;
-    public static int BIND_ALLOW_OOM_MANAGEMENT;
-    public static int BIND_ALLOW_WHITELIST_MANAGEMENT;
-    public static int BIND_AUTO_CREATE;
-    public static int BIND_DEBUG_UNBIND;
-    public static int BIND_EXTERNAL_SERVICE;
-    public static int BIND_FOREGROUND_SERVICE;
-    public static int BIND_FOREGROUND_SERVICE_WHILE_AWAKE;
-    public static int BIND_IMPORTANT;
-    public static int BIND_IMPORTANT_BACKGROUND;
-    public static int BIND_NOT_FOREGROUND;
-    public static int BIND_NOT_VISIBLE;
-    public static int BIND_SHOWING_UI;
-    public static int BIND_TREAT_LIKE_ACTIVITY;
-    public static int BIND_VISIBLE;
-    public static int BIND_WAIVE_PRIORITY;
-    public static java.lang.String BLUETOOTH_SERVICE;
-    public static java.lang.String CAMERA_SERVICE;
-    public static java.lang.String CAPTIONING_SERVICE;
-    public static java.lang.String CARRIER_CONFIG_SERVICE;
-    public static java.lang.String CLIPBOARD_SERVICE;
-    public static java.lang.String COMPANION_DEVICE_SERVICE;
-    public static java.lang.String CONNECTIVITY_SERVICE;
-    public static java.lang.String CONSUMER_IR_SERVICE;
-    public static java.lang.String CONTEXTHUB_SERVICE;
-    public static int CONTEXT_CREDENTIAL_PROTECTED_STORAGE;
-    public static int CONTEXT_DEVICE_PROTECTED_STORAGE;
-    public static int CONTEXT_IGNORE_SECURITY;
-    public static int CONTEXT_INCLUDE_CODE;
-    public static int CONTEXT_REGISTER_PACKAGE;
-    public static int CONTEXT_RESTRICTED;
-    public static java.lang.String COUNTRY_DETECTOR;
-    public static java.lang.String CROSS_PROFILE_APPS_SERVICE;
-    public static java.lang.String DEVICE_IDENTIFIERS_SERVICE;
-    public static java.lang.String DEVICE_IDLE_CONTROLLER;
-    public static java.lang.String DEVICE_POLICY_SERVICE;
-    public static java.lang.String DISPLAY_SERVICE;
-    public static java.lang.String DOWNLOAD_SERVICE;
-    public static java.lang.String DROPBOX_SERVICE;
-    public static java.lang.String ETHERNET_SERVICE;
-    public static java.lang.String EUICC_CARD_SERVICE;
-    public static java.lang.String EUICC_SERVICE;
-    public static java.lang.String FINGERPRINT_SERVICE;
-    public static java.lang.String GATEKEEPER_SERVICE;
-    public static java.lang.String HARDWARE_PROPERTIES_SERVICE;
-    public static java.lang.String HDMI_CONTROL_SERVICE;
-    public static java.lang.String INCIDENT_SERVICE;
-    public static java.lang.String INPUT_METHOD_SERVICE;
-    public static java.lang.String INPUT_SERVICE;
-    public static java.lang.String IPSEC_SERVICE;
-    public static java.lang.String JOB_SCHEDULER_SERVICE;
-    public static java.lang.String KEYGUARD_SERVICE;
-    public static java.lang.String LAUNCHER_APPS_SERVICE;
-    public static java.lang.String LAYOUT_INFLATER_SERVICE;
-    public static java.lang.String LOCATION_SERVICE;
-    public static java.lang.String LOWPAN_SERVICE;
-    public static java.lang.String MEDIA_PROJECTION_SERVICE;
-    public static java.lang.String MEDIA_ROUTER_SERVICE;
-    public static java.lang.String MEDIA_SESSION_SERVICE;
-    public static java.lang.String MIDI_SERVICE;
-    public static int MODE_APPEND;
-    public static int MODE_ENABLE_WRITE_AHEAD_LOGGING;
-    public static int MODE_MULTI_PROCESS;
-    public static int MODE_NO_LOCALIZED_COLLATORS;
-    public static int MODE_PRIVATE;
-    public static int MODE_WORLD_READABLE;
-    public static int MODE_WORLD_WRITEABLE;
-    public static java.lang.String NETWORKMANAGEMENT_SERVICE;
-    public static java.lang.String NETWORK_POLICY_SERVICE;
-    public static java.lang.String NETWORK_SCORE_SERVICE;
-    public static java.lang.String NETWORK_STATS_SERVICE;
-    public static java.lang.String NETWORK_WATCHLIST_SERVICE;
-    public static java.lang.String NFC_SERVICE;
-    public static java.lang.String NOTIFICATION_SERVICE;
-    public static java.lang.String NSD_SERVICE;
-    public static java.lang.String OEM_LOCK_SERVICE;
-    public static java.lang.String OVERLAY_SERVICE;
-    public static java.lang.String PERSISTENT_DATA_BLOCK_SERVICE;
-    public static java.lang.String POWER_SERVICE;
-    public static java.lang.String PRINT_SERVICE;
-    public static java.lang.String RADIO_SERVICE;
-    public static int RECEIVER_VISIBLE_TO_INSTANT_APPS;
-    public static java.lang.String RECOVERY_SERVICE;
-    public static java.lang.String RESTRICTIONS_SERVICE;
-    public static java.lang.String SEARCH_SERVICE;
-    public static java.lang.String SECURE_ELEMENT_SERVICE;
-    public static java.lang.String SENSOR_SERVICE;
-    public static java.lang.String SERIAL_SERVICE;
-    public static java.lang.String SHORTCUT_SERVICE;
-    public static java.lang.String SIP_SERVICE;
-    public static java.lang.String SLICE_SERVICE;
-    public static java.lang.String SOUND_TRIGGER_SERVICE;
-    public static java.lang.String STATS_COMPANION_SERVICE;
-    public static java.lang.String STATS_MANAGER;
-    public static java.lang.String STATUS_BAR_SERVICE;
-    public static java.lang.String STORAGE_SERVICE;
-    public static java.lang.String STORAGE_STATS_SERVICE;
-    public static java.lang.String SYSTEM_HEALTH_SERVICE;
-    public static java.lang.String SYSTEM_UPDATE_SERVICE;
-    public static java.lang.String TELECOM_SERVICE;
-    public static java.lang.String TELEPHONY_SERVICE;
-    public static java.lang.String TELEPHONY_SUBSCRIPTION_SERVICE;
-    public static java.lang.String TEXT_CLASSIFICATION_SERVICE;
-    public static java.lang.String TEXT_SERVICES_MANAGER_SERVICE;
-    public static java.lang.String TIME_ZONE_RULES_MANAGER_SERVICE;
-    public static java.lang.String TRUST_SERVICE;
-    public static java.lang.String TV_INPUT_SERVICE;
-    public static java.lang.String UI_MODE_SERVICE;
-    public static java.lang.String UPDATE_LOCK_SERVICE;
-    public static java.lang.String USAGE_STATS_SERVICE;
-    public static java.lang.String USB_SERVICE;
-    public static java.lang.String USER_SERVICE;
-    public static java.lang.String VIBRATOR_SERVICE;
-    public static java.lang.String VOICE_INTERACTION_MANAGER_SERVICE;
-    public static java.lang.String VR_SERVICE;
-    public static java.lang.String WALLPAPER_SERVICE;
-    public static java.lang.String WIFI_AWARE_SERVICE;
-    public static java.lang.String WIFI_P2P_SERVICE;
-    public static java.lang.String WIFI_RTT_RANGING_SERVICE;
-    public static java.lang.String WIFI_RTT_SERVICE;
-    public static java.lang.String WIFI_SCANNING_SERVICE;
-    public static java.lang.String WIFI_SERVICE;
-    public static java.lang.String WINDOW_SERVICE;
-}
-
--keep class android.content.ContextWrapper {
-    <init>(android.content.Context);
-
-    protected void attachBaseContext(android.content.Context);
-    public boolean bindService(android.content.Intent, android.content.ServiceConnection, int);
-    public boolean bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle);
-    public boolean bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.Handler, android.os.UserHandle);
-    public boolean canLoadUnsafeResources();
-    public boolean canStartActivityForResult();
-    public int checkCallingOrSelfPermission(java.lang.String);
-    public int checkCallingOrSelfUriPermission(android.net.Uri, int);
-    public int checkCallingPermission(java.lang.String);
-    public int checkCallingUriPermission(android.net.Uri, int);
-    public int checkPermission(java.lang.String, int, int);
-    public int checkPermission(java.lang.String, int, int, android.os.IBinder);
-    public int checkSelfPermission(java.lang.String);
-    public int checkUriPermission(android.net.Uri, int, int, int);
-    public int checkUriPermission(android.net.Uri, int, int, int, android.os.IBinder);
-    public int checkUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int);
-    public void clearWallpaper();
-    public android.content.Context createApplicationContext(android.content.pm.ApplicationInfo, int);
-    public android.content.Context createConfigurationContext(android.content.res.Configuration);
-    public android.content.Context createContextForSplit(java.lang.String);
-    public android.content.Context createCredentialProtectedStorageContext();
-    public android.content.Context createDeviceProtectedStorageContext();
-    public android.content.Context createDisplayContext(android.view.Display);
-    public android.content.Context createPackageContext(java.lang.String, int);
-    public android.content.Context createPackageContextAsUser(java.lang.String, int, android.os.UserHandle);
-    public java.lang.String[] databaseList();
-    public boolean deleteDatabase(java.lang.String);
-    public boolean deleteFile(java.lang.String);
-    public boolean deleteSharedPreferences(java.lang.String);
-    public void enforceCallingOrSelfPermission(java.lang.String, java.lang.String);
-    public void enforceCallingOrSelfUriPermission(android.net.Uri, int, java.lang.String);
-    public void enforceCallingPermission(java.lang.String, java.lang.String);
-    public void enforceCallingUriPermission(android.net.Uri, int, java.lang.String);
-    public void enforcePermission(java.lang.String, int, int, java.lang.String);
-    public void enforceUriPermission(android.net.Uri, int, int, int, java.lang.String);
-    public void enforceUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int, java.lang.String);
-    public java.lang.String[] fileList();
-    public android.os.IBinder getActivityToken();
-    public android.content.Context getApplicationContext();
-    public android.content.pm.ApplicationInfo getApplicationInfo();
-    public android.content.res.AssetManager getAssets();
-    public android.view.autofill.AutofillManager$AutofillClient getAutofillClient();
-    public android.content.Context getBaseContext();
-    public java.lang.String getBasePackageName();
-    public java.io.File getCacheDir();
-    public java.lang.ClassLoader getClassLoader();
-    public java.io.File getCodeCacheDir();
-    public android.content.ContentResolver getContentResolver();
-    public java.io.File getDataDir();
-    public java.io.File getDatabasePath(java.lang.String);
-    public java.io.File getDir(java.lang.String, int);
-    public android.view.Display getDisplay();
-    public android.view.DisplayAdjustments getDisplayAdjustments(int);
-    public java.io.File getExternalCacheDir();
-    public java.io.File[] getExternalCacheDirs();
-    public java.io.File getExternalFilesDir(java.lang.String);
-    public java.io.File[] getExternalFilesDirs(java.lang.String);
-    public java.io.File[] getExternalMediaDirs();
-    public java.io.File getFileStreamPath(java.lang.String);
-    public java.io.File getFilesDir();
-    public android.app.IApplicationThread getIApplicationThread();
-    public java.util.concurrent.Executor getMainExecutor();
-    public android.os.Looper getMainLooper();
-    public android.os.Handler getMainThreadHandler();
-    public int getNextAutofillId();
-    public java.io.File getNoBackupFilesDir();
-    public java.io.File getObbDir();
-    public java.io.File[] getObbDirs();
-    public java.lang.String getOpPackageName();
-    public java.lang.String getPackageCodePath();
-    public android.content.pm.PackageManager getPackageManager();
-    public java.lang.String getPackageName();
-    public java.lang.String getPackageResourcePath();
-    public java.io.File getPreloadsFileCache();
-    public android.content.res.Resources getResources();
-    public android.app.IServiceConnection getServiceDispatcher(android.content.ServiceConnection, android.os.Handler, int);
-    public android.content.SharedPreferences getSharedPreferences(java.lang.String, int);
-    public android.content.SharedPreferences getSharedPreferences(java.io.File, int);
-    public java.io.File getSharedPreferencesPath(java.lang.String);
-    public java.lang.Object getSystemService(java.lang.String);
-    public java.lang.String getSystemServiceName(java.lang.Class);
-    public android.content.res.Resources$Theme getTheme();
-    public int getThemeResId();
-    public int getUserId();
-    public android.graphics.drawable.Drawable getWallpaper();
-    public int getWallpaperDesiredMinimumHeight();
-    public int getWallpaperDesiredMinimumWidth();
-    public void grantUriPermission(java.lang.String, android.net.Uri, int);
-    public boolean isAutofillCompatibilityEnabled();
-    public boolean isCredentialProtectedStorage();
-    public boolean isDeviceProtectedStorage();
-    public boolean isRestricted();
-    public boolean moveDatabaseFrom(android.content.Context, java.lang.String);
-    public boolean moveSharedPreferencesFrom(android.content.Context, java.lang.String);
-    public java.io.FileInputStream openFileInput(java.lang.String);
-    public java.io.FileOutputStream openFileOutput(java.lang.String, int);
-    public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CursorFactory, android.database.DatabaseErrorHandler);
-    public android.graphics.drawable.Drawable peekWallpaper();
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter);
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, int);
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler);
-    public android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler, int);
-    public android.content.Intent registerReceiverAsUser(android.content.BroadcastReceiver, android.os.UserHandle, android.content.IntentFilter, java.lang.String, android.os.Handler);
-    public void reloadSharedPreferences();
-    public void removeStickyBroadcast(android.content.Intent);
-    public void removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public void revokeUriPermission(android.net.Uri, int);
-    public void revokeUriPermission(java.lang.String, android.net.Uri, int);
-    public void sendBroadcast(android.content.Intent);
-    public void sendBroadcast(android.content.Intent, java.lang.String);
-    public void sendBroadcast(android.content.Intent, java.lang.String, android.os.Bundle);
-    public void sendBroadcast(android.content.Intent, java.lang.String, int);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.os.Bundle);
-    public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int);
-    public void sendBroadcastAsUserMultiplePermissions(android.content.Intent, android.os.UserHandle, java.lang.String[]);
-    public void sendBroadcastMultiplePermissions(android.content.Intent, java.lang.String[]);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcast(android.content.Intent, java.lang.String, int, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, int, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendStickyBroadcast(android.content.Intent);
-    public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle);
-    public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.os.Bundle);
-    public void sendStickyOrderedBroadcast(android.content.Intent, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle);
-    public void setAutofillClient(android.view.autofill.AutofillManager$AutofillClient);
-    public void setAutofillCompatibilityEnabled(boolean);
-    public void setTheme(int);
-    public void setWallpaper(android.graphics.Bitmap);
-    public void setWallpaper(java.io.InputStream);
-    public void startActivities(android.content.Intent[]);
-    public void startActivities(android.content.Intent[], android.os.Bundle);
-    public int startActivitiesAsUser(android.content.Intent[], android.os.Bundle, android.os.UserHandle);
-    public void startActivity(android.content.Intent);
-    public void startActivity(android.content.Intent, android.os.Bundle);
-    public void startActivityAsUser(android.content.Intent, android.os.UserHandle);
-    public void startActivityAsUser(android.content.Intent, android.os.Bundle, android.os.UserHandle);
-    public void startActivityForResult(java.lang.String, android.content.Intent, int, android.os.Bundle);
-    public android.content.ComponentName startForegroundService(android.content.Intent);
-    public android.content.ComponentName startForegroundServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public boolean startInstrumentation(android.content.ComponentName, java.lang.String, android.os.Bundle);
-    public void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int);
-    public void startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle);
-    public android.content.ComponentName startService(android.content.Intent);
-    public android.content.ComponentName startServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public boolean stopService(android.content.Intent);
-    public boolean stopServiceAsUser(android.content.Intent, android.os.UserHandle);
-    public void unbindService(android.content.ServiceConnection);
-    public void unregisterReceiver(android.content.BroadcastReceiver);
-    public void updateDisplay(int);
-
-
-}
-
--keep class android.content.DialogInterface {
-
-    public abstract void cancel();
-    public abstract void dismiss();
-
-
-    public static int BUTTON1;
-    public static int BUTTON2;
-    public static int BUTTON3;
-    public static int BUTTON_NEGATIVE;
-    public static int BUTTON_NEUTRAL;
-    public static int BUTTON_POSITIVE;
-}
-
--keep class android.content.DialogInterface$OnCancelListener {
-
-    public abstract void onCancel(android.content.DialogInterface);
-
-
-}
-
--keep class android.content.DialogInterface$OnDismissListener {
-
-    public abstract void onDismiss(android.content.DialogInterface);
-
-
-}
-
--keep class android.content.DialogInterface$OnKeyListener {
-
-    public abstract boolean onKey(android.content.DialogInterface, int, android.view.KeyEvent);
-
-
-}
-
--keep class android.content.DialogInterface$OnShowListener {
-
-    public abstract void onShow(android.content.DialogInterface);
-
-
-}
-
--keep class android.content.IContentProvider {
-
-    public abstract android.content.ContentProviderResult[] applyBatch(java.lang.String, java.util.ArrayList);
-    public abstract int bulkInsert(java.lang.String, android.net.Uri, android.content.ContentValues[]);
-    public abstract android.os.Bundle call(java.lang.String, java.lang.String, java.lang.String, android.os.Bundle);
-    public abstract android.net.Uri canonicalize(java.lang.String, android.net.Uri);
-    public abstract android.os.ICancellationSignal createCancellationSignal();
-    public abstract int delete(java.lang.String, android.net.Uri, java.lang.String, java.lang.String[]);
-    public abstract java.lang.String[] getStreamTypes(android.net.Uri, java.lang.String);
-    public abstract java.lang.String getType(android.net.Uri);
-    public abstract android.net.Uri insert(java.lang.String, android.net.Uri, android.content.ContentValues);
-    public abstract android.content.res.AssetFileDescriptor openAssetFile(java.lang.String, android.net.Uri, java.lang.String, android.os.ICancellationSignal);
-    public abstract android.os.ParcelFileDescriptor openFile(java.lang.String, android.net.Uri, java.lang.String, android.os.ICancellationSignal, android.os.IBinder);
-    public abstract android.content.res.AssetFileDescriptor openTypedAssetFile(java.lang.String, android.net.Uri, java.lang.String, android.os.Bundle, android.os.ICancellationSignal);
-    public abstract android.database.Cursor query(java.lang.String, android.net.Uri, java.lang.String[], android.os.Bundle, android.os.ICancellationSignal);
-    public abstract boolean refresh(java.lang.String, android.net.Uri, android.os.Bundle, android.os.ICancellationSignal);
-    public abstract android.net.Uri uncanonicalize(java.lang.String, android.net.Uri);
-    public abstract int update(java.lang.String, android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]);
-
-
-    public static int APPLY_BATCH_TRANSACTION;
-    public static int BULK_INSERT_TRANSACTION;
-    public static int CALL_TRANSACTION;
-    public static int CANONICALIZE_TRANSACTION;
-    public static int CREATE_CANCELATION_SIGNAL_TRANSACTION;
-    public static int DELETE_TRANSACTION;
-    public static int GET_STREAM_TYPES_TRANSACTION;
-    public static int GET_TYPE_TRANSACTION;
-    public static int INSERT_TRANSACTION;
-    public static int OPEN_ASSET_FILE_TRANSACTION;
-    public static int OPEN_FILE_TRANSACTION;
-    public static int OPEN_TYPED_ASSET_FILE_TRANSACTION;
-    public static int QUERY_TRANSACTION;
-    public static int REFRESH_TRANSACTION;
-    public static int UNCANONICALIZE_TRANSACTION;
-    public static int UPDATE_TRANSACTION;
-    public static java.lang.String descriptor;
-}
-
--keep class android.content.IContentService {
-
-    public abstract void addPeriodicSync(android.accounts.Account, java.lang.String, android.os.Bundle, long);
-    public abstract void addStatusChangeListener(int, android.content.ISyncStatusObserver);
-    public abstract void cancelRequest(android.content.SyncRequest);
-    public abstract void cancelSync(android.accounts.Account, java.lang.String, android.content.ComponentName);
-    public abstract void cancelSyncAsUser(android.accounts.Account, java.lang.String, android.content.ComponentName, int);
-    public abstract android.os.Bundle getCache(java.lang.String, android.net.Uri, int);
-    public abstract java.util.List getCurrentSyncs();
-    public abstract java.util.List getCurrentSyncsAsUser(int);
-    public abstract int getIsSyncable(android.accounts.Account, java.lang.String);
-    public abstract int getIsSyncableAsUser(android.accounts.Account, java.lang.String, int);
-    public abstract boolean getMasterSyncAutomatically();
-    public abstract boolean getMasterSyncAutomaticallyAsUser(int);
-    public abstract java.util.List getPeriodicSyncs(android.accounts.Account, java.lang.String, android.content.ComponentName);
-    public abstract java.lang.String[] getSyncAdapterPackagesForAuthorityAsUser(java.lang.String, int);
-    public abstract android.content.SyncAdapterType[] getSyncAdapterTypes();
-    public abstract android.content.SyncAdapterType[] getSyncAdapterTypesAsUser(int);
-    public abstract boolean getSyncAutomatically(android.accounts.Account, java.lang.String);
-    public abstract boolean getSyncAutomaticallyAsUser(android.accounts.Account, java.lang.String, int);
-    public abstract android.content.SyncStatusInfo getSyncStatus(android.accounts.Account, java.lang.String, android.content.ComponentName);
-    public abstract android.content.SyncStatusInfo getSyncStatusAsUser(android.accounts.Account, java.lang.String, android.content.ComponentName, int);
-    public abstract boolean isSyncActive(android.accounts.Account, java.lang.String, android.content.ComponentName);
-    public abstract boolean isSyncPending(android.accounts.Account, java.lang.String, android.content.ComponentName);
-    public abstract boolean isSyncPendingAsUser(android.accounts.Account, java.lang.String, android.content.ComponentName, int);
-    public abstract void notifyChange(android.net.Uri, android.database.IContentObserver, boolean, int, int, int);
-    public abstract void putCache(java.lang.String, android.net.Uri, android.os.Bundle, int);
-    public abstract void registerContentObserver(android.net.Uri, boolean, android.database.IContentObserver, int, int);
-    public abstract void removePeriodicSync(android.accounts.Account, java.lang.String, android.os.Bundle);
-    public abstract void removeStatusChangeListener(android.content.ISyncStatusObserver);
-    public abstract void requestSync(android.accounts.Account, java.lang.String, android.os.Bundle);
-    public abstract void resetTodayStats();
-    public abstract void setIsSyncable(android.accounts.Account, java.lang.String, int);
-    public abstract void setMasterSyncAutomatically(boolean);
-    public abstract void setMasterSyncAutomaticallyAsUser(boolean, int);
-    public abstract void setSyncAutomatically(android.accounts.Account, java.lang.String, boolean);
-    public abstract void setSyncAutomaticallyAsUser(android.accounts.Account, java.lang.String, boolean, int);
-    public abstract void sync(android.content.SyncRequest);
-    public abstract void syncAsUser(android.content.SyncRequest, int);
-    public abstract void unregisterContentObserver(android.database.IContentObserver);
-
-
-}
-
--keep class android.content.IIntentReceiver {
-
-    public abstract void performReceive(android.content.Intent, int, java.lang.String, android.os.Bundle, boolean, boolean, int);
-
-
-}
-
--keep class android.content.IIntentSender {
-
-    public abstract void send(int, android.content.Intent, java.lang.String, android.os.IBinder, android.content.IIntentReceiver, java.lang.String, android.os.Bundle);
-
-
-}
-
--keep class android.content.ISyncStatusObserver {
-
-    public abstract void onStatusChanged(int);
-
-
-}
-
--keep class android.content.Intent {
-    <init>();
-    <init>(android.content.Intent);
-    <init>(java.lang.String);
-    <init>(java.lang.String, android.net.Uri);
-    <init>(android.content.Context, java.lang.Class);
-    <init>(java.lang.String, android.net.Uri, android.content.Context, java.lang.Class);
-    <init>(android.os.Parcel);
-
-    public android.content.Intent addCategory(java.lang.String);
-    public android.content.Intent addFlags(int);
-    public boolean canStripForHistory();
-    public java.lang.Object clone();
-    public android.content.Intent cloneFilter();
-    public static android.content.Intent createChooser(android.content.Intent, java.lang.CharSequence);
-    public static android.content.Intent createChooser(android.content.Intent, java.lang.CharSequence, android.content.IntentSender);
-    public int describeContents();
-    public static java.lang.String dockStateToString(int);
-    public int fillIn(android.content.Intent, int);
-    public boolean filterEquals(android.content.Intent);
-    public int filterHashCode();
-    public void fixUris(int);
-    public java.lang.String getAction();
-    public boolean[] getBooleanArrayExtra(java.lang.String);
-    public boolean getBooleanExtra(java.lang.String, boolean);
-    public android.os.Bundle getBundleExtra(java.lang.String);
-    public byte[] getByteArrayExtra(java.lang.String);
-    public byte getByteExtra(java.lang.String, byte);
-    public java.util.Set getCategories();
-    public char[] getCharArrayExtra(java.lang.String);
-    public char getCharExtra(java.lang.String, char);
-    public java.lang.CharSequence[] getCharSequenceArrayExtra(java.lang.String);
-    public java.util.ArrayList getCharSequenceArrayListExtra(java.lang.String);
-    public java.lang.CharSequence getCharSequenceExtra(java.lang.String);
-    public android.content.ClipData getClipData();
-    public android.content.ComponentName getComponent();
-    public int getContentUserHint();
-    public android.net.Uri getData();
-    public java.lang.String getDataString();
-    public double[] getDoubleArrayExtra(java.lang.String);
-    public double getDoubleExtra(java.lang.String, double);
-    public java.lang.Object getExtra(java.lang.String);
-    public java.lang.Object getExtra(java.lang.String, java.lang.Object);
-    public android.os.Bundle getExtras();
-    public int getFlags();
-    public float[] getFloatArrayExtra(java.lang.String);
-    public float getFloatExtra(java.lang.String, float);
-    public android.os.IBinder getIBinderExtra(java.lang.String);
-    public int[] getIntArrayExtra(java.lang.String);
-    public int getIntExtra(java.lang.String, int);
-    public java.util.ArrayList getIntegerArrayListExtra(java.lang.String);
-    public static android.content.Intent getIntent(java.lang.String);
-    public static android.content.Intent getIntentOld(java.lang.String);
-    public java.lang.String getLaunchToken();
-    public long[] getLongArrayExtra(java.lang.String);
-    public long getLongExtra(java.lang.String, long);
-    public java.lang.String getPackage();
-    public android.os.Parcelable[] getParcelableArrayExtra(java.lang.String);
-    public java.util.ArrayList getParcelableArrayListExtra(java.lang.String);
-    public android.os.Parcelable getParcelableExtra(java.lang.String);
-    public java.lang.String getScheme();
-    public android.content.Intent getSelector();
-    public java.io.Serializable getSerializableExtra(java.lang.String);
-    public short[] getShortArrayExtra(java.lang.String);
-    public short getShortExtra(java.lang.String, short);
-    public android.graphics.Rect getSourceBounds();
-    public java.lang.String[] getStringArrayExtra(java.lang.String);
-    public java.util.ArrayList getStringArrayListExtra(java.lang.String);
-    public java.lang.String getStringExtra(java.lang.String);
-    public java.lang.String getType();
-    public boolean hasCategory(java.lang.String);
-    public boolean hasExtra(java.lang.String);
-    public boolean hasFileDescriptors();
-    public boolean hasWebURI();
-    public static boolean isAccessUriMode(int);
-    public boolean isDocument();
-    public boolean isExcludingStopped();
-    public boolean isWebIntent();
-    public static android.content.Intent makeMainActivity(android.content.ComponentName);
-    public static android.content.Intent makeMainSelectorActivity(java.lang.String, java.lang.String);
-    public static android.content.Intent makeRestartActivityTask(android.content.ComponentName);
-    public android.content.Intent maybeStripForHistory();
-    public boolean migrateExtraStreamToClipData();
-    public static java.lang.String normalizeMimeType(java.lang.String);
-    public static android.content.Intent parseCommandArgs(android.os.ShellCommand, android.content.Intent$CommandOptionHandler);
-    public static android.content.Intent parseIntent(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet);
-    public static android.content.Intent parseUri(java.lang.String, int);
-    public void prepareToEnterProcess();
-    public void prepareToLeaveProcess(android.content.Context);
-    public void prepareToLeaveProcess(boolean);
-    public void prepareToLeaveUser(int);
-    public static void printIntentArgsHelp(java.io.PrintWriter, java.lang.String);
-    public android.content.Intent putCharSequenceArrayListExtra(java.lang.String, java.util.ArrayList);
-    public android.content.Intent putExtra(java.lang.String, boolean);
-    public android.content.Intent putExtra(java.lang.String, byte);
-    public android.content.Intent putExtra(java.lang.String, char);
-    public android.content.Intent putExtra(java.lang.String, short);
-    public android.content.Intent putExtra(java.lang.String, int);
-    public android.content.Intent putExtra(java.lang.String, long);
-    public android.content.Intent putExtra(java.lang.String, float);
-    public android.content.Intent putExtra(java.lang.String, double);
-    public android.content.Intent putExtra(java.lang.String, java.lang.String);
-    public android.content.Intent putExtra(java.lang.String, java.lang.CharSequence);
-    public android.content.Intent putExtra(java.lang.String, android.os.Parcelable);
-    public android.content.Intent putExtra(java.lang.String, android.os.Parcelable[]);
-    public android.content.Intent putExtra(java.lang.String, java.io.Serializable);
-    public android.content.Intent putExtra(java.lang.String, boolean[]);
-    public android.content.Intent putExtra(java.lang.String, byte[]);
-    public android.content.Intent putExtra(java.lang.String, short[]);
-    public android.content.Intent putExtra(java.lang.String, char[]);
-    public android.content.Intent putExtra(java.lang.String, int[]);
-    public android.content.Intent putExtra(java.lang.String, long[]);
-    public android.content.Intent putExtra(java.lang.String, float[]);
-    public android.content.Intent putExtra(java.lang.String, double[]);
-    public android.content.Intent putExtra(java.lang.String, java.lang.String[]);
-    public android.content.Intent putExtra(java.lang.String, java.lang.CharSequence[]);
-    public android.content.Intent putExtra(java.lang.String, android.os.Bundle);
-    public android.content.Intent putExtra(java.lang.String, android.os.IBinder);
-    public android.content.Intent putExtras(android.content.Intent);
-    public android.content.Intent putExtras(android.os.Bundle);
-    public android.content.Intent putIntegerArrayListExtra(java.lang.String, java.util.ArrayList);
-    public android.content.Intent putParcelableArrayListExtra(java.lang.String, java.util.ArrayList);
-    public android.content.Intent putStringArrayListExtra(java.lang.String, java.util.ArrayList);
-    public void readFromParcel(android.os.Parcel);
-    public void removeCategory(java.lang.String);
-    public void removeExtra(java.lang.String);
-    public void removeFlags(int);
-    public void removeUnsafeExtras();
-    public android.content.Intent replaceExtras(android.content.Intent);
-    public android.content.Intent replaceExtras(android.os.Bundle);
-    public android.content.ComponentName resolveActivity(android.content.pm.PackageManager);
-    public android.content.pm.ActivityInfo resolveActivityInfo(android.content.pm.PackageManager, int);
-    public android.content.ComponentName resolveSystemService(android.content.pm.PackageManager, int);
-    public java.lang.String resolveType(android.content.Context);
-    public java.lang.String resolveType(android.content.ContentResolver);
-    public java.lang.String resolveTypeIfNeeded(android.content.ContentResolver);
-    public static android.content.Intent restoreFromXml(org.xmlpull.v1.XmlPullParser);
-    public void saveToXml(org.xmlpull.v1.XmlSerializer);
-    public android.content.Intent setAction(java.lang.String);
-    public void setAllowFds(boolean);
-    public android.content.Intent setClass(android.content.Context, java.lang.Class);
-    public android.content.Intent setClassName(android.content.Context, java.lang.String);
-    public android.content.Intent setClassName(java.lang.String, java.lang.String);
-    public void setClipData(android.content.ClipData);
-    public android.content.Intent setComponent(android.content.ComponentName);
-    public android.content.Intent setData(android.net.Uri);
-    public android.content.Intent setDataAndNormalize(android.net.Uri);
-    public android.content.Intent setDataAndType(android.net.Uri, java.lang.String);
-    public android.content.Intent setDataAndTypeAndNormalize(android.net.Uri, java.lang.String);
-    public void setDefusable(boolean);
-    public void setExtrasClassLoader(java.lang.ClassLoader);
-    public android.content.Intent setFlags(int);
-    public void setLaunchToken(java.lang.String);
-    public android.content.Intent setPackage(java.lang.String);
-    public void setSelector(android.content.Intent);
-    public void setSourceBounds(android.graphics.Rect);
-    public android.content.Intent setType(java.lang.String);
-    public android.content.Intent setTypeAndNormalize(java.lang.String);
-    public java.lang.String toInsecureString();
-    public java.lang.String toInsecureStringWithClip();
-    public java.lang.String toShortString(boolean, boolean, boolean, boolean);
-    public void toShortString(java.lang.StringBuilder, boolean, boolean, boolean, boolean);
-    public java.lang.String toString();
-    public java.lang.String toURI();
-    public java.lang.String toUri(int);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long, boolean, boolean, boolean, boolean);
-
-
-    public static java.lang.String ACTION_ADVANCED_SETTINGS_CHANGED;
-    public static java.lang.String ACTION_AIRPLANE_MODE_CHANGED;
-    public static java.lang.String ACTION_ALARM_CHANGED;
-    public static java.lang.String ACTION_ALL_APPS;
-    public static java.lang.String ACTION_ANSWER;
-    public static java.lang.String ACTION_APPLICATION_PREFERENCES;
-    public static java.lang.String ACTION_APPLICATION_RESTRICTIONS_CHANGED;
-    public static java.lang.String ACTION_APP_ERROR;
-    public static java.lang.String ACTION_ASSIST;
-    public static java.lang.String ACTION_ATTACH_DATA;
-    public static java.lang.String ACTION_BATTERY_CHANGED;
-    public static java.lang.String ACTION_BATTERY_LEVEL_CHANGED;
-    public static java.lang.String ACTION_BATTERY_LOW;
-    public static java.lang.String ACTION_BATTERY_OKAY;
-    public static java.lang.String ACTION_BOOT_COMPLETED;
-    public static java.lang.String ACTION_BUG_REPORT;
-    public static java.lang.String ACTION_CALL;
-    public static java.lang.String ACTION_CALL_BUTTON;
-    public static java.lang.String ACTION_CALL_EMERGENCY;
-    public static java.lang.String ACTION_CALL_PRIVILEGED;
-    public static java.lang.String ACTION_CAMERA_BUTTON;
-    public static java.lang.String ACTION_CARRIER_SETUP;
-    public static java.lang.String ACTION_CHOOSER;
-    public static java.lang.String ACTION_CLEAR_DNS_CACHE;
-    public static java.lang.String ACTION_CLOSE_SYSTEM_DIALOGS;
-    public static java.lang.String ACTION_CONFIGURATION_CHANGED;
-    public static java.lang.String ACTION_CREATE_DOCUMENT;
-    public static java.lang.String ACTION_CREATE_SHORTCUT;
-    public static java.lang.String ACTION_DATE_CHANGED;
-    public static java.lang.String ACTION_DEFAULT;
-    public static java.lang.String ACTION_DELETE;
-    public static java.lang.String ACTION_DEVICE_INITIALIZATION_WIZARD;
-    public static java.lang.String ACTION_DEVICE_LOCKED_CHANGED;
-    public static java.lang.String ACTION_DEVICE_STORAGE_FULL;
-    public static java.lang.String ACTION_DEVICE_STORAGE_LOW;
-    public static java.lang.String ACTION_DEVICE_STORAGE_NOT_FULL;
-    public static java.lang.String ACTION_DEVICE_STORAGE_OK;
-    public static java.lang.String ACTION_DIAL;
-    public static java.lang.String ACTION_DISMISS_KEYBOARD_SHORTCUTS;
-    public static java.lang.String ACTION_DOCK_ACTIVE;
-    public static java.lang.String ACTION_DOCK_EVENT;
-    public static java.lang.String ACTION_DOCK_IDLE;
-    public static java.lang.String ACTION_DREAMING_STARTED;
-    public static java.lang.String ACTION_DREAMING_STOPPED;
-    public static java.lang.String ACTION_DYNAMIC_SENSOR_CHANGED;
-    public static java.lang.String ACTION_EDIT;
-    public static java.lang.String ACTION_EXTERNAL_APPLICATIONS_AVAILABLE;
-    public static java.lang.String ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE;
-    public static java.lang.String ACTION_FACTORY_RESET;
-    public static java.lang.String ACTION_FACTORY_TEST;
-    public static java.lang.String ACTION_GET_CONTENT;
-    public static java.lang.String ACTION_GET_RESTRICTION_ENTRIES;
-    public static java.lang.String ACTION_GLOBAL_BUTTON;
-    public static java.lang.String ACTION_GTALK_SERVICE_CONNECTED;
-    public static java.lang.String ACTION_GTALK_SERVICE_DISCONNECTED;
-    public static java.lang.String ACTION_HEADSET_PLUG;
-    public static java.lang.String ACTION_IDLE_MAINTENANCE_END;
-    public static java.lang.String ACTION_IDLE_MAINTENANCE_START;
-    public static java.lang.String ACTION_INPUT_METHOD_CHANGED;
-    public static java.lang.String ACTION_INSERT;
-    public static java.lang.String ACTION_INSERT_OR_EDIT;
-    public static java.lang.String ACTION_INSTALL_FAILURE;
-    public static java.lang.String ACTION_INSTALL_INSTANT_APP_PACKAGE;
-    public static java.lang.String ACTION_INSTALL_PACKAGE;
-    public static java.lang.String ACTION_INSTANT_APP_RESOLVER_SETTINGS;
-    public static java.lang.String ACTION_INTENT_FILTER_NEEDS_VERIFICATION;
-    public static java.lang.String ACTION_LOCALE_CHANGED;
-    public static java.lang.String ACTION_LOCKED_BOOT_COMPLETED;
-    public static java.lang.String ACTION_MAIN;
-    public static java.lang.String ACTION_MANAGED_PROFILE_ADDED;
-    public static java.lang.String ACTION_MANAGED_PROFILE_AVAILABLE;
-    public static java.lang.String ACTION_MANAGED_PROFILE_REMOVED;
-    public static java.lang.String ACTION_MANAGED_PROFILE_UNAVAILABLE;
-    public static java.lang.String ACTION_MANAGED_PROFILE_UNLOCKED;
-    public static java.lang.String ACTION_MANAGE_APP_PERMISSIONS;
-    public static java.lang.String ACTION_MANAGE_NETWORK_USAGE;
-    public static java.lang.String ACTION_MANAGE_PACKAGE_STORAGE;
-    public static java.lang.String ACTION_MANAGE_PERMISSIONS;
-    public static java.lang.String ACTION_MANAGE_PERMISSION_APPS;
-    public static java.lang.String ACTION_MASTER_CLEAR;
-    public static java.lang.String ACTION_MASTER_CLEAR_NOTIFICATION;
-    public static java.lang.String ACTION_MEDIA_BAD_REMOVAL;
-    public static java.lang.String ACTION_MEDIA_BUTTON;
-    public static java.lang.String ACTION_MEDIA_CHECKING;
-    public static java.lang.String ACTION_MEDIA_EJECT;
-    public static java.lang.String ACTION_MEDIA_MOUNTED;
-    public static java.lang.String ACTION_MEDIA_NOFS;
-    public static java.lang.String ACTION_MEDIA_REMOVED;
-    public static java.lang.String ACTION_MEDIA_RESOURCE_GRANTED;
-    public static java.lang.String ACTION_MEDIA_SCANNER_FINISHED;
-    public static java.lang.String ACTION_MEDIA_SCANNER_SCAN_FILE;
-    public static java.lang.String ACTION_MEDIA_SCANNER_STARTED;
-    public static java.lang.String ACTION_MEDIA_SHARED;
-    public static java.lang.String ACTION_MEDIA_UNMOUNTABLE;
-    public static java.lang.String ACTION_MEDIA_UNMOUNTED;
-    public static java.lang.String ACTION_MEDIA_UNSHARED;
-    public static java.lang.String ACTION_MY_PACKAGE_REPLACED;
-    public static java.lang.String ACTION_MY_PACKAGE_SUSPENDED;
-    public static java.lang.String ACTION_MY_PACKAGE_UNSUSPENDED;
-    public static java.lang.String ACTION_NEW_OUTGOING_CALL;
-    public static java.lang.String ACTION_OPEN_DOCUMENT;
-    public static java.lang.String ACTION_OPEN_DOCUMENT_TREE;
-    public static java.lang.String ACTION_OVERLAY_CHANGED;
-    public static java.lang.String ACTION_PACKAGES_SUSPENDED;
-    public static java.lang.String ACTION_PACKAGES_UNSUSPENDED;
-    public static java.lang.String ACTION_PACKAGE_ADDED;
-    public static java.lang.String ACTION_PACKAGE_CHANGED;
-    public static java.lang.String ACTION_PACKAGE_DATA_CLEARED;
-    public static java.lang.String ACTION_PACKAGE_FIRST_LAUNCH;
-    public static java.lang.String ACTION_PACKAGE_FULLY_REMOVED;
-    public static java.lang.String ACTION_PACKAGE_INSTALL;
-    public static java.lang.String ACTION_PACKAGE_NEEDS_VERIFICATION;
-    public static java.lang.String ACTION_PACKAGE_REMOVED;
-    public static java.lang.String ACTION_PACKAGE_REPLACED;
-    public static java.lang.String ACTION_PACKAGE_RESTARTED;
-    public static java.lang.String ACTION_PACKAGE_VERIFIED;
-    public static java.lang.String ACTION_PASTE;
-    public static java.lang.String ACTION_PICK;
-    public static java.lang.String ACTION_PICK_ACTIVITY;
-    public static java.lang.String ACTION_POWER_CONNECTED;
-    public static java.lang.String ACTION_POWER_DISCONNECTED;
-    public static java.lang.String ACTION_POWER_USAGE_SUMMARY;
-    public static java.lang.String ACTION_PREFERRED_ACTIVITY_CHANGED;
-    public static java.lang.String ACTION_PRE_BOOT_COMPLETED;
-    public static java.lang.String ACTION_PROCESS_TEXT;
-    public static java.lang.String ACTION_PROVIDER_CHANGED;
-    public static java.lang.String ACTION_QUERY_PACKAGE_RESTART;
-    public static java.lang.String ACTION_QUICK_CLOCK;
-    public static java.lang.String ACTION_QUICK_VIEW;
-    public static java.lang.String ACTION_REBOOT;
-    public static java.lang.String ACTION_REMOTE_INTENT;
-    public static java.lang.String ACTION_REQUEST_SHUTDOWN;
-    public static java.lang.String ACTION_RESOLVE_INSTANT_APP_PACKAGE;
-    public static java.lang.String ACTION_REVIEW_PERMISSIONS;
-    public static java.lang.String ACTION_RUN;
-    public static java.lang.String ACTION_SCREEN_OFF;
-    public static java.lang.String ACTION_SCREEN_ON;
-    public static java.lang.String ACTION_SEARCH;
-    public static java.lang.String ACTION_SEARCH_LONG_PRESS;
-    public static java.lang.String ACTION_SEND;
-    public static java.lang.String ACTION_SENDTO;
-    public static java.lang.String ACTION_SEND_MULTIPLE;
-    public static java.lang.String ACTION_SERVICE_STATE;
-    public static java.lang.String ACTION_SETTING_RESTORED;
-    public static java.lang.String ACTION_SET_WALLPAPER;
-    public static java.lang.String ACTION_SHOW_APP_INFO;
-    public static java.lang.String ACTION_SHOW_BRIGHTNESS_DIALOG;
-    public static java.lang.String ACTION_SHOW_KEYBOARD_SHORTCUTS;
-    public static java.lang.String ACTION_SHOW_SUSPENDED_APP_DETAILS;
-    public static java.lang.String ACTION_SHUTDOWN;
-    public static java.lang.String ACTION_SIM_STATE_CHANGED;
-    public static java.lang.String ACTION_SPLIT_CONFIGURATION_CHANGED;
-    public static java.lang.String ACTION_SYNC;
-    public static java.lang.String ACTION_SYSTEM_TUTORIAL;
-    public static java.lang.String ACTION_THERMAL_EVENT;
-    public static java.lang.String ACTION_TIMEZONE_CHANGED;
-    public static java.lang.String ACTION_TIME_CHANGED;
-    public static java.lang.String ACTION_TIME_TICK;
-    public static java.lang.String ACTION_UID_REMOVED;
-    public static java.lang.String ACTION_UMS_CONNECTED;
-    public static java.lang.String ACTION_UMS_DISCONNECTED;
-    public static java.lang.String ACTION_UNINSTALL_PACKAGE;
-    public static java.lang.String ACTION_UPGRADE_SETUP;
-    public static java.lang.String ACTION_USER_ADDED;
-    public static java.lang.String ACTION_USER_BACKGROUND;
-    public static java.lang.String ACTION_USER_FOREGROUND;
-    public static java.lang.String ACTION_USER_INFO_CHANGED;
-    public static java.lang.String ACTION_USER_INITIALIZE;
-    public static java.lang.String ACTION_USER_PRESENT;
-    public static java.lang.String ACTION_USER_REMOVED;
-    public static java.lang.String ACTION_USER_STARTED;
-    public static java.lang.String ACTION_USER_STARTING;
-    public static java.lang.String ACTION_USER_STOPPED;
-    public static java.lang.String ACTION_USER_STOPPING;
-    public static java.lang.String ACTION_USER_SWITCHED;
-    public static java.lang.String ACTION_USER_UNLOCKED;
-    public static java.lang.String ACTION_VIEW;
-    public static java.lang.String ACTION_VOICE_ASSIST;
-    public static java.lang.String ACTION_VOICE_COMMAND;
-    public static java.lang.String ACTION_WALLPAPER_CHANGED;
-    public static java.lang.String ACTION_WEB_SEARCH;
-    public static java.lang.String CATEGORY_ALTERNATIVE;
-    public static java.lang.String CATEGORY_APP_BROWSER;
-    public static java.lang.String CATEGORY_APP_CALCULATOR;
-    public static java.lang.String CATEGORY_APP_CALENDAR;
-    public static java.lang.String CATEGORY_APP_CONTACTS;
-    public static java.lang.String CATEGORY_APP_EMAIL;
-    public static java.lang.String CATEGORY_APP_GALLERY;
-    public static java.lang.String CATEGORY_APP_MAPS;
-    public static java.lang.String CATEGORY_APP_MARKET;
-    public static java.lang.String CATEGORY_APP_MESSAGING;
-    public static java.lang.String CATEGORY_APP_MUSIC;
-    public static java.lang.String CATEGORY_BROWSABLE;
-    public static java.lang.String CATEGORY_CAR_DOCK;
-    public static java.lang.String CATEGORY_CAR_LAUNCHER;
-    public static java.lang.String CATEGORY_CAR_MODE;
-    public static java.lang.String CATEGORY_DEFAULT;
-    public static java.lang.String CATEGORY_DESK_DOCK;
-    public static java.lang.String CATEGORY_DEVELOPMENT_PREFERENCE;
-    public static java.lang.String CATEGORY_EMBED;
-    public static java.lang.String CATEGORY_FRAMEWORK_INSTRUMENTATION_TEST;
-    public static java.lang.String CATEGORY_HE_DESK_DOCK;
-    public static java.lang.String CATEGORY_HOME;
-    public static java.lang.String CATEGORY_HOME_MAIN;
-    public static java.lang.String CATEGORY_INFO;
-    public static java.lang.String CATEGORY_LAUNCHER;
-    public static java.lang.String CATEGORY_LAUNCHER_APP;
-    public static java.lang.String CATEGORY_LEANBACK_LAUNCHER;
-    public static java.lang.String CATEGORY_LEANBACK_SETTINGS;
-    public static java.lang.String CATEGORY_LE_DESK_DOCK;
-    public static java.lang.String CATEGORY_MONKEY;
-    public static java.lang.String CATEGORY_OPENABLE;
-    public static java.lang.String CATEGORY_PREFERENCE;
-    public static java.lang.String CATEGORY_SAMPLE_CODE;
-    public static java.lang.String CATEGORY_SELECTED_ALTERNATIVE;
-    public static java.lang.String CATEGORY_SETUP_WIZARD;
-    public static java.lang.String CATEGORY_TAB;
-    public static java.lang.String CATEGORY_TEST;
-    public static java.lang.String CATEGORY_TYPED_OPENABLE;
-    public static java.lang.String CATEGORY_UNIT_TEST;
-    public static java.lang.String CATEGORY_VOICE;
-    public static java.lang.String CATEGORY_VR_HOME;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_ALARM_COUNT;
-    public static java.lang.String EXTRA_ALLOW_MULTIPLE;
-    public static java.lang.String EXTRA_ALLOW_REPLACE;
-    public static java.lang.String EXTRA_ALTERNATE_INTENTS;
-    public static java.lang.String EXTRA_ASSIST_CONTEXT;
-    public static java.lang.String EXTRA_ASSIST_INPUT_DEVICE_ID;
-    public static java.lang.String EXTRA_ASSIST_INPUT_HINT_KEYBOARD;
-    public static java.lang.String EXTRA_ASSIST_PACKAGE;
-    public static java.lang.String EXTRA_ASSIST_UID;
-    public static java.lang.String EXTRA_AUTO_LAUNCH_SINGLE_CHOICE;
-    public static java.lang.String EXTRA_BCC;
-    public static java.lang.String EXTRA_BUG_REPORT;
-    public static java.lang.String EXTRA_CALLING_PACKAGE;
-    public static java.lang.String EXTRA_CC;
-    public static java.lang.String EXTRA_CDMA_DEFAULT_ROAMING_INDICATOR;
-    public static java.lang.String EXTRA_CDMA_ROAMING_INDICATOR;
-    public static java.lang.String EXTRA_CHANGED_COMPONENT_NAME;
-    public static java.lang.String EXTRA_CHANGED_COMPONENT_NAME_LIST;
-    public static java.lang.String EXTRA_CHANGED_PACKAGE_LIST;
-    public static java.lang.String EXTRA_CHANGED_UID_LIST;
-    public static java.lang.String EXTRA_CHOOSER_REFINEMENT_INTENT_SENDER;
-    public static java.lang.String EXTRA_CHOOSER_TARGETS;
-    public static java.lang.String EXTRA_CHOSEN_COMPONENT;
-    public static java.lang.String EXTRA_CHOSEN_COMPONENT_INTENT_SENDER;
-    public static java.lang.String EXTRA_CLIENT_INTENT;
-    public static java.lang.String EXTRA_CLIENT_LABEL;
-    public static java.lang.String EXTRA_COMPONENT_NAME;
-    public static java.lang.String EXTRA_CONTENT_ANNOTATIONS;
-    public static java.lang.String EXTRA_CSS_INDICATOR;
-    public static java.lang.String EXTRA_DATA_OPERATOR_ALPHA_LONG;
-    public static java.lang.String EXTRA_DATA_OPERATOR_ALPHA_SHORT;
-    public static java.lang.String EXTRA_DATA_OPERATOR_NUMERIC;
-    public static java.lang.String EXTRA_DATA_RADIO_TECH;
-    public static java.lang.String EXTRA_DATA_REG_STATE;
-    public static java.lang.String EXTRA_DATA_REMOVED;
-    public static java.lang.String EXTRA_DATA_ROAMING_TYPE;
-    public static java.lang.String EXTRA_DOCK_STATE;
-    public static int EXTRA_DOCK_STATE_CAR;
-    public static int EXTRA_DOCK_STATE_DESK;
-    public static int EXTRA_DOCK_STATE_HE_DESK;
-    public static int EXTRA_DOCK_STATE_LE_DESK;
-    public static int EXTRA_DOCK_STATE_UNDOCKED;
-    public static java.lang.String EXTRA_DONT_KILL_APP;
-    public static java.lang.String EXTRA_EMAIL;
-    public static java.lang.String EXTRA_EMERGENCY_ONLY;
-    public static java.lang.String EXTRA_EPHEMERAL_FAILURE;
-    public static java.lang.String EXTRA_EPHEMERAL_HOSTNAME;
-    public static java.lang.String EXTRA_EPHEMERAL_SUCCESS;
-    public static java.lang.String EXTRA_EPHEMERAL_TOKEN;
-    public static java.lang.String EXTRA_EXCLUDE_COMPONENTS;
-    public static java.lang.String EXTRA_FORCE_FACTORY_RESET;
-    public static java.lang.String EXTRA_FORCE_MASTER_CLEAR;
-    public static java.lang.String EXTRA_FROM_STORAGE;
-    public static java.lang.String EXTRA_HTML_TEXT;
-    public static java.lang.String EXTRA_INDEX;
-    public static java.lang.String EXTRA_INITIAL_INTENTS;
-    public static java.lang.String EXTRA_INSTALLER_PACKAGE_NAME;
-    public static java.lang.String EXTRA_INSTALL_RESULT;
-    public static java.lang.String EXTRA_INSTANT_APP_ACTION;
-    public static java.lang.String EXTRA_INSTANT_APP_BUNDLES;
-    public static java.lang.String EXTRA_INSTANT_APP_EXTRAS;
-    public static java.lang.String EXTRA_INSTANT_APP_FAILURE;
-    public static java.lang.String EXTRA_INSTANT_APP_HOSTNAME;
-    public static java.lang.String EXTRA_INSTANT_APP_SUCCESS;
-    public static java.lang.String EXTRA_INSTANT_APP_TOKEN;
-    public static java.lang.String EXTRA_INTENT;
-    public static java.lang.String EXTRA_IS_DATA_ROAMING_FROM_REGISTRATION;
-    public static java.lang.String EXTRA_IS_USING_CARRIER_AGGREGATION;
-    public static java.lang.String EXTRA_KEY_CONFIRM;
-    public static java.lang.String EXTRA_KEY_EVENT;
-    public static java.lang.String EXTRA_LAUNCHER_EXTRAS;
-    public static java.lang.String EXTRA_LOCAL_ONLY;
-    public static java.lang.String EXTRA_LONG_VERSION_CODE;
-    public static java.lang.String EXTRA_LTE_EARFCN_RSRP_BOOST;
-    public static java.lang.String EXTRA_MANUAL;
-    public static java.lang.String EXTRA_MEDIA_RESOURCE_TYPE;
-    public static int EXTRA_MEDIA_RESOURCE_TYPE_AUDIO_CODEC;
-    public static int EXTRA_MEDIA_RESOURCE_TYPE_VIDEO_CODEC;
-    public static java.lang.String EXTRA_MIME_TYPES;
-    public static java.lang.String EXTRA_NETWORK_ID;
-    public static java.lang.String EXTRA_NOT_UNKNOWN_SOURCE;
-    public static java.lang.String EXTRA_OPERATOR_ALPHA_LONG;
-    public static java.lang.String EXTRA_OPERATOR_ALPHA_SHORT;
-    public static java.lang.String EXTRA_OPERATOR_NUMERIC;
-    public static java.lang.String EXTRA_ORIGINATING_UID;
-    public static java.lang.String EXTRA_ORIGINATING_URI;
-    public static java.lang.String EXTRA_PACKAGES;
-    public static java.lang.String EXTRA_PACKAGE_NAME;
-    public static java.lang.String EXTRA_PERMISSION_NAME;
-    public static java.lang.String EXTRA_PHONE_NUMBER;
-    public static java.lang.String EXTRA_PROCESS_TEXT;
-    public static java.lang.String EXTRA_PROCESS_TEXT_READONLY;
-    public static java.lang.String EXTRA_QUICK_VIEW_ADVANCED;
-    public static java.lang.String EXTRA_QUICK_VIEW_FEATURES;
-    public static java.lang.String EXTRA_QUIET_MODE;
-    public static java.lang.String EXTRA_REASON;
-    public static java.lang.String EXTRA_REFERRER;
-    public static java.lang.String EXTRA_REFERRER_NAME;
-    public static java.lang.String EXTRA_REMOTE_CALLBACK;
-    public static java.lang.String EXTRA_REMOTE_INTENT_TOKEN;
-    public static java.lang.String EXTRA_REMOVED_FOR_ALL_USERS;
-    public static java.lang.String EXTRA_REPLACEMENT_EXTRAS;
-    public static java.lang.String EXTRA_REPLACING;
-    public static java.lang.String EXTRA_RESTRICTIONS_BUNDLE;
-    public static java.lang.String EXTRA_RESTRICTIONS_INTENT;
-    public static java.lang.String EXTRA_RESTRICTIONS_LIST;
-    public static java.lang.String EXTRA_RESULT_NEEDED;
-    public static java.lang.String EXTRA_RESULT_RECEIVER;
-    public static java.lang.String EXTRA_RETURN_RESULT;
-    public static java.lang.String EXTRA_SETTING_NAME;
-    public static java.lang.String EXTRA_SETTING_NEW_VALUE;
-    public static java.lang.String EXTRA_SETTING_PREVIOUS_VALUE;
-    public static java.lang.String EXTRA_SETTING_RESTORED_FROM_SDK_INT;
-    public static java.lang.String EXTRA_SHORTCUT_ICON;
-    public static java.lang.String EXTRA_SHORTCUT_ICON_RESOURCE;
-    public static java.lang.String EXTRA_SHORTCUT_INTENT;
-    public static java.lang.String EXTRA_SHORTCUT_NAME;
-    public static java.lang.String EXTRA_SHUTDOWN_USERSPACE_ONLY;
-    public static java.lang.String EXTRA_SIM_ACTIVATION_RESPONSE;
-    public static java.lang.String EXTRA_SPLIT_NAME;
-    public static java.lang.String EXTRA_STREAM;
-    public static java.lang.String EXTRA_SUBJECT;
-    public static java.lang.String EXTRA_SUSPENDED_PACKAGE_EXTRAS;
-    public static java.lang.String EXTRA_SYSTEM_ID;
-    public static java.lang.String EXTRA_TASK_ID;
-    public static java.lang.String EXTRA_TEMPLATE;
-    public static java.lang.String EXTRA_TEXT;
-    public static java.lang.String EXTRA_THERMAL_STATE;
-    public static int EXTRA_THERMAL_STATE_EXCEEDED;
-    public static int EXTRA_THERMAL_STATE_NORMAL;
-    public static int EXTRA_THERMAL_STATE_WARNING;
-    public static java.lang.String EXTRA_TIME_PREF_24_HOUR_FORMAT;
-    public static int EXTRA_TIME_PREF_VALUE_USE_12_HOUR;
-    public static int EXTRA_TIME_PREF_VALUE_USE_24_HOUR;
-    public static int EXTRA_TIME_PREF_VALUE_USE_LOCALE_DEFAULT;
-    public static java.lang.String EXTRA_TITLE;
-    public static java.lang.String EXTRA_UID;
-    public static java.lang.String EXTRA_UNINSTALL_ALL_USERS;
-    public static java.lang.String EXTRA_UNKNOWN_INSTANT_APP;
-    public static java.lang.String EXTRA_USER;
-    public static java.lang.String EXTRA_USER_HANDLE;
-    public static java.lang.String EXTRA_USER_ID;
-    public static java.lang.String EXTRA_USER_REQUESTED_SHUTDOWN;
-    public static java.lang.String EXTRA_VERIFICATION_BUNDLE;
-    public static java.lang.String EXTRA_VERSION_CODE;
-    public static java.lang.String EXTRA_VOICE_RADIO_TECH;
-    public static java.lang.String EXTRA_VOICE_REG_STATE;
-    public static java.lang.String EXTRA_VOICE_ROAMING_TYPE;
-    public static java.lang.String EXTRA_WIPE_ESIMS;
-    public static java.lang.String EXTRA_WIPE_EXTERNAL_STORAGE;
-    public static int FILL_IN_ACTION;
-    public static int FILL_IN_CATEGORIES;
-    public static int FILL_IN_CLIP_DATA;
-    public static int FILL_IN_COMPONENT;
-    public static int FILL_IN_DATA;
-    public static int FILL_IN_PACKAGE;
-    public static int FILL_IN_SELECTOR;
-    public static int FILL_IN_SOURCE_BOUNDS;
-    public static int FLAG_ACTIVITY_BROUGHT_TO_FRONT;
-    public static int FLAG_ACTIVITY_CLEAR_TASK;
-    public static int FLAG_ACTIVITY_CLEAR_TOP;
-    public static int FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET;
-    public static int FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS;
-    public static int FLAG_ACTIVITY_FORWARD_RESULT;
-    public static int FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY;
-    public static int FLAG_ACTIVITY_LAUNCH_ADJACENT;
-    public static int FLAG_ACTIVITY_MATCH_EXTERNAL;
-    public static int FLAG_ACTIVITY_MULTIPLE_TASK;
-    public static int FLAG_ACTIVITY_NEW_DOCUMENT;
-    public static int FLAG_ACTIVITY_NEW_TASK;
-    public static int FLAG_ACTIVITY_NO_ANIMATION;
-    public static int FLAG_ACTIVITY_NO_HISTORY;
-    public static int FLAG_ACTIVITY_NO_USER_ACTION;
-    public static int FLAG_ACTIVITY_PREVIOUS_IS_TOP;
-    public static int FLAG_ACTIVITY_REORDER_TO_FRONT;
-    public static int FLAG_ACTIVITY_RESET_TASK_IF_NEEDED;
-    public static int FLAG_ACTIVITY_RETAIN_IN_RECENTS;
-    public static int FLAG_ACTIVITY_SINGLE_TOP;
-    public static int FLAG_ACTIVITY_TASK_ON_HOME;
-    public static int FLAG_DEBUG_LOG_RESOLUTION;
-    public static int FLAG_DEBUG_TRIAGED_MISSING;
-    public static int FLAG_EXCLUDE_STOPPED_PACKAGES;
-    public static int FLAG_FROM_BACKGROUND;
-    public static int FLAG_GRANT_PERSISTABLE_URI_PERMISSION;
-    public static int FLAG_GRANT_PREFIX_URI_PERMISSION;
-    public static int FLAG_GRANT_READ_URI_PERMISSION;
-    public static int FLAG_GRANT_WRITE_URI_PERMISSION;
-    public static int FLAG_IGNORE_EPHEMERAL;
-    public static int FLAG_INCLUDE_STOPPED_PACKAGES;
-    public static int FLAG_RECEIVER_BOOT_UPGRADE;
-    public static int FLAG_RECEIVER_EXCLUDE_BACKGROUND;
-    public static int FLAG_RECEIVER_FOREGROUND;
-    public static int FLAG_RECEIVER_FROM_SHELL;
-    public static int FLAG_RECEIVER_INCLUDE_BACKGROUND;
-    public static int FLAG_RECEIVER_NO_ABORT;
-    public static int FLAG_RECEIVER_REGISTERED_ONLY;
-    public static int FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT;
-    public static int FLAG_RECEIVER_REPLACE_PENDING;
-    public static int FLAG_RECEIVER_VISIBLE_TO_INSTANT_APPS;
-    public static int IMMUTABLE_FLAGS;
-    public static java.lang.String METADATA_DOCK_HOME;
-    public static java.lang.String METADATA_SETUP_VERSION;
-    public static int URI_ALLOW_UNSAFE;
-    public static int URI_ANDROID_APP_SCHEME;
-    public static int URI_INTENT_SCHEME;
-}
-
--keep class android.content.Intent$CommandOptionHandler {
-
-    public abstract boolean handleOption(java.lang.String, android.os.ShellCommand);
-
-
-}
-
--keep class android.content.IntentFilter {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.String);
-    <init>(android.content.IntentFilter);
-    <init>(android.os.Parcel);
-
-    public java.util.Iterator actionsIterator();
-    public void addAction(java.lang.String);
-    public void addCategory(java.lang.String);
-    public void addDataAuthority(java.lang.String, java.lang.String);
-    public void addDataAuthority(android.content.IntentFilter$AuthorityEntry);
-    public void addDataPath(java.lang.String, int);
-    public void addDataPath(android.os.PatternMatcher);
-    public void addDataScheme(java.lang.String);
-    public void addDataSchemeSpecificPart(java.lang.String, int);
-    public void addDataSchemeSpecificPart(android.os.PatternMatcher);
-    public void addDataType(java.lang.String);
-    public java.util.Iterator authoritiesIterator();
-    public java.util.Iterator categoriesIterator();
-    public int countActions();
-    public int countCategories();
-    public int countDataAuthorities();
-    public int countDataPaths();
-    public int countDataSchemeSpecificParts();
-    public int countDataSchemes();
-    public int countDataTypes();
-    public static android.content.IntentFilter create(java.lang.String, java.lang.String);
-    public boolean debugCheck();
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public java.lang.String getAction(int);
-    public boolean getAutoVerify();
-    public java.lang.String getCategory(int);
-    public android.content.IntentFilter$AuthorityEntry getDataAuthority(int);
-    public android.os.PatternMatcher getDataPath(int);
-    public java.lang.String getDataScheme(int);
-    public android.os.PatternMatcher getDataSchemeSpecificPart(int);
-    public java.lang.String getDataType(int);
-    public java.lang.String[] getHosts();
-    public java.util.ArrayList getHostsList();
-    public int getOrder();
-    public int getPriority();
-    public int getVisibilityToInstantApp();
-    public boolean handleAllWebDataURI();
-    public boolean handlesWebUris(boolean);
-    public boolean hasAction(java.lang.String);
-    public boolean hasCategory(java.lang.String);
-    public boolean hasDataAuthority(android.net.Uri);
-    public boolean hasDataAuthority(android.content.IntentFilter$AuthorityEntry);
-    public boolean hasDataPath(java.lang.String);
-    public boolean hasDataPath(android.os.PatternMatcher);
-    public boolean hasDataScheme(java.lang.String);
-    public boolean hasDataSchemeSpecificPart(java.lang.String);
-    public boolean hasDataSchemeSpecificPart(android.os.PatternMatcher);
-    public boolean hasDataType(java.lang.String);
-    public boolean hasExactDataType(java.lang.String);
-    public boolean isExplicitlyVisibleToInstantApp();
-    public boolean isImplicitlyVisibleToInstantApp();
-    public boolean isVerified();
-    public boolean isVisibleToInstantApp();
-    public int match(android.content.ContentResolver, android.content.Intent, boolean, java.lang.String);
-    public int match(java.lang.String, java.lang.String, java.lang.String, android.net.Uri, java.util.Set, java.lang.String);
-    public boolean matchAction(java.lang.String);
-    public java.lang.String matchCategories(java.util.Set);
-    public int matchData(java.lang.String, java.lang.String, android.net.Uri);
-    public int matchDataAuthority(android.net.Uri);
-    public boolean needsVerification();
-    public java.util.Iterator pathsIterator();
-    public void readFromXml(org.xmlpull.v1.XmlPullParser);
-    public java.util.Iterator schemeSpecificPartsIterator();
-    public java.util.Iterator schemesIterator();
-    public void setAutoVerify(boolean);
-    public void setOrder(int);
-    public void setPriority(int);
-    public void setVerified(boolean);
-    public void setVisibilityToInstantApp(int);
-    public java.util.Iterator typesIterator();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-    public void writeToXml(org.xmlpull.v1.XmlSerializer);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int MATCH_ADJUSTMENT_MASK;
-    public static int MATCH_ADJUSTMENT_NORMAL;
-    public static int MATCH_CATEGORY_EMPTY;
-    public static int MATCH_CATEGORY_HOST;
-    public static int MATCH_CATEGORY_MASK;
-    public static int MATCH_CATEGORY_PATH;
-    public static int MATCH_CATEGORY_PORT;
-    public static int MATCH_CATEGORY_SCHEME;
-    public static int MATCH_CATEGORY_SCHEME_SPECIFIC_PART;
-    public static int MATCH_CATEGORY_TYPE;
-    public static int NO_MATCH_ACTION;
-    public static int NO_MATCH_CATEGORY;
-    public static int NO_MATCH_DATA;
-    public static int NO_MATCH_TYPE;
-    public static java.lang.String SCHEME_HTTP;
-    public static java.lang.String SCHEME_HTTPS;
-    public static int SYSTEM_HIGH_PRIORITY;
-    public static int SYSTEM_LOW_PRIORITY;
-    public static int VISIBILITY_EXPLICIT;
-    public static int VISIBILITY_IMPLICIT;
-    public static int VISIBILITY_NONE;
-}
-
--keep class android.content.IntentFilter$AuthorityEntry {
-    <init>(java.lang.String, java.lang.String);
-
-    public boolean equals(java.lang.Object);
-    public java.lang.String getHost();
-    public int getPort();
-    public boolean match(android.content.IntentFilter$AuthorityEntry);
-    public int match(android.net.Uri);
-
-
-}
-
--keep class android.content.IntentFilter$MalformedMimeTypeException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class android.content.IntentSender {
-    <init>(android.content.IIntentSender);
-    <init>(android.content.IIntentSender, android.os.IBinder);
-    <init>(android.os.IBinder);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.String getCreatorPackage();
-    public int getCreatorUid();
-    public android.os.UserHandle getCreatorUserHandle();
-    public android.content.IIntentSender getTarget();
-    public java.lang.String getTargetPackage();
-    public android.os.IBinder getWhitelistToken();
-    public int hashCode();
-    public static android.content.IntentSender readIntentSenderOrNullFromParcel(android.os.Parcel);
-    public void sendIntent(android.content.Context, int, android.content.Intent, android.content.IntentSender$OnFinished, android.os.Handler);
-    public void sendIntent(android.content.Context, int, android.content.Intent, android.content.IntentSender$OnFinished, android.os.Handler, java.lang.String);
-    public java.lang.String toString();
-    public static void writeIntentSenderOrNullToParcel(android.content.IntentSender, android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.IntentSender$OnFinished {
-
-    public abstract void onSendFinished(android.content.IntentSender, android.content.Intent, int, java.lang.String, android.os.Bundle);
-
-
-}
-
--keep class android.content.IntentSender$SendIntentException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.Exception);
-
-
-
-}
-
--keep class android.content.Loader {
-    <init>(android.content.Context);
-
-    public void abandon();
-    public boolean cancelLoad();
-    public void commitContentChanged();
-    public java.lang.String dataToString(java.lang.Object);
-    public void deliverCancellation();
-    public void deliverResult(java.lang.Object);
-    public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public void forceLoad();
-    public android.content.Context getContext();
-    public int getId();
-    public boolean isAbandoned();
-    public boolean isReset();
-    public boolean isStarted();
-    protected void onAbandon();
-    protected boolean onCancelLoad();
-    public void onContentChanged();
-    protected void onForceLoad();
-    protected void onReset();
-    protected void onStartLoading();
-    protected void onStopLoading();
-    public void registerListener(int, android.content.Loader$OnLoadCompleteListener);
-    public void registerOnLoadCanceledListener(android.content.Loader$OnLoadCanceledListener);
-    public void reset();
-    public void rollbackContentChanged();
-    public void startLoading();
-    public void stopLoading();
-    public boolean takeContentChanged();
-    public java.lang.String toString();
-    public void unregisterListener(android.content.Loader$OnLoadCompleteListener);
-    public void unregisterOnLoadCanceledListener(android.content.Loader$OnLoadCanceledListener);
-
-
-}
-
--keep class android.content.Loader$OnLoadCanceledListener {
-
-    public abstract void onLoadCanceled(android.content.Loader);
-
-
-}
-
--keep class android.content.Loader$OnLoadCompleteListener {
-
-    public abstract void onLoadComplete(android.content.Loader, java.lang.Object);
-
-
-}
-
--keep class android.content.OperationApplicationException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-    <init>(int);
-    <init>(java.lang.String, int);
-
-    public int getNumSuccessfulYieldPoints();
-
-
-}
-
--keep class android.content.PeriodicSync {
-    <init>(android.accounts.Account, java.lang.String, android.os.Bundle, long);
-    <init>(android.content.PeriodicSync);
-    <init>(android.accounts.Account, java.lang.String, android.os.Bundle, long, long);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static boolean syncExtrasEquals(android.os.Bundle, android.os.Bundle);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.accounts.Account account;
-    public java.lang.String authority;
-    public android.os.Bundle extras;
-    public long flexTime;
-    public long period;
-}
-
--keep class android.content.ServiceConnection {
-
-    public void onBindingDied(android.content.ComponentName);
-    public void onNullBinding(android.content.ComponentName);
-    public abstract void onServiceConnected(android.content.ComponentName, android.os.IBinder);
-    public abstract void onServiceDisconnected(android.content.ComponentName);
-
-
-}
-
--keep class android.content.SharedPreferences {
-
-    public abstract boolean contains(java.lang.String);
-    public abstract android.content.SharedPreferences$Editor edit();
-    public abstract java.util.Map getAll();
-    public abstract boolean getBoolean(java.lang.String, boolean);
-    public abstract float getFloat(java.lang.String, float);
-    public abstract int getInt(java.lang.String, int);
-    public abstract long getLong(java.lang.String, long);
-    public abstract java.lang.String getString(java.lang.String, java.lang.String);
-    public abstract java.util.Set getStringSet(java.lang.String, java.util.Set);
-    public abstract void registerOnSharedPreferenceChangeListener(android.content.SharedPreferences$OnSharedPreferenceChangeListener);
-    public abstract void unregisterOnSharedPreferenceChangeListener(android.content.SharedPreferences$OnSharedPreferenceChangeListener);
-
-
-}
-
--keep class android.content.SharedPreferences$Editor {
-
-    public abstract void apply();
-    public abstract android.content.SharedPreferences$Editor clear();
-    public abstract boolean commit();
-    public abstract android.content.SharedPreferences$Editor putBoolean(java.lang.String, boolean);
-    public abstract android.content.SharedPreferences$Editor putFloat(java.lang.String, float);
-    public abstract android.content.SharedPreferences$Editor putInt(java.lang.String, int);
-    public abstract android.content.SharedPreferences$Editor putLong(java.lang.String, long);
-    public abstract android.content.SharedPreferences$Editor putString(java.lang.String, java.lang.String);
-    public abstract android.content.SharedPreferences$Editor putStringSet(java.lang.String, java.util.Set);
-    public abstract android.content.SharedPreferences$Editor remove(java.lang.String);
-
-
-}
-
--keep class android.content.SharedPreferences$OnSharedPreferenceChangeListener {
-
-    public abstract void onSharedPreferenceChanged(android.content.SharedPreferences, java.lang.String);
-
-
-}
-
--keep class android.content.SyncAdapterType {
-    <init>(java.lang.String, java.lang.String, boolean, boolean);
-    <init>(java.lang.String, java.lang.String, boolean, boolean, boolean, boolean, java.lang.String, java.lang.String);
-    <init>(android.os.Parcel);
-
-    public boolean allowParallelSyncs();
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.String getPackageName();
-    public java.lang.String getSettingsActivity();
-    public int hashCode();
-    public boolean isAlwaysSyncable();
-    public boolean isUserVisible();
-    public static android.content.SyncAdapterType newKey(java.lang.String, java.lang.String);
-    public boolean supportsUploading();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String accountType;
-    public java.lang.String authority;
-    public boolean isKey;
-}
-
--keep class android.content.SyncInfo {
-    <init>(int, android.accounts.Account, java.lang.String, long);
-    <init>(android.content.SyncInfo);
-
-    public static android.content.SyncInfo createAccountRedacted(int, java.lang.String, long);
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.accounts.Account account;
-    public java.lang.String authority;
-    public int authorityId;
-    public long startTime;
-}
-
--keep class android.content.SyncRequest {
-    <init>(android.content.SyncRequest$Builder);
-
-    public int describeContents();
-    public android.accounts.Account getAccount();
-    public android.os.Bundle getBundle();
-    public java.lang.String getProvider();
-    public long getSyncFlexTime();
-    public long getSyncRunTime();
-    public boolean isExpedited();
-    public boolean isPeriodic();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.SyncRequest$Builder {
-    <init>();
-
-    public android.content.SyncRequest build();
-    public android.content.SyncRequest$Builder setDisallowMetered(boolean);
-    public android.content.SyncRequest$Builder setExpedited(boolean);
-    public android.content.SyncRequest$Builder setExtras(android.os.Bundle);
-    public android.content.SyncRequest$Builder setIgnoreBackoff(boolean);
-    public android.content.SyncRequest$Builder setIgnoreSettings(boolean);
-    public android.content.SyncRequest$Builder setManual(boolean);
-    public android.content.SyncRequest$Builder setNoRetry(boolean);
-    public android.content.SyncRequest$Builder setRequiresCharging(boolean);
-    public android.content.SyncRequest$Builder setSyncAdapter(android.accounts.Account, java.lang.String);
-    public android.content.SyncRequest$Builder syncOnce();
-    public android.content.SyncRequest$Builder syncPeriodic(long, long);
-
-
-}
-
--keep class android.content.SyncStatusInfo {
-    <init>(int);
-    <init>(android.os.Parcel);
-    <init>(android.content.SyncStatusInfo);
-
-    public void addEvent(java.lang.String);
-    public int describeContents();
-    public java.lang.String getEvent(int);
-    public int getEventCount();
-    public long getEventTime(int);
-    public int getLastFailureMesgAsInt(int);
-    public long getPeriodicSyncTime(int);
-    public void maybeResetTodayStats(boolean, boolean);
-    public void removePeriodicSyncTime(int);
-    public void setLastFailure(int, long, java.lang.String);
-    public void setLastSuccess(int, long);
-    public void setPeriodicSyncTime(int, long);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int authorityId;
-    public long initialFailureTime;
-    public boolean initialize;
-    public java.lang.String lastFailureMesg;
-    public int lastFailureSource;
-    public long lastFailureTime;
-    public int lastSuccessSource;
-    public long lastSuccessTime;
-    public long lastTodayResetTime;
-    public boolean pending;
-    public long[] perSourceLastFailureTimes;
-    public long[] perSourceLastSuccessTimes;
-    public android.content.SyncStatusInfo$Stats todayStats;
-    public android.content.SyncStatusInfo$Stats totalStats;
-    public android.content.SyncStatusInfo$Stats yesterdayStats;
-}
-
--keep class android.content.SyncStatusInfo$Stats {
-    <init>();
-
-    public void clear();
-    public void copyTo(android.content.SyncStatusInfo$Stats);
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel);
-
-
-    public int numCancels;
-    public int numFailures;
-    public int numSourceFeed;
-    public int numSourceLocal;
-    public int numSourceOther;
-    public int numSourcePeriodic;
-    public int numSourcePoll;
-    public int numSourceUser;
-    public int numSyncs;
-    public long totalElapsedTime;
-}
-
--keep class android.content.SyncStatusObserver {
-
-    public abstract void onStatusChanged(int);
-
-
-}
-
--keep class android.content.UriPermission {
-    <init>(android.net.Uri, int, long);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public long getPersistedTime();
-    public android.net.Uri getUri();
-    public boolean isReadPermission();
-    public boolean isWritePermission();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static long INVALID_TIME;
-}
-
--keep class android.content.pm.ActivityInfo {
-    <init>();
-    <init>(android.content.pm.ActivityInfo);
-
-    public static int activityInfoConfigJavaToNative(int);
-    public static int activityInfoConfigNativeToJava(int);
-    public static java.lang.String colorModeToString(int);
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public void dump(android.util.Printer, java.lang.String, int);
-    public int getRealConfigChanged();
-    public int getThemeResource();
-    public static boolean isFixedOrientationLandscape(int);
-    public static boolean isFixedOrientationPortrait(int);
-    public static boolean isPreserveOrientationMode(int);
-    public static boolean isResizeableMode(int);
-    public static boolean isTranslucentOrFloating(android.content.res.TypedArray);
-    public static java.lang.String lockTaskLaunchModeToString(int);
-    public static java.lang.String resizeModeToString(int);
-    public static java.lang.String screenOrientationToString(int);
-    public boolean supportsPictureInPicture();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int COLOR_MODE_DEFAULT;
-    public static int COLOR_MODE_HDR;
-    public static int COLOR_MODE_WIDE_COLOR_GAMUT;
-    public static int CONFIG_ASSETS_PATHS;
-    public static int CONFIG_COLOR_MODE;
-    public static int CONFIG_DENSITY;
-    public static int CONFIG_FONT_SCALE;
-    public static int CONFIG_KEYBOARD;
-    public static int CONFIG_KEYBOARD_HIDDEN;
-    public static int CONFIG_LAYOUT_DIRECTION;
-    public static int CONFIG_LOCALE;
-    public static int CONFIG_MCC;
-    public static int CONFIG_MNC;
-    public static int[] CONFIG_NATIVE_BITS;
-    public static int CONFIG_NAVIGATION;
-    public static int CONFIG_ORIENTATION;
-    public static int CONFIG_SCREEN_LAYOUT;
-    public static int CONFIG_SCREEN_SIZE;
-    public static int CONFIG_SMALLEST_SCREEN_SIZE;
-    public static int CONFIG_TOUCHSCREEN;
-    public static int CONFIG_UI_MODE;
-    public static int CONFIG_WINDOW_CONFIGURATION;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DOCUMENT_LAUNCH_ALWAYS;
-    public static int DOCUMENT_LAUNCH_INTO_EXISTING;
-    public static int DOCUMENT_LAUNCH_NEVER;
-    public static int DOCUMENT_LAUNCH_NONE;
-    public static int FLAG_ALLOW_EMBEDDED;
-    public static int FLAG_ALLOW_TASK_REPARENTING;
-    public static int FLAG_ALWAYS_FOCUSABLE;
-    public static int FLAG_ALWAYS_RETAIN_TASK_STATE;
-    public static int FLAG_AUTO_REMOVE_FROM_RECENTS;
-    public static int FLAG_CLEAR_TASK_ON_LAUNCH;
-    public static int FLAG_ENABLE_VR_MODE;
-    public static int FLAG_EXCLUDE_FROM_RECENTS;
-    public static int FLAG_FINISH_ON_CLOSE_SYSTEM_DIALOGS;
-    public static int FLAG_FINISH_ON_TASK_LAUNCH;
-    public static int FLAG_HARDWARE_ACCELERATED;
-    public static int FLAG_IMMERSIVE;
-    public static int FLAG_IMPLICITLY_VISIBLE_TO_INSTANT_APP;
-    public static int FLAG_MULTIPROCESS;
-    public static int FLAG_NO_HISTORY;
-    public static int FLAG_RELINQUISH_TASK_IDENTITY;
-    public static int FLAG_RESUME_WHILE_PAUSING;
-    public static int FLAG_SHOW_FOR_ALL_USERS;
-    public static int FLAG_SHOW_WHEN_LOCKED;
-    public static int FLAG_SINGLE_USER;
-    public static int FLAG_STATE_NOT_NEEDED;
-    public static int FLAG_SUPPORTS_PICTURE_IN_PICTURE;
-    public static int FLAG_SYSTEM_USER_ONLY;
-    public static int FLAG_TURN_SCREEN_ON;
-    public static int FLAG_VISIBLE_TO_INSTANT_APP;
-    public static int LAUNCH_MULTIPLE;
-    public static int LAUNCH_SINGLE_INSTANCE;
-    public static int LAUNCH_SINGLE_TASK;
-    public static int LAUNCH_SINGLE_TOP;
-    public static int LOCK_TASK_LAUNCH_MODE_ALWAYS;
-    public static int LOCK_TASK_LAUNCH_MODE_DEFAULT;
-    public static int LOCK_TASK_LAUNCH_MODE_IF_WHITELISTED;
-    public static int LOCK_TASK_LAUNCH_MODE_NEVER;
-    public static int PERSIST_ACROSS_REBOOTS;
-    public static int PERSIST_NEVER;
-    public static int PERSIST_ROOT_ONLY;
-    public static int RESIZE_MODE_FORCE_RESIZABLE_LANDSCAPE_ONLY;
-    public static int RESIZE_MODE_FORCE_RESIZABLE_PORTRAIT_ONLY;
-    public static int RESIZE_MODE_FORCE_RESIZABLE_PRESERVE_ORIENTATION;
-    public static int RESIZE_MODE_FORCE_RESIZEABLE;
-    public static int RESIZE_MODE_RESIZEABLE;
-    public static int RESIZE_MODE_RESIZEABLE_AND_PIPABLE_DEPRECATED;
-    public static int RESIZE_MODE_RESIZEABLE_VIA_SDK_VERSION;
-    public static int RESIZE_MODE_UNRESIZEABLE;
-    public static int SCREEN_ORIENTATION_BEHIND;
-    public static int SCREEN_ORIENTATION_FULL_SENSOR;
-    public static int SCREEN_ORIENTATION_FULL_USER;
-    public static int SCREEN_ORIENTATION_LANDSCAPE;
-    public static int SCREEN_ORIENTATION_LOCKED;
-    public static int SCREEN_ORIENTATION_NOSENSOR;
-    public static int SCREEN_ORIENTATION_PORTRAIT;
-    public static int SCREEN_ORIENTATION_REVERSE_LANDSCAPE;
-    public static int SCREEN_ORIENTATION_REVERSE_PORTRAIT;
-    public static int SCREEN_ORIENTATION_SENSOR;
-    public static int SCREEN_ORIENTATION_SENSOR_LANDSCAPE;
-    public static int SCREEN_ORIENTATION_SENSOR_PORTRAIT;
-    public static int SCREEN_ORIENTATION_UNSET;
-    public static int SCREEN_ORIENTATION_UNSPECIFIED;
-    public static int SCREEN_ORIENTATION_USER;
-    public static int SCREEN_ORIENTATION_USER_LANDSCAPE;
-    public static int SCREEN_ORIENTATION_USER_PORTRAIT;
-    public static int UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW;
-    public int colorMode;
-    public int configChanges;
-    public int documentLaunchMode;
-    public int flags;
-    public int launchMode;
-    public java.lang.String launchToken;
-    public int lockTaskLaunchMode;
-    public float maxAspectRatio;
-    public int maxRecents;
-    public java.lang.String parentActivityName;
-    public java.lang.String permission;
-    public int persistableMode;
-    public java.lang.String requestedVrComponent;
-    public int resizeMode;
-    public int rotationAnimation;
-    public int screenOrientation;
-    public int softInputMode;
-    public java.lang.String targetActivity;
-    public java.lang.String taskAffinity;
-    public int theme;
-    public int uiOptions;
-    public android.content.pm.ActivityInfo$WindowLayout windowLayout;
-}
-
--keep class android.content.pm.ActivityInfo$WindowLayout {
-    <init>(int, float, int, float, int, int, int);
-
-
-
-    public int gravity;
-    public int height;
-    public float heightFraction;
-    public int minHeight;
-    public int minWidth;
-    public int width;
-    public float widthFraction;
-}
-
--keep class android.content.pm.ApplicationInfo {
-    <init>();
-    <init>(android.content.pm.ApplicationInfo);
-
-    public int describeContents();
-    public void disableCompatibilityMode();
-    public void dump(android.util.Printer, java.lang.String);
-    public void dump(android.util.Printer, java.lang.String, int);
-    protected android.content.pm.ApplicationInfo getApplicationInfo();
-    public java.lang.String getBaseCodePath();
-    public java.lang.String getBaseResourcePath();
-    public static java.lang.CharSequence getCategoryTitle(android.content.Context, int);
-    public java.lang.String getCodePath();
-    public int getHiddenApiEnforcementPolicy();
-    public java.lang.String getResourcePath();
-    public java.lang.String[] getSplitCodePaths();
-    public java.lang.String[] getSplitResourcePaths();
-    public boolean hasCode();
-    public boolean hasRtlSupport();
-    public void initForUser(int);
-    public boolean isDefaultToDeviceProtectedStorage();
-    public boolean isDirectBootAware();
-    public boolean isEncryptionAware();
-    public boolean isExternal();
-    public boolean isExternalAsec();
-    public boolean isForwardLocked();
-    public boolean isInstantApp();
-    public boolean isInternal();
-    public boolean isOem();
-    public boolean isPartiallyDirectBootAware();
-    public boolean isPrivilegedApp();
-    public boolean isProduct();
-    public boolean isRequiredForSystemUser();
-    public boolean isSignedWithPlatformKey();
-    public boolean isStaticSharedLibrary();
-    public boolean isSystemApp();
-    public boolean isUpdatedSystemApp();
-    public static boolean isValidHiddenApiEnforcementPolicy(int);
-    public boolean isVendor();
-    public boolean isVirtualPreload();
-    public android.graphics.drawable.Drawable loadDefaultIcon(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadDescription(android.content.pm.PackageManager);
-    public void maybeUpdateHiddenApiEnforcementPolicy(int, int);
-    public boolean requestsIsolatedSplitLoading();
-    public void setBaseCodePath(java.lang.String);
-    public void setBaseResourcePath(java.lang.String);
-    public void setCodePath(java.lang.String);
-    public void setHiddenApiEnforcementPolicy(int);
-    public void setResourcePath(java.lang.String);
-    public void setSplitCodePaths(java.lang.String[]);
-    public void setSplitResourcePaths(java.lang.String[]);
-    public void setVersionCode(long);
-    public java.lang.String toString();
-    public boolean usesCompatibilityMode();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long, int);
-
-
-    public static int CATEGORY_AUDIO;
-    public static int CATEGORY_GAME;
-    public static int CATEGORY_IMAGE;
-    public static int CATEGORY_MAPS;
-    public static int CATEGORY_NEWS;
-    public static int CATEGORY_PRODUCTIVITY;
-    public static int CATEGORY_SOCIAL;
-    public static int CATEGORY_UNDEFINED;
-    public static int CATEGORY_VIDEO;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_ALLOW_BACKUP;
-    public static int FLAG_ALLOW_CLEAR_USER_DATA;
-    public static int FLAG_ALLOW_TASK_REPARENTING;
-    public static int FLAG_DEBUGGABLE;
-    public static int FLAG_EXTERNAL_STORAGE;
-    public static int FLAG_EXTRACT_NATIVE_LIBS;
-    public static int FLAG_FACTORY_TEST;
-    public static int FLAG_FULL_BACKUP_ONLY;
-    public static int FLAG_HARDWARE_ACCELERATED;
-    public static int FLAG_HAS_CODE;
-    public static int FLAG_INSTALLED;
-    public static int FLAG_IS_DATA_ONLY;
-    public static int FLAG_IS_GAME;
-    public static int FLAG_KILL_AFTER_RESTORE;
-    public static int FLAG_LARGE_HEAP;
-    public static int FLAG_MULTIARCH;
-    public static int FLAG_PERSISTENT;
-    public static int FLAG_RESIZEABLE_FOR_SCREENS;
-    public static int FLAG_RESTORE_ANY_VERSION;
-    public static int FLAG_STOPPED;
-    public static int FLAG_SUPPORTS_LARGE_SCREENS;
-    public static int FLAG_SUPPORTS_NORMAL_SCREENS;
-    public static int FLAG_SUPPORTS_RTL;
-    public static int FLAG_SUPPORTS_SCREEN_DENSITIES;
-    public static int FLAG_SUPPORTS_SMALL_SCREENS;
-    public static int FLAG_SUPPORTS_XLARGE_SCREENS;
-    public static int FLAG_SUSPENDED;
-    public static int FLAG_SYSTEM;
-    public static int FLAG_TEST_ONLY;
-    public static int FLAG_UPDATED_SYSTEM_APP;
-    public static int FLAG_USES_CLEARTEXT_TRAFFIC;
-    public static int FLAG_VM_SAFE_MODE;
-    public static int HIDDEN_API_ENFORCEMENT_BLACK;
-    public static int HIDDEN_API_ENFORCEMENT_DARK_GREY_AND_BLACK;
-    public static int HIDDEN_API_ENFORCEMENT_DEFAULT;
-    public static int HIDDEN_API_ENFORCEMENT_JUST_WARN;
-    public static int HIDDEN_API_ENFORCEMENT_NONE;
-    public static java.lang.String METADATA_PRELOADED_FONTS;
-    public static int PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_RESIZEABLE;
-    public static int PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_RESIZEABLE_VIA_SDK_VERSION;
-    public static int PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_UNRESIZEABLE;
-    public static int PRIVATE_FLAG_BACKUP_IN_FOREGROUND;
-    public static int PRIVATE_FLAG_CANT_SAVE_STATE;
-    public static int PRIVATE_FLAG_DEFAULT_TO_DEVICE_PROTECTED_STORAGE;
-    public static int PRIVATE_FLAG_DIRECT_BOOT_AWARE;
-    public static int PRIVATE_FLAG_FORWARD_LOCK;
-    public static int PRIVATE_FLAG_HAS_DOMAIN_URLS;
-    public static int PRIVATE_FLAG_HIDDEN;
-    public static int PRIVATE_FLAG_INSTANT;
-    public static int PRIVATE_FLAG_ISOLATED_SPLIT_LOADING;
-    public static int PRIVATE_FLAG_OEM;
-    public static int PRIVATE_FLAG_PARTIALLY_DIRECT_BOOT_AWARE;
-    public static int PRIVATE_FLAG_PRIVILEGED;
-    public static int PRIVATE_FLAG_PRODUCT;
-    public static int PRIVATE_FLAG_REQUIRED_FOR_SYSTEM_USER;
-    public static int PRIVATE_FLAG_SIGNED_WITH_PLATFORM_KEY;
-    public static int PRIVATE_FLAG_STATIC_SHARED_LIBRARY;
-    public static int PRIVATE_FLAG_VENDOR;
-    public static int PRIVATE_FLAG_VIRTUAL_PRELOAD;
-    public java.lang.String appComponentFactory;
-    public java.lang.String backupAgentName;
-    public int category;
-    public java.lang.String classLoaderName;
-    public java.lang.String className;
-    public int compatibleWidthLimitDp;
-    public int compileSdkVersion;
-    public java.lang.String compileSdkVersionCodename;
-    public java.lang.String credentialProtectedDataDir;
-    public java.lang.String dataDir;
-    public int descriptionRes;
-    public java.lang.String deviceProtectedDataDir;
-    public boolean enabled;
-    public int enabledSetting;
-    public int flags;
-    public int fullBackupContent;
-    public boolean hiddenUntilInstalled;
-    public int installLocation;
-    public int largestWidthLimitDp;
-    public long longVersionCode;
-    public java.lang.String manageSpaceActivityName;
-    public float maxAspectRatio;
-    public int minSdkVersion;
-    public java.lang.String nativeLibraryDir;
-    public java.lang.String nativeLibraryRootDir;
-    public boolean nativeLibraryRootRequiresIsa;
-    public int networkSecurityConfigRes;
-    public java.lang.String permission;
-    public java.lang.String primaryCpuAbi;
-    public int privateFlags;
-    public java.lang.String processName;
-    public java.lang.String publicSourceDir;
-    public int requiresSmallestWidthDp;
-    public java.lang.String[] resourceDirs;
-    public java.lang.String scanPublicSourceDir;
-    public java.lang.String scanSourceDir;
-    public java.lang.String seInfo;
-    public java.lang.String seInfoUser;
-    public java.lang.String secondaryCpuAbi;
-    public java.lang.String secondaryNativeLibraryDir;
-    public java.lang.String[] sharedLibraryFiles;
-    public java.lang.String sourceDir;
-    public java.lang.String[] splitClassLoaderNames;
-    public android.util.SparseArray splitDependencies;
-    public java.lang.String[] splitNames;
-    public java.lang.String[] splitPublicSourceDirs;
-    public java.lang.String[] splitSourceDirs;
-    public java.util.UUID storageUuid;
-    public int targetSandboxVersion;
-    public int targetSdkVersion;
-    public java.lang.String taskAffinity;
-    public int theme;
-    public int uiOptions;
-    public int uid;
-    public int versionCode;
-    public java.lang.String volumeUuid;
-}
-
--keep class android.content.pm.AuxiliaryResolveInfo {
-    <init>(java.lang.String, boolean, android.content.Intent, java.util.List);
-    <init>(android.content.ComponentName, android.content.Intent, java.util.List);
-    <init>(android.content.ComponentName, java.lang.String, long, java.lang.String);
-
-
-
-    public android.content.Intent failureIntent;
-    public java.util.List filters;
-    public android.content.ComponentName installFailureActivity;
-    public boolean needsPhaseTwo;
-    public java.lang.String token;
-}
-
--keep class android.content.pm.AuxiliaryResolveInfo$AuxiliaryFilter {
-    <init>(android.content.IntentFilter, android.content.pm.InstantAppResolveInfo, java.lang.String, android.os.Bundle);
-    <init>(android.content.pm.InstantAppResolveInfo, java.lang.String, android.os.Bundle);
-    <init>(java.lang.String, long, java.lang.String);
-
-    public java.lang.String toString();
-
-
-    public android.os.Bundle extras;
-    public java.lang.String packageName;
-    public android.content.pm.InstantAppResolveInfo resolveInfo;
-    public java.lang.String splitName;
-    public long versionCode;
-}
-
--keep class android.content.pm.BaseParceledListSlice {
-    <init>(java.util.List);
-
-    public java.util.List getList();
-    protected abstract android.os.Parcelable$Creator readParcelableCreator(android.os.Parcel, java.lang.ClassLoader);
-    public void setInlineCountLimit(int);
-    protected abstract void writeElement(java.lang.Object, android.os.Parcel, int);
-    protected abstract void writeParcelableCreator(java.lang.Object, android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-}
-
--keep class android.content.pm.ChangedPackages {
-    <init>(int, java.util.List);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public java.util.List getPackageNames();
-    public int getSequenceNumber();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.ComponentInfo {
-    <init>();
-    <init>(android.content.pm.ComponentInfo);
-    <init>(android.os.Parcel);
-
-    protected void dumpBack(android.util.Printer, java.lang.String);
-    protected void dumpFront(android.util.Printer, java.lang.String);
-    protected android.content.pm.ApplicationInfo getApplicationInfo();
-    public int getBannerResource();
-    public android.content.ComponentName getComponentName();
-    public int getIconResource();
-    public int getLogoResource();
-    public boolean isEnabled();
-    protected android.graphics.drawable.Drawable loadDefaultBanner(android.content.pm.PackageManager);
-    public android.graphics.drawable.Drawable loadDefaultIcon(android.content.pm.PackageManager);
-    protected android.graphics.drawable.Drawable loadDefaultLogo(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadUnsafeLabel(android.content.pm.PackageManager);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public android.content.pm.ApplicationInfo applicationInfo;
-    public int descriptionRes;
-    public boolean directBootAware;
-    public boolean enabled;
-    public boolean encryptionAware;
-    public boolean exported;
-    public java.lang.String processName;
-    public java.lang.String splitName;
-}
-
--keep class android.content.pm.ConfigurationInfo {
-    <init>();
-    <init>(android.content.pm.ConfigurationInfo);
-
-    public int describeContents();
-    public java.lang.String getGlEsVersion();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int GL_ES_VERSION_UNDEFINED;
-    public static int INPUT_FEATURE_FIVE_WAY_NAV;
-    public static int INPUT_FEATURE_HARD_KEYBOARD;
-    public int reqGlEsVersion;
-    public int reqInputFeatures;
-    public int reqKeyboardType;
-    public int reqNavigation;
-    public int reqTouchScreen;
-}
-
--keep class android.content.pm.FeatureGroupInfo {
-    <init>();
-    <init>(android.content.pm.FeatureGroupInfo);
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.FeatureInfo[] features;
-}
-
--keep class android.content.pm.FeatureInfo {
-    <init>();
-    <init>(android.content.pm.FeatureInfo);
-
-    public int describeContents();
-    public java.lang.String getGlEsVersion();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_REQUIRED;
-    public static int GL_ES_VERSION_UNDEFINED;
-    public int flags;
-    public java.lang.String name;
-    public int reqGlEsVersion;
-    public int version;
-}
-
--keep class android.content.pm.IDexModuleRegisterCallback {
-
-    public abstract void onDexModuleRegistered(java.lang.String, boolean, java.lang.String);
-
-
-}
-
--keep class android.content.pm.IOnPermissionsChangeListener {
-
-    public abstract void onPermissionsChanged(int);
-
-
-}
-
--keep class android.content.pm.IPackageDataObserver {
-
-    public abstract void onRemoveCompleted(java.lang.String, boolean);
-
-
-}
-
--keep class android.content.pm.IPackageDeleteObserver {
-
-    public abstract void packageDeleted(java.lang.String, int);
-
-
-}
-
--keep class android.content.pm.IPackageDeleteObserver2 {
-
-    public abstract void onPackageDeleted(java.lang.String, int, java.lang.String);
-    public abstract void onUserActionRequired(android.content.Intent);
-
-
-}
-
--keep class android.content.pm.IPackageInstaller {
-
-    public abstract void abandonSession(int);
-    public abstract int createSession(android.content.pm.PackageInstaller$SessionParams, java.lang.String, int);
-    public abstract android.content.pm.ParceledListSlice getAllSessions(int);
-    public abstract android.content.pm.ParceledListSlice getMySessions(java.lang.String, int);
-    public abstract android.content.pm.PackageInstaller$SessionInfo getSessionInfo(int);
-    public abstract android.content.pm.IPackageInstallerSession openSession(int);
-    public abstract void registerCallback(android.content.pm.IPackageInstallerCallback, int);
-    public abstract void setPermissionsResult(int, boolean);
-    public abstract void uninstall(android.content.pm.VersionedPackage, java.lang.String, int, android.content.IntentSender, int);
-    public abstract void unregisterCallback(android.content.pm.IPackageInstallerCallback);
-    public abstract void updateSessionAppIcon(int, android.graphics.Bitmap);
-    public abstract void updateSessionAppLabel(int, java.lang.String);
-
-
-}
-
--keep class android.content.pm.IPackageInstallerCallback {
-
-    public abstract void onSessionActiveChanged(int, boolean);
-    public abstract void onSessionBadgingChanged(int);
-    public abstract void onSessionCreated(int);
-    public abstract void onSessionFinished(int, boolean);
-    public abstract void onSessionProgressChanged(int, float);
-
-
-}
-
--keep class android.content.pm.IPackageInstallerSession {
-
-    public abstract void abandon();
-    public abstract void addClientProgress(float);
-    public abstract void close();
-    public abstract void commit(android.content.IntentSender, boolean);
-    public abstract java.lang.String[] getNames();
-    public abstract android.os.ParcelFileDescriptor openRead(java.lang.String);
-    public abstract android.os.ParcelFileDescriptor openWrite(java.lang.String, long, long);
-    public abstract void removeSplit(java.lang.String);
-    public abstract void setClientProgress(float);
-    public abstract void transfer(java.lang.String);
-    public abstract void write(java.lang.String, long, long, android.os.ParcelFileDescriptor);
-
-
-}
-
--keep class android.content.pm.IPackageManager {
-
-    public abstract boolean activitySupportsIntent(android.content.ComponentName, android.content.Intent, java.lang.String);
-    public abstract void addCrossProfileIntentFilter(android.content.IntentFilter, java.lang.String, int, int, int);
-    public abstract void addOnPermissionsChangeListener(android.content.pm.IOnPermissionsChangeListener);
-    public abstract boolean addPermission(android.content.pm.PermissionInfo);
-    public abstract boolean addPermissionAsync(android.content.pm.PermissionInfo);
-    public abstract void addPersistentPreferredActivity(android.content.IntentFilter, android.content.ComponentName, int);
-    public abstract void addPreferredActivity(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName, int);
-    public abstract boolean canForwardTo(android.content.Intent, java.lang.String, int, int);
-    public abstract boolean canRequestPackageInstalls(java.lang.String, int);
-    public abstract java.lang.String[] canonicalToCurrentPackageNames(java.lang.String[]);
-    public abstract void checkPackageStartable(java.lang.String, int);
-    public abstract int checkPermission(java.lang.String, java.lang.String, int);
-    public abstract int checkSignatures(java.lang.String, java.lang.String);
-    public abstract int checkUidPermission(java.lang.String, int);
-    public abstract int checkUidSignatures(int, int);
-    public abstract void clearApplicationProfileData(java.lang.String);
-    public abstract void clearApplicationUserData(java.lang.String, android.content.pm.IPackageDataObserver, int);
-    public abstract void clearCrossProfileIntentFilters(int, java.lang.String);
-    public abstract void clearPackagePersistentPreferredActivities(java.lang.String, int);
-    public abstract void clearPackagePreferredActivities(java.lang.String);
-    public abstract java.lang.String[] currentToCanonicalPackageNames(java.lang.String[]);
-    public abstract void deleteApplicationCacheFiles(java.lang.String, android.content.pm.IPackageDataObserver);
-    public abstract void deleteApplicationCacheFilesAsUser(java.lang.String, int, android.content.pm.IPackageDataObserver);
-    public abstract void deletePackageAsUser(java.lang.String, int, android.content.pm.IPackageDeleteObserver, int, int);
-    public abstract void deletePackageVersioned(android.content.pm.VersionedPackage, android.content.pm.IPackageDeleteObserver2, int, int);
-    public abstract void deletePreloadsFileCache();
-    public abstract void dumpProfiles(java.lang.String);
-    public abstract void enterSafeMode();
-    public abstract void extendVerificationTimeout(int, int, long);
-    public abstract android.content.pm.ResolveInfo findPersistentPreferredActivity(android.content.Intent, int);
-    public abstract void finishPackageInstall(int, boolean);
-    public abstract void flushPackageRestrictionsAsUser(int);
-    public abstract void forceDexOpt(java.lang.String);
-    public abstract void freeStorage(java.lang.String, long, int, android.content.IntentSender);
-    public abstract void freeStorageAndNotify(java.lang.String, long, int, android.content.pm.IPackageDataObserver);
-    public abstract android.content.pm.ActivityInfo getActivityInfo(android.content.ComponentName, int, int);
-    public abstract android.content.pm.ParceledListSlice getAllIntentFilters(java.lang.String);
-    public abstract java.util.List getAllPackages();
-    public abstract android.content.pm.ParceledListSlice getAllPermissionGroups(int);
-    public abstract java.lang.String[] getAppOpPermissionPackages(java.lang.String);
-    public abstract int getApplicationEnabledSetting(java.lang.String, int);
-    public abstract boolean getApplicationHiddenSettingAsUser(java.lang.String, int);
-    public abstract android.content.pm.ApplicationInfo getApplicationInfo(java.lang.String, int, int);
-    public abstract android.content.pm.dex.IArtManager getArtManager();
-    public abstract boolean getBlockUninstallForUser(java.lang.String, int);
-    public abstract android.content.pm.ChangedPackages getChangedPackages(int, int);
-    public abstract int getComponentEnabledSetting(android.content.ComponentName, int);
-    public abstract byte[] getDefaultAppsBackup(int);
-    public abstract java.lang.String getDefaultBrowserPackageName(int);
-    public abstract int getFlagsForUid(int);
-    public abstract java.lang.CharSequence getHarmfulAppWarning(java.lang.String, int);
-    public abstract android.content.ComponentName getHomeActivities(java.util.List);
-    public abstract int getInstallLocation();
-    public abstract int getInstallReason(java.lang.String, int);
-    public abstract android.content.pm.ParceledListSlice getInstalledApplications(int, int);
-    public abstract android.content.pm.ParceledListSlice getInstalledPackages(int, int);
-    public abstract java.lang.String getInstallerPackageName(java.lang.String);
-    public abstract java.lang.String getInstantAppAndroidId(java.lang.String, int);
-    public abstract byte[] getInstantAppCookie(java.lang.String, int);
-    public abstract android.graphics.Bitmap getInstantAppIcon(java.lang.String, int);
-    public abstract android.content.ComponentName getInstantAppInstallerComponent();
-    public abstract android.content.ComponentName getInstantAppResolverComponent();
-    public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
-    public abstract android.content.pm.ParceledListSlice getInstantApps(int);
-    public abstract android.content.pm.InstrumentationInfo getInstrumentationInfo(android.content.ComponentName, int);
-    public abstract byte[] getIntentFilterVerificationBackup(int);
-    public abstract android.content.pm.ParceledListSlice getIntentFilterVerifications(java.lang.String);
-    public abstract int getIntentVerificationStatus(java.lang.String, int);
-    public abstract android.content.pm.KeySet getKeySetByAlias(java.lang.String, java.lang.String);
-    public abstract android.content.pm.ResolveInfo getLastChosenActivity(android.content.Intent, java.lang.String, int);
-    public abstract int getMoveStatus(int);
-    public abstract java.lang.String getNameForUid(int);
-    public abstract java.lang.String[] getNamesForUids(int[]);
-    public abstract int[] getPackageGids(java.lang.String, int, int);
-    public abstract android.content.pm.PackageInfo getPackageInfo(java.lang.String, int, int);
-    public abstract android.content.pm.PackageInfo getPackageInfoVersioned(android.content.pm.VersionedPackage, int, int);
-    public abstract android.content.pm.IPackageInstaller getPackageInstaller();
-    public abstract void getPackageSizeInfo(java.lang.String, int, android.content.pm.IPackageStatsObserver);
-    public abstract int getPackageUid(java.lang.String, int, int);
-    public abstract java.lang.String[] getPackagesForUid(int);
-    public abstract android.content.pm.ParceledListSlice getPackagesHoldingPermissions(java.lang.String[], int, int);
-    public abstract java.lang.String getPermissionControllerPackageName();
-    public abstract int getPermissionFlags(java.lang.String, java.lang.String, int);
-    public abstract byte[] getPermissionGrantBackup(int);
-    public abstract android.content.pm.PermissionGroupInfo getPermissionGroupInfo(java.lang.String, int);
-    public abstract android.content.pm.PermissionInfo getPermissionInfo(java.lang.String, java.lang.String, int);
-    public abstract android.content.pm.ParceledListSlice getPersistentApplications(int);
-    public abstract int getPreferredActivities(java.util.List, java.util.List, java.lang.String);
-    public abstract byte[] getPreferredActivityBackup(int);
-    public abstract int getPrivateFlagsForUid(int);
-    public abstract android.content.pm.ProviderInfo getProviderInfo(android.content.ComponentName, int, int);
-    public abstract android.content.pm.ActivityInfo getReceiverInfo(android.content.ComponentName, int, int);
-    public abstract android.content.pm.ServiceInfo getServiceInfo(android.content.ComponentName, int, int);
-    public abstract java.lang.String getServicesSystemSharedLibraryPackageName();
-    public abstract android.content.pm.ParceledListSlice getSharedLibraries(java.lang.String, int, int);
-    public abstract java.lang.String getSharedSystemSharedLibraryPackageName();
-    public abstract android.content.pm.KeySet getSigningKeySet(java.lang.String);
-    public abstract android.os.PersistableBundle getSuspendedPackageAppExtras(java.lang.String, int);
-    public abstract android.content.pm.ParceledListSlice getSystemAvailableFeatures();
-    public abstract java.lang.String[] getSystemSharedLibraryNames();
-    public abstract java.lang.String getSystemTextClassifierPackageName();
-    public abstract int getUidForSharedUser(java.lang.String);
-    public abstract android.content.pm.VerifierDeviceIdentity getVerifierDeviceIdentity();
-    public abstract void grantDefaultPermissionsToActiveLuiApp(java.lang.String, int);
-    public abstract void grantDefaultPermissionsToEnabledCarrierApps(java.lang.String[], int);
-    public abstract void grantDefaultPermissionsToEnabledImsServices(java.lang.String[], int);
-    public abstract void grantDefaultPermissionsToEnabledTelephonyDataServices(java.lang.String[], int);
-    public abstract void grantRuntimePermission(java.lang.String, java.lang.String, int);
-    public abstract boolean hasSigningCertificate(java.lang.String, byte[], int);
-    public abstract boolean hasSystemFeature(java.lang.String, int);
-    public abstract boolean hasSystemUidErrors();
-    public abstract boolean hasUidSigningCertificate(int, byte[], int);
-    public abstract int installExistingPackageAsUser(java.lang.String, int, int, int);
-    public abstract boolean isFirstBoot();
-    public abstract boolean isInstantApp(java.lang.String, int);
-    public abstract boolean isOnlyCoreApps();
-    public abstract boolean isPackageAvailable(java.lang.String, int);
-    public abstract boolean isPackageDeviceAdminOnAnyUser(java.lang.String);
-    public abstract boolean isPackageSignedByKeySet(java.lang.String, android.content.pm.KeySet);
-    public abstract boolean isPackageSignedByKeySetExactly(java.lang.String, android.content.pm.KeySet);
-    public abstract boolean isPackageStateProtected(java.lang.String, int);
-    public abstract boolean isPackageSuspendedForUser(java.lang.String, int);
-    public abstract boolean isPermissionEnforced(java.lang.String);
-    public abstract boolean isPermissionRevokedByPolicy(java.lang.String, java.lang.String, int);
-    public abstract boolean isProtectedBroadcast(java.lang.String);
-    public abstract boolean isSafeMode();
-    public abstract boolean isStorageLow();
-    public abstract boolean isUidPrivileged(int);
-    public abstract boolean isUpgrade();
-    public abstract void logAppProcessStartIfNeeded(java.lang.String, int, java.lang.String, java.lang.String, int);
-    public abstract int movePackage(java.lang.String, java.lang.String);
-    public abstract int movePrimaryStorage(java.lang.String);
-    public abstract android.content.pm.PackageCleanItem nextPackageToClean(android.content.pm.PackageCleanItem);
-    public abstract void notifyDexLoad(java.lang.String, java.util.List, java.util.List, java.lang.String);
-    public abstract void notifyPackageUse(java.lang.String, int);
-    public abstract boolean performDexOptMode(java.lang.String, boolean, java.lang.String, boolean, boolean, java.lang.String);
-    public abstract boolean performDexOptSecondary(java.lang.String, java.lang.String, boolean);
-    public abstract void performFstrimIfNeeded();
-    public abstract android.content.pm.ParceledListSlice queryContentProviders(java.lang.String, int, int, java.lang.String);
-    public abstract android.content.pm.ParceledListSlice queryInstrumentation(java.lang.String, int);
-    public abstract android.content.pm.ParceledListSlice queryIntentActivities(android.content.Intent, java.lang.String, int, int);
-    public abstract android.content.pm.ParceledListSlice queryIntentActivityOptions(android.content.ComponentName, android.content.Intent[], java.lang.String[], android.content.Intent, java.lang.String, int, int);
-    public abstract android.content.pm.ParceledListSlice queryIntentContentProviders(android.content.Intent, java.lang.String, int, int);
-    public abstract android.content.pm.ParceledListSlice queryIntentReceivers(android.content.Intent, java.lang.String, int, int);
-    public abstract android.content.pm.ParceledListSlice queryIntentServices(android.content.Intent, java.lang.String, int, int);
-    public abstract android.content.pm.ParceledListSlice queryPermissionsByGroup(java.lang.String, int);
-    public abstract void querySyncProviders(java.util.List, java.util.List);
-    public abstract void reconcileSecondaryDexFiles(java.lang.String);
-    public abstract void registerDexModule(java.lang.String, java.lang.String, boolean, android.content.pm.IDexModuleRegisterCallback);
-    public abstract void registerMoveCallback(android.content.pm.IPackageMoveObserver);
-    public abstract void removeOnPermissionsChangeListener(android.content.pm.IOnPermissionsChangeListener);
-    public abstract void removePermission(java.lang.String);
-    public abstract void replacePreferredActivity(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName, int);
-    public abstract void resetApplicationPreferences(int);
-    public abstract void resetRuntimePermissions();
-    public abstract android.content.pm.ProviderInfo resolveContentProvider(java.lang.String, int, int);
-    public abstract android.content.pm.ResolveInfo resolveIntent(android.content.Intent, java.lang.String, int, int);
-    public abstract android.content.pm.ResolveInfo resolveService(android.content.Intent, java.lang.String, int, int);
-    public abstract void restoreDefaultApps(byte[], int);
-    public abstract void restoreIntentFilterVerification(byte[], int);
-    public abstract void restorePermissionGrants(byte[], int);
-    public abstract void restorePreferredActivities(byte[], int);
-    public abstract void revokeDefaultPermissionsFromDisabledTelephonyDataServices(java.lang.String[], int);
-    public abstract void revokeDefaultPermissionsFromLuiApps(java.lang.String[], int);
-    public abstract void revokeRuntimePermission(java.lang.String, java.lang.String, int);
-    public abstract boolean runBackgroundDexoptJob(java.util.List);
-    public abstract void setApplicationCategoryHint(java.lang.String, int, java.lang.String);
-    public abstract void setApplicationEnabledSetting(java.lang.String, int, int, int, java.lang.String);
-    public abstract boolean setApplicationHiddenSettingAsUser(java.lang.String, boolean, int);
-    public abstract boolean setBlockUninstallForUser(java.lang.String, boolean, int);
-    public abstract void setComponentEnabledSetting(android.content.ComponentName, int, int, int);
-    public abstract boolean setDefaultBrowserPackageName(java.lang.String, int);
-    public abstract void setHarmfulAppWarning(java.lang.String, java.lang.CharSequence, int);
-    public abstract void setHomeActivity(android.content.ComponentName, int);
-    public abstract boolean setInstallLocation(int);
-    public abstract void setInstallerPackageName(java.lang.String, java.lang.String);
-    public abstract boolean setInstantAppCookie(java.lang.String, byte[], int);
-    public abstract void setLastChosenActivity(android.content.Intent, java.lang.String, int, android.content.IntentFilter, int, android.content.ComponentName);
-    public abstract void setPackageStoppedState(java.lang.String, boolean, int);
-    public abstract java.lang.String[] setPackagesSuspendedAsUser(java.lang.String[], boolean, android.os.PersistableBundle, android.os.PersistableBundle, java.lang.String, java.lang.String, int);
-    public abstract void setPermissionEnforced(java.lang.String, boolean);
-    public abstract boolean setRequiredForSystemUser(java.lang.String, boolean);
-    public abstract void setSystemAppHiddenUntilInstalled(java.lang.String, boolean);
-    public abstract boolean setSystemAppInstallState(java.lang.String, boolean, int);
-    public abstract void setUpdateAvailable(java.lang.String, boolean);
-    public abstract boolean shouldShowRequestPermissionRationale(java.lang.String, java.lang.String, int);
-    public abstract void systemReady();
-    public abstract void unregisterMoveCallback(android.content.pm.IPackageMoveObserver);
-    public abstract boolean updateIntentVerificationStatus(java.lang.String, int, int);
-    public abstract void updatePackagesIfNeeded();
-    public abstract void updatePermissionFlags(java.lang.String, java.lang.String, int, int, int);
-    public abstract void updatePermissionFlagsForAllApps(int, int, int);
-    public abstract void verifyIntentFilter(int, int, java.util.List);
-    public abstract void verifyPendingInstall(int, int);
-
-
-}
-
--keep class android.content.pm.IPackageMoveObserver {
-
-    public abstract void onCreated(int, android.os.Bundle);
-    public abstract void onStatusChanged(int, int, long);
-
-
-}
-
--keep class android.content.pm.IPackageStatsObserver {
-
-    public abstract void onGetStatsCompleted(android.content.pm.PackageStats, boolean);
-
-
-}
-
--keep class android.content.pm.InstantAppInfo {
-    <init>(android.content.pm.ApplicationInfo, java.lang.String[], java.lang.String[]);
-    <init>(java.lang.String, java.lang.CharSequence, java.lang.String[], java.lang.String[]);
-
-    public int describeContents();
-    public android.content.pm.ApplicationInfo getApplicationInfo();
-    public java.lang.String[] getGrantedPermissions();
-    public java.lang.String getPackageName();
-    public java.lang.String[] getRequestedPermissions();
-    public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadLabel(android.content.pm.PackageManager);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.InstantAppIntentFilter {
-    <init>(java.lang.String, java.util.List);
-
-    public int describeContents();
-    public java.util.List getFilters();
-    public java.lang.String getSplitName();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.InstantAppResolveInfo {
-    <init>(android.content.pm.InstantAppResolveInfo$InstantAppDigest, java.lang.String, java.util.List, int);
-    <init>(android.content.pm.InstantAppResolveInfo$InstantAppDigest, java.lang.String, java.util.List, long, android.os.Bundle);
-    <init>(java.lang.String, java.lang.String, java.util.List);
-    <init>(android.os.Bundle);
-
-    public int describeContents();
-    public byte[] getDigestBytes();
-    public int getDigestPrefix();
-    public android.os.Bundle getExtras();
-    public java.util.List getIntentFilters();
-    public long getLongVersionCode();
-    public java.lang.String getPackageName();
-    public int getVersionCode();
-    public boolean shouldLetInstallerDecide();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.InstantAppResolveInfo$InstantAppDigest {
-    <init>(java.lang.String);
-    <init>(java.lang.String, int);
-
-    public int describeContents();
-    public byte[][] getDigestBytes();
-    public int[] getDigestPrefix();
-    public int[] getDigestPrefixSecure();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.content.pm.InstantAppResolveInfo$InstantAppDigest UNDEFINED;
-}
-
--keep class android.content.pm.InstrumentationInfo {
-    <init>();
-    <init>(android.content.pm.InstrumentationInfo);
-
-    public void copyTo(android.content.pm.ApplicationInfo);
-    public int describeContents();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String credentialProtectedDataDir;
-    public java.lang.String dataDir;
-    public java.lang.String deviceProtectedDataDir;
-    public boolean functionalTest;
-    public boolean handleProfiling;
-    public java.lang.String nativeLibraryDir;
-    public java.lang.String primaryCpuAbi;
-    public java.lang.String publicSourceDir;
-    public java.lang.String secondaryCpuAbi;
-    public java.lang.String secondaryNativeLibraryDir;
-    public java.lang.String sourceDir;
-    public android.util.SparseArray splitDependencies;
-    public java.lang.String[] splitNames;
-    public java.lang.String[] splitPublicSourceDirs;
-    public java.lang.String[] splitSourceDirs;
-    public java.lang.String targetPackage;
-    public java.lang.String targetProcesses;
-}
-
--keep class android.content.pm.IntentFilterVerificationInfo {
-    <init>();
-    <init>(java.lang.String, android.util.ArraySet);
-    <init>(org.xmlpull.v1.XmlPullParser);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public java.util.Set getDomains();
-    public java.lang.String getDomainsString();
-    public java.lang.String getPackageName();
-    public int getStatus();
-    public java.lang.String getStatusString();
-    public static java.lang.String getStatusStringFromValue(long);
-    public void readFromXml(org.xmlpull.v1.XmlPullParser);
-    public void setDomains(android.util.ArraySet);
-    public void setStatus(int);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToXml(org.xmlpull.v1.XmlSerializer);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.KeySet {
-    <init>(android.os.IBinder);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.os.IBinder getToken();
-    public int hashCode();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.PackageCleanItem {
-    <init>(int, java.lang.String, boolean);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public boolean andCode;
-    public java.lang.String packageName;
-    public int userId;
-}
-
--keep class android.content.pm.PackageInfo {
-    <init>();
-
-    public static long composeLongVersionCode(int, int);
-    public int describeContents();
-    public long getLongVersionCode();
-    public boolean isOverlayPackage();
-    public boolean isStaticOverlayPackage();
-    public void setLongVersionCode(long);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int INSTALL_LOCATION_AUTO;
-    public static int INSTALL_LOCATION_INTERNAL_ONLY;
-    public static int INSTALL_LOCATION_PREFER_EXTERNAL;
-    public static int INSTALL_LOCATION_UNSPECIFIED;
-    public static int REQUESTED_PERMISSION_GRANTED;
-    public static int REQUESTED_PERMISSION_REQUIRED;
-    public android.content.pm.ActivityInfo[] activities;
-    public android.content.pm.ApplicationInfo applicationInfo;
-    public int baseRevisionCode;
-    public int compileSdkVersion;
-    public java.lang.String compileSdkVersionCodename;
-    public android.content.pm.ConfigurationInfo[] configPreferences;
-    public boolean coreApp;
-    public android.content.pm.FeatureGroupInfo[] featureGroups;
-    public long firstInstallTime;
-    public int[] gids;
-    public int installLocation;
-    public android.content.pm.InstrumentationInfo[] instrumentation;
-    public boolean isStub;
-    public long lastUpdateTime;
-    public java.lang.String overlayCategory;
-    public int overlayPriority;
-    public java.lang.String overlayTarget;
-    public java.lang.String packageName;
-    public android.content.pm.PermissionInfo[] permissions;
-    public android.content.pm.ProviderInfo[] providers;
-    public android.content.pm.ActivityInfo[] receivers;
-    public android.content.pm.FeatureInfo[] reqFeatures;
-    public java.lang.String[] requestedPermissions;
-    public int[] requestedPermissionsFlags;
-    public java.lang.String requiredAccountType;
-    public boolean requiredForAllUsers;
-    public java.lang.String restrictedAccountType;
-    public android.content.pm.ServiceInfo[] services;
-    public java.lang.String sharedUserId;
-    public int sharedUserLabel;
-    public android.content.pm.Signature[] signatures;
-    public android.content.pm.SigningInfo signingInfo;
-    public java.lang.String[] splitNames;
-    public int[] splitRevisionCodes;
-    public int versionCode;
-    public int versionCodeMajor;
-    public java.lang.String versionName;
-}
-
--keep class android.content.pm.PackageInstaller {
-    <init>(android.content.pm.IPackageInstaller, java.lang.String, int);
-
-    public void abandonSession(int);
-    public void addSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
-    public void addSessionCallback(android.content.pm.PackageInstaller$SessionCallback, android.os.Handler);
-    public int createSession(android.content.pm.PackageInstaller$SessionParams);
-    public java.util.List getAllSessions();
-    public java.util.List getMySessions();
-    public android.content.pm.PackageInstaller$SessionInfo getSessionInfo(int);
-    public android.content.pm.PackageInstaller$Session openSession(int);
-    public void registerSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
-    public void registerSessionCallback(android.content.pm.PackageInstaller$SessionCallback, android.os.Handler);
-    public void removeSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
-    public void setPermissionsResult(int, boolean);
-    public void uninstall(java.lang.String, android.content.IntentSender);
-    public void uninstall(java.lang.String, int, android.content.IntentSender);
-    public void uninstall(android.content.pm.VersionedPackage, android.content.IntentSender);
-    public void uninstall(android.content.pm.VersionedPackage, int, android.content.IntentSender);
-    public void unregisterSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
-    public void updateSessionAppIcon(int, android.graphics.Bitmap);
-    public void updateSessionAppLabel(int, java.lang.CharSequence);
-
-
-    public static java.lang.String ACTION_CONFIRM_PERMISSIONS;
-    public static java.lang.String ACTION_SESSION_COMMITTED;
-    public static java.lang.String ACTION_SESSION_DETAILS;
-    public static boolean ENABLE_REVOCABLE_FD;
-    public static java.lang.String EXTRA_CALLBACK;
-    public static java.lang.String EXTRA_LEGACY_BUNDLE;
-    public static java.lang.String EXTRA_LEGACY_STATUS;
-    public static java.lang.String EXTRA_OTHER_PACKAGE_NAME;
-    public static java.lang.String EXTRA_PACKAGE_NAME;
-    public static java.lang.String EXTRA_PACKAGE_NAMES;
-    public static java.lang.String EXTRA_SESSION;
-    public static java.lang.String EXTRA_SESSION_ID;
-    public static java.lang.String EXTRA_STATUS;
-    public static java.lang.String EXTRA_STATUS_MESSAGE;
-    public static java.lang.String EXTRA_STORAGE_PATH;
-    public static int STATUS_FAILURE;
-    public static int STATUS_FAILURE_ABORTED;
-    public static int STATUS_FAILURE_BLOCKED;
-    public static int STATUS_FAILURE_CONFLICT;
-    public static int STATUS_FAILURE_INCOMPATIBLE;
-    public static int STATUS_FAILURE_INVALID;
-    public static int STATUS_FAILURE_STORAGE;
-    public static int STATUS_PENDING_USER_ACTION;
-    public static int STATUS_SUCCESS;
-}
-
--keep class android.content.pm.PackageInstaller$Session {
-    <init>(android.content.pm.IPackageInstallerSession);
-
-    public void abandon();
-    public void addProgress(float);
-    public void close();
-    public void commit(android.content.IntentSender);
-    public void commitTransferred(android.content.IntentSender);
-    public void fsync(java.io.OutputStream);
-    public java.lang.String[] getNames();
-    public java.io.InputStream openRead(java.lang.String);
-    public java.io.OutputStream openWrite(java.lang.String, long, long);
-    public void removeSplit(java.lang.String);
-    public void setProgress(float);
-    public void setStagingProgress(float);
-    public void transfer(java.lang.String);
-    public void write(java.lang.String, long, long, android.os.ParcelFileDescriptor);
-
-
-}
-
--keep class android.content.pm.PackageInstaller$SessionCallback {
-    <init>();
-
-    public abstract void onActiveChanged(int, boolean);
-    public abstract void onBadgingChanged(int);
-    public abstract void onCreated(int);
-    public abstract void onFinished(int, boolean);
-    public abstract void onProgressChanged(int, float);
-
-
-}
-
--keep class android.content.pm.PackageInstaller$SessionInfo {
-    <init>();
-    <init>(android.os.Parcel);
-
-    public android.content.Intent createDetailsIntent();
-    public int describeContents();
-    public boolean getAllocateAggressive();
-    public boolean getAllowDowngrade();
-    public android.graphics.Bitmap getAppIcon();
-    public java.lang.CharSequence getAppLabel();
-    public java.lang.String getAppPackageName();
-    public android.content.Intent getDetailsIntent();
-    public boolean getDontKillApp();
-    public java.lang.String[] getGrantedRuntimePermissions();
-    public boolean getInstallAsFullApp(boolean);
-    public boolean getInstallAsInstantApp(boolean);
-    public boolean getInstallAsVirtualPreload();
-    public int getInstallLocation();
-    public int getInstallReason();
-    public java.lang.String getInstallerPackageName();
-    public int getMode();
-    public int getOriginatingUid();
-    public android.net.Uri getOriginatingUri();
-    public float getProgress();
-    public android.net.Uri getReferrerUri();
-    public int getSessionId();
-    public long getSize();
-    public boolean isActive();
-    public boolean isOpen();
-    public boolean isSealed();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public boolean active;
-    public android.graphics.Bitmap appIcon;
-    public java.lang.CharSequence appLabel;
-    public java.lang.String appPackageName;
-    public java.lang.String[] grantedRuntimePermissions;
-    public int installFlags;
-    public int installLocation;
-    public int installReason;
-    public java.lang.String installerPackageName;
-    public int mode;
-    public int originatingUid;
-    public android.net.Uri originatingUri;
-    public float progress;
-    public android.net.Uri referrerUri;
-    public java.lang.String resolvedBaseCodePath;
-    public boolean sealed;
-    public int sessionId;
-    public long sizeBytes;
-}
-
--keep class android.content.pm.PackageInstaller$SessionParams {
-    <init>(int);
-    <init>(android.os.Parcel);
-
-    public boolean areHiddenOptionsSet();
-    public int describeContents();
-    public void dump(com.android.internal.util.IndentingPrintWriter);
-    public void setAllocateAggressive(boolean);
-    public void setAllowDowngrade(boolean);
-    public void setAppIcon(android.graphics.Bitmap);
-    public void setAppLabel(java.lang.CharSequence);
-    public void setAppPackageName(java.lang.String);
-    public void setDontKillApp(boolean);
-    public void setGrantedRuntimePermissions(java.lang.String[]);
-    public void setInstallAsInstantApp(boolean);
-    public void setInstallAsVirtualPreload();
-    public void setInstallFlagsExternal();
-    public void setInstallFlagsForcePermissionPrompt();
-    public void setInstallFlagsInternal();
-    public void setInstallLocation(int);
-    public void setInstallReason(int);
-    public void setInstallerPackageName(java.lang.String);
-    public void setOriginatingUid(int);
-    public void setOriginatingUri(android.net.Uri);
-    public void setReferrerUri(android.net.Uri);
-    public void setSize(long);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int MODE_FULL_INSTALL;
-    public static int MODE_INHERIT_EXISTING;
-    public static int MODE_INVALID;
-    public static int UID_UNKNOWN;
-    public java.lang.String abiOverride;
-    public android.graphics.Bitmap appIcon;
-    public long appIconLastModified;
-    public java.lang.String appLabel;
-    public java.lang.String appPackageName;
-    public java.lang.String[] grantedRuntimePermissions;
-    public int installFlags;
-    public int installLocation;
-    public int installReason;
-    public java.lang.String installerPackageName;
-    public int mode;
-    public int originatingUid;
-    public android.net.Uri originatingUri;
-    public android.net.Uri referrerUri;
-    public long sizeBytes;
-    public java.lang.String volumeUuid;
-}
-
--keep class android.content.pm.PackageItemInfo {
-    <init>();
-    <init>(android.content.pm.PackageItemInfo);
-    <init>(android.os.Parcel);
-
-    protected void dumpBack(android.util.Printer, java.lang.String);
-    protected void dumpFront(android.util.Printer, java.lang.String);
-    protected android.content.pm.ApplicationInfo getApplicationInfo();
-    public android.graphics.drawable.Drawable loadBanner(android.content.pm.PackageManager);
-    protected android.graphics.drawable.Drawable loadDefaultBanner(android.content.pm.PackageManager);
-    public android.graphics.drawable.Drawable loadDefaultIcon(android.content.pm.PackageManager);
-    protected android.graphics.drawable.Drawable loadDefaultLogo(android.content.pm.PackageManager);
-    public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadLabel(android.content.pm.PackageManager);
-    public android.graphics.drawable.Drawable loadLogo(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadSafeLabel(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadSafeLabel(android.content.pm.PackageManager, float, int);
-    public android.graphics.drawable.Drawable loadUnbadgedIcon(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadUnsafeLabel(android.content.pm.PackageManager);
-    public android.content.res.XmlResourceParser loadXmlMetaData(android.content.pm.PackageManager, java.lang.String);
-    public static void setForceSafeLabels(boolean);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static float DEFAULT_MAX_LABEL_SIZE_PX;
-    public static int DUMP_FLAG_ALL;
-    public static int DUMP_FLAG_APPLICATION;
-    public static int DUMP_FLAG_DETAILS;
-    public static int SAFE_LABEL_FLAG_FIRST_LINE;
-    public static int SAFE_LABEL_FLAG_SINGLE_LINE;
-    public static int SAFE_LABEL_FLAG_TRIM;
-    public int banner;
-    public int icon;
-    public int labelRes;
-    public int logo;
-    public android.os.Bundle metaData;
-    public java.lang.String name;
-    public java.lang.CharSequence nonLocalizedLabel;
-    public java.lang.String packageName;
-    public int showUserIcon;
-}
-
--keep class android.content.pm.PackageManager {
-    <init>();
-
-    public abstract void addCrossProfileIntentFilter(android.content.IntentFilter, int, int, int);
-    public abstract void addOnPermissionsChangeListener(android.content.pm.PackageManager$OnPermissionsChangedListener);
-    public abstract void addPackageToPreferred(java.lang.String);
-    public abstract boolean addPermission(android.content.pm.PermissionInfo);
-    public abstract boolean addPermissionAsync(android.content.pm.PermissionInfo);
-    public abstract void addPreferredActivity(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName);
-    public void addPreferredActivityAsUser(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName, int);
-    public android.content.Intent buildRequestPermissionsIntent(java.lang.String[]);
-    public abstract boolean canRequestPackageInstalls();
-    public abstract java.lang.String[] canonicalToCurrentPackageNames(java.lang.String[]);
-    public abstract int checkPermission(java.lang.String, java.lang.String);
-    public abstract int checkSignatures(java.lang.String, java.lang.String);
-    public abstract int checkSignatures(int, int);
-    public abstract void clearApplicationUserData(java.lang.String, android.content.pm.IPackageDataObserver);
-    public abstract void clearCrossProfileIntentFilters(int);
-    public abstract void clearInstantAppCookie();
-    public abstract void clearPackagePreferredActivities(java.lang.String);
-    public abstract java.lang.String[] currentToCanonicalPackageNames(java.lang.String[]);
-    public abstract void deleteApplicationCacheFiles(java.lang.String, android.content.pm.IPackageDataObserver);
-    public abstract void deleteApplicationCacheFilesAsUser(java.lang.String, int, android.content.pm.IPackageDataObserver);
-    public abstract void deletePackage(java.lang.String, android.content.pm.IPackageDeleteObserver, int);
-    public abstract void deletePackageAsUser(java.lang.String, android.content.pm.IPackageDeleteObserver, int, int);
-    public static int deleteStatusToPublicStatus(int);
-    public static java.lang.String deleteStatusToString(int, java.lang.String);
-    public static java.lang.String deleteStatusToString(int);
-    public abstract void extendVerificationTimeout(int, int, long);
-    public abstract void flushPackageRestrictionsAsUser(int);
-    public void freeStorage(long, android.content.IntentSender);
-    public abstract void freeStorage(java.lang.String, long, android.content.IntentSender);
-    public void freeStorageAndNotify(long, android.content.pm.IPackageDataObserver);
-    public abstract void freeStorageAndNotify(java.lang.String, long, android.content.pm.IPackageDataObserver);
-    public abstract android.graphics.drawable.Drawable getActivityBanner(android.content.ComponentName);
-    public abstract android.graphics.drawable.Drawable getActivityBanner(android.content.Intent);
-    public abstract android.graphics.drawable.Drawable getActivityIcon(android.content.ComponentName);
-    public abstract android.graphics.drawable.Drawable getActivityIcon(android.content.Intent);
-    public abstract android.content.pm.ActivityInfo getActivityInfo(android.content.ComponentName, int);
-    public abstract android.graphics.drawable.Drawable getActivityLogo(android.content.ComponentName);
-    public abstract android.graphics.drawable.Drawable getActivityLogo(android.content.Intent);
-    public abstract java.util.List getAllIntentFilters(java.lang.String);
-    public abstract java.util.List getAllPermissionGroups(int);
-    public abstract android.graphics.drawable.Drawable getApplicationBanner(android.content.pm.ApplicationInfo);
-    public abstract android.graphics.drawable.Drawable getApplicationBanner(java.lang.String);
-    public abstract int getApplicationEnabledSetting(java.lang.String);
-    public abstract boolean getApplicationHiddenSettingAsUser(java.lang.String, android.os.UserHandle);
-    public abstract android.graphics.drawable.Drawable getApplicationIcon(android.content.pm.ApplicationInfo);
-    public abstract android.graphics.drawable.Drawable getApplicationIcon(java.lang.String);
-    public abstract android.content.pm.ApplicationInfo getApplicationInfo(java.lang.String, int);
-    public abstract android.content.pm.ApplicationInfo getApplicationInfoAsUser(java.lang.String, int, int);
-    public abstract java.lang.CharSequence getApplicationLabel(android.content.pm.ApplicationInfo);
-    public abstract android.graphics.drawable.Drawable getApplicationLogo(android.content.pm.ApplicationInfo);
-    public abstract android.graphics.drawable.Drawable getApplicationLogo(java.lang.String);
-    public android.content.pm.dex.ArtManager getArtManager();
-    public abstract android.content.Intent getCarLaunchIntentForPackage(java.lang.String);
-    public abstract android.content.pm.ChangedPackages getChangedPackages(int);
-    public abstract int getComponentEnabledSetting(android.content.ComponentName);
-    public abstract android.graphics.drawable.Drawable getDefaultActivityIcon();
-    public abstract java.lang.String getDefaultBrowserPackageNameAsUser(int);
-    public abstract android.graphics.drawable.Drawable getDrawable(java.lang.String, int, android.content.pm.ApplicationInfo);
-    public java.lang.CharSequence getHarmfulAppWarning(java.lang.String);
-    public abstract android.content.ComponentName getHomeActivities(java.util.List);
-    public abstract int getInstallReason(java.lang.String, android.os.UserHandle);
-    public abstract java.util.List getInstalledApplications(int);
-    public abstract java.util.List getInstalledApplicationsAsUser(int, int);
-    public abstract java.util.List getInstalledPackages(int);
-    public abstract java.util.List getInstalledPackagesAsUser(int, int);
-    public abstract java.lang.String getInstallerPackageName(java.lang.String);
-    public abstract java.lang.String getInstantAppAndroidId(java.lang.String, android.os.UserHandle);
-    public abstract byte[] getInstantAppCookie();
-    public abstract int getInstantAppCookieMaxBytes();
-    public abstract int getInstantAppCookieMaxSize();
-    public abstract android.graphics.drawable.Drawable getInstantAppIcon(java.lang.String);
-    public abstract android.content.ComponentName getInstantAppInstallerComponent();
-    public abstract android.content.ComponentName getInstantAppResolverSettingsComponent();
-    public abstract java.util.List getInstantApps();
-    public abstract android.content.pm.InstrumentationInfo getInstrumentationInfo(android.content.ComponentName, int);
-    public abstract java.util.List getIntentFilterVerifications(java.lang.String);
-    public abstract int getIntentVerificationStatusAsUser(java.lang.String, int);
-    public abstract android.content.pm.KeySet getKeySetByAlias(java.lang.String, java.lang.String);
-    public abstract android.content.Intent getLaunchIntentForPackage(java.lang.String);
-    public abstract android.content.Intent getLeanbackLaunchIntentForPackage(java.lang.String);
-    public abstract int getMoveStatus(int);
-    public abstract java.lang.String getNameForUid(int);
-    public abstract java.lang.String[] getNamesForUids(int[]);
-    public android.content.pm.PackageInfo getPackageArchiveInfo(java.lang.String, int);
-    public abstract java.util.List getPackageCandidateVolumes(android.content.pm.ApplicationInfo);
-    public abstract android.os.storage.VolumeInfo getPackageCurrentVolume(android.content.pm.ApplicationInfo);
-    public abstract int[] getPackageGids(java.lang.String);
-    public abstract int[] getPackageGids(java.lang.String, int);
-    public abstract android.content.pm.PackageInfo getPackageInfo(java.lang.String, int);
-    public abstract android.content.pm.PackageInfo getPackageInfo(android.content.pm.VersionedPackage, int);
-    public abstract android.content.pm.PackageInfo getPackageInfoAsUser(java.lang.String, int, int);
-    public abstract android.content.pm.PackageInstaller getPackageInstaller();
-    public void getPackageSizeInfo(java.lang.String, android.content.pm.IPackageStatsObserver);
-    public abstract void getPackageSizeInfoAsUser(java.lang.String, int, android.content.pm.IPackageStatsObserver);
-    public abstract int getPackageUid(java.lang.String, int);
-    public abstract int getPackageUidAsUser(java.lang.String, int);
-    public abstract int getPackageUidAsUser(java.lang.String, int, int);
-    public abstract java.lang.String[] getPackagesForUid(int);
-    public abstract java.util.List getPackagesHoldingPermissions(java.lang.String[], int);
-    public abstract java.lang.String getPermissionControllerPackageName();
-    public abstract int getPermissionFlags(java.lang.String, java.lang.String, android.os.UserHandle);
-    public abstract android.content.pm.PermissionGroupInfo getPermissionGroupInfo(java.lang.String, int);
-    public abstract android.content.pm.PermissionInfo getPermissionInfo(java.lang.String, int);
-    public abstract int getPreferredActivities(java.util.List, java.util.List, java.lang.String);
-    public abstract java.util.List getPreferredPackages(int);
-    public abstract java.util.List getPrimaryStorageCandidateVolumes();
-    public abstract android.os.storage.VolumeInfo getPrimaryStorageCurrentVolume();
-    public abstract android.content.pm.ProviderInfo getProviderInfo(android.content.ComponentName, int);
-    public abstract android.content.pm.ActivityInfo getReceiverInfo(android.content.ComponentName, int);
-    public abstract android.content.res.Resources getResourcesForActivity(android.content.ComponentName);
-    public abstract android.content.res.Resources getResourcesForApplication(android.content.pm.ApplicationInfo);
-    public abstract android.content.res.Resources getResourcesForApplication(java.lang.String);
-    public abstract android.content.res.Resources getResourcesForApplicationAsUser(java.lang.String, int);
-    public abstract android.content.pm.ServiceInfo getServiceInfo(android.content.ComponentName, int);
-    public abstract java.lang.String getServicesSystemSharedLibraryPackageName();
-    public abstract java.util.List getSharedLibraries(int);
-    public abstract java.util.List getSharedLibrariesAsUser(int, int);
-    public abstract java.lang.String getSharedSystemSharedLibraryPackageName();
-    public abstract android.content.pm.KeySet getSigningKeySet(java.lang.String);
-    public android.os.Bundle getSuspendedPackageAppExtras();
-    public abstract android.content.pm.FeatureInfo[] getSystemAvailableFeatures();
-    public abstract java.lang.String[] getSystemSharedLibraryNames();
-    public java.lang.String getSystemTextClassifierPackageName();
-    public abstract java.lang.CharSequence getText(java.lang.String, int, android.content.pm.ApplicationInfo);
-    public abstract int getUidForSharedUser(java.lang.String);
-    public abstract android.graphics.drawable.Drawable getUserBadgeForDensity(android.os.UserHandle, int);
-    public abstract android.graphics.drawable.Drawable getUserBadgeForDensityNoBackground(android.os.UserHandle, int);
-    public abstract android.graphics.drawable.Drawable getUserBadgedDrawableForDensity(android.graphics.drawable.Drawable, android.os.UserHandle, android.graphics.Rect, int);
-    public abstract android.graphics.drawable.Drawable getUserBadgedIcon(android.graphics.drawable.Drawable, android.os.UserHandle);
-    public abstract java.lang.CharSequence getUserBadgedLabel(java.lang.CharSequence, android.os.UserHandle);
-    public int getUserId();
-    public abstract android.content.pm.VerifierDeviceIdentity getVerifierDeviceIdentity();
-    public abstract android.content.res.XmlResourceParser getXml(java.lang.String, int, android.content.pm.ApplicationInfo);
-    public abstract void grantRuntimePermission(java.lang.String, java.lang.String, android.os.UserHandle);
-    public boolean hasSigningCertificate(java.lang.String, byte[], int);
-    public boolean hasSigningCertificate(int, byte[], int);
-    public abstract boolean hasSystemFeature(java.lang.String);
-    public abstract boolean hasSystemFeature(java.lang.String, int);
-    public abstract int installExistingPackage(java.lang.String);
-    public abstract int installExistingPackage(java.lang.String, int);
-    public abstract int installExistingPackageAsUser(java.lang.String, int);
-    public static int installStatusToPublicStatus(int);
-    public static java.lang.String installStatusToString(int, java.lang.String);
-    public static java.lang.String installStatusToString(int);
-    public abstract boolean isInstantApp();
-    public abstract boolean isInstantApp(java.lang.String);
-    public static boolean isMoveStatusFinished(int);
-    public abstract boolean isPackageAvailable(java.lang.String);
-    public boolean isPackageStateProtected(java.lang.String, int);
-    public boolean isPackageSuspended(java.lang.String);
-    public boolean isPackageSuspended();
-    public abstract boolean isPackageSuspendedForUser(java.lang.String, int);
-    public abstract boolean isPermissionReviewModeEnabled();
-    public abstract boolean isPermissionRevokedByPolicy(java.lang.String, java.lang.String);
-    public abstract boolean isSafeMode();
-    public abstract boolean isSignedBy(java.lang.String, android.content.pm.KeySet);
-    public abstract boolean isSignedByExactly(java.lang.String, android.content.pm.KeySet);
-    public abstract boolean isUpgrade();
-    public abstract android.graphics.drawable.Drawable loadItemIcon(android.content.pm.PackageItemInfo, android.content.pm.ApplicationInfo);
-    public abstract android.graphics.drawable.Drawable loadUnbadgedItemIcon(android.content.pm.PackageItemInfo, android.content.pm.ApplicationInfo);
-    public abstract int movePackage(java.lang.String, android.os.storage.VolumeInfo);
-    public abstract int movePrimaryStorage(android.os.storage.VolumeInfo);
-    public static java.lang.String permissionFlagToString(int);
-    public abstract java.util.List queryBroadcastReceivers(android.content.Intent, int);
-    public java.util.List queryBroadcastReceivers(android.content.Intent, int, int);
-    public java.util.List queryBroadcastReceiversAsUser(android.content.Intent, int, android.os.UserHandle);
-    public abstract java.util.List queryBroadcastReceiversAsUser(android.content.Intent, int, int);
-    public abstract java.util.List queryContentProviders(java.lang.String, int, int);
-    public java.util.List queryContentProviders(java.lang.String, int, int, java.lang.String);
-    public abstract java.util.List queryInstrumentation(java.lang.String, int);
-    public abstract java.util.List queryIntentActivities(android.content.Intent, int);
-    public abstract java.util.List queryIntentActivitiesAsUser(android.content.Intent, int, int);
-    public abstract java.util.List queryIntentActivityOptions(android.content.ComponentName, android.content.Intent[], android.content.Intent, int);
-    public abstract java.util.List queryIntentContentProviders(android.content.Intent, int);
-    public abstract java.util.List queryIntentContentProvidersAsUser(android.content.Intent, int, int);
-    public abstract java.util.List queryIntentServices(android.content.Intent, int);
-    public abstract java.util.List queryIntentServicesAsUser(android.content.Intent, int, int);
-    public abstract java.util.List queryPermissionsByGroup(java.lang.String, int);
-    public abstract void registerDexModule(java.lang.String, android.content.pm.PackageManager$DexModuleRegisterCallback);
-    public abstract void registerMoveCallback(android.content.pm.PackageManager$MoveCallback, android.os.Handler);
-    public abstract void removeOnPermissionsChangeListener(android.content.pm.PackageManager$OnPermissionsChangedListener);
-    public abstract void removePackageFromPreferred(java.lang.String);
-    public abstract void removePermission(java.lang.String);
-    public abstract void replacePreferredActivity(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName);
-    public void replacePreferredActivityAsUser(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName, int);
-    public abstract android.content.pm.ResolveInfo resolveActivity(android.content.Intent, int);
-    public abstract android.content.pm.ResolveInfo resolveActivityAsUser(android.content.Intent, int, int);
-    public abstract android.content.pm.ProviderInfo resolveContentProvider(java.lang.String, int);
-    public abstract android.content.pm.ProviderInfo resolveContentProviderAsUser(java.lang.String, int, int);
-    public abstract android.content.pm.ResolveInfo resolveService(android.content.Intent, int);
-    public abstract android.content.pm.ResolveInfo resolveServiceAsUser(android.content.Intent, int, int);
-    public abstract void revokeRuntimePermission(java.lang.String, java.lang.String, android.os.UserHandle);
-    public abstract void setApplicationCategoryHint(java.lang.String, int);
-    public abstract void setApplicationEnabledSetting(java.lang.String, int, int);
-    public abstract boolean setApplicationHiddenSettingAsUser(java.lang.String, boolean, android.os.UserHandle);
-    public abstract void setComponentEnabledSetting(android.content.ComponentName, int, int);
-    public abstract boolean setDefaultBrowserPackageNameAsUser(java.lang.String, int);
-    public void setHarmfulAppWarning(java.lang.String, java.lang.CharSequence);
-    public abstract void setInstallerPackageName(java.lang.String, java.lang.String);
-    public abstract boolean setInstantAppCookie(byte[]);
-    public java.lang.String[] setPackagesSuspended(java.lang.String[], boolean, android.os.PersistableBundle, android.os.PersistableBundle, java.lang.String);
-    public abstract void setUpdateAvailable(java.lang.String, boolean);
-    public abstract boolean shouldShowRequestPermissionRationale(java.lang.String);
-    public abstract void unregisterMoveCallback(android.content.pm.PackageManager$MoveCallback);
-    public abstract void updateInstantAppCookie(byte[]);
-    public abstract boolean updateIntentVerificationStatusAsUser(java.lang.String, int, int);
-    public abstract void updatePermissionFlags(java.lang.String, java.lang.String, int, int, android.os.UserHandle);
-    public abstract void verifyIntentFilter(int, int, java.util.List);
-    public abstract void verifyPendingInstall(int, int);
-
-
-    public static java.lang.String ACTION_CLEAN_EXTERNAL_STORAGE;
-    public static java.lang.String ACTION_REQUEST_PERMISSIONS;
-    public static boolean APPLY_DEFAULT_TO_DEVICE_PROTECTED_STORAGE;
-    public static int CERT_INPUT_RAW_X509;
-    public static int CERT_INPUT_SHA256;
-    public static int COMPONENT_ENABLED_STATE_DEFAULT;
-    public static int COMPONENT_ENABLED_STATE_DISABLED;
-    public static int COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED;
-    public static int COMPONENT_ENABLED_STATE_DISABLED_USER;
-    public static int COMPONENT_ENABLED_STATE_ENABLED;
-    public static int DELETE_ALL_USERS;
-    public static int DELETE_CHATTY;
-    public static int DELETE_DONT_KILL_APP;
-    public static int DELETE_FAILED_ABORTED;
-    public static int DELETE_FAILED_DEVICE_POLICY_MANAGER;
-    public static int DELETE_FAILED_INTERNAL_ERROR;
-    public static int DELETE_FAILED_OWNER_BLOCKED;
-    public static int DELETE_FAILED_USED_SHARED_LIBRARY;
-    public static int DELETE_FAILED_USER_RESTRICTED;
-    public static int DELETE_KEEP_DATA;
-    public static int DELETE_SUCCEEDED;
-    public static int DELETE_SYSTEM_APP;
-    public static int DONT_KILL_APP;
-    public static java.lang.String EXTRA_FAILURE_EXISTING_PACKAGE;
-    public static java.lang.String EXTRA_FAILURE_EXISTING_PERMISSION;
-    public static java.lang.String EXTRA_INTENT_FILTER_VERIFICATION_HOSTS;
-    public static java.lang.String EXTRA_INTENT_FILTER_VERIFICATION_ID;
-    public static java.lang.String EXTRA_INTENT_FILTER_VERIFICATION_PACKAGE_NAME;
-    public static java.lang.String EXTRA_INTENT_FILTER_VERIFICATION_URI_SCHEME;
-    public static java.lang.String EXTRA_MOVE_ID;
-    public static java.lang.String EXTRA_REQUEST_PERMISSIONS_NAMES;
-    public static java.lang.String EXTRA_REQUEST_PERMISSIONS_RESULTS;
-    public static java.lang.String EXTRA_VERIFICATION_ID;
-    public static java.lang.String EXTRA_VERIFICATION_INSTALLER_PACKAGE;
-    public static java.lang.String EXTRA_VERIFICATION_INSTALLER_UID;
-    public static java.lang.String EXTRA_VERIFICATION_INSTALL_FLAGS;
-    public static java.lang.String EXTRA_VERIFICATION_LONG_VERSION_CODE;
-    public static java.lang.String EXTRA_VERIFICATION_PACKAGE_NAME;
-    public static java.lang.String EXTRA_VERIFICATION_RESULT;
-    public static java.lang.String EXTRA_VERIFICATION_URI;
-    public static java.lang.String EXTRA_VERIFICATION_VERSION_CODE;
-    public static java.lang.String FEATURE_ACTIVITIES_ON_SECONDARY_DISPLAYS;
-    public static java.lang.String FEATURE_ADOPTABLE_STORAGE;
-    public static java.lang.String FEATURE_APP_WIDGETS;
-    public static java.lang.String FEATURE_ASSIST_GESTURE;
-    public static java.lang.String FEATURE_AUDIO_LOW_LATENCY;
-    public static java.lang.String FEATURE_AUDIO_OUTPUT;
-    public static java.lang.String FEATURE_AUDIO_PRO;
-    public static java.lang.String FEATURE_AUTOFILL;
-    public static java.lang.String FEATURE_AUTOMOTIVE;
-    public static java.lang.String FEATURE_BACKUP;
-    public static java.lang.String FEATURE_BLUETOOTH;
-    public static java.lang.String FEATURE_BLUETOOTH_LE;
-    public static java.lang.String FEATURE_BROADCAST_RADIO;
-    public static java.lang.String FEATURE_CAMERA;
-    public static java.lang.String FEATURE_CAMERA_ANY;
-    public static java.lang.String FEATURE_CAMERA_AR;
-    public static java.lang.String FEATURE_CAMERA_AUTOFOCUS;
-    public static java.lang.String FEATURE_CAMERA_CAPABILITY_MANUAL_POST_PROCESSING;
-    public static java.lang.String FEATURE_CAMERA_CAPABILITY_MANUAL_SENSOR;
-    public static java.lang.String FEATURE_CAMERA_CAPABILITY_RAW;
-    public static java.lang.String FEATURE_CAMERA_EXTERNAL;
-    public static java.lang.String FEATURE_CAMERA_FLASH;
-    public static java.lang.String FEATURE_CAMERA_FRONT;
-    public static java.lang.String FEATURE_CAMERA_LEVEL_FULL;
-    public static java.lang.String FEATURE_CANT_SAVE_STATE;
-    public static java.lang.String FEATURE_COMPANION_DEVICE_SETUP;
-    public static java.lang.String FEATURE_CONNECTION_SERVICE;
-    public static java.lang.String FEATURE_CONSUMER_IR;
-    public static java.lang.String FEATURE_CTS;
-    public static java.lang.String FEATURE_DEVICE_ADMIN;
-    public static java.lang.String FEATURE_DEVICE_ID_ATTESTATION;
-    public static java.lang.String FEATURE_EMBEDDED;
-    public static java.lang.String FEATURE_ETHERNET;
-    public static java.lang.String FEATURE_FAKETOUCH;
-    public static java.lang.String FEATURE_FAKETOUCH_MULTITOUCH_DISTINCT;
-    public static java.lang.String FEATURE_FAKETOUCH_MULTITOUCH_JAZZHAND;
-    public static java.lang.String FEATURE_FILE_BASED_ENCRYPTION;
-    public static java.lang.String FEATURE_FINGERPRINT;
-    public static java.lang.String FEATURE_FREEFORM_WINDOW_MANAGEMENT;
-    public static java.lang.String FEATURE_GAMEPAD;
-    public static java.lang.String FEATURE_HDMI_CEC;
-    public static java.lang.String FEATURE_HIFI_SENSORS;
-    public static java.lang.String FEATURE_HOME_SCREEN;
-    public static java.lang.String FEATURE_INPUT_METHODS;
-    public static java.lang.String FEATURE_LEANBACK;
-    public static java.lang.String FEATURE_LEANBACK_ONLY;
-    public static java.lang.String FEATURE_LIVE_TV;
-    public static java.lang.String FEATURE_LIVE_WALLPAPER;
-    public static java.lang.String FEATURE_LOCATION;
-    public static java.lang.String FEATURE_LOCATION_GPS;
-    public static java.lang.String FEATURE_LOCATION_NETWORK;
-    public static java.lang.String FEATURE_LOWPAN;
-    public static java.lang.String FEATURE_MANAGED_PROFILES;
-    public static java.lang.String FEATURE_MANAGED_USERS;
-    public static java.lang.String FEATURE_MICROPHONE;
-    public static java.lang.String FEATURE_MIDI;
-    public static java.lang.String FEATURE_NFC;
-    public static java.lang.String FEATURE_NFC_ANY;
-    public static java.lang.String FEATURE_NFC_HCE;
-    public static java.lang.String FEATURE_NFC_HOST_CARD_EMULATION;
-    public static java.lang.String FEATURE_NFC_HOST_CARD_EMULATION_NFCF;
-    public static java.lang.String FEATURE_OPENGLES_EXTENSION_PACK;
-    public static java.lang.String FEATURE_PC;
-    public static java.lang.String FEATURE_PICTURE_IN_PICTURE;
-    public static java.lang.String FEATURE_PRINTING;
-    public static java.lang.String FEATURE_RAM_LOW;
-    public static java.lang.String FEATURE_RAM_NORMAL;
-    public static java.lang.String FEATURE_SCREEN_LANDSCAPE;
-    public static java.lang.String FEATURE_SCREEN_PORTRAIT;
-    public static java.lang.String FEATURE_SECURELY_REMOVES_USERS;
-    public static java.lang.String FEATURE_SENSOR_ACCELEROMETER;
-    public static java.lang.String FEATURE_SENSOR_AMBIENT_TEMPERATURE;
-    public static java.lang.String FEATURE_SENSOR_BAROMETER;
-    public static java.lang.String FEATURE_SENSOR_COMPASS;
-    public static java.lang.String FEATURE_SENSOR_GYROSCOPE;
-    public static java.lang.String FEATURE_SENSOR_HEART_RATE;
-    public static java.lang.String FEATURE_SENSOR_HEART_RATE_ECG;
-    public static java.lang.String FEATURE_SENSOR_LIGHT;
-    public static java.lang.String FEATURE_SENSOR_PROXIMITY;
-    public static java.lang.String FEATURE_SENSOR_RELATIVE_HUMIDITY;
-    public static java.lang.String FEATURE_SENSOR_STEP_COUNTER;
-    public static java.lang.String FEATURE_SENSOR_STEP_DETECTOR;
-    public static java.lang.String FEATURE_SIP;
-    public static java.lang.String FEATURE_SIP_VOIP;
-    public static java.lang.String FEATURE_STRONGBOX_KEYSTORE;
-    public static java.lang.String FEATURE_TELEPHONY;
-    public static java.lang.String FEATURE_TELEPHONY_CARRIERLOCK;
-    public static java.lang.String FEATURE_TELEPHONY_CDMA;
-    public static java.lang.String FEATURE_TELEPHONY_EUICC;
-    public static java.lang.String FEATURE_TELEPHONY_GSM;
-    public static java.lang.String FEATURE_TELEPHONY_MBMS;
-    public static java.lang.String FEATURE_TELEVISION;
-    public static java.lang.String FEATURE_TOUCHSCREEN;
-    public static java.lang.String FEATURE_TOUCHSCREEN_MULTITOUCH;
-    public static java.lang.String FEATURE_TOUCHSCREEN_MULTITOUCH_DISTINCT;
-    public static java.lang.String FEATURE_TOUCHSCREEN_MULTITOUCH_JAZZHAND;
-    public static java.lang.String FEATURE_USB_ACCESSORY;
-    public static java.lang.String FEATURE_USB_HOST;
-    public static java.lang.String FEATURE_VERIFIED_BOOT;
-    public static java.lang.String FEATURE_VOICE_RECOGNIZERS;
-    public static java.lang.String FEATURE_VR_HEADTRACKING;
-    public static java.lang.String FEATURE_VR_MODE;
-    public static java.lang.String FEATURE_VR_MODE_HIGH_PERFORMANCE;
-    public static java.lang.String FEATURE_VULKAN_HARDWARE_COMPUTE;
-    public static java.lang.String FEATURE_VULKAN_HARDWARE_LEVEL;
-    public static java.lang.String FEATURE_VULKAN_HARDWARE_VERSION;
-    public static java.lang.String FEATURE_WATCH;
-    public static java.lang.String FEATURE_WEBVIEW;
-    public static java.lang.String FEATURE_WIFI;
-    public static java.lang.String FEATURE_WIFI_AWARE;
-    public static java.lang.String FEATURE_WIFI_DIRECT;
-    public static java.lang.String FEATURE_WIFI_PASSPOINT;
-    public static java.lang.String FEATURE_WIFI_RTT;
-    public static int FLAG_PERMISSION_GRANTED_BY_DEFAULT;
-    public static int FLAG_PERMISSION_POLICY_FIXED;
-    public static int FLAG_PERMISSION_REVIEW_REQUIRED;
-    public static int FLAG_PERMISSION_REVOKE_ON_UPGRADE;
-    public static int FLAG_PERMISSION_SYSTEM_FIXED;
-    public static int FLAG_PERMISSION_USER_FIXED;
-    public static int FLAG_PERMISSION_USER_SET;
-    public static int GET_ACTIVITIES;
-    public static int GET_CONFIGURATIONS;
-    public static int GET_DISABLED_COMPONENTS;
-    public static int GET_DISABLED_UNTIL_USED_COMPONENTS;
-    public static int GET_GIDS;
-    public static int GET_INSTRUMENTATION;
-    public static int GET_INTENT_FILTERS;
-    public static int GET_META_DATA;
-    public static int GET_PERMISSIONS;
-    public static int GET_PROVIDERS;
-    public static int GET_RECEIVERS;
-    public static int GET_RESOLVED_FILTER;
-    public static int GET_SERVICES;
-    public static int GET_SHARED_LIBRARY_FILES;
-    public static int GET_SIGNATURES;
-    public static int GET_SIGNING_CERTIFICATES;
-    public static int GET_UNINSTALLED_PACKAGES;
-    public static int GET_URI_PERMISSION_PATTERNS;
-    public static int INSTALL_ALLOCATE_AGGRESSIVE;
-    public static int INSTALL_ALLOW_DOWNGRADE;
-    public static int INSTALL_ALLOW_TEST;
-    public static int INSTALL_ALL_USERS;
-    public static int INSTALL_DONT_KILL_APP;
-    public static int INSTALL_EXTERNAL;
-    public static int INSTALL_FAILED_ABORTED;
-    public static int INSTALL_FAILED_ALREADY_EXISTS;
-    public static int INSTALL_FAILED_BAD_DEX_METADATA;
-    public static int INSTALL_FAILED_CONFLICTING_PROVIDER;
-    public static int INSTALL_FAILED_CONTAINER_ERROR;
-    public static int INSTALL_FAILED_CPU_ABI_INCOMPATIBLE;
-    public static int INSTALL_FAILED_DEXOPT;
-    public static int INSTALL_FAILED_DUPLICATE_PACKAGE;
-    public static int INSTALL_FAILED_DUPLICATE_PERMISSION;
-    public static int INSTALL_FAILED_INSTANT_APP_INVALID;
-    public static int INSTALL_FAILED_INSUFFICIENT_STORAGE;
-    public static int INSTALL_FAILED_INTERNAL_ERROR;
-    public static int INSTALL_FAILED_INVALID_APK;
-    public static int INSTALL_FAILED_INVALID_INSTALL_LOCATION;
-    public static int INSTALL_FAILED_INVALID_URI;
-    public static int INSTALL_FAILED_MEDIA_UNAVAILABLE;
-    public static int INSTALL_FAILED_MISSING_FEATURE;
-    public static int INSTALL_FAILED_MISSING_SHARED_LIBRARY;
-    public static int INSTALL_FAILED_NEWER_SDK;
-    public static int INSTALL_FAILED_NO_MATCHING_ABIS;
-    public static int INSTALL_FAILED_NO_SHARED_USER;
-    public static int INSTALL_FAILED_OLDER_SDK;
-    public static int INSTALL_FAILED_PACKAGE_CHANGED;
-    public static int INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE;
-    public static int INSTALL_FAILED_REPLACE_COULDNT_DELETE;
-    public static int INSTALL_FAILED_SANDBOX_VERSION_DOWNGRADE;
-    public static int INSTALL_FAILED_SHARED_USER_INCOMPATIBLE;
-    public static int INSTALL_FAILED_TEST_ONLY;
-    public static int INSTALL_FAILED_UID_CHANGED;
-    public static int INSTALL_FAILED_UPDATE_INCOMPATIBLE;
-    public static int INSTALL_FAILED_USER_RESTRICTED;
-    public static int INSTALL_FAILED_VERIFICATION_FAILURE;
-    public static int INSTALL_FAILED_VERIFICATION_TIMEOUT;
-    public static int INSTALL_FAILED_VERSION_DOWNGRADE;
-    public static int INSTALL_FORCE_PERMISSION_PROMPT;
-    public static int INSTALL_FORCE_SDK;
-    public static int INSTALL_FORCE_VOLUME_UUID;
-    public static int INSTALL_FORWARD_LOCK;
-    public static int INSTALL_FROM_ADB;
-    public static int INSTALL_FULL_APP;
-    public static int INSTALL_GRANT_RUNTIME_PERMISSIONS;
-    public static int INSTALL_INSTANT_APP;
-    public static int INSTALL_INTERNAL;
-    public static int INSTALL_PARSE_FAILED_BAD_MANIFEST;
-    public static int INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME;
-    public static int INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID;
-    public static int INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING;
-    public static int INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES;
-    public static int INSTALL_PARSE_FAILED_MANIFEST_EMPTY;
-    public static int INSTALL_PARSE_FAILED_MANIFEST_MALFORMED;
-    public static int INSTALL_PARSE_FAILED_NOT_APK;
-    public static int INSTALL_PARSE_FAILED_NO_CERTIFICATES;
-    public static int INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION;
-    public static int INSTALL_REASON_DEVICE_RESTORE;
-    public static int INSTALL_REASON_DEVICE_SETUP;
-    public static int INSTALL_REASON_POLICY;
-    public static int INSTALL_REASON_UNKNOWN;
-    public static int INSTALL_REASON_USER;
-    public static int INSTALL_REPLACE_EXISTING;
-    public static int INSTALL_SUCCEEDED;
-    public static int INSTALL_VIRTUAL_PRELOAD;
-    public static int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS;
-    public static int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK;
-    public static int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK;
-    public static int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER;
-    public static int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED;
-    public static int INTENT_FILTER_VERIFICATION_FAILURE;
-    public static int INTENT_FILTER_VERIFICATION_SUCCESS;
-    public static int MASK_PERMISSION_FLAGS;
-    public static int MATCH_ALL;
-    public static int MATCH_ANY_USER;
-    public static int MATCH_DEBUG_TRIAGED_MISSING;
-    public static int MATCH_DEFAULT_ONLY;
-    public static int MATCH_DIRECT_BOOT_AWARE;
-    public static int MATCH_DIRECT_BOOT_UNAWARE;
-    public static int MATCH_DISABLED_COMPONENTS;
-    public static int MATCH_DISABLED_UNTIL_USED_COMPONENTS;
-    public static int MATCH_EXPLICITLY_VISIBLE_ONLY;
-    public static int MATCH_FACTORY_ONLY;
-    public static int MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS;
-    public static int MATCH_INSTANT;
-    public static int MATCH_KNOWN_PACKAGES;
-    public static int MATCH_STATIC_SHARED_LIBRARIES;
-    public static int MATCH_SYSTEM_ONLY;
-    public static int MATCH_UNINSTALLED_PACKAGES;
-    public static int MATCH_VISIBLE_TO_INSTANT_APP_ONLY;
-    public static long MAXIMUM_VERIFICATION_TIMEOUT;
-    public static int MOVE_EXTERNAL_MEDIA;
-    public static int MOVE_FAILED_3RD_PARTY_NOT_ALLOWED_ON_INTERNAL;
-    public static int MOVE_FAILED_DEVICE_ADMIN;
-    public static int MOVE_FAILED_DOESNT_EXIST;
-    public static int MOVE_FAILED_FORWARD_LOCKED;
-    public static int MOVE_FAILED_INSUFFICIENT_STORAGE;
-    public static int MOVE_FAILED_INTERNAL_ERROR;
-    public static int MOVE_FAILED_INVALID_LOCATION;
-    public static int MOVE_FAILED_LOCKED_USER;
-    public static int MOVE_FAILED_OPERATION_PENDING;
-    public static int MOVE_FAILED_SYSTEM_PACKAGE;
-    public static int MOVE_INTERNAL;
-    public static int MOVE_SUCCEEDED;
-    public static int NOTIFY_PACKAGE_USE_ACTIVITY;
-    public static int NOTIFY_PACKAGE_USE_BACKUP;
-    public static int NOTIFY_PACKAGE_USE_BROADCAST_RECEIVER;
-    public static int NOTIFY_PACKAGE_USE_CONTENT_PROVIDER;
-    public static int NOTIFY_PACKAGE_USE_CROSS_PACKAGE;
-    public static int NOTIFY_PACKAGE_USE_FOREGROUND_SERVICE;
-    public static int NOTIFY_PACKAGE_USE_INSTRUMENTATION;
-    public static int NOTIFY_PACKAGE_USE_REASONS_COUNT;
-    public static int NOTIFY_PACKAGE_USE_SERVICE;
-    public static int NO_NATIVE_LIBRARIES;
-    public static int ONLY_IF_NO_MATCH_FOUND;
-    public static int PERMISSION_DENIED;
-    public static int PERMISSION_GRANTED;
-    public static int SIGNATURE_FIRST_NOT_SIGNED;
-    public static int SIGNATURE_MATCH;
-    public static int SIGNATURE_NEITHER_SIGNED;
-    public static int SIGNATURE_NO_MATCH;
-    public static int SIGNATURE_SECOND_NOT_SIGNED;
-    public static int SIGNATURE_UNKNOWN_PACKAGE;
-    public static int SKIP_CURRENT_PROFILE;
-    public static java.lang.String SYSTEM_SHARED_LIBRARY_SERVICES;
-    public static java.lang.String SYSTEM_SHARED_LIBRARY_SHARED;
-    public static int VERIFICATION_ALLOW;
-    public static int VERIFICATION_ALLOW_WITHOUT_SUFFICIENT;
-    public static int VERIFICATION_REJECT;
-    public static int VERSION_CODE_HIGHEST;
-}
-
--keep class android.content.pm.PackageManager$DexModuleRegisterCallback {
-    <init>();
-
-    public abstract void onDexModuleRegistered(java.lang.String, boolean, java.lang.String);
-
-
-}
-
--keep class android.content.pm.PackageManager$MoveCallback {
-    <init>();
-
-    public void onCreated(int, android.os.Bundle);
-    public abstract void onStatusChanged(int, int, long);
-
-
-}
-
--keep class android.content.pm.PackageManager$NameNotFoundException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class android.content.pm.PackageManager$OnPermissionsChangedListener {
-
-    public abstract void onPermissionsChanged(int);
-
-
-}
-
--keep class android.content.pm.PackageParser {
-    <init>();
-
-    public static void collectCertificates(android.content.pm.PackageParser$Package, boolean);
-    public static int computeMinSdkVersion(int, java.lang.String, int, java.lang.String[], java.lang.String[]);
-    public static int computeTargetSdkVersion(int, java.lang.String, java.lang.String[], java.lang.String[], boolean);
-    protected android.content.pm.PackageParser$Package fromCacheEntry(byte[]);
-    public static android.content.pm.PackageParser$Package fromCacheEntryStatic(byte[]);
-    public static android.content.pm.ActivityInfo generateActivityInfo(android.content.pm.PackageParser$Activity, int, android.content.pm.PackageUserState, int);
-    public static android.content.pm.ActivityInfo generateActivityInfo(android.content.pm.ActivityInfo, int, android.content.pm.PackageUserState, int);
-    public static android.content.pm.ApplicationInfo generateApplicationInfo(android.content.pm.PackageParser$Package, int, android.content.pm.PackageUserState);
-    public static android.content.pm.ApplicationInfo generateApplicationInfo(android.content.pm.PackageParser$Package, int, android.content.pm.PackageUserState, int);
-    public static android.content.pm.ApplicationInfo generateApplicationInfo(android.content.pm.ApplicationInfo, int, android.content.pm.PackageUserState, int);
-    public static android.content.pm.InstrumentationInfo generateInstrumentationInfo(android.content.pm.PackageParser$Instrumentation, int);
-    public static android.content.pm.PackageInfo generatePackageInfo(android.content.pm.PackageParser$Package, int[], int, long, long, java.util.Set, android.content.pm.PackageUserState);
-    public static android.content.pm.PackageInfo generatePackageInfo(android.content.pm.PackageParser$Package, int[], int, long, long, java.util.Set, android.content.pm.PackageUserState, int);
-    public static android.content.pm.PermissionGroupInfo generatePermissionGroupInfo(android.content.pm.PackageParser$PermissionGroup, int);
-    public static android.content.pm.PermissionInfo generatePermissionInfo(android.content.pm.PackageParser$Permission, int);
-    public static android.content.pm.ProviderInfo generateProviderInfo(android.content.pm.PackageParser$Provider, int, android.content.pm.PackageUserState, int);
-    public static android.content.pm.ServiceInfo generateServiceInfo(android.content.pm.PackageParser$Service, int, android.content.pm.PackageUserState, int);
-    public static int getActivityConfigChanges(int, int);
-    public static boolean isApkFile(java.io.File);
-    public static boolean isApkPath(java.lang.String);
-    public static boolean isAvailable(android.content.pm.PackageUserState);
-    public static android.content.pm.PackageParser$ApkLite parseApkLite(java.io.File, int);
-    public static android.content.pm.PackageParser$ApkLite parseApkLite(java.io.FileDescriptor, java.lang.String, int);
-    public android.content.pm.PackageParser$Package parseMonolithicPackage(java.io.File, int);
-    public android.content.pm.PackageParser$Package parsePackage(java.io.File, int, boolean);
-    public android.content.pm.PackageParser$Package parsePackage(java.io.File, int);
-    public static android.content.pm.PackageParser$PackageLite parsePackageLite(java.io.File, int);
-    public static java.security.PublicKey parsePublicKey(java.lang.String);
-    public void setCacheDir(java.io.File);
-    public void setCallback(android.content.pm.PackageParser$Callback);
-    public static void setCompatibilityModeEnabled(boolean);
-    public void setDisplayMetrics(android.util.DisplayMetrics);
-    public void setOnlyCoreApps(boolean);
-    public void setSeparateProcesses(java.lang.String[]);
-    protected byte[] toCacheEntry(android.content.pm.PackageParser$Package);
-    public static byte[] toCacheEntryStatic(android.content.pm.PackageParser$Package);
-    public static android.util.ArraySet toSigningKeys(android.content.pm.Signature[]);
-
-
-    public static java.lang.String ANDROID_MANIFEST_FILENAME;
-    public static java.lang.String APK_FILE_EXTENSION;
-    public static android.content.pm.PackageParser$NewPermissionInfo[] NEW_PERMISSIONS;
-    public static int PARSE_CHATTY;
-    public static int PARSE_COLLECT_CERTIFICATES;
-    public static int PARSE_ENFORCE_CODE;
-    public static int PARSE_EXTERNAL_STORAGE;
-    public static int PARSE_FORCE_SDK;
-    public static int PARSE_FORWARD_LOCK;
-    public static int PARSE_IGNORE_PROCESSES;
-    public static int PARSE_IS_SYSTEM_DIR;
-    public static int PARSE_MUST_BE_APK;
-    public static android.content.pm.PackageParser$SplitPermissionInfo[] SPLIT_PERMISSIONS;
-    public static java.util.concurrent.atomic.AtomicInteger sCachedPackageReadCount;
-}
-
--keep class android.content.pm.PackageParser$Activity {
-    <init>(android.content.pm.PackageParser$ParseComponentArgs, android.content.pm.ActivityInfo);
-
-    public int describeContents();
-    public void setPackageName(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.ActivityInfo info;
-}
-
--keep class android.content.pm.PackageParser$ActivityIntentInfo {
-    <init>(android.content.pm.PackageParser$Activity);
-    <init>(android.os.Parcel);
-
-    public java.lang.String toString();
-
-
-    public android.content.pm.PackageParser$Activity activity;
-}
-
--keep class android.content.pm.PackageParser$ApkLite {
-    <init>(java.lang.String, java.lang.String, java.lang.String, boolean, java.lang.String, java.lang.String, int, int, int, int, java.util.List, android.content.pm.PackageParser$SigningDetails, boolean, boolean, boolean, boolean, boolean, boolean);
-
-    public long getLongVersionCode();
-
-
-    public java.lang.String codePath;
-    public java.lang.String configForSplit;
-    public boolean coreApp;
-    public boolean debuggable;
-    public boolean extractNativeLibs;
-    public int installLocation;
-    public boolean isFeatureSplit;
-    public boolean isolatedSplits;
-    public boolean multiArch;
-    public java.lang.String packageName;
-    public int revisionCode;
-    public android.content.pm.PackageParser$SigningDetails signingDetails;
-    public java.lang.String splitName;
-    public boolean use32bitAbi;
-    public java.lang.String usesSplitName;
-    public android.content.pm.VerifierInfo[] verifiers;
-    public int versionCode;
-    public int versionCodeMajor;
-}
-
--keep class android.content.pm.PackageParser$Callback {
-
-    public abstract java.lang.String[] getOverlayApks(java.lang.String);
-    public abstract java.lang.String[] getOverlayPaths(java.lang.String, java.lang.String);
-    public abstract boolean hasFeature(java.lang.String);
-
-
-}
-
--keep class android.content.pm.PackageParser$Component {
-    <init>(android.content.pm.PackageParser$Package);
-    <init>(android.content.pm.PackageParser$ParsePackageItemArgs, android.content.pm.PackageItemInfo);
-    <init>(android.content.pm.PackageParser$ParseComponentArgs, android.content.pm.ComponentInfo);
-    <init>(android.content.pm.PackageParser$Component);
-    <init>(android.os.Parcel);
-
-    public void appendComponentShortName(java.lang.StringBuilder);
-    public android.content.ComponentName getComponentName();
-    public void printComponentShortName(java.io.PrintWriter);
-    public void setPackageName(java.lang.String);
-    protected void writeToParcel(android.os.Parcel, int);
-
-
-    public java.lang.String className;
-    public java.util.ArrayList intents;
-    public android.os.Bundle metaData;
-    public int order;
-    public android.content.pm.PackageParser$Package owner;
-}
-
--keep class android.content.pm.PackageParser$Instrumentation {
-    <init>(android.content.pm.PackageParser$ParsePackageItemArgs, android.content.pm.InstrumentationInfo);
-
-    public int describeContents();
-    public void setPackageName(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.InstrumentationInfo info;
-}
-
--keep class android.content.pm.PackageParser$IntentInfo {
-    <init>();
-    <init>(android.os.Parcel);
-
-    public void writeIntentInfoToParcel(android.os.Parcel, int);
-
-
-    public int banner;
-    public boolean hasDefault;
-    public int icon;
-    public int labelRes;
-    public int logo;
-    public java.lang.CharSequence nonLocalizedLabel;
-    public int preferred;
-}
-
--keep class android.content.pm.PackageParser$NewPermissionInfo {
-    <init>(java.lang.String, int, int);
-
-
-
-    public int fileVersion;
-    public java.lang.String name;
-    public int sdkVersion;
-}
-
--keep class android.content.pm.PackageParser$Package {
-    <init>(java.lang.String);
-    <init>(android.os.Parcel);
-
-    public boolean canHaveOatDir();
-    public int describeContents();
-    public java.util.List getAllCodePaths();
-    public java.util.List getAllCodePathsExcludingResourceOnly();
-    public java.util.List getChildPackageNames();
-    public long getLatestForegroundPackageUseTimeInMills();
-    public long getLatestPackageUseTimeInMills();
-    public long getLongVersionCode();
-    public boolean hasChildPackage(java.lang.String);
-    public boolean hasComponentClassName(java.lang.String);
-    public boolean isExternal();
-    public boolean isForwardLocked();
-    public boolean isLibrary();
-    public boolean isMatch(int);
-    public boolean isOem();
-    public boolean isPrivileged();
-    public boolean isProduct();
-    public boolean isSystem();
-    public boolean isUpdatedSystemApp();
-    public boolean isVendor();
-    public void setApplicationInfoBaseCodePath(java.lang.String);
-    public void setApplicationInfoBaseResourcePath(java.lang.String);
-    public void setApplicationInfoCodePath(java.lang.String);
-    public void setApplicationInfoFlags(int, int);
-    public void setApplicationInfoResourcePath(java.lang.String);
-    public void setApplicationInfoSplitCodePaths(java.lang.String[]);
-    public void setApplicationInfoSplitResourcePaths(java.lang.String[]);
-    public void setApplicationVolumeUuid(java.lang.String);
-    public void setBaseCodePath(java.lang.String);
-    public void setCodePath(java.lang.String);
-    public void setPackageName(java.lang.String);
-    public void setSigningDetails(android.content.pm.PackageParser$SigningDetails);
-    public void setSplitCodePaths(java.lang.String[]);
-    public void setUse32bitAbi(boolean);
-    public void setVolumeUuid(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.util.ArrayList activities;
-    public android.content.pm.ApplicationInfo applicationInfo;
-    public java.lang.String baseCodePath;
-    public boolean baseHardwareAccelerated;
-    public int baseRevisionCode;
-    public java.util.ArrayList childPackages;
-    public java.lang.String codePath;
-    public java.util.ArrayList configPreferences;
-    public boolean coreApp;
-    public java.lang.String cpuAbiOverride;
-    public java.util.ArrayList featureGroups;
-    public int installLocation;
-    public java.util.ArrayList instrumentation;
-    public boolean isStub;
-    public java.util.ArrayList libraryNames;
-    public java.util.ArrayList mAdoptPermissions;
-    public android.os.Bundle mAppMetaData;
-    public int mCompileSdkVersion;
-    public java.lang.String mCompileSdkVersionCodename;
-    public java.lang.Object mExtras;
-    public android.util.ArrayMap mKeySetMapping;
-    public long[] mLastPackageUsageTimeInMills;
-    public java.util.ArrayList mOriginalPackages;
-    public java.lang.String mOverlayCategory;
-    public boolean mOverlayIsStatic;
-    public int mOverlayPriority;
-    public java.lang.String mOverlayTarget;
-    public int mPreferredOrder;
-    public java.lang.String mRealPackage;
-    public java.lang.String mRequiredAccountType;
-    public boolean mRequiredForAllUsers;
-    public java.lang.String mRestrictedAccountType;
-    public java.lang.String mSharedUserId;
-    public int mSharedUserLabel;
-    public android.content.pm.PackageParser$SigningDetails mSigningDetails;
-    public android.util.ArraySet mUpgradeKeySets;
-    public int mVersionCode;
-    public int mVersionCodeMajor;
-    public java.lang.String mVersionName;
-    public java.lang.String manifestPackageName;
-    public java.lang.String packageName;
-    public android.content.pm.PackageParser$Package parentPackage;
-    public java.util.ArrayList permissionGroups;
-    public java.util.ArrayList permissions;
-    public java.util.ArrayList preferredActivityFilters;
-    public java.util.ArrayList protectedBroadcasts;
-    public java.util.ArrayList providers;
-    public java.util.ArrayList receivers;
-    public java.util.ArrayList reqFeatures;
-    public java.util.ArrayList requestedPermissions;
-    public byte[] restrictUpdateHash;
-    public java.util.ArrayList services;
-    public java.lang.String[] splitCodePaths;
-    public int[] splitFlags;
-    public java.lang.String[] splitNames;
-    public int[] splitPrivateFlags;
-    public int[] splitRevisionCodes;
-    public java.lang.String staticSharedLibName;
-    public long staticSharedLibVersion;
-    public boolean use32bitAbi;
-    public java.util.ArrayList usesLibraries;
-    public java.lang.String[] usesLibraryFiles;
-    public java.util.ArrayList usesOptionalLibraries;
-    public java.util.ArrayList usesStaticLibraries;
-    public java.lang.String[][] usesStaticLibrariesCertDigests;
-    public long[] usesStaticLibrariesVersions;
-    public boolean visibleToInstantApps;
-    public java.lang.String volumeUuid;
-}
-
--keep class android.content.pm.PackageParser$PackageLite {
-    <init>(java.lang.String, android.content.pm.PackageParser$ApkLite, java.lang.String[], boolean[], java.lang.String[], java.lang.String[], java.lang.String[], int[]);
-
-    public java.util.List getAllCodePaths();
-
-
-    public java.lang.String baseCodePath;
-    public int baseRevisionCode;
-    public java.lang.String codePath;
-    public java.lang.String[] configForSplit;
-    public boolean coreApp;
-    public boolean debuggable;
-    public boolean extractNativeLibs;
-    public int installLocation;
-    public boolean[] isFeatureSplits;
-    public boolean isolatedSplits;
-    public boolean multiArch;
-    public java.lang.String packageName;
-    public java.lang.String[] splitCodePaths;
-    public java.lang.String[] splitNames;
-    public int[] splitRevisionCodes;
-    public boolean use32bitAbi;
-    public java.lang.String[] usesSplitNames;
-    public android.content.pm.VerifierInfo[] verifiers;
-    public int versionCode;
-    public int versionCodeMajor;
-}
-
--keep class android.content.pm.PackageParser$PackageParserException {
-    <init>(int, java.lang.String);
-    <init>(int, java.lang.String, java.lang.Throwable);
-
-
-
-    public int error;
-}
-
--keep class android.content.pm.PackageParser$ParseComponentArgs {
-    <init>(android.content.pm.PackageParser$Package, java.lang.String[], int, int, int, int, int, int, java.lang.String[], int, int, int);
-
-
-
-}
-
--keep class android.content.pm.PackageParser$ParsePackageItemArgs {
-
-
-
-}
-
--keep class android.content.pm.PackageParser$Permission {
-    <init>(android.content.pm.PackageParser$Package);
-    <init>(android.content.pm.PackageParser$Package, android.content.pm.PermissionInfo);
-
-    public int describeContents();
-    public boolean isAppOp();
-    public void setPackageName(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.PackageParser$PermissionGroup group;
-    public android.content.pm.PermissionInfo info;
-    public boolean tree;
-}
-
--keep class android.content.pm.PackageParser$PermissionGroup {
-    <init>(android.content.pm.PackageParser$Package);
-    <init>(android.content.pm.PackageParser$Package, android.content.pm.PermissionGroupInfo);
-
-    public int describeContents();
-    public void setPackageName(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.PermissionGroupInfo info;
-}
-
--keep class android.content.pm.PackageParser$Provider {
-    <init>(android.content.pm.PackageParser$ParseComponentArgs, android.content.pm.ProviderInfo);
-    <init>(android.content.pm.PackageParser$Provider);
-
-    public int describeContents();
-    public void setPackageName(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.ProviderInfo info;
-    public boolean syncable;
-}
-
--keep class android.content.pm.PackageParser$Service {
-    <init>(android.content.pm.PackageParser$ParseComponentArgs, android.content.pm.ServiceInfo);
-
-    public int describeContents();
-    public void setPackageName(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.ServiceInfo info;
-}
-
--keep class android.content.pm.PackageParser$SigningDetails {
-    <init>(android.content.pm.Signature[], int, android.util.ArraySet, android.content.pm.Signature[], int[]);
-    <init>(android.content.pm.Signature[], int, android.content.pm.Signature[], int[]);
-    <init>(android.content.pm.Signature[], int);
-    <init>(android.content.pm.PackageParser$SigningDetails);
-    <init>(android.os.Parcel);
-
-    public boolean checkCapability(android.content.pm.PackageParser$SigningDetails, int);
-    public boolean checkCapability(java.lang.String, int);
-    public boolean checkCapabilityRecover(android.content.pm.PackageParser$SigningDetails, int);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public boolean hasAncestor(android.content.pm.PackageParser$SigningDetails);
-    public boolean hasAncestorOrSelf(android.content.pm.PackageParser$SigningDetails);
-    public boolean hasCertificate(android.content.pm.Signature);
-    public boolean hasCertificate(android.content.pm.Signature, int);
-    public boolean hasCertificate(byte[]);
-    public boolean hasPastSigningCertificates();
-    public boolean hasSha256Certificate(byte[]);
-    public boolean hasSha256Certificate(byte[], int);
-    public boolean hasSignatures();
-    public int hashCode();
-    public boolean signaturesMatchExactly(android.content.pm.PackageParser$SigningDetails);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.content.pm.PackageParser$SigningDetails UNKNOWN;
-    public android.content.pm.Signature[] pastSigningCertificates;
-    public int[] pastSigningCertificatesFlags;
-    public android.util.ArraySet publicKeys;
-    public int signatureSchemeVersion;
-    public android.content.pm.Signature[] signatures;
-}
-
--keep class android.content.pm.PackageParser$SplitPermissionInfo {
-    <init>(java.lang.String, java.lang.String[], int);
-
-
-
-    public java.lang.String[] newPerms;
-    public java.lang.String rootPerm;
-    public int targetSdk;
-}
-
--keep class android.content.pm.PackageStats {
-    <init>(java.lang.String);
-    <init>(java.lang.String, int);
-    <init>(android.os.Parcel);
-    <init>(android.content.pm.PackageStats);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public long cacheSize;
-    public long codeSize;
-    public long dataSize;
-    public long externalCacheSize;
-    public long externalCodeSize;
-    public long externalDataSize;
-    public long externalMediaSize;
-    public long externalObbSize;
-    public java.lang.String packageName;
-    public int userHandle;
-}
-
--keep class android.content.pm.PackageUserState {
-    <init>();
-    <init>(android.content.pm.PackageUserState);
-
-    public boolean equals(java.lang.Object);
-    public boolean isAvailable(int);
-    public boolean isEnabled(android.content.pm.ComponentInfo, int);
-    public boolean isMatch(android.content.pm.ComponentInfo, int);
-
-
-    public int appLinkGeneration;
-    public int categoryHint;
-    public long ceDataInode;
-    public java.lang.String dialogMessage;
-    public android.util.ArraySet disabledComponents;
-    public int domainVerificationStatus;
-    public int enabled;
-    public android.util.ArraySet enabledComponents;
-    public java.lang.String harmfulAppWarning;
-    public boolean hidden;
-    public int installReason;
-    public boolean installed;
-    public boolean instantApp;
-    public java.lang.String lastDisableAppCaller;
-    public boolean notLaunched;
-    public java.lang.String[] overlayPaths;
-    public boolean stopped;
-    public boolean suspended;
-    public android.os.PersistableBundle suspendedAppExtras;
-    public android.os.PersistableBundle suspendedLauncherExtras;
-    public java.lang.String suspendingPackage;
-    public boolean virtualPreload;
-}
-
--keep class android.content.pm.ParceledListSlice {
-    <init>(java.util.List);
-
-    public int describeContents();
-    public static android.content.pm.ParceledListSlice emptyList();
-    public java.util.List getList();
-    protected android.os.Parcelable$Creator readParcelableCreator(android.os.Parcel, java.lang.ClassLoader);
-    public void setInlineCountLimit(int);
-    protected void writeElement(android.os.Parcelable, android.os.Parcel, int);
-    protected void writeElement(java.lang.Object, android.os.Parcel, int);
-    protected void writeParcelableCreator(android.os.Parcelable, android.os.Parcel);
-    protected void writeParcelableCreator(java.lang.Object, android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$ClassLoaderCreator CREATOR;
-}
-
--keep class android.content.pm.PathPermission {
-    <init>(java.lang.String, int, java.lang.String, java.lang.String);
-    <init>(android.os.Parcel);
-
-    public java.lang.String getReadPermission();
-    public java.lang.String getWritePermission();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.PermissionGroupInfo {
-    <init>();
-    <init>(android.content.pm.PermissionGroupInfo);
-
-    public int describeContents();
-    public java.lang.CharSequence loadDescription(android.content.pm.PackageManager);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_PERSONAL_INFO;
-    public int descriptionRes;
-    public int flags;
-    public java.lang.CharSequence nonLocalizedDescription;
-    public int priority;
-    public int requestRes;
-}
-
--keep class android.content.pm.PermissionInfo {
-    <init>();
-    <init>(android.content.pm.PermissionInfo);
-
-    public int calculateFootprint();
-    public int describeContents();
-    public static int fixProtectionLevel(int);
-    public int getProtection();
-    public int getProtectionFlags();
-    public boolean isAppOp();
-    public java.lang.CharSequence loadDescription(android.content.pm.PackageManager);
-    public static java.lang.String protectionToString(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_COSTS_MONEY;
-    public static int FLAG_INSTALLED;
-    public static int FLAG_REMOVED;
-    public static int PROTECTION_DANGEROUS;
-    public static int PROTECTION_FLAG_APPOP;
-    public static int PROTECTION_FLAG_DEVELOPMENT;
-    public static int PROTECTION_FLAG_INSTALLER;
-    public static int PROTECTION_FLAG_INSTANT;
-    public static int PROTECTION_FLAG_OEM;
-    public static int PROTECTION_FLAG_PRE23;
-    public static int PROTECTION_FLAG_PREINSTALLED;
-    public static int PROTECTION_FLAG_PRIVILEGED;
-    public static int PROTECTION_FLAG_RUNTIME_ONLY;
-    public static int PROTECTION_FLAG_SETUP;
-    public static int PROTECTION_FLAG_SYSTEM;
-    public static int PROTECTION_FLAG_SYSTEM_TEXT_CLASSIFIER;
-    public static int PROTECTION_FLAG_VENDOR_PRIVILEGED;
-    public static int PROTECTION_FLAG_VERIFIER;
-    public static int PROTECTION_MASK_BASE;
-    public static int PROTECTION_MASK_FLAGS;
-    public static int PROTECTION_NORMAL;
-    public static int PROTECTION_SIGNATURE;
-    public static int PROTECTION_SIGNATURE_OR_SYSTEM;
-    public int descriptionRes;
-    public int flags;
-    public java.lang.String group;
-    public java.lang.CharSequence nonLocalizedDescription;
-    public int protectionLevel;
-    public int requestRes;
-}
-
--keep class android.content.pm.ProviderInfo {
-    <init>();
-    <init>(android.content.pm.ProviderInfo);
-
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public void dump(android.util.Printer, java.lang.String, int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_SINGLE_USER;
-    public static int FLAG_VISIBLE_TO_INSTANT_APP;
-    public java.lang.String authority;
-    public int flags;
-    public boolean grantUriPermissions;
-    public int initOrder;
-    public boolean isSyncable;
-    public boolean multiprocess;
-    public android.content.pm.PathPermission[] pathPermissions;
-    public java.lang.String readPermission;
-    public android.os.PatternMatcher[] uriPermissionPatterns;
-    public java.lang.String writePermission;
-}
-
--keep class android.content.pm.ResolveInfo {
-    <init>();
-    <init>(android.content.pm.ResolveInfo);
-
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public void dump(android.util.Printer, java.lang.String, int);
-    public android.content.pm.ComponentInfo getComponentInfo();
-    public int getIconResource();
-    public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager);
-    public java.lang.CharSequence loadLabel(android.content.pm.PackageManager);
-    public int resolveIconResId();
-    public int resolveLabelResId();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.ActivityInfo activityInfo;
-    public android.content.pm.AuxiliaryResolveInfo auxiliaryInfo;
-    public android.content.IntentFilter filter;
-    public boolean handleAllWebDataURI;
-    public int icon;
-    public int iconResourceId;
-    public boolean instantAppAvailable;
-    public boolean isDefault;
-    public boolean isInstantAppAvailable;
-    public int labelRes;
-    public int match;
-    public boolean noResourceId;
-    public java.lang.CharSequence nonLocalizedLabel;
-    public int preferredOrder;
-    public int priority;
-    public android.content.pm.ProviderInfo providerInfo;
-    public java.lang.String resolvePackageName;
-    public android.content.pm.ServiceInfo serviceInfo;
-    public int specificIndex;
-    public boolean system;
-    public int targetUserId;
-}
-
--keep class android.content.pm.ServiceInfo {
-    <init>();
-    <init>(android.content.pm.ServiceInfo);
-
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_EXTERNAL_SERVICE;
-    public static int FLAG_ISOLATED_PROCESS;
-    public static int FLAG_SINGLE_USER;
-    public static int FLAG_STOP_WITH_TASK;
-    public static int FLAG_VISIBLE_TO_INSTANT_APP;
-    public int flags;
-    public java.lang.String permission;
-}
-
--keep class android.content.pm.SharedLibraryInfo {
-    <init>(java.lang.String, long, int, android.content.pm.VersionedPackage, java.util.List);
-
-    public int describeContents();
-    public android.content.pm.VersionedPackage getDeclaringPackage();
-    public java.util.List getDependentPackages();
-    public long getLongVersion();
-    public java.lang.String getName();
-    public int getType();
-    public int getVersion();
-    public boolean isBuiltin();
-    public boolean isDynamic();
-    public boolean isStatic();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int TYPE_BUILTIN;
-    public static int TYPE_DYNAMIC;
-    public static int TYPE_STATIC;
-    public static int VERSION_UNDEFINED;
-}
-
--keep class android.content.pm.Signature {
-    <init>(byte[]);
-    <init>(java.security.cert.Certificate[]);
-    <init>(java.lang.String);
-
-    public static boolean areEffectiveMatch(android.content.pm.Signature[], android.content.pm.Signature[]);
-    public static boolean areEffectiveMatch(android.content.pm.Signature, android.content.pm.Signature);
-    public static boolean areExactMatch(android.content.pm.Signature[], android.content.pm.Signature[]);
-    public static android.content.pm.Signature bounce(java.security.cert.CertificateFactory, android.content.pm.Signature);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.content.pm.Signature[] getChainSignatures();
-    public java.security.PublicKey getPublicKey();
-    public int hashCode();
-    public byte[] toByteArray();
-    public char[] toChars();
-    public char[] toChars(char[], int[]);
-    public java.lang.String toCharsString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.SigningInfo {
-    <init>();
-    <init>(android.content.pm.PackageParser$SigningDetails);
-    <init>(android.content.pm.SigningInfo);
-
-    public int describeContents();
-    public android.content.pm.Signature[] getApkContentsSigners();
-    public android.content.pm.Signature[] getSigningCertificateHistory();
-    public boolean hasMultipleSigners();
-    public boolean hasPastSigningCertificates();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.UserInfo {
-    <init>(int, java.lang.String, int);
-    <init>(int, java.lang.String, java.lang.String, int);
-    <init>();
-    <init>(android.content.pm.UserInfo);
-
-    public boolean canHaveProfile();
-    public int describeContents();
-    public android.os.UserHandle getUserHandle();
-    public boolean isAdmin();
-    public boolean isDemo();
-    public boolean isEnabled();
-    public boolean isEphemeral();
-    public boolean isGuest();
-    public boolean isInitialized();
-    public boolean isManagedProfile();
-    public boolean isPrimary();
-    public boolean isQuietModeEnabled();
-    public boolean isRestricted();
-    public boolean isSystemOnly();
-    public static boolean isSystemOnly(int);
-    public boolean supportsSwitchTo();
-    public boolean supportsSwitchToByUser();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_ADMIN;
-    public static int FLAG_DEMO;
-    public static int FLAG_DISABLED;
-    public static int FLAG_EPHEMERAL;
-    public static int FLAG_GUEST;
-    public static int FLAG_INITIALIZED;
-    public static int FLAG_MANAGED_PROFILE;
-    public static int FLAG_MASK_USER_TYPE;
-    public static int FLAG_PRIMARY;
-    public static int FLAG_QUIET_MODE;
-    public static int FLAG_RESTRICTED;
-    public static int NO_PROFILE_GROUP_ID;
-    public long creationTime;
-    public int flags;
-    public boolean guestToRemove;
-    public java.lang.String iconPath;
-    public int id;
-    public java.lang.String lastLoggedInFingerprint;
-    public long lastLoggedInTime;
-    public java.lang.String name;
-    public boolean partial;
-    public int profileBadge;
-    public int profileGroupId;
-    public int restrictedProfileParentId;
-    public int serialNumber;
-}
-
--keep class android.content.pm.VerifierDeviceIdentity {
-    <init>(long);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static android.content.pm.VerifierDeviceIdentity generate();
-    public int hashCode();
-    public static android.content.pm.VerifierDeviceIdentity parse(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.VerifierInfo {
-    <init>(java.lang.String, java.security.PublicKey);
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String packageName;
-    public java.security.PublicKey publicKey;
-}
-
--keep class android.content.pm.VersionedPackage {
-    <init>(java.lang.String, int);
-    <init>(java.lang.String, long);
-
-    public int describeContents();
-    public long getLongVersionCode();
-    public java.lang.String getPackageName();
-    public int getVersionCode();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.pm.dex.ArtManager {
-    <init>(android.content.Context, android.content.pm.dex.IArtManager);
-
-    public static java.lang.String getCurrentProfilePath(java.lang.String, int, java.lang.String);
-    public static java.lang.String getProfileName(java.lang.String);
-    public static java.io.File getProfileSnapshotFileForName(java.lang.String, java.lang.String);
-    public boolean isRuntimeProfilingEnabled(int);
-    public void snapshotRuntimeProfile(int, java.lang.String, java.lang.String, java.util.concurrent.Executor, android.content.pm.dex.ArtManager$SnapshotRuntimeProfileCallback);
-
-
-    public static int PROFILE_APPS;
-    public static int PROFILE_BOOT_IMAGE;
-    public static int SNAPSHOT_FAILED_CODE_PATH_NOT_FOUND;
-    public static int SNAPSHOT_FAILED_INTERNAL_ERROR;
-    public static int SNAPSHOT_FAILED_PACKAGE_NOT_FOUND;
-}
-
--keep class android.content.pm.dex.ArtManager$SnapshotRuntimeProfileCallback {
-    <init>();
-
-    public abstract void onError(int);
-    public abstract void onSuccess(android.os.ParcelFileDescriptor);
-
-
-}
-
--keep class android.content.pm.dex.IArtManager {
-
-    public abstract boolean isRuntimeProfilingEnabled(int, java.lang.String);
-    public abstract void snapshotRuntimeProfile(int, java.lang.String, java.lang.String, android.content.pm.dex.ISnapshotRuntimeProfileCallback, java.lang.String);
-
-
-}
-
--keep class android.content.pm.dex.ISnapshotRuntimeProfileCallback {
-
-    public abstract void onError(int);
-    public abstract void onSuccess(android.os.ParcelFileDescriptor);
-
-
-}
-
--keep class android.content.res.ApkAssets {
-
-    protected void finalize();
-    public java.lang.String getAssetPath();
-    public boolean isUpToDate();
-    public static android.content.res.ApkAssets loadFromFd(java.io.FileDescriptor, java.lang.String, boolean, boolean);
-    public static android.content.res.ApkAssets loadFromPath(java.lang.String);
-    public static android.content.res.ApkAssets loadFromPath(java.lang.String, boolean);
-    public static android.content.res.ApkAssets loadFromPath(java.lang.String, boolean, boolean);
-    public static android.content.res.ApkAssets loadOverlayFromPath(java.lang.String, boolean);
-    public android.content.res.XmlResourceParser openXml(java.lang.String);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.content.res.AssetFileDescriptor {
-    <init>(android.os.ParcelFileDescriptor, long, long);
-    <init>(android.os.ParcelFileDescriptor, long, long, android.os.Bundle);
-
-    public void close();
-    public java.io.FileInputStream createInputStream();
-    public java.io.FileOutputStream createOutputStream();
-    public int describeContents();
-    public long getDeclaredLength();
-    public android.os.Bundle getExtras();
-    public java.io.FileDescriptor getFileDescriptor();
-    public long getLength();
-    public android.os.ParcelFileDescriptor getParcelFileDescriptor();
-    public long getStartOffset();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static long UNKNOWN_LENGTH;
-}
-
--keep class android.content.res.AssetManager {
-    <init>();
-
-    public int addAssetPath(java.lang.String);
-    public int addAssetPathAsSharedLibrary(java.lang.String);
-    public int addOverlayPath(java.lang.String);
-    public void close();
-    protected void finalize();
-    public int findCookieForPath(java.lang.String);
-    public android.content.res.ApkAssets[] getApkAssets();
-    public static java.lang.String getAssetAllocations();
-    public android.util.SparseArray getAssignedPackageIdentifiers();
-    public static int getGlobalAssetCount();
-    public static int getGlobalAssetManagerCount();
-    public java.lang.String[] getLocales();
-    public java.lang.String[] getNonSystemLocales();
-    public static android.content.res.AssetManager getSystem();
-    public boolean isUpToDate();
-    public java.lang.String[] list(java.lang.String);
-    public java.io.InputStream open(java.lang.String);
-    public java.io.InputStream open(java.lang.String, int);
-    public android.content.res.AssetFileDescriptor openFd(java.lang.String);
-    public java.io.InputStream openNonAsset(java.lang.String);
-    public java.io.InputStream openNonAsset(java.lang.String, int);
-    public java.io.InputStream openNonAsset(int, java.lang.String);
-    public java.io.InputStream openNonAsset(int, java.lang.String, int);
-    public android.content.res.AssetFileDescriptor openNonAssetFd(java.lang.String);
-    public android.content.res.AssetFileDescriptor openNonAssetFd(int, java.lang.String);
-    public android.content.res.XmlResourceParser openXmlResourceParser(java.lang.String);
-    public android.content.res.XmlResourceParser openXmlResourceParser(int, java.lang.String);
-    public void setApkAssets(android.content.res.ApkAssets[], boolean);
-    public void setConfiguration(int, int, java.lang.String, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int);
-
-
-    public static int ACCESS_BUFFER;
-    public static int ACCESS_RANDOM;
-    public static int ACCESS_STREAMING;
-    public static int ACCESS_UNKNOWN;
-}
-
--keep class android.content.res.ColorStateList {
-    <init>(int[][], int[]);
-
-    public boolean canApplyTheme();
-    public static android.content.res.ColorStateList createFromXml(android.content.res.Resources, org.xmlpull.v1.XmlPullParser);
-    public static android.content.res.ColorStateList createFromXml(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.content.res.Resources$Theme);
-    public int describeContents();
-    public int getChangingConfigurations();
-    public int getColorForState(int[], int);
-    public int[] getColors();
-    public android.content.res.ConstantState getConstantState();
-    public int getDefaultColor();
-    public int[][] getStates();
-    public boolean hasFocusStateSpecified();
-    public boolean hasState(int);
-    public boolean isOpaque();
-    public boolean isStateful();
-    public android.content.res.ColorStateList obtainForTheme(android.content.res.Resources$Theme);
-    public android.content.res.ComplexColor obtainForTheme(android.content.res.Resources$Theme);
-    public java.lang.String toString();
-    public static android.content.res.ColorStateList valueOf(int);
-    public android.content.res.ColorStateList withAlpha(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.content.res.CompatibilityInfo {
-    <init>(android.content.pm.ApplicationInfo, int, int, boolean);
-
-    public boolean alwaysSupportsScreen();
-    public void applyToConfiguration(int, android.content.res.Configuration);
-    public void applyToDisplayMetrics(android.util.DisplayMetrics);
-    public static float computeCompatibleScaling(android.util.DisplayMetrics, android.util.DisplayMetrics);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.content.res.CompatibilityInfo$Translator getTranslator();
-    public int hashCode();
-    public boolean isScalingRequired();
-    public boolean needsCompatResources();
-    public boolean neverSupportsScreen();
-    public boolean supportsScreen();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.content.res.CompatibilityInfo DEFAULT_COMPATIBILITY_INFO;
-    public static int DEFAULT_NORMAL_SHORT_DIMENSION;
-    public static float MAXIMUM_ASPECT_RATIO;
-    public int applicationDensity;
-    public float applicationInvertedScale;
-    public float applicationScale;
-}
-
--keep class android.content.res.CompatibilityInfo$Translator {
-
-    public android.graphics.Rect getTranslatedContentInsets(android.graphics.Rect);
-    public android.graphics.Region getTranslatedTouchableArea(android.graphics.Region);
-    public android.graphics.Rect getTranslatedVisibleInsets(android.graphics.Rect);
-    public void translateCanvas(android.graphics.Canvas);
-    public void translateEventInScreenToAppWindow(android.view.MotionEvent);
-    public void translateLayoutParamsInAppWindowToScreen(android.view.WindowManager$LayoutParams);
-    public void translatePointInScreenToAppWindow(android.graphics.PointF);
-    public void translateRectInAppWindowToScreen(android.graphics.Rect);
-    public void translateRectInScreenToAppWinFrame(android.graphics.Rect);
-    public void translateRectInScreenToAppWindow(android.graphics.Rect);
-    public void translateRegionInWindowToScreen(android.graphics.Region);
-    public void translateWindowLayout(android.view.WindowManager$LayoutParams);
-
-
-    public float applicationInvertedScale;
-    public float applicationScale;
-}
-
--keep class android.content.res.ComplexColor {
-    <init>();
-
-    public abstract boolean canApplyTheme();
-    public int getChangingConfigurations();
-    public abstract android.content.res.ConstantState getConstantState();
-    public abstract int getDefaultColor();
-    public boolean isStateful();
-    public abstract android.content.res.ComplexColor obtainForTheme(android.content.res.Resources$Theme);
-
-
-}
-
--keep class android.content.res.Configuration {
-    <init>();
-    <init>(android.content.res.Configuration);
-
-    public void clearLocales();
-    public int compareTo(android.content.res.Configuration);
-    public int compareTo(java.lang.Object);
-    public static java.lang.String configurationDiffToString(int);
-    public int describeContents();
-    public int diff(android.content.res.Configuration);
-    public int diff(android.content.res.Configuration, boolean, boolean);
-    public int diffPublicOnly(android.content.res.Configuration);
-    public boolean equals(android.content.res.Configuration);
-    public boolean equals(java.lang.Object);
-    public static android.content.res.Configuration generateDelta(android.content.res.Configuration, android.content.res.Configuration);
-    public int getLayoutDirection();
-    public android.os.LocaleList getLocales();
-    public int hashCode();
-    public boolean isLayoutSizeAtLeast(int);
-    public boolean isOtherSeqNewer(android.content.res.Configuration);
-    public boolean isScreenHdr();
-    public boolean isScreenRound();
-    public boolean isScreenWideColorGamut();
-    public static java.lang.String localesToResourceQualifier(android.os.LocaleList);
-    public void makeDefault();
-    public static boolean needNewResources(int, int);
-    public void readFromParcel(android.os.Parcel);
-    public static void readXmlAttrs(org.xmlpull.v1.XmlPullParser, android.content.res.Configuration);
-    public static int reduceScreenLayout(int, int, int);
-    public static int resetScreenLayout(int);
-    public static java.lang.String resourceQualifierString(android.content.res.Configuration);
-    public static java.lang.String resourceQualifierString(android.content.res.Configuration, android.util.DisplayMetrics);
-    public void setLayoutDirection(java.util.Locale);
-    public void setLocale(java.util.Locale);
-    public void setLocales(android.os.LocaleList);
-    public void setTo(android.content.res.Configuration);
-    public void setToDefaults();
-    public java.lang.String toString();
-    public static java.lang.String uiModeToString(int);
-    public void unset();
-    public int updateFrom(android.content.res.Configuration);
-    public void writeResConfigToProto(android.util.proto.ProtoOutputStream, long, android.util.DisplayMetrics);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-    public static void writeXmlAttrs(org.xmlpull.v1.XmlSerializer, android.content.res.Configuration);
-
-
-    public static int ASSETS_SEQ_UNDEFINED;
-    public static int COLOR_MODE_HDR_MASK;
-    public static int COLOR_MODE_HDR_NO;
-    public static int COLOR_MODE_HDR_SHIFT;
-    public static int COLOR_MODE_HDR_UNDEFINED;
-    public static int COLOR_MODE_HDR_YES;
-    public static int COLOR_MODE_UNDEFINED;
-    public static int COLOR_MODE_WIDE_COLOR_GAMUT_MASK;
-    public static int COLOR_MODE_WIDE_COLOR_GAMUT_NO;
-    public static int COLOR_MODE_WIDE_COLOR_GAMUT_UNDEFINED;
-    public static int COLOR_MODE_WIDE_COLOR_GAMUT_YES;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DENSITY_DPI_ANY;
-    public static int DENSITY_DPI_NONE;
-    public static int DENSITY_DPI_UNDEFINED;
-    public static android.content.res.Configuration EMPTY;
-    public static int HARDKEYBOARDHIDDEN_NO;
-    public static int HARDKEYBOARDHIDDEN_UNDEFINED;
-    public static int HARDKEYBOARDHIDDEN_YES;
-    public static int KEYBOARDHIDDEN_NO;
-    public static int KEYBOARDHIDDEN_SOFT;
-    public static int KEYBOARDHIDDEN_UNDEFINED;
-    public static int KEYBOARDHIDDEN_YES;
-    public static int KEYBOARD_12KEY;
-    public static int KEYBOARD_NOKEYS;
-    public static int KEYBOARD_QWERTY;
-    public static int KEYBOARD_UNDEFINED;
-    public static int MNC_ZERO;
-    public static int NATIVE_CONFIG_COLOR_MODE;
-    public static int NATIVE_CONFIG_DENSITY;
-    public static int NATIVE_CONFIG_KEYBOARD;
-    public static int NATIVE_CONFIG_KEYBOARD_HIDDEN;
-    public static int NATIVE_CONFIG_LAYOUTDIR;
-    public static int NATIVE_CONFIG_LOCALE;
-    public static int NATIVE_CONFIG_MCC;
-    public static int NATIVE_CONFIG_MNC;
-    public static int NATIVE_CONFIG_NAVIGATION;
-    public static int NATIVE_CONFIG_ORIENTATION;
-    public static int NATIVE_CONFIG_SCREEN_LAYOUT;
-    public static int NATIVE_CONFIG_SCREEN_SIZE;
-    public static int NATIVE_CONFIG_SMALLEST_SCREEN_SIZE;
-    public static int NATIVE_CONFIG_TOUCHSCREEN;
-    public static int NATIVE_CONFIG_UI_MODE;
-    public static int NATIVE_CONFIG_VERSION;
-    public static int NAVIGATIONHIDDEN_NO;
-    public static int NAVIGATIONHIDDEN_UNDEFINED;
-    public static int NAVIGATIONHIDDEN_YES;
-    public static int NAVIGATION_DPAD;
-    public static int NAVIGATION_NONAV;
-    public static int NAVIGATION_TRACKBALL;
-    public static int NAVIGATION_UNDEFINED;
-    public static int NAVIGATION_WHEEL;
-    public static int ORIENTATION_LANDSCAPE;
-    public static int ORIENTATION_PORTRAIT;
-    public static int ORIENTATION_SQUARE;
-    public static int ORIENTATION_UNDEFINED;
-    public static int SCREENLAYOUT_COMPAT_NEEDED;
-    public static int SCREENLAYOUT_LAYOUTDIR_LTR;
-    public static int SCREENLAYOUT_LAYOUTDIR_MASK;
-    public static int SCREENLAYOUT_LAYOUTDIR_RTL;
-    public static int SCREENLAYOUT_LAYOUTDIR_SHIFT;
-    public static int SCREENLAYOUT_LAYOUTDIR_UNDEFINED;
-    public static int SCREENLAYOUT_LONG_MASK;
-    public static int SCREENLAYOUT_LONG_NO;
-    public static int SCREENLAYOUT_LONG_UNDEFINED;
-    public static int SCREENLAYOUT_LONG_YES;
-    public static int SCREENLAYOUT_ROUND_MASK;
-    public static int SCREENLAYOUT_ROUND_NO;
-    public static int SCREENLAYOUT_ROUND_SHIFT;
-    public static int SCREENLAYOUT_ROUND_UNDEFINED;
-    public static int SCREENLAYOUT_ROUND_YES;
-    public static int SCREENLAYOUT_SIZE_LARGE;
-    public static int SCREENLAYOUT_SIZE_MASK;
-    public static int SCREENLAYOUT_SIZE_NORMAL;
-    public static int SCREENLAYOUT_SIZE_SMALL;
-    public static int SCREENLAYOUT_SIZE_UNDEFINED;
-    public static int SCREENLAYOUT_SIZE_XLARGE;
-    public static int SCREENLAYOUT_UNDEFINED;
-    public static int SCREEN_HEIGHT_DP_UNDEFINED;
-    public static int SCREEN_WIDTH_DP_UNDEFINED;
-    public static int SMALLEST_SCREEN_WIDTH_DP_UNDEFINED;
-    public static int TOUCHSCREEN_FINGER;
-    public static int TOUCHSCREEN_NOTOUCH;
-    public static int TOUCHSCREEN_STYLUS;
-    public static int TOUCHSCREEN_UNDEFINED;
-    public static int UI_MODE_NIGHT_MASK;
-    public static int UI_MODE_NIGHT_NO;
-    public static int UI_MODE_NIGHT_UNDEFINED;
-    public static int UI_MODE_NIGHT_YES;
-    public static int UI_MODE_TYPE_APPLIANCE;
-    public static int UI_MODE_TYPE_CAR;
-    public static int UI_MODE_TYPE_DESK;
-    public static int UI_MODE_TYPE_MASK;
-    public static int UI_MODE_TYPE_NORMAL;
-    public static int UI_MODE_TYPE_TELEVISION;
-    public static int UI_MODE_TYPE_UNDEFINED;
-    public static int UI_MODE_TYPE_VR_HEADSET;
-    public static int UI_MODE_TYPE_WATCH;
-    public int assetsSeq;
-    public int colorMode;
-    public int compatScreenHeightDp;
-    public int compatScreenWidthDp;
-    public int compatSmallestScreenWidthDp;
-    public int densityDpi;
-    public float fontScale;
-    public int hardKeyboardHidden;
-    public int keyboard;
-    public int keyboardHidden;
-    public java.util.Locale locale;
-    public int mcc;
-    public int mnc;
-    public int navigation;
-    public int navigationHidden;
-    public int orientation;
-    public int screenHeightDp;
-    public int screenLayout;
-    public int screenWidthDp;
-    public int seq;
-    public int smallestScreenWidthDp;
-    public int touchscreen;
-    public int uiMode;
-    public boolean userSetLocale;
-    public android.app.WindowConfiguration windowConfiguration;
-}
-
--keep class android.content.res.ConfigurationBoundResourceCache {
-    <init>();
-
-    public java.lang.Object getInstance(long, android.content.res.Resources, android.content.res.Resources$Theme);
-    public void onConfigurationChange(int);
-    public boolean shouldInvalidateEntry(android.content.res.ConstantState, int);
-    public boolean shouldInvalidateEntry(java.lang.Object, int);
-
-
-}
-
--keep class android.content.res.ConstantState {
-    <init>();
-
-    public abstract int getChangingConfigurations();
-    public abstract java.lang.Object newInstance();
-    public java.lang.Object newInstance(android.content.res.Resources);
-    public java.lang.Object newInstance(android.content.res.Resources, android.content.res.Resources$Theme);
-
-
-}
-
--keep class android.content.res.FontResourcesParser {
-    <init>();
-
-    public static android.content.res.FontResourcesParser$FamilyResourceEntry parse(org.xmlpull.v1.XmlPullParser, android.content.res.Resources);
-
-
-}
-
--keep class android.content.res.FontResourcesParser$FamilyResourceEntry {
-
-
-
-}
-
--keep class android.content.res.Resources {
-    <init>(android.content.res.AssetManager, android.util.DisplayMetrics, android.content.res.Configuration);
-    <init>(java.lang.ClassLoader);
-
-    public int calcConfigChanges(android.content.res.Configuration);
-    public void finishPreloading();
-    public void flushLayoutCache();
-    public android.content.res.XmlResourceParser getAnimation(int);
-    public android.content.res.ConfigurationBoundResourceCache getAnimatorCache();
-    public android.content.res.AssetManager getAssets();
-    public boolean getBoolean(int);
-    public java.lang.ClassLoader getClassLoader();
-    public int getColor(int);
-    public int getColor(int, android.content.res.Resources$Theme);
-    public android.content.res.ColorStateList getColorStateList(int);
-    public android.content.res.ColorStateList getColorStateList(int, android.content.res.Resources$Theme);
-    public android.content.res.CompatibilityInfo getCompatibilityInfo();
-    public android.content.res.Configuration getConfiguration();
-    public float getDimension(int);
-    public int getDimensionPixelOffset(int);
-    public int getDimensionPixelSize(int);
-    public android.view.DisplayAdjustments getDisplayAdjustments();
-    public android.util.DisplayMetrics getDisplayMetrics();
-    public android.graphics.drawable.Drawable getDrawable(int);
-    public android.graphics.drawable.Drawable getDrawable(int, android.content.res.Resources$Theme);
-    public android.graphics.drawable.Drawable getDrawableForDensity(int, int);
-    public android.graphics.drawable.Drawable getDrawableForDensity(int, int, android.content.res.Resources$Theme);
-    public android.graphics.drawable.DrawableInflater getDrawableInflater();
-    public float getFloat(int);
-    public android.graphics.Typeface getFont(int);
-    public float getFraction(int, int, int);
-    public int getIdentifier(java.lang.String, java.lang.String, java.lang.String);
-    public android.content.res.ResourcesImpl getImpl();
-    public int[] getIntArray(int);
-    public int getInteger(int);
-    public android.content.res.XmlResourceParser getLayout(int);
-    public android.graphics.Movie getMovie(int);
-    public android.util.LongSparseArray getPreloadedDrawables();
-    public java.lang.String getQuantityString(int, int, java.lang.Object[]);
-    public java.lang.String getQuantityString(int, int);
-    public java.lang.CharSequence getQuantityText(int, int);
-    public java.lang.String getResourceEntryName(int);
-    public java.lang.String getResourceName(int);
-    public java.lang.String getResourcePackageName(int);
-    public java.lang.String getResourceTypeName(int);
-    public android.content.res.Configuration[] getSizeConfigurations();
-    public android.content.res.ConfigurationBoundResourceCache getStateListAnimatorCache();
-    public java.lang.String getString(int);
-    public java.lang.String getString(int, java.lang.Object[]);
-    public java.lang.String[] getStringArray(int);
-    public static android.content.res.Resources getSystem();
-    public java.lang.CharSequence getText(int);
-    public java.lang.CharSequence getText(int, java.lang.CharSequence);
-    public java.lang.CharSequence[] getTextArray(int);
-    public void getValue(int, android.util.TypedValue, boolean);
-    public void getValue(java.lang.String, android.util.TypedValue, boolean);
-    public void getValueForDensity(int, int, android.util.TypedValue, boolean);
-    public android.content.res.XmlResourceParser getXml(int);
-    public android.content.res.ComplexColor loadComplexColor(android.util.TypedValue, int, android.content.res.Resources$Theme);
-    public android.content.res.Resources$Theme newTheme();
-    public android.content.res.TypedArray obtainAttributes(android.util.AttributeSet, int[]);
-    public static android.content.res.TypedArray obtainAttributes(android.content.res.Resources, android.content.res.Resources$Theme, android.util.AttributeSet, int[]);
-    public android.content.res.TypedArray obtainTypedArray(int);
-    public java.io.InputStream openRawResource(int);
-    public java.io.InputStream openRawResource(int, android.util.TypedValue);
-    public android.content.res.AssetFileDescriptor openRawResourceFd(int);
-    public void parseBundleExtra(java.lang.String, android.util.AttributeSet, android.os.Bundle);
-    public void parseBundleExtras(android.content.res.XmlResourceParser, android.os.Bundle);
-    public void preloadFonts(int);
-    public static boolean resourceHasPackage(int);
-    public static int selectDefaultTheme(int, int);
-    public static int selectSystemTheme(int, int, int, int, int, int);
-    public void setCompatibilityInfo(android.content.res.CompatibilityInfo);
-    public void setImpl(android.content.res.ResourcesImpl);
-    public void startPreloading();
-    public void updateConfiguration(android.content.res.Configuration, android.util.DisplayMetrics);
-    public void updateConfiguration(android.content.res.Configuration, android.util.DisplayMetrics, android.content.res.CompatibilityInfo);
-    public static void updateSystemConfiguration(android.content.res.Configuration, android.util.DisplayMetrics, android.content.res.CompatibilityInfo);
-
-
-}
-
--keep class android.content.res.Resources$NotFoundException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Exception);
-
-
-
-}
-
--keep class android.content.res.Resources$Theme {
-
-    public void applyStyle(int, boolean);
-    public void dump(int, java.lang.String, java.lang.String);
-    public void encode(android.view.ViewHierarchyEncoder);
-    public int[] getAllAttributes();
-    public int getChangingConfigurations();
-    public android.graphics.drawable.Drawable getDrawable(int);
-    public android.content.res.Resources$ThemeKey getKey();
-    public android.content.res.Resources getResources();
-    public java.lang.String[] getTheme();
-    public android.content.res.TypedArray obtainStyledAttributes(int[]);
-    public android.content.res.TypedArray obtainStyledAttributes(int, int[]);
-    public android.content.res.TypedArray obtainStyledAttributes(android.util.AttributeSet, int[], int, int);
-    public void rebase();
-    public boolean resolveAttribute(int, android.util.TypedValue, boolean);
-    public android.content.res.TypedArray resolveAttributes(int[], int[]);
-    public void setTo(android.content.res.Resources$Theme);
-
-
-}
-
--keep class android.content.res.Resources$ThemeKey {
-
-    public void append(int, boolean);
-    public android.content.res.Resources$ThemeKey clone();
-    public java.lang.Object clone();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void setTo(android.content.res.Resources$ThemeKey);
-
-
-}
-
--keep class android.content.res.ResourcesImpl {
-    <init>(android.content.res.AssetManager, android.util.DisplayMetrics, android.content.res.Configuration, android.view.DisplayAdjustments);
-
-    public int calcConfigChanges(android.content.res.Configuration);
-    public void flushLayoutCache();
-    public android.content.res.AssetManager getAssets();
-    public android.view.DisplayAdjustments getDisplayAdjustments();
-    public android.graphics.Typeface loadFont(android.content.res.Resources, android.util.TypedValue, int);
-    public void startPreloading();
-    public void updateConfiguration(android.content.res.Configuration, android.util.DisplayMetrics, android.content.res.CompatibilityInfo);
-
-
-    public static boolean TRACE_FOR_DETAILED_PRELOAD;
-}
-
--keep class android.content.res.ThemedResourceCache {
-
-    public java.lang.Object get(long, android.content.res.Resources$Theme);
-    public void onConfigurationChange(int);
-    public void put(long, android.content.res.Resources$Theme, java.lang.Object);
-    public void put(long, android.content.res.Resources$Theme, java.lang.Object, boolean);
-    protected abstract boolean shouldInvalidateEntry(java.lang.Object, int);
-
-
-}
-
--keep class android.content.res.TypedArray {
-    <init>(android.content.res.Resources);
-
-    public int[] extractThemeAttrs();
-    public int[] extractThemeAttrs(int[]);
-    public boolean getBoolean(int, boolean);
-    public int getChangingConfigurations();
-    public int getColor(int, int);
-    public android.content.res.ColorStateList getColorStateList(int);
-    public android.content.res.ComplexColor getComplexColor(int);
-    public float getDimension(int, float);
-    public int getDimensionPixelOffset(int, int);
-    public int getDimensionPixelSize(int, int);
-    public android.graphics.drawable.Drawable getDrawable(int);
-    public android.graphics.drawable.Drawable getDrawableForDensity(int, int);
-    public float getFloat(int, float);
-    public android.graphics.Typeface getFont(int);
-    public float getFraction(int, int, int, float);
-    public int getIndex(int);
-    public int getIndexCount();
-    public int getInt(int, int);
-    public int getInteger(int, int);
-    public int getLayoutDimension(int, java.lang.String);
-    public int getLayoutDimension(int, int);
-    public java.lang.String getNonConfigurationString(int, int);
-    public java.lang.String getNonResourceString(int);
-    public java.lang.String getPositionDescription();
-    public int getResourceId(int, int);
-    public android.content.res.Resources getResources();
-    public java.lang.String getString(int);
-    public java.lang.CharSequence getText(int);
-    public java.lang.CharSequence[] getTextArray(int);
-    public int getThemeAttributeId(int, int);
-    public int getType(int);
-    public boolean getValue(int, android.util.TypedValue);
-    public boolean hasValue(int);
-    public boolean hasValueOrEmpty(int);
-    public int length();
-    public android.util.TypedValue peekValue(int);
-    public void recycle();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.content.res.XmlResourceParser {
-
-    public abstract void close();
-    public abstract java.lang.String getAttributeNamespace(int);
-
-
-}
-
--keep class android.database.CharArrayBuffer {
-    <init>(int);
-    <init>(char[]);
-
-
-
-    public char[] data;
-    public int sizeCopied;
-}
-
--keep class android.database.ContentObserver {
-    <init>(android.os.Handler);
-
-    public boolean deliverSelfNotifications();
-    public void dispatchChange(boolean);
-    public void dispatchChange(boolean, android.net.Uri);
-    public android.database.IContentObserver getContentObserver();
-    public void onChange(boolean);
-    public void onChange(boolean, android.net.Uri);
-    public void onChange(boolean, android.net.Uri, int);
-    public android.database.IContentObserver releaseContentObserver();
-
-
-}
-
--keep class android.database.Cursor {
-
-    public abstract void close();
-    public abstract void copyStringToBuffer(int, android.database.CharArrayBuffer);
-    public abstract void deactivate();
-    public abstract byte[] getBlob(int);
-    public abstract int getColumnCount();
-    public abstract int getColumnIndex(java.lang.String);
-    public abstract int getColumnIndexOrThrow(java.lang.String);
-    public abstract java.lang.String getColumnName(int);
-    public abstract java.lang.String[] getColumnNames();
-    public abstract int getCount();
-    public abstract double getDouble(int);
-    public abstract android.os.Bundle getExtras();
-    public abstract float getFloat(int);
-    public abstract int getInt(int);
-    public abstract long getLong(int);
-    public abstract android.net.Uri getNotificationUri();
-    public abstract int getPosition();
-    public abstract short getShort(int);
-    public abstract java.lang.String getString(int);
-    public abstract int getType(int);
-    public abstract boolean getWantsAllOnMoveCalls();
-    public abstract boolean isAfterLast();
-    public abstract boolean isBeforeFirst();
-    public abstract boolean isClosed();
-    public abstract boolean isFirst();
-    public abstract boolean isLast();
-    public abstract boolean isNull(int);
-    public abstract boolean move(int);
-    public abstract boolean moveToFirst();
-    public abstract boolean moveToLast();
-    public abstract boolean moveToNext();
-    public abstract boolean moveToPosition(int);
-    public abstract boolean moveToPrevious();
-    public abstract void registerContentObserver(android.database.ContentObserver);
-    public abstract void registerDataSetObserver(android.database.DataSetObserver);
-    public abstract boolean requery();
-    public abstract android.os.Bundle respond(android.os.Bundle);
-    public abstract void setExtras(android.os.Bundle);
-    public abstract void setNotificationUri(android.content.ContentResolver, android.net.Uri);
-    public abstract void unregisterContentObserver(android.database.ContentObserver);
-    public abstract void unregisterDataSetObserver(android.database.DataSetObserver);
-
-
-    public static int FIELD_TYPE_BLOB;
-    public static int FIELD_TYPE_FLOAT;
-    public static int FIELD_TYPE_INTEGER;
-    public static int FIELD_TYPE_NULL;
-    public static int FIELD_TYPE_STRING;
-}
-
--keep class android.database.CursorWindow {
-    <init>(java.lang.String);
-    <init>(java.lang.String, long);
-    <init>(boolean);
-
-    public boolean allocRow();
-    public void clear();
-    public void copyStringToBuffer(int, int, android.database.CharArrayBuffer);
-    public int describeContents();
-    protected void finalize();
-    public void freeLastRow();
-    public byte[] getBlob(int, int);
-    public double getDouble(int, int);
-    public float getFloat(int, int);
-    public int getInt(int, int);
-    public long getLong(int, int);
-    public java.lang.String getName();
-    public int getNumRows();
-    public short getShort(int, int);
-    public int getStartPosition();
-    public java.lang.String getString(int, int);
-    public int getType(int, int);
-    public boolean isBlob(int, int);
-    public boolean isFloat(int, int);
-    public boolean isLong(int, int);
-    public boolean isNull(int, int);
-    public boolean isString(int, int);
-    public static android.database.CursorWindow newFromParcel(android.os.Parcel);
-    protected void onAllReferencesReleased();
-    public boolean putBlob(byte[], int, int);
-    public boolean putDouble(double, int, int);
-    public boolean putLong(long, int, int);
-    public boolean putNull(int, int);
-    public boolean putString(java.lang.String, int, int);
-    public boolean setNumColumns(int);
-    public void setStartPosition(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public long mWindowPtr;
-}
-
--keep class android.database.DataSetObserver {
-    <init>();
-
-    public void onChanged();
-    public void onInvalidated();
-
-
-}
-
--keep class android.database.DatabaseErrorHandler {
-
-    public abstract void onCorruption(android.database.sqlite.SQLiteDatabase);
-
-
-}
-
--keep class android.database.IContentObserver {
-
-    public abstract void onChange(boolean, android.net.Uri, int);
-
-
-}
-
--keep class android.database.SQLException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-
-
-
-}
-
--keep class android.database.sqlite.SQLiteClosable {
-    <init>();
-
-    public void acquireReference();
-    public void close();
-    protected abstract void onAllReferencesReleased();
-    protected void onAllReferencesReleasedFromContainer();
-    public void releaseReference();
-    public void releaseReferenceFromContainer();
-
-
-}
-
--keep class android.database.sqlite.SQLiteConnection {
-
-    public void dump(android.util.Printer, boolean);
-    public void execute(java.lang.String, java.lang.Object[], android.os.CancellationSignal);
-    public android.os.ParcelFileDescriptor executeForBlobFileDescriptor(java.lang.String, java.lang.Object[], android.os.CancellationSignal);
-    public int executeForChangedRowCount(java.lang.String, java.lang.Object[], android.os.CancellationSignal);
-    public int executeForCursorWindow(java.lang.String, java.lang.Object[], android.database.CursorWindow, int, int, boolean, android.os.CancellationSignal);
-    public long executeForLastInsertedRowId(java.lang.String, java.lang.Object[], android.os.CancellationSignal);
-    public long executeForLong(java.lang.String, java.lang.Object[], android.os.CancellationSignal);
-    public java.lang.String executeForString(java.lang.String, java.lang.Object[], android.os.CancellationSignal);
-    protected void finalize();
-    public int getConnectionId();
-    public boolean isPrimaryConnection();
-    public void onCancel();
-    public void prepare(java.lang.String, android.database.sqlite.SQLiteStatementInfo);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.database.sqlite.SQLiteConnectionPool {
-
-    public android.database.sqlite.SQLiteConnection acquireConnection(java.lang.String, int, android.os.CancellationSignal);
-    public void close();
-    public void collectDbStats(java.util.ArrayList);
-    public void dump(android.util.Printer, boolean);
-    protected void finalize();
-    public static android.database.sqlite.SQLiteConnectionPool open(android.database.sqlite.SQLiteDatabaseConfiguration);
-    public void reconfigure(android.database.sqlite.SQLiteDatabaseConfiguration);
-    public void releaseConnection(android.database.sqlite.SQLiteConnection);
-    public void setupIdleConnectionHandler(android.os.Looper, long);
-    public boolean shouldYieldConnection(android.database.sqlite.SQLiteConnection, int);
-    public java.lang.String toString();
-
-
-    public static int CONNECTION_FLAG_INTERACTIVE;
-    public static int CONNECTION_FLAG_PRIMARY_CONNECTION_AFFINITY;
-    public static int CONNECTION_FLAG_READ_ONLY;
-}
-
--keep class android.database.sqlite.SQLiteCursorDriver {
-
-    public abstract void cursorClosed();
-    public abstract void cursorDeactivated();
-    public abstract void cursorRequeried(android.database.Cursor);
-    public abstract android.database.Cursor query(android.database.sqlite.SQLiteDatabase$CursorFactory, java.lang.String[]);
-    public abstract void setBindArguments(java.lang.String[]);
-
-
-}
-
--keep class android.database.sqlite.SQLiteCustomFunction {
-    <init>(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CustomFunction);
-
-
-
-    public android.database.sqlite.SQLiteDatabase$CustomFunction callback;
-    public java.lang.String name;
-    public int numArgs;
-}
-
--keep class android.database.sqlite.SQLiteDatabase {
-
-    public void addCustomFunction(java.lang.String, int, android.database.sqlite.SQLiteDatabase$CustomFunction);
-    public void beginTransaction();
-    public void beginTransactionNonExclusive();
-    public void beginTransactionWithListener(android.database.sqlite.SQLiteTransactionListener);
-    public void beginTransactionWithListenerNonExclusive(android.database.sqlite.SQLiteTransactionListener);
-    public android.database.sqlite.SQLiteStatement compileStatement(java.lang.String);
-    public static android.database.sqlite.SQLiteDatabase create(android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public static android.database.sqlite.SQLiteDatabase createInMemory(android.database.sqlite.SQLiteDatabase$OpenParams);
-    public int delete(java.lang.String, java.lang.String, java.lang.String[]);
-    public static boolean deleteDatabase(java.io.File);
-    public void disableWriteAheadLogging();
-    public boolean enableWriteAheadLogging();
-    public void endTransaction();
-    public void execSQL(java.lang.String);
-    public void execSQL(java.lang.String, java.lang.Object[]);
-    protected void finalize();
-    public static java.lang.String findEditTable(java.lang.String);
-    public java.util.List getAttachedDbs();
-    public long getMaximumSize();
-    public long getPageSize();
-    public java.lang.String getPath();
-    public java.util.Map getSyncedTables();
-    public int getVersion();
-    public boolean inTransaction();
-    public long insert(java.lang.String, java.lang.String, android.content.ContentValues);
-    public long insertOrThrow(java.lang.String, java.lang.String, android.content.ContentValues);
-    public long insertWithOnConflict(java.lang.String, java.lang.String, android.content.ContentValues, int);
-    public boolean isDatabaseIntegrityOk();
-    public boolean isDbLockedByCurrentThread();
-    public boolean isDbLockedByOtherThreads();
-    public boolean isInMemoryDatabase();
-    public boolean isOpen();
-    public boolean isReadOnly();
-    public boolean isWriteAheadLoggingEnabled();
-    public void markTableSyncable(java.lang.String, java.lang.String);
-    public void markTableSyncable(java.lang.String, java.lang.String, java.lang.String);
-    public boolean needUpgrade(int);
-    protected void onAllReferencesReleased();
-    public static android.database.sqlite.SQLiteDatabase openDatabase(java.lang.String, android.database.sqlite.SQLiteDatabase$CursorFactory, int);
-    public static android.database.sqlite.SQLiteDatabase openDatabase(java.io.File, android.database.sqlite.SQLiteDatabase$OpenParams);
-    public static android.database.sqlite.SQLiteDatabase openDatabase(java.lang.String, android.database.sqlite.SQLiteDatabase$CursorFactory, int, android.database.DatabaseErrorHandler);
-    public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.io.File, android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(java.lang.String, android.database.sqlite.SQLiteDatabase$CursorFactory, android.database.DatabaseErrorHandler);
-    public android.database.Cursor query(boolean, java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.lang.String);
-    public android.database.Cursor query(boolean, java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.lang.String, android.os.CancellationSignal);
-    public android.database.Cursor query(java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String);
-    public android.database.Cursor query(java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.lang.String);
-    public android.database.Cursor queryWithFactory(android.database.sqlite.SQLiteDatabase$CursorFactory, boolean, java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.lang.String);
-    public android.database.Cursor queryWithFactory(android.database.sqlite.SQLiteDatabase$CursorFactory, boolean, java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.lang.String, android.os.CancellationSignal);
-    public android.database.Cursor rawQuery(java.lang.String, java.lang.String[]);
-    public android.database.Cursor rawQuery(java.lang.String, java.lang.String[], android.os.CancellationSignal);
-    public android.database.Cursor rawQueryWithFactory(android.database.sqlite.SQLiteDatabase$CursorFactory, java.lang.String, java.lang.String[], java.lang.String);
-    public android.database.Cursor rawQueryWithFactory(android.database.sqlite.SQLiteDatabase$CursorFactory, java.lang.String, java.lang.String[], java.lang.String, android.os.CancellationSignal);
-    public static int releaseMemory();
-    public void reopenReadWrite();
-    public long replace(java.lang.String, java.lang.String, android.content.ContentValues);
-    public long replaceOrThrow(java.lang.String, java.lang.String, android.content.ContentValues);
-    public void setForeignKeyConstraintsEnabled(boolean);
-    public void setLocale(java.util.Locale);
-    public void setLockingEnabled(boolean);
-    public void setMaxSqlCacheSize(int);
-    public long setMaximumSize(long);
-    public void setPageSize(long);
-    public void setTransactionSuccessful();
-    public void setVersion(int);
-    public java.lang.String toString();
-    public int update(java.lang.String, android.content.ContentValues, java.lang.String, java.lang.String[]);
-    public int updateWithOnConflict(java.lang.String, android.content.ContentValues, java.lang.String, java.lang.String[], int);
-    public void validateSql(java.lang.String, android.os.CancellationSignal);
-    public boolean yieldIfContended();
-    public boolean yieldIfContendedSafely();
-    public boolean yieldIfContendedSafely(long);
-
-
-    public static int CONFLICT_ABORT;
-    public static int CONFLICT_FAIL;
-    public static int CONFLICT_IGNORE;
-    public static int CONFLICT_NONE;
-    public static int CONFLICT_REPLACE;
-    public static int CONFLICT_ROLLBACK;
-    public static int CREATE_IF_NECESSARY;
-    public static int DISABLE_COMPATIBILITY_WAL;
-    public static int ENABLE_WRITE_AHEAD_LOGGING;
-    public static int MAX_SQL_CACHE_SIZE;
-    public static int NO_LOCALIZED_COLLATORS;
-    public static int OPEN_READONLY;
-    public static int OPEN_READWRITE;
-    public static int SQLITE_MAX_LIKE_PATTERN_LENGTH;
-}
-
--keep class android.database.sqlite.SQLiteDatabase$CursorFactory {
-
-    public abstract android.database.Cursor newCursor(android.database.sqlite.SQLiteDatabase, android.database.sqlite.SQLiteCursorDriver, java.lang.String, android.database.sqlite.SQLiteQuery);
-
-
-}
-
--keep class android.database.sqlite.SQLiteDatabase$CustomFunction {
-
-    public abstract void callback(java.lang.String[]);
-
-
-}
-
--keep class android.database.sqlite.SQLiteDatabase$OpenParams {
-
-    public android.database.sqlite.SQLiteDatabase$CursorFactory getCursorFactory();
-    public android.database.DatabaseErrorHandler getErrorHandler();
-    public long getIdleConnectionTimeout();
-    public java.lang.String getJournalMode();
-    public int getLookasideSlotCount();
-    public int getLookasideSlotSize();
-    public int getOpenFlags();
-    public java.lang.String getSynchronousMode();
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder toBuilder();
-
-
-}
-
--keep class android.database.sqlite.SQLiteDatabase$OpenParams$Builder {
-    <init>();
-    <init>(android.database.sqlite.SQLiteDatabase$OpenParams);
-
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder addOpenFlags(int);
-    public android.database.sqlite.SQLiteDatabase$OpenParams build();
-    public boolean isWriteAheadLoggingEnabled();
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder removeOpenFlags(int);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setCursorFactory(android.database.sqlite.SQLiteDatabase$CursorFactory);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setErrorHandler(android.database.DatabaseErrorHandler);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setIdleConnectionTimeout(long);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setJournalMode(java.lang.String);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setLookasideConfig(int, int);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setOpenFlags(int);
-    public android.database.sqlite.SQLiteDatabase$OpenParams$Builder setSynchronousMode(java.lang.String);
-    public void setWriteAheadLoggingEnabled(boolean);
-
-
-}
-
--keep class android.database.sqlite.SQLiteDatabaseConfiguration {
-    <init>(java.lang.String, int);
-    <init>(android.database.sqlite.SQLiteDatabaseConfiguration);
-
-    public boolean isInMemoryDb();
-    public void updateParametersFrom(android.database.sqlite.SQLiteDatabaseConfiguration);
-
-
-    public static java.lang.String MEMORY_DB_PATH;
-    public java.util.ArrayList customFunctions;
-    public boolean foreignKeyConstraintsEnabled;
-    public long idleConnectionTimeoutMs;
-    public java.lang.String journalMode;
-    public java.lang.String label;
-    public java.util.Locale locale;
-    public int lookasideSlotCount;
-    public int lookasideSlotSize;
-    public int maxSqlCacheSize;
-    public int openFlags;
-    public java.lang.String path;
-    public java.lang.String syncMode;
-}
-
--keep class android.database.sqlite.SQLiteDebug {
-
-    public static void dump(android.util.Printer, java.lang.String[]);
-    public static android.database.sqlite.SQLiteDebug$PagerStats getDatabaseInfo();
-    public static boolean shouldLogSlowQuery(long);
-
-
-    public static boolean DEBUG_LOG_SLOW_QUERIES;
-    public static boolean DEBUG_SQL_LOG;
-    public static boolean DEBUG_SQL_STATEMENTS;
-    public static boolean DEBUG_SQL_TIME;
-}
-
--keep class android.database.sqlite.SQLiteDebug$DbStats {
-    <init>(java.lang.String, long, long, int, int, int, int);
-
-
-
-    public java.lang.String cache;
-    public java.lang.String dbName;
-    public long dbSize;
-    public int lookaside;
-    public long pageSize;
-}
-
--keep class android.database.sqlite.SQLiteDebug$PagerStats {
-    <init>();
-
-
-
-    public java.util.ArrayList dbStats;
-    public int largestMemAlloc;
-    public int memoryUsed;
-    public int pageCacheOverflow;
-}
-
--keep class android.database.sqlite.SQLiteProgram {
-
-    public void bindAllArgsAsStrings(java.lang.String[]);
-    public void bindBlob(int, byte[]);
-    public void bindDouble(int, double);
-    public void bindLong(int, long);
-    public void bindNull(int);
-    public void bindString(int, java.lang.String);
-    public void clearBindings();
-    protected int getConnectionFlags();
-    protected android.database.sqlite.SQLiteSession getSession();
-    public int getUniqueId();
-    protected void onAllReferencesReleased();
-    protected void onCorruption();
-
-
-}
-
--keep class android.database.sqlite.SQLiteQuery {
-
-    public java.lang.String toString();
-
-
-}
-
--keep class android.database.sqlite.SQLiteSession {
-    <init>(android.database.sqlite.SQLiteConnectionPool);
-
-    public void beginTransaction(int, android.database.sqlite.SQLiteTransactionListener, int, android.os.CancellationSignal);
-    public void endTransaction(android.os.CancellationSignal);
-    public void execute(java.lang.String, java.lang.Object[], int, android.os.CancellationSignal);
-    public android.os.ParcelFileDescriptor executeForBlobFileDescriptor(java.lang.String, java.lang.Object[], int, android.os.CancellationSignal);
-    public int executeForChangedRowCount(java.lang.String, java.lang.Object[], int, android.os.CancellationSignal);
-    public int executeForCursorWindow(java.lang.String, java.lang.Object[], android.database.CursorWindow, int, int, boolean, int, android.os.CancellationSignal);
-    public long executeForLastInsertedRowId(java.lang.String, java.lang.Object[], int, android.os.CancellationSignal);
-    public long executeForLong(java.lang.String, java.lang.Object[], int, android.os.CancellationSignal);
-    public java.lang.String executeForString(java.lang.String, java.lang.Object[], int, android.os.CancellationSignal);
-    public boolean hasConnection();
-    public boolean hasNestedTransaction();
-    public boolean hasTransaction();
-    public void prepare(java.lang.String, int, android.os.CancellationSignal, android.database.sqlite.SQLiteStatementInfo);
-    public void setTransactionSuccessful();
-    public boolean yieldTransaction(long, boolean, android.os.CancellationSignal);
-
-
-    public static int TRANSACTION_MODE_DEFERRED;
-    public static int TRANSACTION_MODE_EXCLUSIVE;
-    public static int TRANSACTION_MODE_IMMEDIATE;
-}
-
--keep class android.database.sqlite.SQLiteStatement {
-
-    public void execute();
-    public long executeInsert();
-    public int executeUpdateDelete();
-    public android.os.ParcelFileDescriptor simpleQueryForBlobFileDescriptor();
-    public long simpleQueryForLong();
-    public java.lang.String simpleQueryForString();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.database.sqlite.SQLiteStatementInfo {
-    <init>();
-
-
-
-    public java.lang.String[] columnNames;
-    public int numParameters;
-    public boolean readOnly;
-}
-
--keep class android.database.sqlite.SQLiteTransactionListener {
-
-    public abstract void onBegin();
-    public abstract void onCommit();
-    public abstract void onRollback();
-
-
-}
-
--keep class android.graphics.BaseCanvas {
-    <init>();
-
-    protected static void checkRange(int, int, int);
-    public void drawARGB(int, int, int, int);
-    public void drawArc(float, float, float, float, float, float, boolean, android.graphics.Paint);
-    public void drawArc(android.graphics.RectF, float, float, boolean, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, float, float, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Matrix, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Rect, android.graphics.Rect, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Rect, android.graphics.RectF, android.graphics.Paint);
-    public void drawBitmap(int[], int, int, float, float, int, int, boolean, android.graphics.Paint);
-    public void drawBitmap(int[], int, int, int, int, int, int, boolean, android.graphics.Paint);
-    public void drawBitmapMesh(android.graphics.Bitmap, int, int, float[], int, int[], int, android.graphics.Paint);
-    public void drawCircle(float, float, float, android.graphics.Paint);
-    public void drawColor(int);
-    public void drawColor(int, android.graphics.PorterDuff$Mode);
-    public void drawLine(float, float, float, float, android.graphics.Paint);
-    public void drawLines(float[], int, int, android.graphics.Paint);
-    public void drawLines(float[], android.graphics.Paint);
-    public void drawOval(float, float, float, float, android.graphics.Paint);
-    public void drawOval(android.graphics.RectF, android.graphics.Paint);
-    public void drawPaint(android.graphics.Paint);
-    public void drawPatch(android.graphics.NinePatch, android.graphics.Rect, android.graphics.Paint);
-    public void drawPatch(android.graphics.NinePatch, android.graphics.RectF, android.graphics.Paint);
-    public void drawPath(android.graphics.Path, android.graphics.Paint);
-    public void drawPoint(float, float, android.graphics.Paint);
-    public void drawPoints(float[], int, int, android.graphics.Paint);
-    public void drawPoints(float[], android.graphics.Paint);
-    public void drawPosText(char[], int, int, float[], android.graphics.Paint);
-    public void drawPosText(java.lang.String, float[], android.graphics.Paint);
-    public void drawRGB(int, int, int);
-    public void drawRect(float, float, float, float, android.graphics.Paint);
-    public void drawRect(android.graphics.Rect, android.graphics.Paint);
-    public void drawRect(android.graphics.RectF, android.graphics.Paint);
-    public void drawRoundRect(float, float, float, float, float, float, android.graphics.Paint);
-    public void drawRoundRect(android.graphics.RectF, float, float, android.graphics.Paint);
-    public void drawText(char[], int, int, float, float, android.graphics.Paint);
-    public void drawText(java.lang.CharSequence, int, int, float, float, android.graphics.Paint);
-    public void drawText(java.lang.String, float, float, android.graphics.Paint);
-    public void drawText(java.lang.String, int, int, float, float, android.graphics.Paint);
-    public void drawTextOnPath(char[], int, int, android.graphics.Path, float, float, android.graphics.Paint);
-    public void drawTextOnPath(java.lang.String, android.graphics.Path, float, float, android.graphics.Paint);
-    public void drawTextRun(char[], int, int, int, int, float, float, boolean, android.graphics.Paint);
-    public void drawTextRun(java.lang.CharSequence, int, int, int, int, float, float, boolean, android.graphics.Paint);
-    public void drawVertices(android.graphics.Canvas$VertexMode, int, float[], int, float[], int, int[], int, short[], int, int, android.graphics.Paint);
-    public boolean isHardwareAccelerated();
-    public boolean isHwBitmapsInSwModeEnabled();
-    protected void onHwBitmapInSwMode();
-    public void setHwBitmapsInSwModeEnabled(boolean);
-    protected void throwIfCannotDraw(android.graphics.Bitmap);
-
-
-    protected int mDensity;
-    protected long mNativeCanvasWrapper;
-    protected int mScreenDensity;
-}
-
--keep class android.graphics.Bitmap {
-
-    public boolean compress(android.graphics.Bitmap$CompressFormat, int, java.io.OutputStream);
-    public android.graphics.Bitmap copy(android.graphics.Bitmap$Config, boolean);
-    public void copyPixelsFromBuffer(java.nio.Buffer);
-    public void copyPixelsToBuffer(java.nio.Buffer);
-    public android.graphics.Bitmap createAshmemBitmap();
-    public android.graphics.Bitmap createAshmemBitmap(android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(android.graphics.Bitmap);
-    public static android.graphics.Bitmap createBitmap(android.graphics.Bitmap, int, int, int, int);
-    public static android.graphics.Bitmap createBitmap(android.graphics.Bitmap, int, int, int, int, android.graphics.Matrix, boolean);
-    public static android.graphics.Bitmap createBitmap(int, int, android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(android.util.DisplayMetrics, int, int, android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(int, int, android.graphics.Bitmap$Config, boolean);
-    public static android.graphics.Bitmap createBitmap(int, int, android.graphics.Bitmap$Config, boolean, android.graphics.ColorSpace);
-    public static android.graphics.Bitmap createBitmap(android.util.DisplayMetrics, int, int, android.graphics.Bitmap$Config, boolean);
-    public static android.graphics.Bitmap createBitmap(android.util.DisplayMetrics, int, int, android.graphics.Bitmap$Config, boolean, android.graphics.ColorSpace);
-    public static android.graphics.Bitmap createBitmap(int[], int, int, int, int, android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(android.util.DisplayMetrics, int[], int, int, int, int, android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(int[], int, int, android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(android.util.DisplayMetrics, int[], int, int, android.graphics.Bitmap$Config);
-    public static android.graphics.Bitmap createBitmap(android.graphics.Picture);
-    public static android.graphics.Bitmap createBitmap(android.graphics.Picture, int, int, android.graphics.Bitmap$Config);
-    public android.graphics.GraphicBuffer createGraphicBufferHandle();
-    public static android.graphics.Bitmap createHardwareBitmap(android.graphics.GraphicBuffer);
-    public static android.graphics.Bitmap createScaledBitmap(android.graphics.Bitmap, int, int, boolean);
-    public int describeContents();
-    public void eraseColor(int);
-    public android.graphics.Bitmap extractAlpha();
-    public android.graphics.Bitmap extractAlpha(android.graphics.Paint, int[]);
-    public int getAllocationByteCount();
-    public int getByteCount();
-    public android.graphics.ColorSpace getColorSpace();
-    public android.graphics.Bitmap$Config getConfig();
-    public int getDensity();
-    public int getGenerationId();
-    public int getHeight();
-    public long getNativeInstance();
-    public byte[] getNinePatchChunk();
-    public android.graphics.NinePatch$InsetStruct getNinePatchInsets();
-    public void getOpticalInsets(android.graphics.Rect);
-    public int getPixel(int, int);
-    public void getPixels(int[], int, int, int, int, int, int);
-    public int getRowBytes();
-    public int getScaledHeight(android.graphics.Canvas);
-    public int getScaledHeight(android.util.DisplayMetrics);
-    public int getScaledHeight(int);
-    public int getScaledWidth(android.graphics.Canvas);
-    public int getScaledWidth(android.util.DisplayMetrics);
-    public int getScaledWidth(int);
-    public int getWidth();
-    public boolean hasAlpha();
-    public boolean hasMipMap();
-    public boolean isMutable();
-    public boolean isPremultiplied();
-    public boolean isRecycled();
-    public void prepareToDraw();
-    public void reconfigure(int, int, android.graphics.Bitmap$Config);
-    public void recycle();
-    public boolean sameAs(android.graphics.Bitmap);
-    public static int scaleFromDensity(int, int, int);
-    public void setConfig(android.graphics.Bitmap$Config);
-    public static void setDefaultDensity(int);
-    public void setDensity(int);
-    public void setHasAlpha(boolean);
-    public void setHasMipMap(boolean);
-    public void setHeight(int);
-    public void setImmutable();
-    public void setNinePatchChunk(byte[]);
-    public void setPixel(int, int, int);
-    public void setPixels(int[], int, int, int, int, int, int);
-    public void setPremultiplied(boolean);
-    public void setWidth(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DENSITY_NONE;
-    public int mDensity;
-    public static volatile int sPreloadTracingNumInstantiatedBitmaps;
-    public static volatile long sPreloadTracingTotalBitmapsSize;
-}
-
--keep class android.graphics.Bitmap$CompressFormat {
-
-    public static android.graphics.Bitmap$CompressFormat valueOf(java.lang.String);
-    public static android.graphics.Bitmap$CompressFormat[] values();
-
-    public static android.graphics.Bitmap$CompressFormat JPEG;
-    public static android.graphics.Bitmap$CompressFormat PNG;
-    public static android.graphics.Bitmap$CompressFormat WEBP;
-
-}
-
--keep class android.graphics.Bitmap$Config {
-
-    public static android.graphics.Bitmap$Config valueOf(java.lang.String);
-    public static android.graphics.Bitmap$Config[] values();
-
-    public static android.graphics.Bitmap$Config ALPHA_8;
-    public static android.graphics.Bitmap$Config ARGB_4444;
-    public static android.graphics.Bitmap$Config ARGB_8888;
-    public static android.graphics.Bitmap$Config HARDWARE;
-    public static android.graphics.Bitmap$Config RGBA_F16;
-    public static android.graphics.Bitmap$Config RGB_565;
-
-}
-
--keep class android.graphics.BitmapFactory {
-    <init>();
-
-    public static android.graphics.Bitmap decodeByteArray(byte[], int, int, android.graphics.BitmapFactory$Options);
-    public static android.graphics.Bitmap decodeByteArray(byte[], int, int);
-    public static android.graphics.Bitmap decodeFile(java.lang.String, android.graphics.BitmapFactory$Options);
-    public static android.graphics.Bitmap decodeFile(java.lang.String);
-    public static android.graphics.Bitmap decodeFileDescriptor(java.io.FileDescriptor, android.graphics.Rect, android.graphics.BitmapFactory$Options);
-    public static android.graphics.Bitmap decodeFileDescriptor(java.io.FileDescriptor);
-    public static android.graphics.Bitmap decodeResource(android.content.res.Resources, int, android.graphics.BitmapFactory$Options);
-    public static android.graphics.Bitmap decodeResource(android.content.res.Resources, int);
-    public static android.graphics.Bitmap decodeResourceStream(android.content.res.Resources, android.util.TypedValue, java.io.InputStream, android.graphics.Rect, android.graphics.BitmapFactory$Options);
-    public static android.graphics.Bitmap decodeStream(java.io.InputStream, android.graphics.Rect, android.graphics.BitmapFactory$Options);
-    public static android.graphics.Bitmap decodeStream(java.io.InputStream);
-
-
-}
-
--keep class android.graphics.BitmapFactory$Options {
-    <init>();
-
-    public void requestCancelDecode();
-
-
-    public android.graphics.Bitmap inBitmap;
-    public int inDensity;
-    public boolean inDither;
-    public boolean inInputShareable;
-    public boolean inJustDecodeBounds;
-    public boolean inMutable;
-    public boolean inPreferQualityOverSpeed;
-    public android.graphics.ColorSpace inPreferredColorSpace;
-    public android.graphics.Bitmap$Config inPreferredConfig;
-    public boolean inPremultiplied;
-    public boolean inPurgeable;
-    public int inSampleSize;
-    public boolean inScaled;
-    public int inScreenDensity;
-    public int inTargetDensity;
-    public byte[] inTempStorage;
-    public boolean mCancel;
-    public android.graphics.ColorSpace outColorSpace;
-    public android.graphics.Bitmap$Config outConfig;
-    public int outHeight;
-    public java.lang.String outMimeType;
-    public int outWidth;
-}
-
--keep class android.graphics.Canvas {
-    <init>();
-    <init>(android.graphics.Bitmap);
-    <init>(long);
-
-    public boolean clipOutPath(android.graphics.Path);
-    public boolean clipOutRect(android.graphics.RectF);
-    public boolean clipOutRect(android.graphics.Rect);
-    public boolean clipOutRect(float, float, float, float);
-    public boolean clipOutRect(int, int, int, int);
-    public boolean clipPath(android.graphics.Path, android.graphics.Region$Op);
-    public boolean clipPath(android.graphics.Path);
-    public boolean clipRect(android.graphics.RectF, android.graphics.Region$Op);
-    public boolean clipRect(android.graphics.Rect, android.graphics.Region$Op);
-    public boolean clipRect(android.graphics.RectF);
-    public boolean clipRect(android.graphics.Rect);
-    public boolean clipRect(float, float, float, float, android.graphics.Region$Op);
-    public boolean clipRect(float, float, float, float);
-    public boolean clipRect(int, int, int, int);
-    public boolean clipRectUnion(android.graphics.Rect);
-    public boolean clipRegion(android.graphics.Region, android.graphics.Region$Op);
-    public boolean clipRegion(android.graphics.Region);
-    public void concat(android.graphics.Matrix);
-    public void drawARGB(int, int, int, int);
-    public void drawArc(android.graphics.RectF, float, float, boolean, android.graphics.Paint);
-    public void drawArc(float, float, float, float, float, float, boolean, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, float, float, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Rect, android.graphics.RectF, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Rect, android.graphics.Rect, android.graphics.Paint);
-    public void drawBitmap(int[], int, int, float, float, int, int, boolean, android.graphics.Paint);
-    public void drawBitmap(int[], int, int, int, int, int, int, boolean, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Matrix, android.graphics.Paint);
-    public void drawBitmapMesh(android.graphics.Bitmap, int, int, float[], int, int[], int, android.graphics.Paint);
-    public void drawCircle(float, float, float, android.graphics.Paint);
-    public void drawColor(int);
-    public void drawColor(int, android.graphics.PorterDuff$Mode);
-    public void drawLine(float, float, float, float, android.graphics.Paint);
-    public void drawLines(float[], int, int, android.graphics.Paint);
-    public void drawLines(float[], android.graphics.Paint);
-    public void drawOval(android.graphics.RectF, android.graphics.Paint);
-    public void drawOval(float, float, float, float, android.graphics.Paint);
-    public void drawPaint(android.graphics.Paint);
-    public void drawPatch(android.graphics.NinePatch, android.graphics.Rect, android.graphics.Paint);
-    public void drawPatch(android.graphics.NinePatch, android.graphics.RectF, android.graphics.Paint);
-    public void drawPath(android.graphics.Path, android.graphics.Paint);
-    public void drawPicture(android.graphics.Picture);
-    public void drawPicture(android.graphics.Picture, android.graphics.RectF);
-    public void drawPicture(android.graphics.Picture, android.graphics.Rect);
-    public void drawPoint(float, float, android.graphics.Paint);
-    public void drawPoints(float[], int, int, android.graphics.Paint);
-    public void drawPoints(float[], android.graphics.Paint);
-    public void drawPosText(char[], int, int, float[], android.graphics.Paint);
-    public void drawPosText(java.lang.String, float[], android.graphics.Paint);
-    public void drawRGB(int, int, int);
-    public void drawRect(android.graphics.RectF, android.graphics.Paint);
-    public void drawRect(android.graphics.Rect, android.graphics.Paint);
-    public void drawRect(float, float, float, float, android.graphics.Paint);
-    public void drawRoundRect(android.graphics.RectF, float, float, android.graphics.Paint);
-    public void drawRoundRect(float, float, float, float, float, float, android.graphics.Paint);
-    public void drawText(char[], int, int, float, float, android.graphics.Paint);
-    public void drawText(java.lang.String, float, float, android.graphics.Paint);
-    public void drawText(java.lang.String, int, int, float, float, android.graphics.Paint);
-    public void drawText(java.lang.CharSequence, int, int, float, float, android.graphics.Paint);
-    public void drawTextOnPath(char[], int, int, android.graphics.Path, float, float, android.graphics.Paint);
-    public void drawTextOnPath(java.lang.String, android.graphics.Path, float, float, android.graphics.Paint);
-    public void drawTextRun(char[], int, int, int, int, float, float, boolean, android.graphics.Paint);
-    public void drawTextRun(java.lang.CharSequence, int, int, int, int, float, float, boolean, android.graphics.Paint);
-    public void drawVertices(android.graphics.Canvas$VertexMode, int, float[], int, float[], int, int[], int, short[], int, int, android.graphics.Paint);
-    public static void freeCaches();
-    public static void freeTextLayoutCaches();
-    public boolean getClipBounds(android.graphics.Rect);
-    public android.graphics.Rect getClipBounds();
-    public int getDensity();
-    public android.graphics.DrawFilter getDrawFilter();
-    protected javax.microedition.khronos.opengles.GL getGL();
-    public int getHeight();
-    public void getMatrix(android.graphics.Matrix);
-    public android.graphics.Matrix getMatrix();
-    public int getMaximumBitmapHeight();
-    public int getMaximumBitmapWidth();
-    public long getNativeCanvasWrapper();
-    public int getSaveCount();
-    public int getWidth();
-    public void insertInorderBarrier();
-    public void insertReorderBarrier();
-    public boolean isHardwareAccelerated();
-    public boolean isOpaque();
-    public boolean isRecordingFor(java.lang.Object);
-    public boolean quickReject(android.graphics.RectF, android.graphics.Canvas$EdgeType);
-    public boolean quickReject(android.graphics.Path, android.graphics.Canvas$EdgeType);
-    public boolean quickReject(float, float, float, float, android.graphics.Canvas$EdgeType);
-    public void release();
-    public void restore();
-    public void restoreToCount(int);
-    public void rotate(float);
-    public void rotate(float, float, float);
-    public int save();
-    public int save(int);
-    public int saveLayer(android.graphics.RectF, android.graphics.Paint, int);
-    public int saveLayer(android.graphics.RectF, android.graphics.Paint);
-    public int saveLayer(float, float, float, float, android.graphics.Paint, int);
-    public int saveLayer(float, float, float, float, android.graphics.Paint);
-    public int saveLayerAlpha(android.graphics.RectF, int, int);
-    public int saveLayerAlpha(android.graphics.RectF, int);
-    public int saveLayerAlpha(float, float, float, float, int, int);
-    public int saveLayerAlpha(float, float, float, float, int);
-    public int saveUnclippedLayer(int, int, int, int);
-    public void scale(float, float);
-    public void scale(float, float, float, float);
-    public void setBitmap(android.graphics.Bitmap);
-    public static void setCompatibilityVersion(int);
-    public void setDensity(int);
-    public void setDrawFilter(android.graphics.DrawFilter);
-    public void setMatrix(android.graphics.Matrix);
-    public void setScreenDensity(int);
-    public void skew(float, float);
-    public void translate(float, float);
-
-
-    public static int ALL_SAVE_FLAG;
-    public static int CLIP_SAVE_FLAG;
-    public static int CLIP_TO_LAYER_SAVE_FLAG;
-    public static int FULL_COLOR_LAYER_SAVE_FLAG;
-    public static int HAS_ALPHA_LAYER_SAVE_FLAG;
-    public static int MATRIX_SAVE_FLAG;
-    public static boolean sCompatibilityRestore;
-    public static boolean sCompatibilitySetBitmap;
-}
-
--keep class android.graphics.Canvas$EdgeType {
-
-    public static android.graphics.Canvas$EdgeType valueOf(java.lang.String);
-    public static android.graphics.Canvas$EdgeType[] values();
-
-    public static android.graphics.Canvas$EdgeType AA;
-    public static android.graphics.Canvas$EdgeType BW;
-
-    public int nativeInt;
-}
-
--keep class android.graphics.Canvas$VertexMode {
-
-    public static android.graphics.Canvas$VertexMode valueOf(java.lang.String);
-    public static android.graphics.Canvas$VertexMode[] values();
-
-    public static android.graphics.Canvas$VertexMode TRIANGLES;
-    public static android.graphics.Canvas$VertexMode TRIANGLE_FAN;
-    public static android.graphics.Canvas$VertexMode TRIANGLE_STRIP;
-
-    public int nativeInt;
-}
-
--keep class android.graphics.CanvasProperty {
-
-    public static android.graphics.CanvasProperty createFloat(float);
-    public static android.graphics.CanvasProperty createPaint(android.graphics.Paint);
-    public long getNativeContainer();
-
-
-}
-
--keep class android.graphics.ColorFilter {
-    <init>();
-
-    public long getNativeInstance();
-
-
-}
-
--keep class android.graphics.ColorSpace {
-
-    public static android.graphics.ColorSpace adapt(android.graphics.ColorSpace, float[]);
-    public static android.graphics.ColorSpace adapt(android.graphics.ColorSpace, float[], android.graphics.ColorSpace$Adaptation);
-    public static android.graphics.ColorSpace$Connector connect(android.graphics.ColorSpace, android.graphics.ColorSpace);
-    public static android.graphics.ColorSpace$Connector connect(android.graphics.ColorSpace, android.graphics.ColorSpace, android.graphics.ColorSpace$RenderIntent);
-    public static android.graphics.ColorSpace$Connector connect(android.graphics.ColorSpace);
-    public static android.graphics.ColorSpace$Connector connect(android.graphics.ColorSpace, android.graphics.ColorSpace$RenderIntent);
-    public static android.graphics.ColorSpace$Renderer createRenderer();
-    public boolean equals(java.lang.Object);
-    public float[] fromXyz(float, float, float);
-    public abstract float[] fromXyz(float[]);
-    public static android.graphics.ColorSpace get(android.graphics.ColorSpace$Named);
-    public int getComponentCount();
-    public int getId();
-    public abstract float getMaxValue(int);
-    public abstract float getMinValue(int);
-    public android.graphics.ColorSpace$Model getModel();
-    public java.lang.String getName();
-    public int hashCode();
-    public boolean isSrgb();
-    public abstract boolean isWideGamut();
-    public static android.graphics.ColorSpace match(float[], android.graphics.ColorSpace$Rgb$TransferParameters);
-    public java.lang.String toString();
-    public float[] toXyz(float, float, float);
-    public abstract float[] toXyz(float[]);
-
-
-    public static float[] ILLUMINANT_A;
-    public static float[] ILLUMINANT_B;
-    public static float[] ILLUMINANT_C;
-    public static float[] ILLUMINANT_D50;
-    public static float[] ILLUMINANT_D55;
-    public static float[] ILLUMINANT_D60;
-    public static float[] ILLUMINANT_D65;
-    public static float[] ILLUMINANT_D75;
-    public static float[] ILLUMINANT_E;
-    public static int MAX_ID;
-    public static int MIN_ID;
-}
-
--keep class android.graphics.ColorSpace$Adaptation {
-
-    public static android.graphics.ColorSpace$Adaptation valueOf(java.lang.String);
-    public static android.graphics.ColorSpace$Adaptation[] values();
-
-    public static android.graphics.ColorSpace$Adaptation BRADFORD;
-    public static android.graphics.ColorSpace$Adaptation CIECAT02;
-    public static android.graphics.ColorSpace$Adaptation VON_KRIES;
-
-}
-
--keep class android.graphics.ColorSpace$Connector {
-
-    public android.graphics.ColorSpace getDestination();
-    public android.graphics.ColorSpace$RenderIntent getRenderIntent();
-    public android.graphics.ColorSpace getSource();
-    public float[] transform(float, float, float);
-    public float[] transform(float[]);
-
-
-}
-
--keep class android.graphics.ColorSpace$Model {
-
-    public int getComponentCount();
-    public static android.graphics.ColorSpace$Model valueOf(java.lang.String);
-    public static android.graphics.ColorSpace$Model[] values();
-
-    public static android.graphics.ColorSpace$Model CMYK;
-    public static android.graphics.ColorSpace$Model LAB;
-    public static android.graphics.ColorSpace$Model RGB;
-    public static android.graphics.ColorSpace$Model XYZ;
-
-}
-
--keep class android.graphics.ColorSpace$Named {
-
-    public static android.graphics.ColorSpace$Named valueOf(java.lang.String);
-    public static android.graphics.ColorSpace$Named[] values();
-
-    public static android.graphics.ColorSpace$Named ACES;
-    public static android.graphics.ColorSpace$Named ACESCG;
-    public static android.graphics.ColorSpace$Named ADOBE_RGB;
-    public static android.graphics.ColorSpace$Named BT2020;
-    public static android.graphics.ColorSpace$Named BT709;
-    public static android.graphics.ColorSpace$Named CIE_LAB;
-    public static android.graphics.ColorSpace$Named CIE_XYZ;
-    public static android.graphics.ColorSpace$Named DCI_P3;
-    public static android.graphics.ColorSpace$Named DISPLAY_P3;
-    public static android.graphics.ColorSpace$Named EXTENDED_SRGB;
-    public static android.graphics.ColorSpace$Named LINEAR_EXTENDED_SRGB;
-    public static android.graphics.ColorSpace$Named LINEAR_SRGB;
-    public static android.graphics.ColorSpace$Named NTSC_1953;
-    public static android.graphics.ColorSpace$Named PRO_PHOTO_RGB;
-    public static android.graphics.ColorSpace$Named SMPTE_C;
-    public static android.graphics.ColorSpace$Named SRGB;
-
-}
-
--keep class android.graphics.ColorSpace$RenderIntent {
-
-    public static android.graphics.ColorSpace$RenderIntent valueOf(java.lang.String);
-    public static android.graphics.ColorSpace$RenderIntent[] values();
-
-    public static android.graphics.ColorSpace$RenderIntent ABSOLUTE;
-    public static android.graphics.ColorSpace$RenderIntent PERCEPTUAL;
-    public static android.graphics.ColorSpace$RenderIntent RELATIVE;
-    public static android.graphics.ColorSpace$RenderIntent SATURATION;
-
-}
-
--keep class android.graphics.ColorSpace$Renderer {
-
-    public android.graphics.ColorSpace$Renderer add(android.graphics.ColorSpace, int);
-    public android.graphics.ColorSpace$Renderer add(android.graphics.ColorSpace, float, float, float, int);
-    public android.graphics.ColorSpace$Renderer clip(boolean);
-    public android.graphics.Bitmap render();
-    public android.graphics.ColorSpace$Renderer showWhitePoint(boolean);
-    public android.graphics.ColorSpace$Renderer size(int);
-    public android.graphics.ColorSpace$Renderer uniformChromaticityScale(boolean);
-
-
-}
-
--keep class android.graphics.ColorSpace$Rgb {
-    <init>(java.lang.String, float[], java.util.function.DoubleUnaryOperator, java.util.function.DoubleUnaryOperator);
-    <init>(java.lang.String, float[], float[], java.util.function.DoubleUnaryOperator, java.util.function.DoubleUnaryOperator, float, float);
-    <init>(java.lang.String, float[], android.graphics.ColorSpace$Rgb$TransferParameters);
-    <init>(java.lang.String, float[], float[], android.graphics.ColorSpace$Rgb$TransferParameters);
-    <init>(java.lang.String, float[], double);
-    <init>(java.lang.String, float[], float[], double);
-
-    public boolean equals(java.lang.Object);
-    public float[] fromLinear(float, float, float);
-    public float[] fromLinear(float[]);
-    public float[] fromXyz(float[]);
-    public java.util.function.DoubleUnaryOperator getEotf();
-    public float[] getInverseTransform(float[]);
-    public float[] getInverseTransform();
-    public float getMaxValue(int);
-    public float getMinValue(int);
-    public java.util.function.DoubleUnaryOperator getOetf();
-    public float[] getPrimaries(float[]);
-    public float[] getPrimaries();
-    public android.graphics.ColorSpace$Rgb$TransferParameters getTransferParameters();
-    public float[] getTransform(float[]);
-    public float[] getTransform();
-    public float[] getWhitePoint(float[]);
-    public float[] getWhitePoint();
-    public int hashCode();
-    public boolean isSrgb();
-    public boolean isWideGamut();
-    public float[] toLinear(float, float, float);
-    public float[] toLinear(float[]);
-    public float[] toXyz(float[]);
-
-
-}
-
--keep class android.graphics.ColorSpace$Rgb$TransferParameters {
-    <init>(double, double, double, double, double);
-    <init>(double, double, double, double, double, double, double);
-
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-
-
-    public double a;
-    public double b;
-    public double c;
-    public double d;
-    public double e;
-    public double f;
-    public double g;
-}
-
--keep class android.graphics.DrawFilter {
-    <init>();
-
-    protected void finalize();
-
-
-    public long mNativeInt;
-}
-
--keep class android.graphics.FontFamily {
-    <init>();
-    <init>(java.lang.String[], int);
-
-    public void abortCreation();
-    public boolean addFont(java.lang.String, int, android.graphics.fonts.FontVariationAxis[], int, int);
-    public boolean addFontFromAssetManager(android.content.res.AssetManager, java.lang.String, int, boolean, int, int, int, android.graphics.fonts.FontVariationAxis[]);
-    public boolean addFontFromBuffer(java.nio.ByteBuffer, int, android.graphics.fonts.FontVariationAxis[], int, int);
-    public boolean freeze();
-
-
-    public long mNativePtr;
-}
-
--keep class android.graphics.GraphicBuffer {
-
-    public static android.graphics.GraphicBuffer create(int, int, int, int);
-    public static android.graphics.GraphicBuffer createFromExisting(int, int, int, int, long);
-    public int describeContents();
-    public void destroy();
-    protected void finalize();
-    public int getFormat();
-    public int getHeight();
-    public int getUsage();
-    public int getWidth();
-    public boolean isDestroyed();
-    public android.graphics.Canvas lockCanvas();
-    public android.graphics.Canvas lockCanvas(android.graphics.Rect);
-    public void unlockCanvasAndPost(android.graphics.Canvas);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int USAGE_HW_2D;
-    public static int USAGE_HW_COMPOSER;
-    public static int USAGE_HW_MASK;
-    public static int USAGE_HW_RENDER;
-    public static int USAGE_HW_TEXTURE;
-    public static int USAGE_HW_VIDEO_ENCODER;
-    public static int USAGE_PROTECTED;
-    public static int USAGE_SOFTWARE_MASK;
-    public static int USAGE_SW_READ_MASK;
-    public static int USAGE_SW_READ_NEVER;
-    public static int USAGE_SW_READ_OFTEN;
-    public static int USAGE_SW_READ_RARELY;
-    public static int USAGE_SW_WRITE_MASK;
-    public static int USAGE_SW_WRITE_NEVER;
-    public static int USAGE_SW_WRITE_OFTEN;
-    public static int USAGE_SW_WRITE_RARELY;
-}
-
--keep class android.graphics.Insets {
-
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public static android.graphics.Insets of(int, int, int, int);
-    public static android.graphics.Insets of(android.graphics.Rect);
-    public java.lang.String toString();
-
-
-    public static android.graphics.Insets NONE;
-    public int bottom;
-    public int left;
-    public int right;
-    public int top;
-}
-
--keep class android.graphics.MaskFilter {
-    <init>();
-
-    protected void finalize();
-
-
-}
-
--keep class android.graphics.Matrix {
-    <init>();
-    <init>(android.graphics.Matrix);
-
-    public boolean equals(java.lang.Object);
-    public void getValues(float[]);
-    public int hashCode();
-    public boolean invert(android.graphics.Matrix);
-    public boolean isAffine();
-    public boolean isIdentity();
-    public void mapPoints(float[], int, float[], int, int);
-    public void mapPoints(float[], float[]);
-    public void mapPoints(float[]);
-    public float mapRadius(float);
-    public boolean mapRect(android.graphics.RectF, android.graphics.RectF);
-    public boolean mapRect(android.graphics.RectF);
-    public void mapVectors(float[], int, float[], int, int);
-    public void mapVectors(float[], float[]);
-    public void mapVectors(float[]);
-    public long ni();
-    public boolean postConcat(android.graphics.Matrix);
-    public boolean postRotate(float, float, float);
-    public boolean postRotate(float);
-    public boolean postScale(float, float, float, float);
-    public boolean postScale(float, float);
-    public boolean postSkew(float, float, float, float);
-    public boolean postSkew(float, float);
-    public boolean postTranslate(float, float);
-    public boolean preConcat(android.graphics.Matrix);
-    public boolean preRotate(float, float, float);
-    public boolean preRotate(float);
-    public boolean preScale(float, float, float, float);
-    public boolean preScale(float, float);
-    public boolean preSkew(float, float, float, float);
-    public boolean preSkew(float, float);
-    public boolean preTranslate(float, float);
-    public void printShortString(java.io.PrintWriter);
-    public boolean rectStaysRect();
-    public void reset();
-    public void set(android.graphics.Matrix);
-    public boolean setConcat(android.graphics.Matrix, android.graphics.Matrix);
-    public boolean setPolyToPoly(float[], int, float[], int, int);
-    public boolean setRectToRect(android.graphics.RectF, android.graphics.RectF, android.graphics.Matrix$ScaleToFit);
-    public void setRotate(float, float, float);
-    public void setRotate(float);
-    public void setScale(float, float, float, float);
-    public void setScale(float, float);
-    public void setSinCos(float, float, float, float);
-    public void setSinCos(float, float);
-    public void setSkew(float, float, float, float);
-    public void setSkew(float, float);
-    public void setTranslate(float, float);
-    public void setValues(float[]);
-    public java.lang.String toShortString();
-    public void toShortString(java.lang.StringBuilder);
-    public java.lang.String toString();
-
-
-    public static android.graphics.Matrix IDENTITY_MATRIX;
-    public static int MPERSP_0;
-    public static int MPERSP_1;
-    public static int MPERSP_2;
-    public static int MSCALE_X;
-    public static int MSCALE_Y;
-    public static int MSKEW_X;
-    public static int MSKEW_Y;
-    public static int MTRANS_X;
-    public static int MTRANS_Y;
-    public long native_instance;
-}
-
--keep class android.graphics.Matrix$ScaleToFit {
-
-    public static android.graphics.Matrix$ScaleToFit valueOf(java.lang.String);
-    public static android.graphics.Matrix$ScaleToFit[] values();
-
-    public static android.graphics.Matrix$ScaleToFit CENTER;
-    public static android.graphics.Matrix$ScaleToFit END;
-    public static android.graphics.Matrix$ScaleToFit FILL;
-    public static android.graphics.Matrix$ScaleToFit START;
-
-}
-
--keep class android.graphics.Movie {
-
-    public static android.graphics.Movie decodeByteArray(byte[], int, int);
-    public static android.graphics.Movie decodeFile(java.lang.String);
-    public static android.graphics.Movie decodeStream(java.io.InputStream);
-    public void draw(android.graphics.Canvas, float, float, android.graphics.Paint);
-    public void draw(android.graphics.Canvas, float, float);
-    public int duration();
-    protected void finalize();
-    public int height();
-    public boolean isOpaque();
-    public boolean setTime(int);
-    public int width();
-
-
-}
-
--keep class android.graphics.NinePatch {
-    <init>(android.graphics.Bitmap, byte[]);
-    <init>(android.graphics.Bitmap, byte[], java.lang.String);
-    <init>(android.graphics.NinePatch);
-
-    public void draw(android.graphics.Canvas, android.graphics.RectF);
-    public void draw(android.graphics.Canvas, android.graphics.Rect);
-    public void draw(android.graphics.Canvas, android.graphics.Rect, android.graphics.Paint);
-    protected void finalize();
-    public android.graphics.Bitmap getBitmap();
-    public int getDensity();
-    public int getHeight();
-    public java.lang.String getName();
-    public android.graphics.Paint getPaint();
-    public android.graphics.Region getTransparentRegion(android.graphics.Rect);
-    public int getWidth();
-    public boolean hasAlpha();
-    public static boolean isNinePatchChunk(byte[]);
-    public void setPaint(android.graphics.Paint);
-
-
-    public long mNativeChunk;
-}
-
--keep class android.graphics.NinePatch$InsetStruct {
-
-    public static android.graphics.Rect scaleInsets(int, int, int, int, float);
-
-
-    public android.graphics.Rect opticalRect;
-    public float outlineAlpha;
-    public float outlineRadius;
-    public android.graphics.Rect outlineRect;
-}
-
--keep class android.graphics.Outline {
-    <init>();
-    <init>(android.graphics.Outline);
-
-    public boolean canClip();
-    public float getAlpha();
-    public float getRadius();
-    public boolean getRect(android.graphics.Rect);
-    public boolean isEmpty();
-    public void offset(int, int);
-    public void set(android.graphics.Outline);
-    public void setAlpha(float);
-    public void setConvexPath(android.graphics.Path);
-    public void setEmpty();
-    public void setOval(int, int, int, int);
-    public void setOval(android.graphics.Rect);
-    public void setRect(int, int, int, int);
-    public void setRect(android.graphics.Rect);
-    public void setRoundRect(int, int, int, int, float);
-    public void setRoundRect(android.graphics.Rect, float);
-
-
-    public static int MODE_CONVEX_PATH;
-    public static int MODE_EMPTY;
-    public static int MODE_ROUND_RECT;
-    public float mAlpha;
-    public int mMode;
-    public android.graphics.Path mPath;
-    public float mRadius;
-    public android.graphics.Rect mRect;
-}
-
--keep class android.graphics.Paint {
-    <init>();
-    <init>(int);
-    <init>(android.graphics.Paint);
-
-    public float ascent();
-    public int breakText(char[], int, int, float, float[]);
-    public int breakText(java.lang.CharSequence, int, int, boolean, float, float[]);
-    public int breakText(java.lang.String, boolean, float, float[]);
-    public void clearShadowLayer();
-    public float descent();
-    public boolean equalsForTextMeasurement(android.graphics.Paint);
-    public int getAlpha();
-    public int getBidiFlags();
-    public int getColor();
-    public android.graphics.ColorFilter getColorFilter();
-    public boolean getFillPath(android.graphics.Path, android.graphics.Path);
-    public int getFlags();
-    public java.lang.String getFontFeatureSettings();
-    public float getFontMetrics(android.graphics.Paint$FontMetrics);
-    public android.graphics.Paint$FontMetrics getFontMetrics();
-    public int getFontMetricsInt(android.graphics.Paint$FontMetricsInt);
-    public android.graphics.Paint$FontMetricsInt getFontMetricsInt();
-    public float getFontSpacing();
-    public java.lang.String getFontVariationSettings();
-    public int getHinting();
-    public int getHyphenEdit();
-    public float getLetterSpacing();
-    public android.graphics.MaskFilter getMaskFilter();
-    public long getNativeInstance();
-    public int getOffsetForAdvance(char[], int, int, int, int, boolean, float);
-    public int getOffsetForAdvance(java.lang.CharSequence, int, int, int, int, boolean, float);
-    public android.graphics.PathEffect getPathEffect();
-    public android.graphics.Rasterizer getRasterizer();
-    public float getRunAdvance(char[], int, int, int, int, boolean, int);
-    public float getRunAdvance(java.lang.CharSequence, int, int, int, int, boolean, int);
-    public android.graphics.Shader getShader();
-    public float getStrikeThruPosition();
-    public float getStrikeThruThickness();
-    public android.graphics.Paint$Cap getStrokeCap();
-    public android.graphics.Paint$Join getStrokeJoin();
-    public float getStrokeMiter();
-    public float getStrokeWidth();
-    public android.graphics.Paint$Style getStyle();
-    public android.graphics.Paint$Align getTextAlign();
-    public void getTextBounds(java.lang.String, int, int, android.graphics.Rect);
-    public void getTextBounds(java.lang.CharSequence, int, int, android.graphics.Rect);
-    public void getTextBounds(char[], int, int, android.graphics.Rect);
-    public java.util.Locale getTextLocale();
-    public android.os.LocaleList getTextLocales();
-    public void getTextPath(char[], int, int, float, float, android.graphics.Path);
-    public void getTextPath(java.lang.String, int, int, float, float, android.graphics.Path);
-    public float getTextRunAdvances(char[], int, int, int, int, boolean, float[], int);
-    public float getTextRunAdvances(java.lang.CharSequence, int, int, int, int, boolean, float[], int);
-    public float getTextRunAdvances(java.lang.String, int, int, int, int, boolean, float[], int);
-    public int getTextRunCursor(char[], int, int, int, int, int);
-    public int getTextRunCursor(java.lang.CharSequence, int, int, int, int, int);
-    public int getTextRunCursor(java.lang.String, int, int, int, int, int);
-    public float getTextScaleX();
-    public float getTextSize();
-    public float getTextSkewX();
-    public int getTextWidths(char[], int, int, float[]);
-    public int getTextWidths(java.lang.CharSequence, int, int, float[]);
-    public int getTextWidths(java.lang.String, int, int, float[]);
-    public int getTextWidths(java.lang.String, float[]);
-    public android.graphics.Typeface getTypeface();
-    public float getUnderlinePosition();
-    public float getUnderlineThickness();
-    public float getWordSpacing();
-    public android.graphics.Xfermode getXfermode();
-    public boolean hasEqualAttributes(android.graphics.Paint);
-    public boolean hasGlyph(java.lang.String);
-    public boolean hasShadowLayer();
-    public boolean isAntiAlias();
-    public boolean isDither();
-    public boolean isElegantTextHeight();
-    public boolean isFakeBoldText();
-    public boolean isFilterBitmap();
-    public boolean isLinearText();
-    public boolean isStrikeThruText();
-    public boolean isSubpixelText();
-    public boolean isUnderlineText();
-    public float measureText(char[], int, int);
-    public float measureText(java.lang.String, int, int);
-    public float measureText(java.lang.String);
-    public float measureText(java.lang.CharSequence, int, int);
-    public void reset();
-    public void set(android.graphics.Paint);
-    public void setARGB(int, int, int, int);
-    public void setAlpha(int);
-    public void setAntiAlias(boolean);
-    public void setBidiFlags(int);
-    public void setColor(int);
-    public android.graphics.ColorFilter setColorFilter(android.graphics.ColorFilter);
-    public void setCompatibilityScaling(float);
-    public void setDither(boolean);
-    public void setElegantTextHeight(boolean);
-    public void setFakeBoldText(boolean);
-    public void setFilterBitmap(boolean);
-    public void setFlags(int);
-    public void setFontFeatureSettings(java.lang.String);
-    public boolean setFontVariationSettings(java.lang.String);
-    public void setHinting(int);
-    public void setHyphenEdit(int);
-    public void setLetterSpacing(float);
-    public void setLinearText(boolean);
-    public android.graphics.MaskFilter setMaskFilter(android.graphics.MaskFilter);
-    public android.graphics.PathEffect setPathEffect(android.graphics.PathEffect);
-    public android.graphics.Rasterizer setRasterizer(android.graphics.Rasterizer);
-    public android.graphics.Shader setShader(android.graphics.Shader);
-    public void setShadowLayer(float, float, float, int);
-    public void setStrikeThruText(boolean);
-    public void setStrokeCap(android.graphics.Paint$Cap);
-    public void setStrokeJoin(android.graphics.Paint$Join);
-    public void setStrokeMiter(float);
-    public void setStrokeWidth(float);
-    public void setStyle(android.graphics.Paint$Style);
-    public void setSubpixelText(boolean);
-    public void setTextAlign(android.graphics.Paint$Align);
-    public void setTextLocale(java.util.Locale);
-    public void setTextLocales(android.os.LocaleList);
-    public void setTextScaleX(float);
-    public void setTextSize(float);
-    public void setTextSkewX(float);
-    public android.graphics.Typeface setTypeface(android.graphics.Typeface);
-    public void setUnderlineText(boolean);
-    public void setWordSpacing(float);
-    public android.graphics.Xfermode setXfermode(android.graphics.Xfermode);
-
-
-    public static int ANTI_ALIAS_FLAG;
-    public static int AUTO_HINTING_TEXT_FLAG;
-    public static int BIDI_DEFAULT_LTR;
-    public static int BIDI_DEFAULT_RTL;
-    public static int BIDI_FORCE_LTR;
-    public static int BIDI_FORCE_RTL;
-    public static int BIDI_LTR;
-    public static int BIDI_RTL;
-    public static int CURSOR_AFTER;
-    public static int CURSOR_AT;
-    public static int CURSOR_AT_OR_AFTER;
-    public static int CURSOR_AT_OR_BEFORE;
-    public static int CURSOR_BEFORE;
-    public static int DEV_KERN_TEXT_FLAG;
-    public static int DIRECTION_LTR;
-    public static int DIRECTION_RTL;
-    public static int DITHER_FLAG;
-    public static int EMBEDDED_BITMAP_TEXT_FLAG;
-    public static int FAKE_BOLD_TEXT_FLAG;
-    public static int FILTER_BITMAP_FLAG;
-    public static int HINTING_OFF;
-    public static int HINTING_ON;
-    public static int HYPHENEDIT_MASK_END_OF_LINE;
-    public static int HYPHENEDIT_MASK_START_OF_LINE;
-    public static int LCD_RENDER_TEXT_FLAG;
-    public static int LINEAR_TEXT_FLAG;
-    public static int STRIKE_THRU_TEXT_FLAG;
-    public static int SUBPIXEL_TEXT_FLAG;
-    public static int UNDERLINE_TEXT_FLAG;
-    public static int VERTICAL_TEXT_FLAG;
-    public int mBidiFlags;
-}
-
--keep class android.graphics.Paint$Align {
-
-    public static android.graphics.Paint$Align valueOf(java.lang.String);
-    public static android.graphics.Paint$Align[] values();
-
-    public static android.graphics.Paint$Align CENTER;
-    public static android.graphics.Paint$Align LEFT;
-    public static android.graphics.Paint$Align RIGHT;
-
-}
-
--keep class android.graphics.Paint$Cap {
-
-    public static android.graphics.Paint$Cap valueOf(java.lang.String);
-    public static android.graphics.Paint$Cap[] values();
-
-    public static android.graphics.Paint$Cap BUTT;
-    public static android.graphics.Paint$Cap ROUND;
-    public static android.graphics.Paint$Cap SQUARE;
-
-}
-
--keep class android.graphics.Paint$FontMetrics {
-    <init>();
-
-
-
-    public float ascent;
-    public float bottom;
-    public float descent;
-    public float leading;
-    public float top;
-}
-
--keep class android.graphics.Paint$FontMetricsInt {
-    <init>();
-
-    public java.lang.String toString();
-
-
-    public int ascent;
-    public int bottom;
-    public int descent;
-    public int leading;
-    public int top;
-}
-
--keep class android.graphics.Paint$Join {
-
-    public static android.graphics.Paint$Join valueOf(java.lang.String);
-    public static android.graphics.Paint$Join[] values();
-
-    public static android.graphics.Paint$Join BEVEL;
-    public static android.graphics.Paint$Join MITER;
-    public static android.graphics.Paint$Join ROUND;
-
-}
-
--keep class android.graphics.Paint$Style {
-
-    public static android.graphics.Paint$Style valueOf(java.lang.String);
-    public static android.graphics.Paint$Style[] values();
-
-    public static android.graphics.Paint$Style FILL;
-    public static android.graphics.Paint$Style FILL_AND_STROKE;
-    public static android.graphics.Paint$Style STROKE;
-
-}
-
--keep class android.graphics.Path {
-    <init>();
-    <init>(android.graphics.Path);
-
-    public void addArc(android.graphics.RectF, float, float);
-    public void addArc(float, float, float, float, float, float);
-    public void addCircle(float, float, float, android.graphics.Path$Direction);
-    public void addOval(android.graphics.RectF, android.graphics.Path$Direction);
-    public void addOval(float, float, float, float, android.graphics.Path$Direction);
-    public void addPath(android.graphics.Path, float, float);
-    public void addPath(android.graphics.Path);
-    public void addPath(android.graphics.Path, android.graphics.Matrix);
-    public void addRect(android.graphics.RectF, android.graphics.Path$Direction);
-    public void addRect(float, float, float, float, android.graphics.Path$Direction);
-    public void addRoundRect(android.graphics.RectF, float, float, android.graphics.Path$Direction);
-    public void addRoundRect(float, float, float, float, float, float, android.graphics.Path$Direction);
-    public void addRoundRect(android.graphics.RectF, float[], android.graphics.Path$Direction);
-    public void addRoundRect(float, float, float, float, float[], android.graphics.Path$Direction);
-    public float[] approximate(float);
-    public void arcTo(android.graphics.RectF, float, float, boolean);
-    public void arcTo(android.graphics.RectF, float, float);
-    public void arcTo(float, float, float, float, float, float, boolean);
-    public void close();
-    public void computeBounds(android.graphics.RectF, boolean);
-    public void cubicTo(float, float, float, float, float, float);
-    public android.graphics.Path$FillType getFillType();
-    public void incReserve(int);
-    public boolean isConvex();
-    public boolean isEmpty();
-    public boolean isInverseFillType();
-    public boolean isRect(android.graphics.RectF);
-    public void lineTo(float, float);
-    public void moveTo(float, float);
-    public void offset(float, float, android.graphics.Path);
-    public void offset(float, float);
-    public boolean op(android.graphics.Path, android.graphics.Path$Op);
-    public boolean op(android.graphics.Path, android.graphics.Path, android.graphics.Path$Op);
-    public void quadTo(float, float, float, float);
-    public void rCubicTo(float, float, float, float, float, float);
-    public void rLineTo(float, float);
-    public void rMoveTo(float, float);
-    public void rQuadTo(float, float, float, float);
-    public long readOnlyNI();
-    public void reset();
-    public void rewind();
-    public void set(android.graphics.Path);
-    public void setFillType(android.graphics.Path$FillType);
-    public void setLastPoint(float, float);
-    public void toggleInverseFillType();
-    public void transform(android.graphics.Matrix, android.graphics.Path);
-    public void transform(android.graphics.Matrix);
-
-
-    public boolean isSimplePath;
-    public long mNativePath;
-    public android.graphics.Region rects;
-}
-
--keep class android.graphics.Path$Direction {
-
-    public static android.graphics.Path$Direction valueOf(java.lang.String);
-    public static android.graphics.Path$Direction[] values();
-
-    public static android.graphics.Path$Direction CCW;
-    public static android.graphics.Path$Direction CW;
-
-}
-
--keep class android.graphics.Path$FillType {
-
-    public static android.graphics.Path$FillType valueOf(java.lang.String);
-    public static android.graphics.Path$FillType[] values();
-
-    public static android.graphics.Path$FillType EVEN_ODD;
-    public static android.graphics.Path$FillType INVERSE_EVEN_ODD;
-    public static android.graphics.Path$FillType INVERSE_WINDING;
-    public static android.graphics.Path$FillType WINDING;
-
-}
-
--keep class android.graphics.Path$Op {
-
-    public static android.graphics.Path$Op valueOf(java.lang.String);
-    public static android.graphics.Path$Op[] values();
-
-    public static android.graphics.Path$Op DIFFERENCE;
-    public static android.graphics.Path$Op INTERSECT;
-    public static android.graphics.Path$Op REVERSE_DIFFERENCE;
-    public static android.graphics.Path$Op UNION;
-    public static android.graphics.Path$Op XOR;
-
-}
-
--keep class android.graphics.PathEffect {
-    <init>();
-
-    protected void finalize();
-
-
-}
-
--keep class android.graphics.Picture {
-    <init>();
-    <init>(android.graphics.Picture);
-
-    public android.graphics.Canvas beginRecording(int, int);
-    public static android.graphics.Picture createFromStream(java.io.InputStream);
-    public void draw(android.graphics.Canvas);
-    public void endRecording();
-    protected void finalize();
-    public int getHeight();
-    public int getWidth();
-    public boolean requiresHardwareAcceleration();
-    public void writeToStream(java.io.OutputStream);
-
-
-}
-
--keep class android.graphics.Point {
-    <init>();
-    <init>(int, int);
-    <init>(android.graphics.Point);
-
-    public int describeContents();
-    public boolean equals(int, int);
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void negate();
-    public void offset(int, int);
-    public void printShortString(java.io.PrintWriter);
-    public void readFromParcel(android.os.Parcel);
-    public void set(int, int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int x;
-    public int y;
-}
-
--keep class android.graphics.PointF {
-    <init>();
-    <init>(float, float);
-    <init>(android.graphics.Point);
-
-    public int describeContents();
-    public boolean equals(float, float);
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public float length();
-    public static float length(float, float);
-    public void negate();
-    public void offset(float, float);
-    public void readFromParcel(android.os.Parcel);
-    public void set(float, float);
-    public void set(android.graphics.PointF);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public float x;
-    public float y;
-}
-
--keep class android.graphics.PorterDuff {
-    <init>();
-
-    public static android.graphics.PorterDuff$Mode intToMode(int);
-    public static int modeToInt(android.graphics.PorterDuff$Mode);
-
-
-}
-
--keep class android.graphics.PorterDuff$Mode {
-
-    public static android.graphics.PorterDuff$Mode valueOf(java.lang.String);
-    public static android.graphics.PorterDuff$Mode[] values();
-
-    public static android.graphics.PorterDuff$Mode ADD;
-    public static android.graphics.PorterDuff$Mode CLEAR;
-    public static android.graphics.PorterDuff$Mode DARKEN;
-    public static android.graphics.PorterDuff$Mode DST;
-    public static android.graphics.PorterDuff$Mode DST_ATOP;
-    public static android.graphics.PorterDuff$Mode DST_IN;
-    public static android.graphics.PorterDuff$Mode DST_OUT;
-    public static android.graphics.PorterDuff$Mode DST_OVER;
-    public static android.graphics.PorterDuff$Mode LIGHTEN;
-    public static android.graphics.PorterDuff$Mode MULTIPLY;
-    public static android.graphics.PorterDuff$Mode OVERLAY;
-    public static android.graphics.PorterDuff$Mode SCREEN;
-    public static android.graphics.PorterDuff$Mode SRC;
-    public static android.graphics.PorterDuff$Mode SRC_ATOP;
-    public static android.graphics.PorterDuff$Mode SRC_IN;
-    public static android.graphics.PorterDuff$Mode SRC_OUT;
-    public static android.graphics.PorterDuff$Mode SRC_OVER;
-    public static android.graphics.PorterDuff$Mode XOR;
-
-    public int nativeInt;
-}
-
--keep class android.graphics.Rasterizer {
-    <init>();
-
-    protected void finalize();
-
-
-}
-
--keep class android.graphics.Rect {
-    <init>();
-    <init>(int, int, int, int);
-    <init>(android.graphics.Rect);
-
-    public int centerX();
-    public int centerY();
-    public boolean contains(int, int);
-    public boolean contains(int, int, int, int);
-    public boolean contains(android.graphics.Rect);
-    public static android.graphics.Rect copyOrNull(android.graphics.Rect);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public float exactCenterX();
-    public float exactCenterY();
-    public java.lang.String flattenToString();
-    public int hashCode();
-    public int height();
-    public void inset(int, int);
-    public void inset(android.graphics.Rect);
-    public void inset(int, int, int, int);
-    public boolean intersect(int, int, int, int);
-    public boolean intersect(android.graphics.Rect);
-    public void intersectUnchecked(android.graphics.Rect);
-    public boolean intersects(int, int, int, int);
-    public static boolean intersects(android.graphics.Rect, android.graphics.Rect);
-    public boolean isEmpty();
-    public void offset(int, int);
-    public void offsetTo(int, int);
-    public void printShortString(java.io.PrintWriter);
-    public void readFromParcel(android.os.Parcel);
-    public void scale(float);
-    public void set(int, int, int, int);
-    public void set(android.graphics.Rect);
-    public void setEmpty();
-    public boolean setIntersect(android.graphics.Rect, android.graphics.Rect);
-    public void sort();
-    public java.lang.String toShortString();
-    public java.lang.String toShortString(java.lang.StringBuilder);
-    public java.lang.String toString();
-    public static android.graphics.Rect unflattenFromString(java.lang.String);
-    public void union(int, int, int, int);
-    public void union(android.graphics.Rect);
-    public void union(int, int);
-    public int width();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int bottom;
-    public int left;
-    public int right;
-    public int top;
-}
-
--keep class android.graphics.RectF {
-    <init>();
-    <init>(float, float, float, float);
-    <init>(android.graphics.RectF);
-    <init>(android.graphics.Rect);
-
-    public float centerX();
-    public float centerY();
-    public boolean contains(float, float);
-    public boolean contains(float, float, float, float);
-    public boolean contains(android.graphics.RectF);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public float height();
-    public void inset(float, float);
-    public boolean intersect(float, float, float, float);
-    public boolean intersect(android.graphics.RectF);
-    public boolean intersects(float, float, float, float);
-    public static boolean intersects(android.graphics.RectF, android.graphics.RectF);
-    public boolean isEmpty();
-    public void offset(float, float);
-    public void offsetTo(float, float);
-    public void printShortString(java.io.PrintWriter);
-    public void readFromParcel(android.os.Parcel);
-    public void round(android.graphics.Rect);
-    public void roundOut(android.graphics.Rect);
-    public void scale(float);
-    public void set(float, float, float, float);
-    public void set(android.graphics.RectF);
-    public void set(android.graphics.Rect);
-    public void setEmpty();
-    public boolean setIntersect(android.graphics.RectF, android.graphics.RectF);
-    public void sort();
-    public java.lang.String toShortString();
-    public java.lang.String toShortString(java.lang.StringBuilder);
-    public java.lang.String toString();
-    public void union(float, float, float, float);
-    public void union(android.graphics.RectF);
-    public void union(float, float);
-    public float width();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public float bottom;
-    public float left;
-    public float right;
-    public float top;
-}
-
--keep class android.graphics.Region {
-    <init>();
-    <init>(android.graphics.Region);
-    <init>(android.graphics.Rect);
-    <init>(int, int, int, int);
-
-    public boolean contains(int, int);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    protected void finalize();
-    public android.graphics.Path getBoundaryPath();
-    public boolean getBoundaryPath(android.graphics.Path);
-    public android.graphics.Rect getBounds();
-    public boolean getBounds(android.graphics.Rect);
-    public boolean isComplex();
-    public boolean isEmpty();
-    public boolean isRect();
-    public static android.graphics.Region obtain();
-    public static android.graphics.Region obtain(android.graphics.Region);
-    public boolean op(android.graphics.Rect, android.graphics.Region$Op);
-    public boolean op(int, int, int, int, android.graphics.Region$Op);
-    public boolean op(android.graphics.Region, android.graphics.Region$Op);
-    public boolean op(android.graphics.Rect, android.graphics.Region, android.graphics.Region$Op);
-    public boolean op(android.graphics.Region, android.graphics.Region, android.graphics.Region$Op);
-    public boolean quickContains(android.graphics.Rect);
-    public boolean quickContains(int, int, int, int);
-    public boolean quickReject(android.graphics.Rect);
-    public boolean quickReject(int, int, int, int);
-    public boolean quickReject(android.graphics.Region);
-    public void recycle();
-    public void scale(float);
-    public void scale(float, android.graphics.Region);
-    public boolean set(android.graphics.Region);
-    public boolean set(android.graphics.Rect);
-    public boolean set(int, int, int, int);
-    public void setEmpty();
-    public boolean setPath(android.graphics.Path, android.graphics.Region);
-    public java.lang.String toString();
-    public void translate(int, int);
-    public void translate(int, int, android.graphics.Region);
-    public boolean union(android.graphics.Rect);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public long mNativeRegion;
-}
-
--keep class android.graphics.Region$Op {
-
-    public static android.graphics.Region$Op valueOf(java.lang.String);
-    public static android.graphics.Region$Op[] values();
-
-    public static android.graphics.Region$Op DIFFERENCE;
-    public static android.graphics.Region$Op INTERSECT;
-    public static android.graphics.Region$Op REPLACE;
-    public static android.graphics.Region$Op REVERSE_DIFFERENCE;
-    public static android.graphics.Region$Op UNION;
-    public static android.graphics.Region$Op XOR;
-
-    public int nativeInt;
-}
-
--keep class android.graphics.Shader {
-    <init>();
-
-    protected android.graphics.Shader copy();
-    protected void copyLocalMatrix(android.graphics.Shader);
-    protected void discardNativeInstance();
-    public boolean getLocalMatrix(android.graphics.Matrix);
-    public long getNativeInstance();
-    public void setLocalMatrix(android.graphics.Matrix);
-    protected void verifyNativeInstance();
-
-
-}
-
--keep class android.graphics.SurfaceTexture {
-    <init>(int);
-    <init>(int, boolean);
-    <init>(boolean);
-
-    public void attachToGLContext(int);
-    public void detachFromGLContext();
-    protected void finalize();
-    public long getTimestamp();
-    public void getTransformMatrix(float[]);
-    public boolean isReleased();
-    public boolean isSingleBuffered();
-    public void release();
-    public void releaseTexImage();
-    public void setDefaultBufferSize(int, int);
-    public void setOnFrameAvailableListener(android.graphics.SurfaceTexture$OnFrameAvailableListener);
-    public void setOnFrameAvailableListener(android.graphics.SurfaceTexture$OnFrameAvailableListener, android.os.Handler);
-    public void updateTexImage();
-
-
-}
-
--keep class android.graphics.SurfaceTexture$OnFrameAvailableListener {
-
-    public abstract void onFrameAvailable(android.graphics.SurfaceTexture);
-
-
-}
-
--keep class android.graphics.Typeface {
-
-    public static void buildSystemFallback(java.lang.String, java.lang.String, android.util.ArrayMap, android.util.ArrayMap);
-    public static android.graphics.Typeface create(java.lang.String, int);
-    public static android.graphics.Typeface create(android.graphics.Typeface, int);
-    public static android.graphics.Typeface create(android.graphics.Typeface, int, boolean);
-    public static android.graphics.Typeface createFromAsset(android.content.res.AssetManager, java.lang.String);
-    public static android.graphics.Typeface createFromFile(java.io.File);
-    public static android.graphics.Typeface createFromFile(java.lang.String);
-    public static android.graphics.Typeface createFromResources(android.content.res.AssetManager, java.lang.String, int);
-    public static android.graphics.Typeface createFromResources(android.content.res.FontResourcesParser$FamilyResourceEntry, android.content.res.AssetManager, java.lang.String);
-    public static android.graphics.Typeface createFromTypefaceWithVariation(android.graphics.Typeface, java.util.List);
-    public static android.graphics.Typeface defaultFromStyle(int);
-    public boolean equals(java.lang.Object);
-    public static android.graphics.Typeface findFromCache(android.content.res.AssetManager, java.lang.String);
-    public int getStyle();
-    public int getWeight();
-    public int hashCode();
-    public boolean isBold();
-    public boolean isItalic();
-    public boolean isSupportedAxes(int);
-
-
-    public static int BOLD;
-    public static int BOLD_ITALIC;
-    public static android.graphics.Typeface DEFAULT;
-    public static android.graphics.Typeface DEFAULT_BOLD;
-    public static int ITALIC;
-    public static int MAX_WEIGHT;
-    public static android.graphics.Typeface MONOSPACE;
-    public static int NORMAL;
-    public static int RESOLVE_BY_FONT_TABLE;
-    public static android.graphics.Typeface SANS_SERIF;
-    public static android.graphics.Typeface SERIF;
-    public static int STYLE_MASK;
-    public long native_instance;
-}
-
--keep class android.graphics.Xfermode {
-    <init>();
-
-
-
-}
-
--keep class android.graphics.drawable.Animatable2 {
-
-    public abstract void clearAnimationCallbacks();
-    public abstract void registerAnimationCallback(android.graphics.drawable.Animatable2$AnimationCallback);
-    public abstract boolean unregisterAnimationCallback(android.graphics.drawable.Animatable2$AnimationCallback);
-
-
-}
-
--keep class android.graphics.drawable.Animatable2$AnimationCallback {
-    <init>();
-
-    public void onAnimationEnd(android.graphics.drawable.Drawable);
-    public void onAnimationStart(android.graphics.drawable.Drawable);
-
-
-}
-
--keep class android.graphics.drawable.AnimatedVectorDrawable {
-    <init>();
-
-    public void applyTheme(android.content.res.Resources$Theme);
-    public boolean canApplyTheme();
-    public boolean canReverse();
-    public void clearAnimationCallbacks();
-    public void clearMutated();
-    public void draw(android.graphics.Canvas);
-    public void forceAnimationOnUI();
-    public int getAlpha();
-    public int getChangingConfigurations();
-    public android.graphics.ColorFilter getColorFilter();
-    public android.graphics.drawable.Drawable$ConstantState getConstantState();
-    public int getIntrinsicHeight();
-    public int getIntrinsicWidth();
-    public int getOpacity();
-    public android.graphics.Insets getOpticalInsets();
-    public void getOutline(android.graphics.Outline);
-    public void inflate(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources$Theme);
-    public boolean isRunning();
-    public boolean isStateful();
-    public android.graphics.drawable.Drawable mutate();
-    protected void onBoundsChange(android.graphics.Rect);
-    public boolean onLayoutDirectionChanged(int);
-    protected boolean onLevelChange(int);
-    protected boolean onStateChange(int[]);
-    public void registerAnimationCallback(android.graphics.drawable.Animatable2$AnimationCallback);
-    public void reset();
-    public void reverse();
-    public void setAlpha(int);
-    public void setColorFilter(android.graphics.ColorFilter);
-    public void setHotspot(float, float);
-    public void setHotspotBounds(int, int, int, int);
-    public void setTintList(android.content.res.ColorStateList);
-    public void setTintMode(android.graphics.PorterDuff$Mode);
-    public boolean setVisible(boolean, boolean);
-    public void start();
-    public void stop();
-    public boolean unregisterAnimationCallback(android.graphics.drawable.Animatable2$AnimationCallback);
-
-
-}
-
--keep class android.graphics.drawable.AnimatedVectorDrawable$VectorDrawableAnimatorRT {
-
-    public boolean canReverse();
-    public void end();
-    public long getAnimatorNativePtr();
-    public void init(android.animation.AnimatorSet);
-    public boolean isInfinite();
-    public boolean isRunning();
-    public boolean isStarted();
-    public void onDraw(android.graphics.Canvas);
-    public void pause();
-    protected void recordLastSeenTarget(android.view.DisplayListCanvas);
-    public void removeListener(android.animation.Animator$AnimatorListener);
-    public void reset();
-    public void resume();
-    public void reverse();
-    public void setListener(android.animation.Animator$AnimatorListener);
-    public void start();
-
-
-}
-
--keep class android.graphics.drawable.Drawable {
-    <init>();
-
-    public void applyTheme(android.content.res.Resources$Theme);
-    public boolean canApplyTheme();
-    public void clearColorFilter();
-    public void clearMutated();
-    public void copyBounds(android.graphics.Rect);
-    public android.graphics.Rect copyBounds();
-    public static android.graphics.drawable.Drawable createFromPath(java.lang.String);
-    public static android.graphics.drawable.Drawable createFromResourceStream(android.content.res.Resources, android.util.TypedValue, java.io.InputStream, java.lang.String);
-    public static android.graphics.drawable.Drawable createFromResourceStream(android.content.res.Resources, android.util.TypedValue, java.io.InputStream, java.lang.String, android.graphics.BitmapFactory$Options);
-    public static android.graphics.drawable.Drawable createFromStream(java.io.InputStream, java.lang.String);
-    public static android.graphics.drawable.Drawable createFromXml(android.content.res.Resources, org.xmlpull.v1.XmlPullParser);
-    public static android.graphics.drawable.Drawable createFromXml(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.content.res.Resources$Theme);
-    public static android.graphics.drawable.Drawable createFromXmlForDensity(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, int, android.content.res.Resources$Theme);
-    public static android.graphics.drawable.Drawable createFromXmlInner(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet);
-    public static android.graphics.drawable.Drawable createFromXmlInner(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources$Theme);
-    public abstract void draw(android.graphics.Canvas);
-    public int getAlpha();
-    public android.graphics.Rect getBounds();
-    public android.graphics.drawable.Drawable$Callback getCallback();
-    public int getChangingConfigurations();
-    public android.graphics.ColorFilter getColorFilter();
-    public android.graphics.drawable.Drawable$ConstantState getConstantState();
-    public android.graphics.drawable.Drawable getCurrent();
-    public android.graphics.Rect getDirtyBounds();
-    public void getHotspotBounds(android.graphics.Rect);
-    public int getIntrinsicHeight();
-    public int getIntrinsicWidth();
-    public int getLayoutDirection();
-    public int getLevel();
-    public int getMinimumHeight();
-    public int getMinimumWidth();
-    public abstract int getOpacity();
-    public android.graphics.Insets getOpticalInsets();
-    public void getOutline(android.graphics.Outline);
-    public boolean getPadding(android.graphics.Rect);
-    public int[] getState();
-    public android.graphics.Region getTransparentRegion();
-    public boolean hasFocusStateSpecified();
-    public void inflate(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet);
-    public void inflate(android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources$Theme);
-    public void invalidateSelf();
-    public boolean isAutoMirrored();
-    public boolean isFilterBitmap();
-    public boolean isProjected();
-    public boolean isStateful();
-    public boolean isVisible();
-    public void jumpToCurrentState();
-    public android.graphics.drawable.Drawable mutate();
-    protected static android.content.res.TypedArray obtainAttributes(android.content.res.Resources, android.content.res.Resources$Theme, android.util.AttributeSet, int[]);
-    protected void onBoundsChange(android.graphics.Rect);
-    public boolean onLayoutDirectionChanged(int);
-    protected boolean onLevelChange(int);
-    protected boolean onStateChange(int[]);
-    public static android.graphics.PorterDuff$Mode parseTintMode(int, android.graphics.PorterDuff$Mode);
-    public static int resolveOpacity(int, int);
-    public void scheduleSelf(java.lang.Runnable, long);
-    public abstract void setAlpha(int);
-    public void setAutoMirrored(boolean);
-    public void setBounds(int, int, int, int);
-    public void setBounds(android.graphics.Rect);
-    public void setCallback(android.graphics.drawable.Drawable$Callback);
-    public void setChangingConfigurations(int);
-    public abstract void setColorFilter(android.graphics.ColorFilter);
-    public void setColorFilter(int, android.graphics.PorterDuff$Mode);
-    public void setDither(boolean);
-    public void setFilterBitmap(boolean);
-    public void setHotspot(float, float);
-    public void setHotspotBounds(int, int, int, int);
-    public boolean setLayoutDirection(int);
-    public boolean setLevel(int);
-    public boolean setState(int[]);
-    public void setTint(int);
-    public void setTintList(android.content.res.ColorStateList);
-    public void setTintMode(android.graphics.PorterDuff$Mode);
-    public boolean setVisible(boolean, boolean);
-    public void setXfermode(android.graphics.Xfermode);
-    public void unscheduleSelf(java.lang.Runnable);
-
-
-    protected int mSrcDensityOverride;
-}
-
--keep class android.graphics.drawable.Drawable$Callback {
-
-    public abstract void invalidateDrawable(android.graphics.drawable.Drawable);
-    public abstract void scheduleDrawable(android.graphics.drawable.Drawable, java.lang.Runnable, long);
-    public abstract void unscheduleDrawable(android.graphics.drawable.Drawable, java.lang.Runnable);
-
-
-}
-
--keep class android.graphics.drawable.Drawable$ConstantState {
-    <init>();
-
-    public boolean canApplyTheme();
-    public abstract int getChangingConfigurations();
-    public abstract android.graphics.drawable.Drawable newDrawable();
-    public android.graphics.drawable.Drawable newDrawable(android.content.res.Resources);
-    public android.graphics.drawable.Drawable newDrawable(android.content.res.Resources, android.content.res.Resources$Theme);
-
-
-}
-
--keep class android.graphics.drawable.DrawableInflater {
-    <init>(android.content.res.Resources, java.lang.ClassLoader);
-
-    public android.graphics.drawable.Drawable inflateFromXml(java.lang.String, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet, android.content.res.Resources$Theme);
-    public static android.graphics.drawable.Drawable loadDrawable(android.content.Context, int);
-    public static android.graphics.drawable.Drawable loadDrawable(android.content.res.Resources, android.content.res.Resources$Theme, int);
-
-
-}
-
--keep class android.graphics.drawable.Icon {
-
-    public void convertToAshmem();
-    public static android.graphics.drawable.Icon createFromStream(java.io.InputStream);
-    public static android.graphics.drawable.Icon createWithAdaptiveBitmap(android.graphics.Bitmap);
-    public static android.graphics.drawable.Icon createWithBitmap(android.graphics.Bitmap);
-    public static android.graphics.drawable.Icon createWithContentUri(java.lang.String);
-    public static android.graphics.drawable.Icon createWithContentUri(android.net.Uri);
-    public static android.graphics.drawable.Icon createWithData(byte[], int, int);
-    public static android.graphics.drawable.Icon createWithFilePath(java.lang.String);
-    public static android.graphics.drawable.Icon createWithResource(android.content.Context, int);
-    public static android.graphics.drawable.Icon createWithResource(android.content.res.Resources, int);
-    public static android.graphics.drawable.Icon createWithResource(java.lang.String, int);
-    public int describeContents();
-    public android.graphics.Bitmap getBitmap();
-    public byte[] getDataBytes();
-    public int getDataLength();
-    public int getDataOffset();
-    public int getResId();
-    public java.lang.String getResPackage();
-    public android.content.res.Resources getResources();
-    public int getType();
-    public android.net.Uri getUri();
-    public java.lang.String getUriString();
-    public boolean hasTint();
-    public android.graphics.drawable.Drawable loadDrawable(android.content.Context);
-    public android.graphics.drawable.Drawable loadDrawableAsUser(android.content.Context, int);
-    public void loadDrawableAsync(android.content.Context, android.os.Message);
-    public void loadDrawableAsync(android.content.Context, android.graphics.drawable.Icon$OnDrawableLoadedListener, android.os.Handler);
-    public boolean sameAs(android.graphics.drawable.Icon);
-    public static android.graphics.Bitmap scaleDownIfNecessary(android.graphics.Bitmap, int, int);
-    public void scaleDownIfNecessary(int, int);
-    public android.graphics.drawable.Icon setTint(int);
-    public android.graphics.drawable.Icon setTintList(android.content.res.ColorStateList);
-    public android.graphics.drawable.Icon setTintMode(android.graphics.PorterDuff$Mode);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToStream(java.io.OutputStream);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int MIN_ASHMEM_ICON_SIZE;
-    public static int TYPE_ADAPTIVE_BITMAP;
-    public static int TYPE_BITMAP;
-    public static int TYPE_DATA;
-    public static int TYPE_RESOURCE;
-    public static int TYPE_URI;
-}
-
--keep class android.graphics.drawable.Icon$OnDrawableLoadedListener {
-
-    public abstract void onDrawableLoaded(android.graphics.drawable.Drawable);
-
-
-}
-
--keep class android.graphics.fonts.FontVariationAxis {
-    <init>(java.lang.String, float);
-
-    public static android.graphics.fonts.FontVariationAxis[] fromFontVariationSettings(java.lang.String);
-    public int getOpenTypeTagValue();
-    public float getStyleValue();
-    public java.lang.String getTag();
-    public static int makeTag(java.lang.String);
-    public static java.lang.String toFontVariationSettings(android.graphics.fonts.FontVariationAxis[]);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.hardware.display.AmbientBrightnessDayStats {
-    <init>(java.time.LocalDate, float[]);
-    <init>(java.time.LocalDate, float[], float[]);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public float[] getBucketBoundaries();
-    public java.time.LocalDate getLocalDate();
-    public float[] getStats();
-    public int hashCode();
-    public void log(float, float);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.hardware.display.BrightnessChangeEvent {
-    <init>(android.hardware.display.BrightnessChangeEvent, boolean);
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public float batteryLevel;
-    public float brightness;
-    public int colorTemperature;
-    public boolean isDefaultBrightnessConfig;
-    public boolean isUserSetBrightness;
-    public float lastBrightness;
-    public long[] luxTimestamps;
-    public float[] luxValues;
-    public boolean nightMode;
-    public java.lang.String packageName;
-    public float powerBrightnessFactor;
-    public long timeStamp;
-    public int userId;
-}
-
--keep class android.hardware.display.BrightnessConfiguration {
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.util.Pair getCurve();
-    public java.lang.String getDescription();
-    public int hashCode();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.hardware.display.DisplayManager {
-    <init>(android.content.Context);
-
-    public void connectWifiDisplay(java.lang.String);
-    public android.hardware.display.VirtualDisplay createVirtualDisplay(java.lang.String, int, int, int, android.view.Surface, int);
-    public android.hardware.display.VirtualDisplay createVirtualDisplay(java.lang.String, int, int, int, android.view.Surface, int, android.hardware.display.VirtualDisplay$Callback, android.os.Handler);
-    public android.hardware.display.VirtualDisplay createVirtualDisplay(android.media.projection.MediaProjection, java.lang.String, int, int, int, android.view.Surface, int, android.hardware.display.VirtualDisplay$Callback, android.os.Handler, java.lang.String);
-    public void disconnectWifiDisplay();
-    public void forgetWifiDisplay(java.lang.String);
-    public java.util.List getAmbientBrightnessStats();
-    public android.hardware.display.BrightnessConfiguration getBrightnessConfiguration();
-    public android.hardware.display.BrightnessConfiguration getBrightnessConfigurationForUser(int);
-    public java.util.List getBrightnessEvents();
-    public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
-    public android.view.Display getDisplay(int);
-    public android.view.Display[] getDisplays();
-    public android.view.Display[] getDisplays(java.lang.String);
-    public android.util.Pair getMinimumBrightnessCurve();
-    public android.graphics.Point getStableDisplaySize();
-    public android.hardware.display.WifiDisplayStatus getWifiDisplayStatus();
-    public void pauseWifiDisplay();
-    public void registerDisplayListener(android.hardware.display.DisplayManager$DisplayListener, android.os.Handler);
-    public void renameWifiDisplay(java.lang.String, java.lang.String);
-    public void resumeWifiDisplay();
-    public void setBrightnessConfiguration(android.hardware.display.BrightnessConfiguration);
-    public void setBrightnessConfigurationForUser(android.hardware.display.BrightnessConfiguration, int, java.lang.String);
-    public void setSaturationLevel(float);
-    public void setTemporaryAutoBrightnessAdjustment(float);
-    public void setTemporaryBrightness(int);
-    public void startWifiDisplayScan();
-    public void stopWifiDisplayScan();
-    public void unregisterDisplayListener(android.hardware.display.DisplayManager$DisplayListener);
-
-
-    public static java.lang.String ACTION_WIFI_DISPLAY_STATUS_CHANGED;
-    public static java.lang.String DISPLAY_CATEGORY_PRESENTATION;
-    public static java.lang.String EXTRA_WIFI_DISPLAY_STATUS;
-    public static int VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR;
-    public static int VIRTUAL_DISPLAY_FLAG_CAN_SHOW_WITH_INSECURE_KEYGUARD;
-    public static int VIRTUAL_DISPLAY_FLAG_DESTROY_CONTENT_ON_REMOVAL;
-    public static int VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY;
-    public static int VIRTUAL_DISPLAY_FLAG_PRESENTATION;
-    public static int VIRTUAL_DISPLAY_FLAG_PUBLIC;
-    public static int VIRTUAL_DISPLAY_FLAG_ROTATES_WITH_CONTENT;
-    public static int VIRTUAL_DISPLAY_FLAG_SECURE;
-    public static int VIRTUAL_DISPLAY_FLAG_SUPPORTS_TOUCH;
-}
-
--keep class android.hardware.display.DisplayManager$DisplayListener {
-
-    public abstract void onDisplayAdded(int);
-    public abstract void onDisplayChanged(int);
-    public abstract void onDisplayRemoved(int);
-
-
-}
-
--keep class android.hardware.display.DisplayManagerGlobal {
-
-    public void connectWifiDisplay(java.lang.String);
-    public android.hardware.display.VirtualDisplay createVirtualDisplay(android.content.Context, android.media.projection.MediaProjection, java.lang.String, int, int, int, android.view.Surface, int, android.hardware.display.VirtualDisplay$Callback, android.os.Handler, java.lang.String);
-    public void disconnectWifiDisplay();
-    public void forgetWifiDisplay(java.lang.String);
-    public java.util.List getAmbientBrightnessStats();
-    public android.hardware.display.BrightnessConfiguration getBrightnessConfigurationForUser(int);
-    public java.util.List getBrightnessEvents(java.lang.String);
-    public android.view.Display getCompatibleDisplay(int, android.view.DisplayAdjustments);
-    public android.view.Display getCompatibleDisplay(int, android.content.res.Resources);
-    public android.hardware.display.BrightnessConfiguration getDefaultBrightnessConfiguration();
-    public int[] getDisplayIds();
-    public android.view.DisplayInfo getDisplayInfo(int);
-    public static android.hardware.display.DisplayManagerGlobal getInstance();
-    public android.util.Pair getMinimumBrightnessCurve();
-    public android.view.Display getRealDisplay(int);
-    public android.graphics.Point getStableDisplaySize();
-    public android.hardware.display.WifiDisplayStatus getWifiDisplayStatus();
-    public void pauseWifiDisplay();
-    public void registerDisplayListener(android.hardware.display.DisplayManager$DisplayListener, android.os.Handler);
-    public void releaseVirtualDisplay(android.hardware.display.IVirtualDisplayCallback);
-    public void renameWifiDisplay(java.lang.String, java.lang.String);
-    public void requestColorMode(int, int);
-    public void resizeVirtualDisplay(android.hardware.display.IVirtualDisplayCallback, int, int, int);
-    public void resumeWifiDisplay();
-    public void setBrightnessConfigurationForUser(android.hardware.display.BrightnessConfiguration, int, java.lang.String);
-    public void setSaturationLevel(float);
-    public void setTemporaryAutoBrightnessAdjustment(float);
-    public void setTemporaryBrightness(int);
-    public void setVirtualDisplaySurface(android.hardware.display.IVirtualDisplayCallback, android.view.Surface);
-    public void startWifiDisplayScan();
-    public void stopWifiDisplayScan();
-    public void unregisterDisplayListener(android.hardware.display.DisplayManager$DisplayListener);
-
-
-    public static int EVENT_DISPLAY_ADDED;
-    public static int EVENT_DISPLAY_CHANGED;
-    public static int EVENT_DISPLAY_REMOVED;
-}
-
--keep class android.hardware.display.IVirtualDisplayCallback {
-
-    public abstract void onPaused();
-    public abstract void onResumed();
-    public abstract void onStopped();
-
-
-}
-
--keep class android.hardware.display.VirtualDisplay {
-
-    public android.view.Display getDisplay();
-    public android.view.Surface getSurface();
-    public void release();
-    public void resize(int, int, int);
-    public void setSurface(android.view.Surface);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.hardware.display.VirtualDisplay$Callback {
-    <init>();
-
-    public void onPaused();
-    public void onResumed();
-    public void onStopped();
-
-
-}
-
--keep class android.hardware.display.WifiDisplay {
-    <init>(java.lang.String, java.lang.String, java.lang.String, boolean, boolean, boolean);
-
-    public boolean canConnect();
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public boolean equals(android.hardware.display.WifiDisplay);
-    public java.lang.String getDeviceAddress();
-    public java.lang.String getDeviceAlias();
-    public java.lang.String getDeviceName();
-    public java.lang.String getFriendlyDisplayName();
-    public boolean hasSameAddress(android.hardware.display.WifiDisplay);
-    public int hashCode();
-    public boolean isAvailable();
-    public boolean isRemembered();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.hardware.display.WifiDisplay[] EMPTY_ARRAY;
-}
-
--keep class android.hardware.display.WifiDisplaySessionInfo {
-    <init>();
-    <init>(boolean, int, java.lang.String, java.lang.String, java.lang.String);
-
-    public int describeContents();
-    public java.lang.String getGroupId();
-    public java.lang.String getIP();
-    public java.lang.String getPassphrase();
-    public int getSessionId();
-    public boolean isClient();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.hardware.display.WifiDisplayStatus {
-    <init>();
-    <init>(int, int, int, android.hardware.display.WifiDisplay, android.hardware.display.WifiDisplay[], android.hardware.display.WifiDisplaySessionInfo);
-
-    public int describeContents();
-    public android.hardware.display.WifiDisplay getActiveDisplay();
-    public int getActiveDisplayState();
-    public android.hardware.display.WifiDisplay[] getDisplays();
-    public int getFeatureState();
-    public int getScanState();
-    public android.hardware.display.WifiDisplaySessionInfo getSessionInfo();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DISPLAY_STATE_CONNECTED;
-    public static int DISPLAY_STATE_CONNECTING;
-    public static int DISPLAY_STATE_NOT_CONNECTED;
-    public static int FEATURE_STATE_DISABLED;
-    public static int FEATURE_STATE_OFF;
-    public static int FEATURE_STATE_ON;
-    public static int FEATURE_STATE_UNAVAILABLE;
-    public static int SCAN_STATE_NOT_SCANNING;
-    public static int SCAN_STATE_SCANNING;
-}
-
--keep class android.hardware.input.InputDeviceIdentifier {
-    <init>(java.lang.String, int, int);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.String getDescriptor();
-    public int getProductId();
-    public int getVendorId();
-    public int hashCode();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.media.AudioAttributes {
-
-    public java.lang.String contentTypeToString();
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int getAllFlags();
-    public android.os.Bundle getBundle();
-    public int getCapturePreset();
-    public int getContentType();
-    public int getFlags();
-    public java.util.Set getTags();
-    public int getUsage();
-    public int getVolumeControlStream();
-    public int hashCode();
-    public static int toLegacyStreamType(android.media.AudioAttributes);
-    public java.lang.String toString();
-    public java.lang.String usageToString();
-    public static java.lang.String usageToString(int);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static int CONTENT_TYPE_MOVIE;
-    public static int CONTENT_TYPE_MUSIC;
-    public static int CONTENT_TYPE_SONIFICATION;
-    public static int CONTENT_TYPE_SPEECH;
-    public static int CONTENT_TYPE_UNKNOWN;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_AUDIBILITY_ENFORCED;
-    public static int FLAG_BEACON;
-    public static int FLAG_BYPASS_INTERRUPTION_POLICY;
-    public static int FLAG_BYPASS_MUTE;
-    public static int FLAG_DEEP_BUFFER;
-    public static int FLAG_HW_AV_SYNC;
-    public static int FLAG_HW_HOTWORD;
-    public static int FLAG_LOW_LATENCY;
-    public static int FLAG_SCO;
-    public static int FLAG_SECURE;
-    public static int FLATTEN_TAGS;
-    public static int[] SDK_USAGES;
-    public static int SUPPRESSIBLE_ALARM;
-    public static int SUPPRESSIBLE_CALL;
-    public static int SUPPRESSIBLE_MEDIA;
-    public static int SUPPRESSIBLE_NEVER;
-    public static int SUPPRESSIBLE_NOTIFICATION;
-    public static int SUPPRESSIBLE_SYSTEM;
-    public static android.util.SparseIntArray SUPPRESSIBLE_USAGES;
-    public static int USAGE_ALARM;
-    public static int USAGE_ASSISTANCE_ACCESSIBILITY;
-    public static int USAGE_ASSISTANCE_NAVIGATION_GUIDANCE;
-    public static int USAGE_ASSISTANCE_SONIFICATION;
-    public static int USAGE_ASSISTANT;
-    public static int USAGE_GAME;
-    public static int USAGE_MEDIA;
-    public static int USAGE_NOTIFICATION;
-    public static int USAGE_NOTIFICATION_COMMUNICATION_DELAYED;
-    public static int USAGE_NOTIFICATION_COMMUNICATION_INSTANT;
-    public static int USAGE_NOTIFICATION_COMMUNICATION_REQUEST;
-    public static int USAGE_NOTIFICATION_EVENT;
-    public static int USAGE_NOTIFICATION_RINGTONE;
-    public static int USAGE_UNKNOWN;
-    public static int USAGE_VIRTUAL_SOURCE;
-    public static int USAGE_VOICE_COMMUNICATION;
-    public static int USAGE_VOICE_COMMUNICATION_SIGNALLING;
-}
-
--keep class android.media.AudioDeviceInfo {
-
-    public static int convertDeviceTypeToInternalDevice(int);
-    public static int convertInternalDeviceToDeviceType(int);
-    public boolean equals(java.lang.Object);
-    public java.lang.String getAddress();
-    public int[] getChannelCounts();
-    public int[] getChannelIndexMasks();
-    public int[] getChannelMasks();
-    public int[] getEncodings();
-    public int getId();
-    public android.media.AudioDevicePort getPort();
-    public java.lang.CharSequence getProductName();
-    public int[] getSampleRates();
-    public int getType();
-    public int hashCode();
-    public boolean isSink();
-    public boolean isSource();
-
-
-    public static int TYPE_AUX_LINE;
-    public static int TYPE_BLUETOOTH_A2DP;
-    public static int TYPE_BLUETOOTH_SCO;
-    public static int TYPE_BUILTIN_EARPIECE;
-    public static int TYPE_BUILTIN_MIC;
-    public static int TYPE_BUILTIN_SPEAKER;
-    public static int TYPE_BUS;
-    public static int TYPE_DOCK;
-    public static int TYPE_FM;
-    public static int TYPE_FM_TUNER;
-    public static int TYPE_HDMI;
-    public static int TYPE_HDMI_ARC;
-    public static int TYPE_HEARING_AID;
-    public static int TYPE_IP;
-    public static int TYPE_LINE_ANALOG;
-    public static int TYPE_LINE_DIGITAL;
-    public static int TYPE_TELEPHONY;
-    public static int TYPE_TV_TUNER;
-    public static int TYPE_UNKNOWN;
-    public static int TYPE_USB_ACCESSORY;
-    public static int TYPE_USB_DEVICE;
-    public static int TYPE_USB_HEADSET;
-    public static int TYPE_WIRED_HEADPHONES;
-    public static int TYPE_WIRED_HEADSET;
-}
-
--keep class android.media.AudioDevicePort {
-
-    public java.lang.String address();
-    public android.media.AudioDevicePortConfig buildConfig(int, int, int, android.media.AudioGainConfig);
-    public android.media.AudioPortConfig buildConfig(int, int, int, android.media.AudioGainConfig);
-    public boolean equals(java.lang.Object);
-    public java.lang.String toString();
-    public int type();
-
-
-}
-
--keep class android.media.AudioDevicePortConfig {
-
-    public android.media.AudioDevicePort port();
-    public android.media.AudioPort port();
-
-
-}
-
--keep class android.media.AudioFormat {
-    <init>();
-
-    public static int channelCountFromInChannelMask(int);
-    public static int channelCountFromOutChannelMask(int);
-    public static int convertChannelOutMaskToNativeMask(int);
-    public static int convertNativeChannelMaskToOutMask(int);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static int[] filterPublicFormats(int[]);
-    public static int getBytesPerSample(int);
-    public int getChannelCount();
-    public int getChannelIndexMask();
-    public int getChannelMask();
-    public int getEncoding();
-    public int getPropertySetMask();
-    public int getSampleRate();
-    public int hashCode();
-    public static int inChannelMaskFromOutChannelMask(int);
-    public static boolean isEncodingLinearFrames(int);
-    public static boolean isEncodingLinearPcm(int);
-    public static boolean isPublicEncoding(int);
-    public static boolean isValidEncoding(int);
-    public static java.lang.String toDisplayName(int);
-    public static java.lang.String toLogFriendlyEncoding(int);
-    public java.lang.String toLogFriendlyString();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int AUDIO_FORMAT_HAS_PROPERTY_CHANNEL_INDEX_MASK;
-    public static int AUDIO_FORMAT_HAS_PROPERTY_CHANNEL_MASK;
-    public static int AUDIO_FORMAT_HAS_PROPERTY_ENCODING;
-    public static int AUDIO_FORMAT_HAS_PROPERTY_NONE;
-    public static int AUDIO_FORMAT_HAS_PROPERTY_SAMPLE_RATE;
-    public static int CHANNEL_CONFIGURATION_DEFAULT;
-    public static int CHANNEL_CONFIGURATION_INVALID;
-    public static int CHANNEL_CONFIGURATION_MONO;
-    public static int CHANNEL_CONFIGURATION_STEREO;
-    public static int CHANNEL_INVALID;
-    public static int CHANNEL_IN_BACK;
-    public static int CHANNEL_IN_BACK_PROCESSED;
-    public static int CHANNEL_IN_DEFAULT;
-    public static int CHANNEL_IN_FRONT;
-    public static int CHANNEL_IN_FRONT_BACK;
-    public static int CHANNEL_IN_FRONT_PROCESSED;
-    public static int CHANNEL_IN_LEFT;
-    public static int CHANNEL_IN_LEFT_PROCESSED;
-    public static int CHANNEL_IN_MONO;
-    public static int CHANNEL_IN_PRESSURE;
-    public static int CHANNEL_IN_RIGHT;
-    public static int CHANNEL_IN_RIGHT_PROCESSED;
-    public static int CHANNEL_IN_STEREO;
-    public static int CHANNEL_IN_VOICE_DNLINK;
-    public static int CHANNEL_IN_VOICE_UPLINK;
-    public static int CHANNEL_IN_X_AXIS;
-    public static int CHANNEL_IN_Y_AXIS;
-    public static int CHANNEL_IN_Z_AXIS;
-    public static int CHANNEL_OUT_5POINT1;
-    public static int CHANNEL_OUT_5POINT1_SIDE;
-    public static int CHANNEL_OUT_7POINT1;
-    public static int CHANNEL_OUT_7POINT1_SURROUND;
-    public static int CHANNEL_OUT_BACK_CENTER;
-    public static int CHANNEL_OUT_BACK_LEFT;
-    public static int CHANNEL_OUT_BACK_RIGHT;
-    public static int CHANNEL_OUT_DEFAULT;
-    public static int CHANNEL_OUT_FRONT_CENTER;
-    public static int CHANNEL_OUT_FRONT_LEFT;
-    public static int CHANNEL_OUT_FRONT_LEFT_OF_CENTER;
-    public static int CHANNEL_OUT_FRONT_RIGHT;
-    public static int CHANNEL_OUT_FRONT_RIGHT_OF_CENTER;
-    public static int CHANNEL_OUT_LOW_FREQUENCY;
-    public static int CHANNEL_OUT_MONO;
-    public static int CHANNEL_OUT_QUAD;
-    public static int CHANNEL_OUT_QUAD_SIDE;
-    public static int CHANNEL_OUT_SIDE_LEFT;
-    public static int CHANNEL_OUT_SIDE_RIGHT;
-    public static int CHANNEL_OUT_STEREO;
-    public static int CHANNEL_OUT_SURROUND;
-    public static int CHANNEL_OUT_TOP_BACK_CENTER;
-    public static int CHANNEL_OUT_TOP_BACK_LEFT;
-    public static int CHANNEL_OUT_TOP_BACK_RIGHT;
-    public static int CHANNEL_OUT_TOP_CENTER;
-    public static int CHANNEL_OUT_TOP_FRONT_CENTER;
-    public static int CHANNEL_OUT_TOP_FRONT_LEFT;
-    public static int CHANNEL_OUT_TOP_FRONT_RIGHT;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int ENCODING_AAC_ELD;
-    public static int ENCODING_AAC_HE_V1;
-    public static int ENCODING_AAC_HE_V2;
-    public static int ENCODING_AAC_LC;
-    public static int ENCODING_AAC_XHE;
-    public static int ENCODING_AC3;
-    public static int ENCODING_AC4;
-    public static int ENCODING_DEFAULT;
-    public static int ENCODING_DOLBY_TRUEHD;
-    public static int ENCODING_DTS;
-    public static int ENCODING_DTS_HD;
-    public static int ENCODING_E_AC3;
-    public static int ENCODING_E_AC3_JOC;
-    public static int ENCODING_IEC61937;
-    public static int ENCODING_INVALID;
-    public static int ENCODING_MP3;
-    public static int ENCODING_PCM_16BIT;
-    public static int ENCODING_PCM_8BIT;
-    public static int ENCODING_PCM_FLOAT;
-    public static int SAMPLE_RATE_HZ_MAX;
-    public static int SAMPLE_RATE_HZ_MIN;
-    public static int SAMPLE_RATE_UNSPECIFIED;
-    public static int[] SURROUND_SOUND_ENCODING;
-}
-
--keep class android.media.AudioGain {
-
-    public android.media.AudioGainConfig buildConfig(int, int, int[], int);
-    public int channelMask();
-    public int defaultValue();
-    public int maxValue();
-    public int minValue();
-    public int mode();
-    public int rampDurationMaxMs();
-    public int rampDurationMinMs();
-    public int stepValue();
-
-
-    public static int MODE_CHANNELS;
-    public static int MODE_JOINT;
-    public static int MODE_RAMP;
-}
-
--keep class android.media.AudioGainConfig {
-
-    public int channelMask();
-    public int mode();
-    public int rampDurationMs();
-    public int[] values();
-
-
-}
-
--keep class android.media.AudioPort {
-
-    public android.media.AudioPortConfig activeConfig();
-    public android.media.AudioPortConfig buildConfig(int, int, int, android.media.AudioGainConfig);
-    public int[] channelIndexMasks();
-    public int[] channelMasks();
-    public boolean equals(java.lang.Object);
-    public int[] formats();
-    public android.media.AudioGain[] gains();
-    public int hashCode();
-    public int id();
-    public java.lang.String name();
-    public int role();
-    public int[] samplingRates();
-    public java.lang.String toString();
-
-
-    public static int ROLE_NONE;
-    public static int ROLE_SINK;
-    public static int ROLE_SOURCE;
-    public static int TYPE_DEVICE;
-    public static int TYPE_NONE;
-    public static int TYPE_SESSION;
-    public static int TYPE_SUBMIX;
-    protected int mRole;
-}
-
--keep class android.media.AudioPortConfig {
-
-    public int channelMask();
-    public int format();
-    public android.media.AudioGainConfig gain();
-    public android.media.AudioPort port();
-    public int samplingRate();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.media.AudioRecord {
-    <init>(int, int, int, int, int);
-    <init>(android.media.AudioAttributes, android.media.AudioFormat, int, int);
-
-    public void addOnRoutingChangedListener(android.media.AudioRouting$OnRoutingChangedListener, android.os.Handler);
-    public void addOnRoutingChangedListener(android.media.AudioRecord$OnRoutingChangedListener, android.os.Handler);
-    protected void finalize();
-    public java.util.List getActiveMicrophones();
-    public int getAudioFormat();
-    public int getAudioSessionId();
-    public int getAudioSource();
-    public int getBufferSizeInFrames();
-    public int getChannelConfiguration();
-    public int getChannelCount();
-    public android.media.AudioFormat getFormat();
-    public android.os.PersistableBundle getMetrics();
-    public static int getMinBufferSize(int, int, int);
-    public int getNotificationMarkerPosition();
-    public int getPositionNotificationPeriod();
-    public android.media.AudioDeviceInfo getPreferredDevice();
-    public int getRecordingState();
-    public android.media.AudioDeviceInfo getRoutedDevice();
-    public int getSampleRate();
-    public int getState();
-    public int getTimestamp(android.media.AudioTimestamp, int);
-    public void native_release();
-    public int read(byte[], int, int);
-    public int read(byte[], int, int, int);
-    public int read(short[], int, int);
-    public int read(short[], int, int, int);
-    public int read(float[], int, int, int);
-    public int read(java.nio.ByteBuffer, int);
-    public int read(java.nio.ByteBuffer, int, int);
-    public void release();
-    public void removeOnRoutingChangedListener(android.media.AudioRouting$OnRoutingChangedListener);
-    public void removeOnRoutingChangedListener(android.media.AudioRecord$OnRoutingChangedListener);
-    public int setNotificationMarkerPosition(int);
-    public int setPositionNotificationPeriod(int);
-    public boolean setPreferredDevice(android.media.AudioDeviceInfo);
-    public void setRecordPositionUpdateListener(android.media.AudioRecord$OnRecordPositionUpdateListener);
-    public void setRecordPositionUpdateListener(android.media.AudioRecord$OnRecordPositionUpdateListener, android.os.Handler);
-    public void startRecording();
-    public void startRecording(android.media.MediaSyncEvent);
-    public void stop();
-
-
-    public static int ERROR;
-    public static int ERROR_BAD_VALUE;
-    public static int ERROR_DEAD_OBJECT;
-    public static int ERROR_INVALID_OPERATION;
-    public static int READ_BLOCKING;
-    public static int READ_NON_BLOCKING;
-    public static int RECORDSTATE_RECORDING;
-    public static int RECORDSTATE_STOPPED;
-    public static int STATE_INITIALIZED;
-    public static int STATE_UNINITIALIZED;
-    public static java.lang.String SUBMIX_FIXED_VOLUME;
-    public static int SUCCESS;
-}
-
--keep class android.media.AudioRecord$OnRecordPositionUpdateListener {
-
-    public abstract void onMarkerReached(android.media.AudioRecord);
-    public abstract void onPeriodicNotification(android.media.AudioRecord);
-
-
-}
-
--keep class android.media.AudioRecord$OnRoutingChangedListener {
-
-    public abstract void onRoutingChanged(android.media.AudioRecord);
-    public void onRoutingChanged(android.media.AudioRouting);
-
-
-}
-
--keep class android.media.AudioRouting {
-
-    public abstract void addOnRoutingChangedListener(android.media.AudioRouting$OnRoutingChangedListener, android.os.Handler);
-    public abstract android.media.AudioDeviceInfo getPreferredDevice();
-    public abstract android.media.AudioDeviceInfo getRoutedDevice();
-    public abstract void removeOnRoutingChangedListener(android.media.AudioRouting$OnRoutingChangedListener);
-    public abstract boolean setPreferredDevice(android.media.AudioDeviceInfo);
-
-
-}
-
--keep class android.media.AudioRouting$OnRoutingChangedListener {
-
-    public abstract void onRoutingChanged(android.media.AudioRouting);
-
-
-}
-
--keep class android.media.AudioTimestamp {
-    <init>();
-
-
-
-    public static int TIMEBASE_BOOTTIME;
-    public static int TIMEBASE_MONOTONIC;
-    public long framePosition;
-    public long nanoTime;
-}
-
--keep class android.media.IRemoteVolumeController {
-
-    public abstract void remoteVolumeChanged(android.media.session.ISessionController, int);
-    public abstract void updateRemoteController(android.media.session.ISessionController);
-
-
-}
-
--keep class android.media.MediaDescription {
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.CharSequence getDescription();
-    public android.os.Bundle getExtras();
-    public android.graphics.Bitmap getIconBitmap();
-    public android.net.Uri getIconUri();
-    public java.lang.String getMediaId();
-    public android.net.Uri getMediaUri();
-    public java.lang.CharSequence getSubtitle();
-    public java.lang.CharSequence getTitle();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static long BT_FOLDER_TYPE_ALBUMS;
-    public static long BT_FOLDER_TYPE_ARTISTS;
-    public static long BT_FOLDER_TYPE_GENRES;
-    public static long BT_FOLDER_TYPE_MIXED;
-    public static long BT_FOLDER_TYPE_PLAYLISTS;
-    public static long BT_FOLDER_TYPE_TITLES;
-    public static long BT_FOLDER_TYPE_YEARS;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_BT_FOLDER_TYPE;
-}
-
--keep class android.media.MediaMetadata {
-
-    public boolean containsKey(java.lang.String);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.graphics.Bitmap getBitmap(java.lang.String);
-    public android.media.MediaDescription getDescription();
-    public static java.lang.String getKeyFromMetadataEditorKey(int);
-    public long getLong(java.lang.String);
-    public android.media.Rating getRating(java.lang.String);
-    public java.lang.String getString(java.lang.String);
-    public java.lang.CharSequence getText(java.lang.String);
-    public int hashCode();
-    public java.util.Set keySet();
-    public int size();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String METADATA_KEY_ALBUM;
-    public static java.lang.String METADATA_KEY_ALBUM_ART;
-    public static java.lang.String METADATA_KEY_ALBUM_ARTIST;
-    public static java.lang.String METADATA_KEY_ALBUM_ART_URI;
-    public static java.lang.String METADATA_KEY_ART;
-    public static java.lang.String METADATA_KEY_ARTIST;
-    public static java.lang.String METADATA_KEY_ART_URI;
-    public static java.lang.String METADATA_KEY_AUTHOR;
-    public static java.lang.String METADATA_KEY_BT_FOLDER_TYPE;
-    public static java.lang.String METADATA_KEY_COMPILATION;
-    public static java.lang.String METADATA_KEY_COMPOSER;
-    public static java.lang.String METADATA_KEY_DATE;
-    public static java.lang.String METADATA_KEY_DISC_NUMBER;
-    public static java.lang.String METADATA_KEY_DISPLAY_DESCRIPTION;
-    public static java.lang.String METADATA_KEY_DISPLAY_ICON;
-    public static java.lang.String METADATA_KEY_DISPLAY_ICON_URI;
-    public static java.lang.String METADATA_KEY_DISPLAY_SUBTITLE;
-    public static java.lang.String METADATA_KEY_DISPLAY_TITLE;
-    public static java.lang.String METADATA_KEY_DURATION;
-    public static java.lang.String METADATA_KEY_GENRE;
-    public static java.lang.String METADATA_KEY_MEDIA_ID;
-    public static java.lang.String METADATA_KEY_MEDIA_URI;
-    public static java.lang.String METADATA_KEY_NUM_TRACKS;
-    public static java.lang.String METADATA_KEY_RATING;
-    public static java.lang.String METADATA_KEY_TITLE;
-    public static java.lang.String METADATA_KEY_TRACK_NUMBER;
-    public static java.lang.String METADATA_KEY_USER_RATING;
-    public static java.lang.String METADATA_KEY_WRITER;
-    public static java.lang.String METADATA_KEY_YEAR;
-}
-
--keep class android.media.MediaSyncEvent {
-
-    public static android.media.MediaSyncEvent createEvent(int);
-    public int getAudioSessionId();
-    public int getType();
-    public android.media.MediaSyncEvent setAudioSessionId(int);
-
-
-    public static int SYNC_EVENT_NONE;
-    public static int SYNC_EVENT_PRESENTATION_COMPLETE;
-}
-
--keep class android.media.MicrophoneInfo {
-
-    public java.lang.String getAddress();
-    public java.util.List getChannelMapping();
-    public java.lang.String getDescription();
-    public int getDirectionality();
-    public java.util.List getFrequencyResponse();
-    public int getGroup();
-    public int getId();
-    public int getIndexInTheGroup();
-    public int getInternalDeviceType();
-    public int getLocation();
-    public float getMaxSpl();
-    public float getMinSpl();
-    public android.media.MicrophoneInfo$Coordinate3F getOrientation();
-    public android.media.MicrophoneInfo$Coordinate3F getPosition();
-    public float getSensitivity();
-    public int getType();
-    public void setChannelMapping(java.util.List);
-    public void setId(int);
-
-
-    public static int CHANNEL_MAPPING_DIRECT;
-    public static int CHANNEL_MAPPING_PROCESSED;
-    public static int DIRECTIONALITY_BI_DIRECTIONAL;
-    public static int DIRECTIONALITY_CARDIOID;
-    public static int DIRECTIONALITY_HYPER_CARDIOID;
-    public static int DIRECTIONALITY_OMNI;
-    public static int DIRECTIONALITY_SUPER_CARDIOID;
-    public static int DIRECTIONALITY_UNKNOWN;
-    public static int GROUP_UNKNOWN;
-    public static int INDEX_IN_THE_GROUP_UNKNOWN;
-    public static int LOCATION_MAINBODY;
-    public static int LOCATION_MAINBODY_MOVABLE;
-    public static int LOCATION_PERIPHERAL;
-    public static int LOCATION_UNKNOWN;
-    public static android.media.MicrophoneInfo$Coordinate3F ORIENTATION_UNKNOWN;
-    public static android.media.MicrophoneInfo$Coordinate3F POSITION_UNKNOWN;
-    public static float SENSITIVITY_UNKNOWN;
-    public static float SPL_UNKNOWN;
-}
-
--keep class android.media.MicrophoneInfo$Coordinate3F {
-
-    public boolean equals(java.lang.Object);
-
-
-    public float x;
-    public float y;
-    public float z;
-}
-
--keep class android.media.Rating {
-
-    public int describeContents();
-    public float getPercentRating();
-    public int getRatingStyle();
-    public float getStarRating();
-    public boolean hasHeart();
-    public boolean isRated();
-    public boolean isThumbUp();
-    public static android.media.Rating newHeartRating(boolean);
-    public static android.media.Rating newPercentageRating(float);
-    public static android.media.Rating newStarRating(int, float);
-    public static android.media.Rating newThumbRating(boolean);
-    public static android.media.Rating newUnratedRating(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int RATING_3_STARS;
-    public static int RATING_4_STARS;
-    public static int RATING_5_STARS;
-    public static int RATING_HEART;
-    public static int RATING_NONE;
-    public static int RATING_PERCENTAGE;
-    public static int RATING_THUMB_UP_DOWN;
-}
-
--keep class android.media.SessionToken2 {
-    <init>(android.content.Context, java.lang.String, java.lang.String);
-    <init>(android.content.Context, java.lang.String, java.lang.String, int);
-    <init>(android.media.update.SessionToken2Provider);
-
-    public boolean equals(java.lang.Object);
-    public static android.media.SessionToken2 fromBundle(android.os.Bundle);
-    public java.lang.String getId();
-    public java.lang.String getPackageName();
-    public android.media.update.SessionToken2Provider getProvider();
-    public int getType();
-    public int getUid();
-    public int hashCode();
-    public android.os.Bundle toBundle();
-    public java.lang.String toString();
-
-
-    public static int TYPE_LIBRARY_SERVICE;
-    public static int TYPE_SESSION;
-    public static int TYPE_SESSION_SERVICE;
-}
-
--keep class android.media.VolumeProvider {
-    <init>(int, int, int);
-
-    public int getCurrentVolume();
-    public int getMaxVolume();
-    public int getVolumeControl();
-    public void onAdjustVolume(int);
-    public void onSetVolumeTo(int);
-    public void setCallback(android.media.VolumeProvider$Callback);
-    public void setCurrentVolume(int);
-
-
-    public static int VOLUME_CONTROL_ABSOLUTE;
-    public static int VOLUME_CONTROL_FIXED;
-    public static int VOLUME_CONTROL_RELATIVE;
-}
-
--keep class android.media.VolumeProvider$Callback {
-    <init>();
-
-    public abstract void onVolumeChanged(android.media.VolumeProvider);
-
-
-}
-
--keep class android.media.projection.IMediaProjection {
-
-    public abstract int applyVirtualDisplayFlags(int);
-    public abstract boolean canProjectAudio();
-    public abstract boolean canProjectSecureVideo();
-    public abstract boolean canProjectVideo();
-    public abstract void registerCallback(android.media.projection.IMediaProjectionCallback);
-    public abstract void start(android.media.projection.IMediaProjectionCallback);
-    public abstract void stop();
-    public abstract void unregisterCallback(android.media.projection.IMediaProjectionCallback);
-
-
-}
-
--keep class android.media.projection.IMediaProjectionCallback {
-
-    public abstract void onStop();
-
-
-}
-
--keep class android.media.projection.MediaProjection {
-    <init>(android.content.Context, android.media.projection.IMediaProjection);
-
-    public android.media.AudioRecord createAudioRecord(int, int, int, int);
-    public android.hardware.display.VirtualDisplay createVirtualDisplay(java.lang.String, int, int, int, boolean, android.view.Surface, android.hardware.display.VirtualDisplay$Callback, android.os.Handler);
-    public android.hardware.display.VirtualDisplay createVirtualDisplay(java.lang.String, int, int, int, int, android.view.Surface, android.hardware.display.VirtualDisplay$Callback, android.os.Handler);
-    public android.media.projection.IMediaProjection getProjection();
-    public void registerCallback(android.media.projection.MediaProjection$Callback, android.os.Handler);
-    public void stop();
-    public void unregisterCallback(android.media.projection.MediaProjection$Callback);
-
-
-}
-
--keep class android.media.projection.MediaProjection$Callback {
-    <init>();
-
-    public void onStop();
-
-
-}
-
--keep class android.media.session.ISession {
-
-    public abstract void destroy();
-    public abstract android.media.session.ISessionController getController();
-    public abstract void sendEvent(java.lang.String, android.os.Bundle);
-    public abstract void setActive(boolean);
-    public abstract void setCurrentVolume(int);
-    public abstract void setExtras(android.os.Bundle);
-    public abstract void setFlags(int);
-    public abstract void setLaunchPendingIntent(android.app.PendingIntent);
-    public abstract void setMediaButtonReceiver(android.app.PendingIntent);
-    public abstract void setMetadata(android.media.MediaMetadata);
-    public abstract void setPlaybackState(android.media.session.PlaybackState);
-    public abstract void setPlaybackToLocal(android.media.AudioAttributes);
-    public abstract void setPlaybackToRemote(int, int);
-    public abstract void setQueue(android.content.pm.ParceledListSlice);
-    public abstract void setQueueTitle(java.lang.CharSequence);
-    public abstract void setRatingType(int);
-
-
-}
-
--keep class android.media.session.ISessionCallback {
-
-    public abstract void onAdjustVolume(java.lang.String, int, int, android.media.session.ISessionControllerCallback, int);
-    public abstract void onCommand(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle, android.os.ResultReceiver);
-    public abstract void onCustomAction(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void onFastForward(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onMediaButton(java.lang.String, int, int, android.content.Intent, int, android.os.ResultReceiver);
-    public abstract void onMediaButtonFromController(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.content.Intent);
-    public abstract void onNext(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onPause(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onPlay(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onPlayFromMediaId(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void onPlayFromSearch(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void onPlayFromUri(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
-    public abstract void onPrepare(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onPrepareFromMediaId(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void onPrepareFromSearch(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void onPrepareFromUri(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
-    public abstract void onPrevious(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onRate(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.media.Rating);
-    public abstract void onRewind(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public abstract void onSeekTo(java.lang.String, int, int, android.media.session.ISessionControllerCallback, long);
-    public abstract void onSetVolumeTo(java.lang.String, int, int, android.media.session.ISessionControllerCallback, int);
-    public abstract void onSkipToTrack(java.lang.String, int, int, android.media.session.ISessionControllerCallback, long);
-    public abstract void onStop(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-
-
-}
-
--keep class android.media.session.ISessionCallback$Stub {
-    <init>();
-
-    public android.os.IBinder asBinder();
-    public static android.media.session.ISessionCallback asInterface(android.os.IBinder);
-    public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int);
-
-
-}
-
--keep class android.media.session.ISessionController {
-
-    public abstract void adjustVolume(java.lang.String, android.media.session.ISessionControllerCallback, boolean, int, int);
-    public abstract void fastForward(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract android.os.Bundle getExtras();
-    public abstract long getFlags();
-    public abstract android.app.PendingIntent getLaunchPendingIntent();
-    public abstract android.media.MediaMetadata getMetadata();
-    public abstract java.lang.String getPackageName();
-    public abstract android.media.session.PlaybackState getPlaybackState();
-    public abstract android.content.pm.ParceledListSlice getQueue();
-    public abstract java.lang.CharSequence getQueueTitle();
-    public abstract int getRatingType();
-    public abstract java.lang.String getTag();
-    public abstract android.media.session.ParcelableVolumeInfo getVolumeAttributes();
-    public abstract boolean isTransportControlEnabled();
-    public abstract void next(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void pause(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void play(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void playFromMediaId(java.lang.String, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void playFromSearch(java.lang.String, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void playFromUri(java.lang.String, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
-    public abstract void prepare(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void prepareFromMediaId(java.lang.String, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void prepareFromSearch(java.lang.String, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract void prepareFromUri(java.lang.String, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
-    public abstract void previous(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void rate(java.lang.String, android.media.session.ISessionControllerCallback, android.media.Rating);
-    public abstract void registerCallbackListener(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void rewind(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void seekTo(java.lang.String, android.media.session.ISessionControllerCallback, long);
-    public abstract void sendCommand(java.lang.String, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle, android.os.ResultReceiver);
-    public abstract void sendCustomAction(java.lang.String, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public abstract boolean sendMediaButton(java.lang.String, android.media.session.ISessionControllerCallback, boolean, android.view.KeyEvent);
-    public abstract void setVolumeTo(java.lang.String, android.media.session.ISessionControllerCallback, int, int);
-    public abstract void skipToQueueItem(java.lang.String, android.media.session.ISessionControllerCallback, long);
-    public abstract void stop(java.lang.String, android.media.session.ISessionControllerCallback);
-    public abstract void unregisterCallbackListener(android.media.session.ISessionControllerCallback);
-
-
-}
-
--keep class android.media.session.ISessionControllerCallback {
-
-    public abstract void onEvent(java.lang.String, android.os.Bundle);
-    public abstract void onExtrasChanged(android.os.Bundle);
-    public abstract void onMetadataChanged(android.media.MediaMetadata);
-    public abstract void onPlaybackStateChanged(android.media.session.PlaybackState);
-    public abstract void onQueueChanged(android.content.pm.ParceledListSlice);
-    public abstract void onQueueTitleChanged(java.lang.CharSequence);
-    public abstract void onSessionDestroyed();
-    public abstract void onVolumeInfoChanged(android.media.session.ParcelableVolumeInfo);
-
-
-}
-
--keep class android.media.session.MediaController {
-    <init>(android.content.Context, android.media.session.ISessionController);
-    <init>(android.content.Context, android.media.session.MediaSession$Token);
-
-    public void adjustVolume(int, int);
-    public boolean controlsSameSession(android.media.session.MediaController);
-    public boolean dispatchMediaButtonEvent(android.view.KeyEvent);
-    public boolean dispatchMediaButtonEventAsSystemService(android.view.KeyEvent);
-    public void dispatchVolumeButtonEventAsSystemService(android.view.KeyEvent);
-    public android.os.Bundle getExtras();
-    public long getFlags();
-    public android.media.MediaMetadata getMetadata();
-    public java.lang.String getPackageName();
-    public android.media.session.MediaController$PlaybackInfo getPlaybackInfo();
-    public android.media.session.PlaybackState getPlaybackState();
-    public java.util.List getQueue();
-    public java.lang.CharSequence getQueueTitle();
-    public int getRatingType();
-    public android.app.PendingIntent getSessionActivity();
-    public android.media.session.MediaSession$Token getSessionToken();
-    public java.lang.String getTag();
-    public android.media.session.MediaController$TransportControls getTransportControls();
-    public void registerCallback(android.media.session.MediaController$Callback);
-    public void registerCallback(android.media.session.MediaController$Callback, android.os.Handler);
-    public void sendCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
-    public void setVolumeTo(int, int);
-    public void unregisterCallback(android.media.session.MediaController$Callback);
-
-
-}
-
--keep class android.media.session.MediaController$Callback {
-    <init>();
-
-    public void onAudioInfoChanged(android.media.session.MediaController$PlaybackInfo);
-    public void onExtrasChanged(android.os.Bundle);
-    public void onMetadataChanged(android.media.MediaMetadata);
-    public void onPlaybackStateChanged(android.media.session.PlaybackState);
-    public void onQueueChanged(java.util.List);
-    public void onQueueTitleChanged(java.lang.CharSequence);
-    public void onSessionDestroyed();
-    public void onSessionEvent(java.lang.String, android.os.Bundle);
-
-
-}
-
--keep class android.media.session.MediaController$PlaybackInfo {
-    <init>(int, android.media.AudioAttributes, int, int, int);
-
-    public android.media.AudioAttributes getAudioAttributes();
-    public int getCurrentVolume();
-    public int getMaxVolume();
-    public int getPlaybackType();
-    public int getVolumeControl();
-
-
-    public static int PLAYBACK_TYPE_LOCAL;
-    public static int PLAYBACK_TYPE_REMOTE;
-}
-
--keep class android.media.session.MediaController$TransportControls {
-
-    public void fastForward();
-    public void pause();
-    public void play();
-    public void playFromMediaId(java.lang.String, android.os.Bundle);
-    public void playFromSearch(java.lang.String, android.os.Bundle);
-    public void playFromUri(android.net.Uri, android.os.Bundle);
-    public void prepare();
-    public void prepareFromMediaId(java.lang.String, android.os.Bundle);
-    public void prepareFromSearch(java.lang.String, android.os.Bundle);
-    public void prepareFromUri(android.net.Uri, android.os.Bundle);
-    public void rewind();
-    public void seekTo(long);
-    public void sendCustomAction(android.media.session.PlaybackState$CustomAction, android.os.Bundle);
-    public void sendCustomAction(java.lang.String, android.os.Bundle);
-    public void setRating(android.media.Rating);
-    public void skipToNext();
-    public void skipToPrevious();
-    public void skipToQueueItem(long);
-    public void stop();
-
-
-}
-
--keep class android.media.session.MediaSession {
-    <init>(android.content.Context, java.lang.String);
-    <init>(android.content.Context, java.lang.String, int);
-
-    public java.lang.String getCallingPackage();
-    public android.media.session.MediaController getController();
-    public android.media.session.MediaSessionManager$RemoteUserInfo getCurrentControllerInfo();
-    public android.media.session.MediaSession$Token getSessionToken();
-    public boolean isActive();
-    public static boolean isActiveState(int);
-    public void notifyRemoteVolumeChanged(android.media.VolumeProvider);
-    public void release();
-    public void sendSessionEvent(java.lang.String, android.os.Bundle);
-    public void setActive(boolean);
-    public void setCallback(android.media.session.MediaSession$Callback);
-    public void setCallback(android.media.session.MediaSession$Callback, android.os.Handler);
-    public void setExtras(android.os.Bundle);
-    public void setFlags(int);
-    public void setMediaButtonReceiver(android.app.PendingIntent);
-    public void setMetadata(android.media.MediaMetadata);
-    public void setPlaybackState(android.media.session.PlaybackState);
-    public void setPlaybackToLocal(android.media.AudioAttributes);
-    public void setPlaybackToRemote(android.media.VolumeProvider);
-    public void setQueue(java.util.List);
-    public void setQueueTitle(java.lang.CharSequence);
-    public void setRatingType(int);
-    public void setSessionActivity(android.app.PendingIntent);
-
-
-    public static int FLAG_EXCLUSIVE_GLOBAL_PRIORITY;
-    public static int FLAG_HANDLES_MEDIA_BUTTONS;
-    public static int FLAG_HANDLES_TRANSPORT_CONTROLS;
-    public static int INVALID_PID;
-    public static int INVALID_UID;
-}
-
--keep class android.media.session.MediaSession$Callback {
-    <init>();
-
-    public void onCommand(java.lang.String, android.os.Bundle, android.os.ResultReceiver);
-    public void onCustomAction(java.lang.String, android.os.Bundle);
-    public void onFastForward();
-    public boolean onMediaButtonEvent(android.content.Intent);
-    public void onPause();
-    public void onPlay();
-    public void onPlayFromMediaId(java.lang.String, android.os.Bundle);
-    public void onPlayFromSearch(java.lang.String, android.os.Bundle);
-    public void onPlayFromUri(android.net.Uri, android.os.Bundle);
-    public void onPrepare();
-    public void onPrepareFromMediaId(java.lang.String, android.os.Bundle);
-    public void onPrepareFromSearch(java.lang.String, android.os.Bundle);
-    public void onPrepareFromUri(android.net.Uri, android.os.Bundle);
-    public void onRewind();
-    public void onSeekTo(long);
-    public void onSetRating(android.media.Rating);
-    public void onSkipToNext();
-    public void onSkipToPrevious();
-    public void onSkipToQueueItem(long);
-    public void onStop();
-
-
-}
-
--keep class android.media.session.MediaSession$CallbackStub {
-    <init>(android.media.session.MediaSession);
-
-    public void onAdjustVolume(java.lang.String, int, int, android.media.session.ISessionControllerCallback, int);
-    public void onCommand(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle, android.os.ResultReceiver);
-    public void onCustomAction(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public void onFastForward(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onMediaButton(java.lang.String, int, int, android.content.Intent, int, android.os.ResultReceiver);
-    public void onMediaButtonFromController(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.content.Intent);
-    public void onNext(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onPause(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onPlay(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onPlayFromMediaId(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public void onPlayFromSearch(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public void onPlayFromUri(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
-    public void onPrepare(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onPrepareFromMediaId(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public void onPrepareFromSearch(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
-    public void onPrepareFromUri(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
-    public void onPrevious(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onRate(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.media.Rating);
-    public void onRewind(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-    public void onSeekTo(java.lang.String, int, int, android.media.session.ISessionControllerCallback, long);
-    public void onSetVolumeTo(java.lang.String, int, int, android.media.session.ISessionControllerCallback, int);
-    public void onSkipToTrack(java.lang.String, int, int, android.media.session.ISessionControllerCallback, long);
-    public void onStop(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
-
-
-}
-
--keep class android.media.session.MediaSession$QueueItem {
-    <init>(android.media.MediaDescription, long);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.media.MediaDescription getDescription();
-    public long getQueueId();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int UNKNOWN_ID;
-}
-
--keep class android.media.session.MediaSession$Token {
-    <init>(android.media.session.ISessionController);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.media.session.MediaSessionManager {
-    <init>(android.content.Context);
-
-    public void addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager$OnActiveSessionsChangedListener, android.content.ComponentName);
-    public void addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager$OnActiveSessionsChangedListener, android.content.ComponentName, android.os.Handler);
-    public void addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager$OnActiveSessionsChangedListener, android.content.ComponentName, int, android.os.Handler);
-    public void addOnSessionTokensChangedListener(java.util.concurrent.Executor, android.media.session.MediaSessionManager$OnSessionTokensChangedListener);
-    public void addOnSessionTokensChangedListener(int, java.util.concurrent.Executor, android.media.session.MediaSessionManager$OnSessionTokensChangedListener);
-    public android.media.session.ISession createSession(android.media.session.MediaSession$CallbackStub, java.lang.String, int);
-    public boolean createSession2(android.media.SessionToken2);
-    public void destroySession2(android.media.SessionToken2);
-    public void dispatchAdjustVolume(int, int, int);
-    public void dispatchMediaKeyEvent(android.view.KeyEvent);
-    public void dispatchMediaKeyEvent(android.view.KeyEvent, boolean);
-    public void dispatchMediaKeyEventAsSystemService(android.view.KeyEvent);
-    public void dispatchVolumeKeyEvent(android.view.KeyEvent, int, boolean);
-    public void dispatchVolumeKeyEventAsSystemService(android.view.KeyEvent, int);
-    public java.util.List getActiveSessionTokens();
-    public java.util.List getActiveSessions(android.content.ComponentName);
-    public java.util.List getActiveSessionsForUser(android.content.ComponentName, int);
-    public java.util.List getAllSessionTokens();
-    public java.util.List getSessionServiceTokens();
-    public boolean isGlobalPriorityActive();
-    public boolean isTrustedForMediaControl(android.media.session.MediaSessionManager$RemoteUserInfo);
-    public void removeOnActiveSessionsChangedListener(android.media.session.MediaSessionManager$OnActiveSessionsChangedListener);
-    public void removeOnSessionTokensChangedListener(android.media.session.MediaSessionManager$OnSessionTokensChangedListener);
-    public void setCallback(android.media.session.MediaSessionManager$Callback, android.os.Handler);
-    public void setOnMediaKeyListener(android.media.session.MediaSessionManager$OnMediaKeyListener, android.os.Handler);
-    public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager$OnVolumeKeyLongPressListener, android.os.Handler);
-    public void setRemoteVolumeController(android.media.IRemoteVolumeController);
-
-
-    public static int RESULT_MEDIA_KEY_HANDLED;
-    public static int RESULT_MEDIA_KEY_NOT_HANDLED;
-}
-
--keep class android.media.session.MediaSessionManager$Callback {
-    <init>();
-
-    public abstract void onAddressedPlayerChanged(android.media.session.MediaSession$Token);
-    public abstract void onAddressedPlayerChanged(android.content.ComponentName);
-    public abstract void onMediaKeyEventDispatched(android.view.KeyEvent, android.media.session.MediaSession$Token);
-    public abstract void onMediaKeyEventDispatched(android.view.KeyEvent, android.content.ComponentName);
-
-
-}
-
--keep class android.media.session.MediaSessionManager$OnActiveSessionsChangedListener {
-
-    public abstract void onActiveSessionsChanged(java.util.List);
-
-
-}
-
--keep class android.media.session.MediaSessionManager$OnMediaKeyListener {
-
-    public abstract boolean onMediaKey(android.view.KeyEvent);
-
-
-}
-
--keep class android.media.session.MediaSessionManager$OnSessionTokensChangedListener {
-
-    public abstract void onSessionTokensChanged(java.util.List);
-
-
-}
-
--keep class android.media.session.MediaSessionManager$OnVolumeKeyLongPressListener {
-
-    public abstract void onVolumeKeyLongPress(android.view.KeyEvent);
-
-
-}
-
--keep class android.media.session.MediaSessionManager$RemoteUserInfo {
-    <init>(java.lang.String, int, int);
-    <init>(java.lang.String, int, int, android.os.IBinder);
-
-    public boolean equals(java.lang.Object);
-    public java.lang.String getPackageName();
-    public int getPid();
-    public int getUid();
-    public int hashCode();
-
-
-}
-
--keep class android.media.session.ParcelableVolumeInfo {
-    <init>(int, android.media.AudioAttributes, int, int, int);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.media.AudioAttributes audioAttrs;
-    public int controlType;
-    public int currentVolume;
-    public int maxVolume;
-    public int volumeType;
-}
-
--keep class android.media.session.PlaybackState {
-
-    public int describeContents();
-    public long getActions();
-    public static long getActionsFromRccControlFlags(int);
-    public long getActiveQueueItemId();
-    public long getBufferedPosition();
-    public java.util.List getCustomActions();
-    public java.lang.CharSequence getErrorMessage();
-    public android.os.Bundle getExtras();
-    public long getLastPositionUpdateTime();
-    public float getPlaybackSpeed();
-    public long getPosition();
-    public static int getRccControlFlagsFromActions(long);
-    public static int getRccStateFromState(int);
-    public int getState();
-    public static int getStateFromRccState(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static long ACTION_FAST_FORWARD;
-    public static long ACTION_PAUSE;
-    public static long ACTION_PLAY;
-    public static long ACTION_PLAY_FROM_MEDIA_ID;
-    public static long ACTION_PLAY_FROM_SEARCH;
-    public static long ACTION_PLAY_FROM_URI;
-    public static long ACTION_PLAY_PAUSE;
-    public static long ACTION_PREPARE;
-    public static long ACTION_PREPARE_FROM_MEDIA_ID;
-    public static long ACTION_PREPARE_FROM_SEARCH;
-    public static long ACTION_PREPARE_FROM_URI;
-    public static long ACTION_REWIND;
-    public static long ACTION_SEEK_TO;
-    public static long ACTION_SET_RATING;
-    public static long ACTION_SKIP_TO_NEXT;
-    public static long ACTION_SKIP_TO_PREVIOUS;
-    public static long ACTION_SKIP_TO_QUEUE_ITEM;
-    public static long ACTION_STOP;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static long PLAYBACK_POSITION_UNKNOWN;
-    public static int STATE_BUFFERING;
-    public static int STATE_CONNECTING;
-    public static int STATE_ERROR;
-    public static int STATE_FAST_FORWARDING;
-    public static int STATE_NONE;
-    public static int STATE_PAUSED;
-    public static int STATE_PLAYING;
-    public static int STATE_REWINDING;
-    public static int STATE_SKIPPING_TO_NEXT;
-    public static int STATE_SKIPPING_TO_PREVIOUS;
-    public static int STATE_SKIPPING_TO_QUEUE_ITEM;
-    public static int STATE_STOPPED;
-}
-
--keep class android.media.session.PlaybackState$CustomAction {
-
-    public int describeContents();
-    public java.lang.String getAction();
-    public android.os.Bundle getExtras();
-    public int getIcon();
-    public java.lang.CharSequence getName();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.media.update.SessionToken2Provider {
-
-    public abstract boolean equals_impl(java.lang.Object);
-    public abstract java.lang.String getId_imp();
-    public abstract java.lang.String getPackageName_impl();
-    public abstract int getType_impl();
-    public abstract int getUid_impl();
-    public abstract int hashCode_impl();
-    public abstract android.os.Bundle toBundle_impl();
-    public abstract java.lang.String toString_impl();
-
-
-}
-
--keep class android.net.Uri {
-
-    public abstract android.net.Uri$Builder buildUpon();
-    public void checkContentUriWithoutPermission(java.lang.String, int);
-    public void checkFileUriExposed(java.lang.String);
-    public int compareTo(android.net.Uri);
-    public int compareTo(java.lang.Object);
-    public static java.lang.String decode(java.lang.String);
-    public static java.lang.String encode(java.lang.String);
-    public static java.lang.String encode(java.lang.String, java.lang.String);
-    public boolean equals(java.lang.Object);
-    public static android.net.Uri fromFile(java.io.File);
-    public static android.net.Uri fromParts(java.lang.String, java.lang.String, java.lang.String);
-    public abstract java.lang.String getAuthority();
-    public boolean getBooleanQueryParameter(java.lang.String, boolean);
-    public android.net.Uri getCanonicalUri();
-    public abstract java.lang.String getEncodedAuthority();
-    public abstract java.lang.String getEncodedFragment();
-    public abstract java.lang.String getEncodedPath();
-    public abstract java.lang.String getEncodedQuery();
-    public abstract java.lang.String getEncodedSchemeSpecificPart();
-    public abstract java.lang.String getEncodedUserInfo();
-    public abstract java.lang.String getFragment();
-    public abstract java.lang.String getHost();
-    public abstract java.lang.String getLastPathSegment();
-    public abstract java.lang.String getPath();
-    public abstract java.util.List getPathSegments();
-    public abstract int getPort();
-    public abstract java.lang.String getQuery();
-    public java.lang.String getQueryParameter(java.lang.String);
-    public java.util.Set getQueryParameterNames();
-    public java.util.List getQueryParameters(java.lang.String);
-    public abstract java.lang.String getScheme();
-    public abstract java.lang.String getSchemeSpecificPart();
-    public abstract java.lang.String getUserInfo();
-    public int hashCode();
-    public boolean isAbsolute();
-    public abstract boolean isHierarchical();
-    public boolean isOpaque();
-    public boolean isPathPrefixMatch(android.net.Uri);
-    public abstract boolean isRelative();
-    public android.net.Uri normalizeScheme();
-    public static android.net.Uri parse(java.lang.String);
-    public java.lang.String toSafeString();
-    public abstract java.lang.String toString();
-    public static android.net.Uri withAppendedPath(android.net.Uri, java.lang.String);
-    public static void writeToParcel(android.os.Parcel, android.net.Uri);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.net.Uri EMPTY;
-}
-
--keep class android.net.Uri$Builder {
-    <init>();
-
-    public android.net.Uri$Builder appendEncodedPath(java.lang.String);
-    public android.net.Uri$Builder appendPath(java.lang.String);
-    public android.net.Uri$Builder appendQueryParameter(java.lang.String, java.lang.String);
-    public android.net.Uri$Builder authority(java.lang.String);
-    public android.net.Uri build();
-    public android.net.Uri$Builder clearQuery();
-    public android.net.Uri$Builder encodedAuthority(java.lang.String);
-    public android.net.Uri$Builder encodedFragment(java.lang.String);
-    public android.net.Uri$Builder encodedOpaquePart(java.lang.String);
-    public android.net.Uri$Builder encodedPath(java.lang.String);
-    public android.net.Uri$Builder encodedQuery(java.lang.String);
-    public android.net.Uri$Builder fragment(java.lang.String);
-    public android.net.Uri$Builder opaquePart(java.lang.String);
-    public android.net.Uri$Builder path(java.lang.String);
-    public android.net.Uri$Builder query(java.lang.String);
-    public android.net.Uri$Builder scheme(java.lang.String);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.os.BaseBundle {
-
-    public void clear();
-    public boolean containsKey(java.lang.String);
-    public static void dumpStats(com.android.internal.util.IndentingPrintWriter, java.lang.String, java.lang.Object);
-    public static void dumpStats(com.android.internal.util.IndentingPrintWriter, android.util.SparseArray);
-    public static void dumpStats(com.android.internal.util.IndentingPrintWriter, android.os.BaseBundle);
-    public java.lang.Object get(java.lang.String);
-    public boolean getBoolean(java.lang.String);
-    public boolean getBoolean(java.lang.String, boolean);
-    public boolean[] getBooleanArray(java.lang.String);
-    public double getDouble(java.lang.String);
-    public double getDouble(java.lang.String, double);
-    public double[] getDoubleArray(java.lang.String);
-    public int getInt(java.lang.String);
-    public int getInt(java.lang.String, int);
-    public int[] getIntArray(java.lang.String);
-    public long getLong(java.lang.String);
-    public long getLong(java.lang.String, long);
-    public long[] getLongArray(java.lang.String);
-    public java.lang.String getPairValue();
-    public java.lang.String getString(java.lang.String);
-    public java.lang.String getString(java.lang.String, java.lang.String);
-    public java.lang.String[] getStringArray(java.lang.String);
-    public boolean isEmpty();
-    public boolean isEmptyParcel();
-    public boolean isParcelled();
-    public java.util.Set keySet();
-    public static boolean kindofEquals(android.os.BaseBundle, android.os.BaseBundle);
-    public boolean kindofEquals(android.os.BaseBundle);
-    public boolean maybeIsEmpty();
-    public void putAll(android.os.PersistableBundle);
-    public void putBoolean(java.lang.String, boolean);
-    public void putBooleanArray(java.lang.String, boolean[]);
-    public void putDouble(java.lang.String, double);
-    public void putDoubleArray(java.lang.String, double[]);
-    public void putInt(java.lang.String, int);
-    public void putIntArray(java.lang.String, int[]);
-    public void putLong(java.lang.String, long);
-    public void putLongArray(java.lang.String, long[]);
-    public void putString(java.lang.String, java.lang.String);
-    public void putStringArray(java.lang.String, java.lang.String[]);
-    public void remove(java.lang.String);
-    public static void setShouldDefuse(boolean);
-    public int size();
-
-
-    public int mFlags;
-}
-
--keep class android.os.Binder {
-    <init>();
-
-    public static android.os.IBinder allowBlocking(android.os.IBinder);
-    public void attachInterface(android.os.IInterface, java.lang.String);
-    public static void blockUntilThreadAvailable();
-    public static long clearCallingIdentity();
-    public static void copyAllowBlocking(android.os.IBinder, android.os.IBinder);
-    public static android.os.IBinder defaultBlocking(android.os.IBinder);
-    public static void disableTracing();
-    public void dump(java.io.FileDescriptor, java.lang.String[]);
-    protected void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public void dumpAsync(java.io.FileDescriptor, java.lang.String[]);
-    public static void enableTracing();
-    public static void flushPendingCommands();
-    public static int getCallingPid();
-    public static int getCallingUid();
-    public static android.os.UserHandle getCallingUserHandle();
-    public java.lang.String getInterfaceDescriptor();
-    public static int getThreadStrictModePolicy();
-    public static synchronized android.os.TransactionTracker getTransactionTracker();
-    public boolean isBinderAlive();
-    public static boolean isProxy(android.os.IInterface);
-    public static boolean isTracingEnabled();
-    public static void joinThreadPool();
-    public void linkToDeath(android.os.IBinder$DeathRecipient, int);
-    public void onShellCommand(java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor, java.lang.String[], android.os.ShellCallback, android.os.ResultReceiver);
-    protected boolean onTransact(int, android.os.Parcel, android.os.Parcel, int);
-    public boolean pingBinder();
-    public android.os.IInterface queryLocalInterface(java.lang.String);
-    public static void restoreCallingIdentity(long);
-    public static void setDumpDisabled(java.lang.String);
-    public static void setThreadStrictModePolicy(int);
-    public static void setWarnOnBlocking(boolean);
-    public void shellCommand(java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor, java.lang.String[], android.os.ShellCallback, android.os.ResultReceiver);
-    public boolean transact(int, android.os.Parcel, android.os.Parcel, int);
-    public boolean unlinkToDeath(android.os.IBinder$DeathRecipient, int);
-    public static void withCleanCallingIdentity(com.android.internal.util.FunctionalUtils$ThrowingRunnable);
-    public static java.lang.Object withCleanCallingIdentity(com.android.internal.util.FunctionalUtils$ThrowingSupplier);
-
-
-    public static boolean CHECK_PARCEL_SIZE;
-    public static boolean LOG_RUNTIME_EXCEPTION;
-}
-
--keep class android.os.Bundle {
-    <init>();
-    <init>(android.os.Parcel);
-    <init>(android.os.Parcel, int);
-    <init>(java.lang.ClassLoader);
-    <init>(int);
-    <init>(android.os.Bundle);
-    <init>(android.os.PersistableBundle);
-
-    public void clear();
-    public java.lang.Object clone();
-    public android.os.Bundle deepCopy();
-    public int describeContents();
-    public android.os.Bundle filterValues();
-    public static android.os.Bundle forPair(java.lang.String, java.lang.String);
-    public android.os.IBinder getBinder(java.lang.String);
-    public android.os.Bundle getBundle(java.lang.String);
-    public byte getByte(java.lang.String);
-    public java.lang.Byte getByte(java.lang.String, byte);
-    public byte[] getByteArray(java.lang.String);
-    public char getChar(java.lang.String);
-    public char getChar(java.lang.String, char);
-    public char[] getCharArray(java.lang.String);
-    public java.lang.CharSequence getCharSequence(java.lang.String);
-    public java.lang.CharSequence getCharSequence(java.lang.String, java.lang.CharSequence);
-    public java.lang.CharSequence[] getCharSequenceArray(java.lang.String);
-    public java.util.ArrayList getCharSequenceArrayList(java.lang.String);
-    public java.lang.ClassLoader getClassLoader();
-    public float getFloat(java.lang.String);
-    public float getFloat(java.lang.String, float);
-    public float[] getFloatArray(java.lang.String);
-    public android.os.IBinder getIBinder(java.lang.String);
-    public java.util.ArrayList getIntegerArrayList(java.lang.String);
-    public android.os.Parcelable getParcelable(java.lang.String);
-    public android.os.Parcelable[] getParcelableArray(java.lang.String);
-    public java.util.ArrayList getParcelableArrayList(java.lang.String);
-    public java.io.Serializable getSerializable(java.lang.String);
-    public short getShort(java.lang.String);
-    public short getShort(java.lang.String, short);
-    public short[] getShortArray(java.lang.String);
-    public int getSize();
-    public android.util.Size getSize(java.lang.String);
-    public android.util.SizeF getSizeF(java.lang.String);
-    public android.util.SparseArray getSparseParcelableArray(java.lang.String);
-    public java.util.ArrayList getStringArrayList(java.lang.String);
-    public boolean hasFileDescriptors();
-    public void putAll(android.os.Bundle);
-    public void putBinder(java.lang.String, android.os.IBinder);
-    public void putBundle(java.lang.String, android.os.Bundle);
-    public void putByte(java.lang.String, byte);
-    public void putByteArray(java.lang.String, byte[]);
-    public void putChar(java.lang.String, char);
-    public void putCharArray(java.lang.String, char[]);
-    public void putCharSequence(java.lang.String, java.lang.CharSequence);
-    public void putCharSequenceArray(java.lang.String, java.lang.CharSequence[]);
-    public void putCharSequenceArrayList(java.lang.String, java.util.ArrayList);
-    public void putFloat(java.lang.String, float);
-    public void putFloatArray(java.lang.String, float[]);
-    public void putIBinder(java.lang.String, android.os.IBinder);
-    public void putIntegerArrayList(java.lang.String, java.util.ArrayList);
-    public void putParcelable(java.lang.String, android.os.Parcelable);
-    public void putParcelableArray(java.lang.String, android.os.Parcelable[]);
-    public void putParcelableArrayList(java.lang.String, java.util.ArrayList);
-    public void putParcelableList(java.lang.String, java.util.List);
-    public void putSerializable(java.lang.String, java.io.Serializable);
-    public void putShort(java.lang.String, short);
-    public void putShortArray(java.lang.String, short[]);
-    public void putSize(java.lang.String, android.util.Size);
-    public void putSizeF(java.lang.String, android.util.SizeF);
-    public void putSparseParcelableArray(java.lang.String, android.util.SparseArray);
-    public void putStringArrayList(java.lang.String, java.util.ArrayList);
-    public void readFromParcel(android.os.Parcel);
-    public void remove(java.lang.String);
-    public boolean setAllowFds(boolean);
-    public void setClassLoader(java.lang.ClassLoader);
-    public void setDefusable(boolean);
-    public static android.os.Bundle setDefusable(android.os.Bundle, boolean);
-    public synchronized java.lang.String toShortString();
-    public synchronized java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.os.Bundle EMPTY;
-    public static android.os.Bundle STRIPPED;
-}
-
--keep class android.os.CancellationSignal {
-    <init>();
-
-    public void cancel();
-    public static android.os.ICancellationSignal createTransport();
-    public static android.os.CancellationSignal fromTransport(android.os.ICancellationSignal);
-    public boolean isCanceled();
-    public void setOnCancelListener(android.os.CancellationSignal$OnCancelListener);
-    public void setRemote(android.os.ICancellationSignal);
-    public void throwIfCanceled();
-
-
-}
-
--keep class android.os.CancellationSignal$OnCancelListener {
-
-    public abstract void onCancel();
-
-
-}
-
--keep class android.os.Debug {
-
-    public static void attachJvmtiAgent(java.lang.String, java.lang.String, java.lang.ClassLoader);
-    public static boolean cacheRegisterMap(java.lang.String);
-    public static void changeDebugPort(int);
-    public static long countInstancesOfClass(java.lang.Class);
-    public static void dumpHprofData(java.lang.String);
-    public static void dumpHprofData(java.lang.String, java.io.FileDescriptor);
-    public static void dumpHprofDataDdms();
-    public static boolean dumpJavaBacktraceToFileTimeout(int, java.lang.String, int);
-    public static boolean dumpNativeBacktraceToFileTimeout(int, java.lang.String, int);
-    public static void dumpNativeHeap(java.io.FileDescriptor);
-    public static void dumpNativeMallocInfo(java.io.FileDescriptor);
-    public static void dumpReferenceTables();
-    public static boolean dumpService(java.lang.String, java.io.FileDescriptor, java.lang.String[]);
-    public static void enableEmulatorTraceOutput();
-    public static int getBinderDeathObjectCount();
-    public static int getBinderLocalObjectCount();
-    public static int getBinderProxyObjectCount();
-    public static int getBinderReceivedTransactions();
-    public static int getBinderSentTransactions();
-    public static java.lang.String getCaller();
-    public static java.lang.String getCallers(int);
-    public static java.lang.String getCallers(int, int);
-    public static java.lang.String getCallers(int, java.lang.String);
-    public static int getGlobalAllocCount();
-    public static int getGlobalAllocSize();
-    public static int getGlobalClassInitCount();
-    public static int getGlobalClassInitTime();
-    public static int getGlobalExternalAllocCount();
-    public static int getGlobalExternalAllocSize();
-    public static int getGlobalExternalFreedCount();
-    public static int getGlobalExternalFreedSize();
-    public static int getGlobalFreedCount();
-    public static int getGlobalFreedSize();
-    public static int getGlobalGcInvocationCount();
-    public static int getLoadedClassCount();
-    public static void getMemInfo(long[]);
-    public static void getMemoryInfo(android.os.Debug$MemoryInfo);
-    public static void getMemoryInfo(int, android.os.Debug$MemoryInfo);
-    public static int getMethodTracingMode();
-    public static long getNativeHeapAllocatedSize();
-    public static long getNativeHeapFreeSize();
-    public static long getNativeHeapSize();
-    public static long getPss();
-    public static long getPss(int, long[], long[]);
-    public static java.lang.String getRuntimeStat(java.lang.String);
-    public static java.util.Map getRuntimeStats();
-    public static int getThreadAllocCount();
-    public static int getThreadAllocSize();
-    public static int getThreadExternalAllocCount();
-    public static int getThreadExternalAllocSize();
-    public static int getThreadGcInvocationCount();
-    public static java.lang.String getUnreachableMemory(int, boolean);
-    public static java.lang.String[] getVmFeatureList();
-    public static boolean isDebuggerConnected();
-    public static void printLoadedClasses(int);
-    public static void resetAllCounts();
-    public static void resetGlobalAllocCount();
-    public static void resetGlobalAllocSize();
-    public static void resetGlobalClassInitCount();
-    public static void resetGlobalClassInitTime();
-    public static void resetGlobalExternalAllocCount();
-    public static void resetGlobalExternalAllocSize();
-    public static void resetGlobalExternalFreedCount();
-    public static void resetGlobalExternalFreedSize();
-    public static void resetGlobalFreedCount();
-    public static void resetGlobalFreedSize();
-    public static void resetGlobalGcInvocationCount();
-    public static void resetThreadAllocCount();
-    public static void resetThreadAllocSize();
-    public static void resetThreadExternalAllocCount();
-    public static void resetThreadExternalAllocSize();
-    public static void resetThreadGcInvocationCount();
-    public static int setAllocationLimit(int);
-    public static void setFieldsOn(java.lang.Class);
-    public static void setFieldsOn(java.lang.Class, boolean);
-    public static int setGlobalAllocationLimit(int);
-    public static void startAllocCounting();
-    public static void startMethodTracing();
-    public static void startMethodTracing(java.lang.String);
-    public static void startMethodTracing(java.lang.String, int);
-    public static void startMethodTracing(java.lang.String, int, int);
-    public static void startMethodTracing(java.lang.String, java.io.FileDescriptor, int, int, boolean);
-    public static void startMethodTracingDdms(int, int, boolean, int);
-    public static void startMethodTracingSampling(java.lang.String, int, int);
-    public static void startNativeTracing();
-    public static void stopAllocCounting();
-    public static void stopMethodTracing();
-    public static void stopNativeTracing();
-    public static long threadCpuTimeNanos();
-    public static void waitForDebugger();
-    public static boolean waitingForDebugger();
-
-
-    public static int MEMINFO_BUFFERS;
-    public static int MEMINFO_CACHED;
-    public static int MEMINFO_COUNT;
-    public static int MEMINFO_FREE;
-    public static int MEMINFO_KERNEL_STACK;
-    public static int MEMINFO_MAPPED;
-    public static int MEMINFO_PAGE_TABLES;
-    public static int MEMINFO_SHMEM;
-    public static int MEMINFO_SLAB;
-    public static int MEMINFO_SLAB_RECLAIMABLE;
-    public static int MEMINFO_SLAB_UNRECLAIMABLE;
-    public static int MEMINFO_SWAP_FREE;
-    public static int MEMINFO_SWAP_TOTAL;
-    public static int MEMINFO_TOTAL;
-    public static int MEMINFO_VM_ALLOC_USED;
-    public static int MEMINFO_ZRAM_TOTAL;
-    public static int SHOW_CLASSLOADER;
-    public static int SHOW_FULL_DETAIL;
-    public static int SHOW_INITIALIZED;
-    public static int TRACE_COUNT_ALLOCS;
-}
-
--keep class android.os.Debug$MemoryInfo {
-    <init>();
-
-    public int describeContents();
-    public java.lang.String getMemoryStat(java.lang.String);
-    public java.util.Map getMemoryStats();
-    public static java.lang.String getOtherLabel(int);
-    public int getOtherPrivate(int);
-    public int getOtherPrivateClean(int);
-    public int getOtherPrivateDirty(int);
-    public int getOtherPss(int);
-    public int getOtherRss(int);
-    public int getOtherSharedClean(int);
-    public int getOtherSharedDirty(int);
-    public int getOtherSwappablePss(int);
-    public int getOtherSwappedOut(int);
-    public int getOtherSwappedOutPss(int);
-    public int getSummaryCode();
-    public int getSummaryGraphics();
-    public int getSummaryJavaHeap();
-    public int getSummaryNativeHeap();
-    public int getSummaryPrivateOther();
-    public int getSummaryStack();
-    public int getSummarySystem();
-    public int getSummaryTotalPss();
-    public int getSummaryTotalSwap();
-    public int getSummaryTotalSwapPss();
-    public int getTotalPrivateClean();
-    public int getTotalPrivateDirty();
-    public int getTotalPss();
-    public int getTotalRss();
-    public int getTotalSharedClean();
-    public int getTotalSharedDirty();
-    public int getTotalSwappablePss();
-    public int getTotalSwappedOut();
-    public int getTotalSwappedOutPss();
-    public int getTotalUss();
-    public boolean hasSwappedOutPss();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int HEAP_DALVIK;
-    public static int HEAP_NATIVE;
-    public static int HEAP_UNKNOWN;
-    public static int NUM_CATEGORIES;
-    public static int NUM_DVK_STATS;
-    public static int NUM_OTHER_STATS;
-    public static int OFFSET_PRIVATE_CLEAN;
-    public static int OFFSET_PRIVATE_DIRTY;
-    public static int OFFSET_PSS;
-    public static int OFFSET_RSS;
-    public static int OFFSET_SHARED_CLEAN;
-    public static int OFFSET_SHARED_DIRTY;
-    public static int OFFSET_SWAPPABLE_PSS;
-    public static int OFFSET_SWAPPED_OUT;
-    public static int OFFSET_SWAPPED_OUT_PSS;
-    public static int OTHER_APK;
-    public static int OTHER_ART;
-    public static int OTHER_ART_APP;
-    public static int OTHER_ART_BOOT;
-    public static int OTHER_ASHMEM;
-    public static int OTHER_CURSOR;
-    public static int OTHER_DALVIK_LARGE;
-    public static int OTHER_DALVIK_NON_MOVING;
-    public static int OTHER_DALVIK_NORMAL;
-    public static int OTHER_DALVIK_OTHER;
-    public static int OTHER_DALVIK_OTHER_ACCOUNTING;
-    public static int OTHER_DALVIK_OTHER_CODE_CACHE;
-    public static int OTHER_DALVIK_OTHER_COMPILER_METADATA;
-    public static int OTHER_DALVIK_OTHER_INDIRECT_REFERENCE_TABLE;
-    public static int OTHER_DALVIK_OTHER_LINEARALLOC;
-    public static int OTHER_DALVIK_ZYGOTE;
-    public static int OTHER_DEX;
-    public static int OTHER_DEX_APP_DEX;
-    public static int OTHER_DEX_APP_VDEX;
-    public static int OTHER_DEX_BOOT_VDEX;
-    public static int OTHER_DVK_STAT_ART_END;
-    public static int OTHER_DVK_STAT_ART_START;
-    public static int OTHER_DVK_STAT_DALVIK_END;
-    public static int OTHER_DVK_STAT_DALVIK_OTHER_END;
-    public static int OTHER_DVK_STAT_DALVIK_OTHER_START;
-    public static int OTHER_DVK_STAT_DALVIK_START;
-    public static int OTHER_DVK_STAT_DEX_END;
-    public static int OTHER_DVK_STAT_DEX_START;
-    public static int OTHER_GL;
-    public static int OTHER_GL_DEV;
-    public static int OTHER_GRAPHICS;
-    public static int OTHER_JAR;
-    public static int OTHER_OAT;
-    public static int OTHER_OTHER_MEMTRACK;
-    public static int OTHER_SO;
-    public static int OTHER_STACK;
-    public static int OTHER_TTF;
-    public static int OTHER_UNKNOWN_DEV;
-    public static int OTHER_UNKNOWN_MAP;
-    public int dalvikPrivateClean;
-    public int dalvikPrivateDirty;
-    public int dalvikPss;
-    public int dalvikRss;
-    public int dalvikSharedClean;
-    public int dalvikSharedDirty;
-    public int dalvikSwappablePss;
-    public int dalvikSwappedOut;
-    public int dalvikSwappedOutPss;
-    public boolean hasSwappedOutPss;
-    public int nativePrivateClean;
-    public int nativePrivateDirty;
-    public int nativePss;
-    public int nativeRss;
-    public int nativeSharedClean;
-    public int nativeSharedDirty;
-    public int nativeSwappablePss;
-    public int nativeSwappedOut;
-    public int nativeSwappedOutPss;
-    public int otherPrivateClean;
-    public int otherPrivateDirty;
-    public int otherPss;
-    public int otherRss;
-    public int otherSharedClean;
-    public int otherSharedDirty;
-    public int otherSwappablePss;
-    public int otherSwappedOut;
-    public int otherSwappedOutPss;
-}
-
--keep class android.os.Handler {
-    <init>();
-    <init>(android.os.Handler$Callback);
-    <init>(android.os.Looper);
-    <init>(android.os.Looper, android.os.Handler$Callback);
-    <init>(boolean);
-    <init>(android.os.Handler$Callback, boolean);
-    <init>(android.os.Looper, android.os.Handler$Callback, boolean);
-
-    public static android.os.Handler createAsync(android.os.Looper);
-    public static android.os.Handler createAsync(android.os.Looper, android.os.Handler$Callback);
-    public void dispatchMessage(android.os.Message);
-    public void dump(android.util.Printer, java.lang.String);
-    public void dumpMine(android.util.Printer, java.lang.String);
-    public boolean executeOrSendMessage(android.os.Message);
-    public android.os.Looper getLooper();
-    public static android.os.Handler getMain();
-    public java.lang.String getMessageName(android.os.Message);
-    public java.lang.String getTraceName(android.os.Message);
-    public void handleMessage(android.os.Message);
-    public boolean hasCallbacks(java.lang.Runnable);
-    public boolean hasMessages(int);
-    public boolean hasMessages(int, java.lang.Object);
-    public boolean hasMessagesOrCallbacks();
-    public static android.os.Handler mainIfNull(android.os.Handler);
-    public android.os.Message obtainMessage();
-    public android.os.Message obtainMessage(int);
-    public android.os.Message obtainMessage(int, java.lang.Object);
-    public android.os.Message obtainMessage(int, int, int);
-    public android.os.Message obtainMessage(int, int, int, java.lang.Object);
-    public boolean post(java.lang.Runnable);
-    public boolean postAtFrontOfQueue(java.lang.Runnable);
-    public boolean postAtTime(java.lang.Runnable, long);
-    public boolean postAtTime(java.lang.Runnable, java.lang.Object, long);
-    public boolean postDelayed(java.lang.Runnable, long);
-    public boolean postDelayed(java.lang.Runnable, java.lang.Object, long);
-    public void removeCallbacks(java.lang.Runnable);
-    public void removeCallbacks(java.lang.Runnable, java.lang.Object);
-    public void removeCallbacksAndMessages(java.lang.Object);
-    public void removeMessages(int);
-    public void removeMessages(int, java.lang.Object);
-    public boolean runWithScissors(java.lang.Runnable, long);
-    public boolean sendEmptyMessage(int);
-    public boolean sendEmptyMessageAtTime(int, long);
-    public boolean sendEmptyMessageDelayed(int, long);
-    public boolean sendMessage(android.os.Message);
-    public boolean sendMessageAtFrontOfQueue(android.os.Message);
-    public boolean sendMessageAtTime(android.os.Message, long);
-    public boolean sendMessageDelayed(android.os.Message, long);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.os.Handler$Callback {
-
-    public abstract boolean handleMessage(android.os.Message);
-
-
-}
-
--keep class android.os.IBinder {
-
-    public abstract void dump(java.io.FileDescriptor, java.lang.String[]);
-    public abstract void dumpAsync(java.io.FileDescriptor, java.lang.String[]);
-    public abstract java.lang.String getInterfaceDescriptor();
-    public abstract boolean isBinderAlive();
-    public abstract void linkToDeath(android.os.IBinder$DeathRecipient, int);
-    public abstract boolean pingBinder();
-    public abstract android.os.IInterface queryLocalInterface(java.lang.String);
-    public abstract void shellCommand(java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor, java.lang.String[], android.os.ShellCallback, android.os.ResultReceiver);
-    public abstract boolean transact(int, android.os.Parcel, android.os.Parcel, int);
-    public abstract boolean unlinkToDeath(android.os.IBinder$DeathRecipient, int);
-
-
-    public static int DUMP_TRANSACTION;
-    public static int FIRST_CALL_TRANSACTION;
-    public static int FLAG_ONEWAY;
-    public static int INTERFACE_TRANSACTION;
-    public static int LAST_CALL_TRANSACTION;
-    public static int LIKE_TRANSACTION;
-    public static int MAX_IPC_SIZE;
-    public static int PING_TRANSACTION;
-    public static int SHELL_COMMAND_TRANSACTION;
-    public static int SYSPROPS_TRANSACTION;
-    public static int TWEET_TRANSACTION;
-}
-
--keep class android.os.IBinder$DeathRecipient {
-
-    public abstract void binderDied();
-
-
-}
-
--keep class android.os.ICancellationSignal {
-
-    public abstract void cancel();
-
-
-}
-
--keep class android.os.IInterface {
-
-    public abstract android.os.IBinder asBinder();
-
-
-}
-
--keep class android.os.IProgressListener {
-
-    public abstract void onFinished(int, android.os.Bundle);
-    public abstract void onProgress(int, int, android.os.Bundle);
-    public abstract void onStarted(int, android.os.Bundle);
-
-
-}
-
--keep class android.os.IRemoteCallback {
-
-    public abstract void sendResult(android.os.Bundle);
-
-
-}
-
--keep class android.os.LocaleList {
-    <init>(java.util.Locale[]);
-    <init>(java.util.Locale, android.os.LocaleList);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static android.os.LocaleList forLanguageTags(java.lang.String);
-    public java.util.Locale get(int);
-    public static android.os.LocaleList getAdjustedDefault();
-    public static android.os.LocaleList getDefault();
-    public static android.os.LocaleList getEmptyLocaleList();
-    public java.util.Locale getFirstMatch(java.lang.String[]);
-    public int getFirstMatchIndex(java.lang.String[]);
-    public int getFirstMatchIndexWithEnglishSupported(java.util.Collection);
-    public int getFirstMatchIndexWithEnglishSupported(java.lang.String[]);
-    public java.util.Locale getFirstMatchWithEnglishSupported(java.lang.String[]);
-    public int hashCode();
-    public int indexOf(java.util.Locale);
-    public boolean isEmpty();
-    public static boolean isPseudoLocale(java.util.Locale);
-    public static boolean isPseudoLocalesOnly(java.lang.String[]);
-    public static void setDefault(android.os.LocaleList);
-    public static void setDefault(android.os.LocaleList, int);
-    public int size();
-    public java.lang.String toLanguageTags();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.os.Looper {
-
-    public void dump(android.util.Printer, java.lang.String);
-    public void dump(android.util.Printer, java.lang.String, android.os.Handler);
-    public static android.os.Looper getMainLooper();
-    public android.os.MessageQueue getQueue();
-    public java.lang.Thread getThread();
-    public boolean isCurrentThread();
-    public static void loop();
-    public static android.os.Looper myLooper();
-    public static android.os.MessageQueue myQueue();
-    public static void prepare();
-    public static void prepareMainLooper();
-    public void quit();
-    public void quitSafely();
-    public void setMessageLogging(android.util.Printer);
-    public void setSlowLogThresholdMs(long, long);
-    public void setTraceTag(long);
-    public java.lang.String toString();
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-}
-
--keep class android.os.Message {
-    <init>();
-
-    public void copyFrom(android.os.Message);
-    public int describeContents();
-    public java.lang.Runnable getCallback();
-    public android.os.Bundle getData();
-    public android.os.Handler getTarget();
-    public long getWhen();
-    public boolean isAsynchronous();
-    public static android.os.Message obtain();
-    public static android.os.Message obtain(android.os.Message);
-    public static android.os.Message obtain(android.os.Handler);
-    public static android.os.Message obtain(android.os.Handler, java.lang.Runnable);
-    public static android.os.Message obtain(android.os.Handler, int);
-    public static android.os.Message obtain(android.os.Handler, int, java.lang.Object);
-    public static android.os.Message obtain(android.os.Handler, int, int, int);
-    public static android.os.Message obtain(android.os.Handler, int, int, int, java.lang.Object);
-    public android.os.Bundle peekData();
-    public void recycle();
-    public void sendToTarget();
-    public void setAsynchronous(boolean);
-    public android.os.Message setCallback(java.lang.Runnable);
-    public void setData(android.os.Bundle);
-    public void setTarget(android.os.Handler);
-    public android.os.Message setWhat(int);
-    public java.lang.String toString();
-    public static void updateCheckRecycle(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int arg1;
-    public int arg2;
-    public java.lang.Object obj;
-    public android.os.Messenger replyTo;
-    public static java.lang.Object sPoolSync;
-    public int sendingUid;
-    public int what;
-}
-
--keep class android.os.MessageQueue {
-
-    public void addIdleHandler(android.os.MessageQueue$IdleHandler);
-    public void addOnFileDescriptorEventListener(java.io.FileDescriptor, int, android.os.MessageQueue$OnFileDescriptorEventListener);
-    protected void finalize();
-    public boolean isIdle();
-    public boolean isPolling();
-    public int postSyncBarrier();
-    public void removeIdleHandler(android.os.MessageQueue$IdleHandler);
-    public void removeOnFileDescriptorEventListener(java.io.FileDescriptor);
-    public void removeSyncBarrier(int);
-
-
-}
-
--keep class android.os.MessageQueue$IdleHandler {
-
-    public abstract boolean queueIdle();
-
-
-}
-
--keep class android.os.MessageQueue$OnFileDescriptorEventListener {
-
-    public abstract int onFileDescriptorEvents(java.io.FileDescriptor, int);
-
-
-    public static int EVENT_ERROR;
-    public static int EVENT_INPUT;
-    public static int EVENT_OUTPUT;
-}
-
--keep class android.os.Messenger {
-    <init>(android.os.Handler);
-    <init>(android.os.IBinder);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.os.IBinder getBinder();
-    public int hashCode();
-    public static android.os.Messenger readMessengerOrNullFromParcel(android.os.Parcel);
-    public void send(android.os.Message);
-    public static void writeMessengerOrNullToParcel(android.os.Messenger, android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.os.Parcel {
-
-    public void adoptClassCookies(android.os.Parcel);
-    public void appendFrom(android.os.Parcel, int, int);
-    public int compareData(android.os.Parcel);
-    public java.util.Map copyClassCookies();
-    public android.os.IBinder[] createBinderArray();
-    public java.util.ArrayList createBinderArrayList();
-    public boolean[] createBooleanArray();
-    public byte[] createByteArray();
-    public char[] createCharArray();
-    public double[] createDoubleArray();
-    public float[] createFloatArray();
-    public int[] createIntArray();
-    public long[] createLongArray();
-    public java.io.FileDescriptor[] createRawFileDescriptorArray();
-    public java.lang.String[] createStringArray();
-    public java.util.ArrayList createStringArrayList();
-    public java.lang.Object[] createTypedArray(android.os.Parcelable$Creator);
-    public java.util.ArrayList createTypedArrayList(android.os.Parcelable$Creator);
-    public int dataAvail();
-    public int dataCapacity();
-    public int dataPosition();
-    public int dataSize();
-    public void enforceInterface(java.lang.String);
-    protected void finalize();
-    public long getBlobAshmemSize();
-    public java.lang.Object getClassCookie(java.lang.Class);
-    public static long getGlobalAllocCount();
-    public static long getGlobalAllocSize();
-    public boolean hasFileDescriptors();
-    public boolean hasReadWriteHelper();
-    public byte[] marshall();
-    public static android.os.Parcel obtain();
-    protected static android.os.Parcel obtain(int);
-    protected static android.os.Parcel obtain(long);
-    public boolean pushAllowFds(boolean);
-    public void putClassCookies(java.util.Map);
-    public java.lang.Object[] readArray(java.lang.ClassLoader);
-    public java.util.ArrayList readArrayList(java.lang.ClassLoader);
-    public void readArrayMap(android.util.ArrayMap, java.lang.ClassLoader);
-    public android.util.ArraySet readArraySet(java.lang.ClassLoader);
-    public void readBinderArray(android.os.IBinder[]);
-    public void readBinderList(java.util.List);
-    public byte[] readBlob();
-    public boolean readBoolean();
-    public void readBooleanArray(boolean[]);
-    public android.os.Bundle readBundle();
-    public android.os.Bundle readBundle(java.lang.ClassLoader);
-    public byte readByte();
-    public void readByteArray(byte[]);
-    public void readCharArray(char[]);
-    public java.lang.CharSequence readCharSequence();
-    public java.lang.CharSequence[] readCharSequenceArray();
-    public java.util.ArrayList readCharSequenceList();
-    public android.os.Parcelable readCreator(android.os.Parcelable$Creator, java.lang.ClassLoader);
-    public double readDouble();
-    public void readDoubleArray(double[]);
-    public void readException();
-    public void readException(int, java.lang.String);
-    public int readExceptionCode();
-    public android.os.ParcelFileDescriptor readFileDescriptor();
-    public float readFloat();
-    public void readFloatArray(float[]);
-    public java.util.HashMap readHashMap(java.lang.ClassLoader);
-    public int readInt();
-    public void readIntArray(int[]);
-    public void readList(java.util.List, java.lang.ClassLoader);
-    public long readLong();
-    public void readLongArray(long[]);
-    public void readMap(java.util.Map, java.lang.ClassLoader);
-    public android.os.Parcelable readParcelable(java.lang.ClassLoader);
-    public android.os.Parcelable[] readParcelableArray(java.lang.ClassLoader);
-    public android.os.Parcelable[] readParcelableArray(java.lang.ClassLoader, java.lang.Class);
-    public android.os.Parcelable$Creator readParcelableCreator(java.lang.ClassLoader);
-    public java.util.List readParcelableList(java.util.List, java.lang.ClassLoader);
-    public android.os.PersistableBundle readPersistableBundle();
-    public android.os.PersistableBundle readPersistableBundle(java.lang.ClassLoader);
-    public java.io.FileDescriptor readRawFileDescriptor();
-    public void readRawFileDescriptorArray(java.io.FileDescriptor[]);
-    public java.io.Serializable readSerializable();
-    public android.util.Size readSize();
-    public android.util.SizeF readSizeF();
-    public android.util.SparseArray readSparseArray(java.lang.ClassLoader);
-    public android.util.SparseBooleanArray readSparseBooleanArray();
-    public android.util.SparseIntArray readSparseIntArray();
-    public java.lang.String readString();
-    public void readStringArray(java.lang.String[]);
-    public java.lang.String[] readStringArray();
-    public void readStringList(java.util.List);
-    public java.lang.String readStringNoHelper();
-    public android.os.IBinder readStrongBinder();
-    public void readTypedArray(java.lang.Object[], android.os.Parcelable$Creator);
-    public java.lang.Object[] readTypedArray(android.os.Parcelable$Creator);
-    public void readTypedList(java.util.List, android.os.Parcelable$Creator);
-    public java.lang.Object readTypedObject(android.os.Parcelable$Creator);
-    public java.lang.Object readValue(java.lang.ClassLoader);
-    public void recycle();
-    public void restoreAllowFds(boolean);
-    public void setClassCookie(java.lang.Class, java.lang.Object);
-    public void setDataCapacity(int);
-    public void setDataPosition(int);
-    public void setDataSize(int);
-    public void setReadWriteHelper(android.os.Parcel$ReadWriteHelper);
-    public static void setStackTraceParceling(boolean);
-    public void unmarshall(byte[], int, int);
-    public void writeArray(java.lang.Object[]);
-    public void writeArrayMap(android.util.ArrayMap);
-    public void writeArraySet(android.util.ArraySet);
-    public void writeBinderArray(android.os.IBinder[]);
-    public void writeBinderList(java.util.List);
-    public void writeBlob(byte[]);
-    public void writeBlob(byte[], int, int);
-    public void writeBoolean(boolean);
-    public void writeBooleanArray(boolean[]);
-    public void writeBundle(android.os.Bundle);
-    public void writeByte(byte);
-    public void writeByteArray(byte[]);
-    public void writeByteArray(byte[], int, int);
-    public void writeCharArray(char[]);
-    public void writeCharSequence(java.lang.CharSequence);
-    public void writeCharSequenceArray(java.lang.CharSequence[]);
-    public void writeCharSequenceList(java.util.ArrayList);
-    public void writeDouble(double);
-    public void writeDoubleArray(double[]);
-    public void writeException(java.lang.Exception);
-    public void writeFileDescriptor(java.io.FileDescriptor);
-    public void writeFloat(float);
-    public void writeFloatArray(float[]);
-    public void writeInt(int);
-    public void writeIntArray(int[]);
-    public void writeInterfaceToken(java.lang.String);
-    public void writeList(java.util.List);
-    public void writeLong(long);
-    public void writeLongArray(long[]);
-    public void writeMap(java.util.Map);
-    public void writeNoException();
-    public void writeParcelable(android.os.Parcelable, int);
-    public void writeParcelableArray(android.os.Parcelable[], int);
-    public void writeParcelableCreator(android.os.Parcelable);
-    public void writeParcelableList(java.util.List, int);
-    public void writePersistableBundle(android.os.PersistableBundle);
-    public void writeRawFileDescriptor(java.io.FileDescriptor);
-    public void writeRawFileDescriptorArray(java.io.FileDescriptor[]);
-    public void writeSerializable(java.io.Serializable);
-    public void writeSize(android.util.Size);
-    public void writeSizeF(android.util.SizeF);
-    public void writeSparseArray(android.util.SparseArray);
-    public void writeSparseBooleanArray(android.util.SparseBooleanArray);
-    public void writeSparseIntArray(android.util.SparseIntArray);
-    public void writeString(java.lang.String);
-    public void writeStringArray(java.lang.String[]);
-    public void writeStringList(java.util.List);
-    public void writeStringNoHelper(java.lang.String);
-    public void writeStrongBinder(android.os.IBinder);
-    public void writeStrongInterface(android.os.IInterface);
-    public void writeTypedArray(android.os.Parcelable[], int);
-    public void writeTypedList(java.util.List);
-    public void writeTypedList(java.util.List, int);
-    public void writeTypedObject(android.os.Parcelable, int);
-    public void writeValue(java.lang.Object);
-
-
-    public static android.os.Parcelable$Creator STRING_CREATOR;
-}
-
--keep class android.os.Parcel$ReadWriteHelper {
-    <init>();
-
-    public java.lang.String readString(android.os.Parcel);
-    public void writeString(android.os.Parcel, java.lang.String);
-
-
-    public static android.os.Parcel$ReadWriteHelper DEFAULT;
-}
-
--keep class android.os.ParcelFileDescriptor {
-    <init>(android.os.ParcelFileDescriptor);
-    <init>(java.io.FileDescriptor);
-    <init>(java.io.FileDescriptor, java.io.FileDescriptor);
-
-    public static android.os.ParcelFileDescriptor adoptFd(int);
-    public boolean canDetectErrors();
-    public void checkError();
-    public void close();
-    public void closeWithError(java.lang.String);
-    public static android.os.ParcelFileDescriptor[] createPipe();
-    public static android.os.ParcelFileDescriptor[] createReliablePipe();
-    public static android.os.ParcelFileDescriptor[] createReliableSocketPair();
-    public static android.os.ParcelFileDescriptor[] createReliableSocketPair(int);
-    public static android.os.ParcelFileDescriptor[] createSocketPair();
-    public static android.os.ParcelFileDescriptor[] createSocketPair(int);
-    public int describeContents();
-    public int detachFd();
-    public static android.os.ParcelFileDescriptor dup(java.io.FileDescriptor);
-    public android.os.ParcelFileDescriptor dup();
-    protected void finalize();
-    public static android.os.ParcelFileDescriptor fromData(byte[], java.lang.String);
-    public static android.os.ParcelFileDescriptor fromDatagramSocket(java.net.DatagramSocket);
-    public static android.os.ParcelFileDescriptor fromFd(java.io.FileDescriptor, android.os.Handler, android.os.ParcelFileDescriptor$OnCloseListener);
-    public static android.os.ParcelFileDescriptor fromFd(int);
-    public static android.os.ParcelFileDescriptor fromSocket(java.net.Socket);
-    public int getFd();
-    public static java.io.File getFile(java.io.FileDescriptor);
-    public java.io.FileDescriptor getFileDescriptor();
-    public long getStatSize();
-    public static android.os.ParcelFileDescriptor open(java.io.File, int);
-    public static android.os.ParcelFileDescriptor open(java.io.File, int, android.os.Handler, android.os.ParcelFileDescriptor$OnCloseListener);
-    public static int parseMode(java.lang.String);
-    public void releaseResources();
-    public long seekTo(long);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int MODE_APPEND;
-    public static int MODE_CREATE;
-    public static int MODE_READ_ONLY;
-    public static int MODE_READ_WRITE;
-    public static int MODE_TRUNCATE;
-    public static int MODE_WORLD_READABLE;
-    public static int MODE_WORLD_WRITEABLE;
-    public static int MODE_WRITE_ONLY;
-}
-
--keep class android.os.ParcelFileDescriptor$OnCloseListener {
-
-    public abstract void onClose(java.io.IOException);
-
-
-}
-
--keep class android.os.Parcelable {
-
-    public abstract int describeContents();
-    public abstract void writeToParcel(android.os.Parcel, int);
-
-
-    public static int CONTENTS_FILE_DESCRIPTOR;
-    public static int PARCELABLE_ELIDE_DUPLICATES;
-    public static int PARCELABLE_WRITE_RETURN_VALUE;
-}
-
--keep class android.os.Parcelable$ClassLoaderCreator {
-
-    public abstract java.lang.Object createFromParcel(android.os.Parcel, java.lang.ClassLoader);
-
-
-}
-
--keep class android.os.Parcelable$Creator {
-
-    public abstract java.lang.Object createFromParcel(android.os.Parcel);
-    public abstract java.lang.Object[] newArray(int);
-
-
-}
-
--keep class android.os.PatternMatcher {
-    <init>(java.lang.String, int);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public java.lang.String getPath();
-    public int getType();
-    public boolean match(java.lang.String);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int PATTERN_ADVANCED_GLOB;
-    public static int PATTERN_LITERAL;
-    public static int PATTERN_PREFIX;
-    public static int PATTERN_SIMPLE_GLOB;
-}
-
--keep class android.os.PersistableBundle {
-    <init>();
-    <init>(int);
-    <init>(android.os.PersistableBundle);
-    <init>(android.os.Bundle);
-
-    public java.lang.Object clone();
-    public android.os.PersistableBundle deepCopy();
-    public int describeContents();
-    public static android.os.PersistableBundle forPair(java.lang.String, java.lang.String);
-    public android.os.PersistableBundle getPersistableBundle(java.lang.String);
-    public static boolean isValidType(java.lang.Object);
-    public void putPersistableBundle(java.lang.String, android.os.PersistableBundle);
-    public static android.os.PersistableBundle restoreFromXml(org.xmlpull.v1.XmlPullParser);
-    public void saveToXml(org.xmlpull.v1.XmlSerializer);
-    public synchronized java.lang.String toShortString();
-    public synchronized java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-    public void writeUnknownObject(java.lang.Object, java.lang.String, org.xmlpull.v1.XmlSerializer);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.os.PersistableBundle EMPTY;
-}
-
--keep class android.os.RemoteException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable, boolean, boolean);
-
-    public java.lang.RuntimeException rethrowAsRuntimeException();
-    public java.lang.RuntimeException rethrowFromSystemServer();
-
-
-}
-
--keep class android.os.ResultReceiver {
-    <init>(android.os.Handler);
-
-    public int describeContents();
-    protected void onReceiveResult(int, android.os.Bundle);
-    public void send(int, android.os.Bundle);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.os.ShellCallback {
-    <init>();
-
-    public int describeContents();
-    public android.os.ParcelFileDescriptor onOpenFile(java.lang.String, java.lang.String, java.lang.String);
-    public android.os.ParcelFileDescriptor openFile(java.lang.String, java.lang.String, java.lang.String);
-    public static void writeToParcel(android.os.ShellCallback, android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.os.ShellCommand {
-    <init>();
-
-    public android.os.ResultReceiver adoptResultReceiver();
-    public int exec(android.os.Binder, java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor, java.lang.String[], android.os.ShellCallback, android.os.ResultReceiver);
-    public java.io.InputStream getBufferedInputStream();
-    public java.io.FileDescriptor getErrFileDescriptor();
-    public java.io.PrintWriter getErrPrintWriter();
-    public java.io.FileDescriptor getInFileDescriptor();
-    public java.lang.String getNextArg();
-    public java.lang.String getNextArgRequired();
-    public java.lang.String getNextOption();
-    public java.io.FileDescriptor getOutFileDescriptor();
-    public java.io.PrintWriter getOutPrintWriter();
-    public java.io.OutputStream getRawErrorStream();
-    public java.io.InputStream getRawInputStream();
-    public java.io.OutputStream getRawOutputStream();
-    public android.os.ShellCallback getShellCallback();
-    public int handleDefaultCommands(java.lang.String);
-    public void init(android.os.Binder, java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor, java.lang.String[], android.os.ShellCallback, int);
-    public abstract int onCommand(java.lang.String);
-    public abstract void onHelp();
-    public android.os.ParcelFileDescriptor openFileForSystem(java.lang.String, java.lang.String);
-    public java.lang.String peekNextArg();
-
-
-}
-
--keep class android.os.StrictMode {
-
-    public static android.os.StrictMode$ThreadPolicy allowThreadDiskReads();
-    public static int allowThreadDiskReadsMask();
-    public static android.os.StrictMode$ThreadPolicy allowThreadDiskWrites();
-    public static int allowThreadDiskWritesMask();
-    public static void conditionallyCheckInstanceCounts();
-    public static void decrementExpectedActivityCount(java.lang.Class);
-    public static void disableDeathOnFileUriExposure();
-    public static void enableDeathOnFileUriExposure();
-    public static void enableDefaults();
-    public static android.os.StrictMode$Span enterCriticalSpan(java.lang.String);
-    public static android.os.StrictMode$ThreadPolicy getThreadPolicy();
-    public static int getThreadPolicyMask();
-    public static android.os.StrictMode$VmPolicy getVmPolicy();
-    public static void incrementExpectedActivityCount(java.lang.Class);
-    public static void initThreadDefaults(android.content.pm.ApplicationInfo);
-    public static void initVmDefaults(android.content.pm.ApplicationInfo);
-    public static boolean isBundledSystemApp(android.content.pm.ApplicationInfo);
-    public static void noteDiskRead();
-    public static void noteDiskWrite();
-    public static void noteResourceMismatch(java.lang.Object);
-    public static void noteSlowCall(java.lang.String);
-    public static void noteUnbufferedIO();
-    public static void onCleartextNetworkDetected(byte[]);
-    public static void onContentUriWithoutPermission(android.net.Uri, java.lang.String);
-    public static void onFileUriExposed(android.net.Uri, java.lang.String);
-    public static void onIntentReceiverLeaked(java.lang.Throwable);
-    public static void onServiceConnectionLeaked(java.lang.Throwable);
-    public static void onSqliteObjectLeaked(java.lang.String, java.lang.Throwable);
-    public static void onUntaggedSocket();
-    public static void onVmPolicyViolation(android.os.strictmode.Violation);
-    public static void onVmPolicyViolation(android.os.strictmode.Violation, boolean);
-    public static void onWebViewMethodCalledOnWrongThread(java.lang.Throwable);
-    public static void setThreadPolicy(android.os.StrictMode$ThreadPolicy);
-    public static void setThreadPolicyMask(int);
-    public static void setViolationLogger(android.os.StrictMode$ViolationLogger);
-    public static void setVmPolicy(android.os.StrictMode$VmPolicy);
-    public static java.lang.Object trackActivity(java.lang.Object);
-    public static boolean vmCleartextNetworkEnabled();
-    public static boolean vmClosableObjectLeaksEnabled();
-    public static boolean vmContentUriWithoutPermissionEnabled();
-    public static boolean vmFileUriExposureEnabled();
-    public static boolean vmRegistrationLeaksEnabled();
-    public static boolean vmSqliteObjectLeaksEnabled();
-    public static boolean vmUntaggedSocketEnabled();
-
-
-    public static java.lang.String CLEARTEXT_DETECTED_MSG;
-    public static int DETECT_CUSTOM;
-    public static int DETECT_DISK_READ;
-    public static int DETECT_DISK_WRITE;
-    public static int DETECT_EXPLICIT_GC;
-    public static int DETECT_NETWORK;
-    public static int DETECT_RESOURCE_MISMATCH;
-    public static int DETECT_UNBUFFERED_IO;
-    public static int DETECT_VM_ACTIVITY_LEAKS;
-    public static int DETECT_VM_CLEARTEXT_NETWORK;
-    public static int DETECT_VM_CLOSABLE_LEAKS;
-    public static int DETECT_VM_CONTENT_URI_WITHOUT_PERMISSION;
-    public static int DETECT_VM_CURSOR_LEAKS;
-    public static int DETECT_VM_FILE_URI_EXPOSURE;
-    public static int DETECT_VM_INSTANCE_LEAKS;
-    public static int DETECT_VM_NON_SDK_API_USAGE;
-    public static int DETECT_VM_REGISTRATION_LEAKS;
-    public static int DETECT_VM_UNTAGGED_SOCKET;
-    public static java.lang.String DISABLE_PROPERTY;
-    public static int NETWORK_POLICY_ACCEPT;
-    public static int NETWORK_POLICY_LOG;
-    public static int NETWORK_POLICY_REJECT;
-    public static int PENALTY_DEATH;
-    public static int PENALTY_DEATH_ON_CLEARTEXT_NETWORK;
-    public static int PENALTY_DEATH_ON_FILE_URI_EXPOSURE;
-    public static int PENALTY_DEATH_ON_NETWORK;
-    public static int PENALTY_DIALOG;
-    public static int PENALTY_DROPBOX;
-    public static int PENALTY_FLASH;
-    public static int PENALTY_GATHER;
-    public static int PENALTY_LOG;
-    public static java.lang.String VISUAL_PROPERTY;
-}
-
--keep class android.os.StrictMode$Span {
-    <init>();
-
-    public void finish();
-
-
-}
-
--keep class android.os.StrictMode$ThreadPolicy {
-
-    public java.lang.String toString();
-
-
-    public static android.os.StrictMode$ThreadPolicy LAX;
-}
-
--keep class android.os.StrictMode$ViolationInfo {
-    <init>(android.os.Parcel);
-    <init>(android.os.Parcel, boolean);
-
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public int getPolicyMask();
-    public java.lang.String getStackTrace();
-    public int getViolationBit();
-    public java.lang.String getViolationDetails();
-    public int hashCode();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String broadcastIntentAction;
-    public int durationMillis;
-    public int numAnimationsRunning;
-    public long numInstances;
-    public java.lang.String[] tags;
-    public int violationNumThisLoop;
-    public long violationUptimeMillis;
-}
-
--keep class android.os.StrictMode$ViolationLogger {
-
-    public abstract void log(android.os.StrictMode$ViolationInfo);
-
-
-}
-
--keep class android.os.StrictMode$VmPolicy {
-
-    public java.lang.String toString();
-
-
-    public static android.os.StrictMode$VmPolicy LAX;
-}
-
--keep class android.os.TestLooperManager {
-    <init>(android.os.Looper);
-
-    public void execute(android.os.Message);
-    public android.os.MessageQueue getMessageQueue();
-    public android.os.MessageQueue getQueue();
-    public boolean hasMessages(android.os.Handler, java.lang.Object, int);
-    public boolean hasMessages(android.os.Handler, java.lang.Object, java.lang.Runnable);
-    public android.os.Message next();
-    public void recycle(android.os.Message);
-    public void release();
-
-
-}
-
--keep class android.os.TransactionTracker {
-
-    public void addTrace(java.lang.Throwable);
-    public void clearTraces();
-    public void writeTracesToFile(android.os.ParcelFileDescriptor);
-
-
-}
-
--keep class android.os.UserHandle {
-    <init>(int);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static void formatUid(java.lang.StringBuilder, int);
-    public static java.lang.String formatUid(int);
-    public static void formatUid(java.io.PrintWriter, int);
-    public static int getAppId(int);
-    public static int getAppIdFromSharedAppGid(int);
-    public static int getCacheAppGid(int);
-    public static int getCacheAppGid(int, int);
-    public static int getCallingAppId();
-    public static int getCallingUserId();
-    public int getIdentifier();
-    public static int getSharedAppGid(int);
-    public static int getSharedAppGid(int, int);
-    public static int getUid(int, int);
-    public static int getUserGid(int);
-    public static android.os.UserHandle getUserHandleForUid(int);
-    public static int getUserId(int);
-    public int hashCode();
-    public static boolean isApp(int);
-    public static boolean isCore(int);
-    public static boolean isIsolated(int);
-    public boolean isOwner();
-    public static boolean isSameApp(int, int);
-    public static boolean isSameUser(int, int);
-    public boolean isSystem();
-    public static int myUserId();
-    public static android.os.UserHandle of(int);
-    public static int parseUserArg(java.lang.String);
-    public static android.os.UserHandle readFromParcel(android.os.Parcel);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public static void writeToParcel(android.os.UserHandle, android.os.Parcel);
-
-
-    public static int AID_APP_END;
-    public static int AID_APP_START;
-    public static int AID_CACHE_GID_START;
-    public static int AID_ROOT;
-    public static int AID_SHARED_GID_START;
-    public static android.os.UserHandle ALL;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.os.UserHandle CURRENT;
-    public static android.os.UserHandle CURRENT_OR_SELF;
-    public static int ERR_GID;
-    public static boolean MU_ENABLED;
-    public static android.os.UserHandle OWNER;
-    public static int PER_USER_RANGE;
-    public static android.os.UserHandle SYSTEM;
-    public static int USER_ALL;
-    public static int USER_CURRENT;
-    public static int USER_CURRENT_OR_SELF;
-    public static int USER_NULL;
-    public static int USER_OWNER;
-    public static int USER_SERIAL_SYSTEM;
-    public static int USER_SYSTEM;
-}
-
--keep class android.os.VibrationEffect {
-    <init>();
-
-    public static android.os.VibrationEffect createOneShot(long, int);
-    public static android.os.VibrationEffect createWaveform(long[], int);
-    public static android.os.VibrationEffect createWaveform(long[], int[], int);
-    public int describeContents();
-    public static android.os.VibrationEffect get(int);
-    public static android.os.VibrationEffect get(int, boolean);
-    public static android.os.VibrationEffect get(android.net.Uri, android.content.Context);
-    public abstract long getDuration();
-    protected static int scale(int, float, int);
-    public abstract void validate();
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DEFAULT_AMPLITUDE;
-    public static int EFFECT_CLICK;
-    public static int EFFECT_DOUBLE_CLICK;
-    public static int EFFECT_HEAVY_CLICK;
-    public static int EFFECT_POP;
-    public static int EFFECT_THUD;
-    public static int EFFECT_TICK;
-    public static int MAX_AMPLITUDE;
-    public static int[] RINGTONES;
-}
-
--keep class android.os.Vibrator {
-    <init>();
-    <init>(android.content.Context);
-
-    public abstract void cancel();
-    public int getDefaultHapticFeedbackIntensity();
-    public int getDefaultNotificationVibrationIntensity();
-    public abstract boolean hasAmplitudeControl();
-    public abstract boolean hasVibrator();
-    public void vibrate(long);
-    public void vibrate(long, android.media.AudioAttributes);
-    public void vibrate(long[], int);
-    public void vibrate(long[], int, android.media.AudioAttributes);
-    public void vibrate(android.os.VibrationEffect);
-    public void vibrate(android.os.VibrationEffect, android.media.AudioAttributes);
-    public abstract void vibrate(int, java.lang.String, android.os.VibrationEffect, android.media.AudioAttributes);
-
-
-    public static int VIBRATION_INTENSITY_HIGH;
-    public static int VIBRATION_INTENSITY_LOW;
-    public static int VIBRATION_INTENSITY_MEDIUM;
-    public static int VIBRATION_INTENSITY_OFF;
-}
-
--keep class android.os.WorkSource {
-    <init>();
-    <init>(android.os.WorkSource);
-    <init>(int);
-    <init>(int, java.lang.String);
-
-    public boolean add(android.os.WorkSource);
-    public boolean add(int);
-    public boolean add(int, java.lang.String);
-    public android.os.WorkSource addReturningNewbs(android.os.WorkSource);
-    public void clear();
-    public void clearNames();
-    public android.os.WorkSource$WorkChain createWorkChain();
-    public int describeContents();
-    public boolean diff(android.os.WorkSource);
-    public static java.util.ArrayList[] diffChains(android.os.WorkSource, android.os.WorkSource);
-    public boolean equals(java.lang.Object);
-    public int get(int);
-    public java.lang.String getName(int);
-    public java.util.ArrayList getWorkChains();
-    public int hashCode();
-    public static boolean isChainedBatteryAttributionEnabled(android.content.Context);
-    public boolean isEmpty();
-    public boolean remove(android.os.WorkSource);
-    public void set(android.os.WorkSource);
-    public void set(int);
-    public void set(int, java.lang.String);
-    public android.os.WorkSource[] setReturningDiffs(android.os.WorkSource);
-    public int size();
-    public java.lang.String toString();
-    public void transferWorkChains(android.os.WorkSource);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.os.WorkSource$WorkChain {
-    <init>();
-    <init>(android.os.WorkSource$WorkChain);
-
-    public android.os.WorkSource$WorkChain addNode(int, java.lang.String);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public java.lang.String getAttributionTag();
-    public int getAttributionUid();
-    public int getSize();
-    public java.lang.String[] getTags();
-    public int[] getUids();
-    public int hashCode();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.os.storage.DiskInfo {
-    <init>(java.lang.String, int);
-    <init>(android.os.Parcel);
-
-    public android.os.storage.DiskInfo clone();
-    public java.lang.Object clone();
-    public int describeContents();
-    public void dump(com.android.internal.util.IndentingPrintWriter);
-    public boolean equals(java.lang.Object);
-    public java.lang.String getDescription();
-    public java.lang.String getId();
-    public java.lang.String getShortDescription();
-    public int hashCode();
-    public boolean isAdoptable();
-    public boolean isDefaultPrimary();
-    public boolean isSd();
-    public boolean isUsb();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static java.lang.String ACTION_DISK_SCANNED;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_DISK_ID;
-    public static java.lang.String EXTRA_VOLUME_COUNT;
-    public static int FLAG_ADOPTABLE;
-    public static int FLAG_DEFAULT_PRIMARY;
-    public static int FLAG_SD;
-    public static int FLAG_USB;
-    public int flags;
-    public java.lang.String id;
-    public java.lang.String label;
-    public long size;
-    public java.lang.String sysPath;
-    public int volumeCount;
-}
-
--keep class android.os.storage.StorageVolume {
-    <init>(java.lang.String, java.io.File, java.io.File, java.lang.String, boolean, boolean, boolean, boolean, long, android.os.UserHandle, java.lang.String, java.lang.String);
-
-    public boolean allowMassStorage();
-    public android.content.Intent createAccessIntent(java.lang.String);
-    public int describeContents();
-    public java.lang.String dump();
-    public void dump(com.android.internal.util.IndentingPrintWriter);
-    public boolean equals(java.lang.Object);
-    public java.lang.String getDescription(android.content.Context);
-    public int getFatVolumeId();
-    public java.lang.String getId();
-    public java.lang.String getInternalPath();
-    public long getMaxFileSize();
-    public android.os.UserHandle getOwner();
-    public java.lang.String getPath();
-    public java.io.File getPathFile();
-    public java.lang.String getState();
-    public java.lang.String getUserLabel();
-    public java.lang.String getUuid();
-    public int hashCode();
-    public boolean isEmulated();
-    public boolean isPrimary();
-    public boolean isRemovable();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_DIRECTORY_NAME;
-    public static java.lang.String EXTRA_STORAGE_VOLUME;
-    public static int STORAGE_ID_INVALID;
-    public static int STORAGE_ID_PRIMARY;
-}
-
--keep class android.os.storage.VolumeInfo {
-    <init>(java.lang.String, int, android.os.storage.DiskInfo, java.lang.String);
-    <init>(android.os.Parcel);
-
-    public android.content.Intent buildBrowseIntent();
-    public android.content.Intent buildBrowseIntentForUser(int);
-    public static int buildStableMtpStorageId(java.lang.String);
-    public android.os.storage.StorageVolume buildStorageVolume(android.content.Context, int, boolean);
-    public android.os.storage.VolumeInfo clone();
-    public java.lang.Object clone();
-    public int describeContents();
-    public void dump(com.android.internal.util.IndentingPrintWriter);
-    public boolean equals(java.lang.Object);
-    public static java.lang.String getBroadcastForEnvironment(java.lang.String);
-    public static java.lang.String getBroadcastForState(int);
-    public java.lang.String getDescription();
-    public static java.util.Comparator getDescriptionComparator();
-    public android.os.storage.DiskInfo getDisk();
-    public java.lang.String getDiskId();
-    public static java.lang.String getEnvironmentForState(int);
-    public java.lang.String getFsUuid();
-    public java.lang.String getId();
-    public java.io.File getInternalPath();
-    public java.io.File getInternalPathForUser(int);
-    public int getMountUserId();
-    public java.io.File getPath();
-    public java.io.File getPathForUser(int);
-    public int getState();
-    public int getStateDescription();
-    public int getType();
-    public int hashCode();
-    public boolean isMountedReadable();
-    public boolean isMountedWritable();
-    public boolean isPrimary();
-    public boolean isPrimaryPhysical();
-    public boolean isVisible();
-    public boolean isVisibleForRead(int);
-    public boolean isVisibleForUser(int);
-    public boolean isVisibleForWrite(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static java.lang.String ACTION_VOLUME_STATE_CHANGED;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_VOLUME_ID;
-    public static java.lang.String EXTRA_VOLUME_STATE;
-    public static java.lang.String ID_EMULATED_INTERNAL;
-    public static java.lang.String ID_PRIVATE_INTERNAL;
-    public static int MOUNT_FLAG_PRIMARY;
-    public static int MOUNT_FLAG_VISIBLE;
-    public static int STATE_BAD_REMOVAL;
-    public static int STATE_CHECKING;
-    public static int STATE_EJECTING;
-    public static int STATE_FORMATTING;
-    public static int STATE_MOUNTED;
-    public static int STATE_MOUNTED_READ_ONLY;
-    public static int STATE_REMOVED;
-    public static int STATE_UNMOUNTABLE;
-    public static int STATE_UNMOUNTED;
-    public static int TYPE_ASEC;
-    public static int TYPE_EMULATED;
-    public static int TYPE_OBB;
-    public static int TYPE_PRIVATE;
-    public static int TYPE_PUBLIC;
-    public android.os.storage.DiskInfo disk;
-    public java.lang.String fsLabel;
-    public java.lang.String fsType;
-    public java.lang.String fsUuid;
-    public java.lang.String id;
-    public java.lang.String internalPath;
-    public int mountFlags;
-    public int mountUserId;
-    public java.lang.String partGuid;
-    public java.lang.String path;
-    public int state;
-    public int type;
-}
-
--keep class android.os.strictmode.Violation {
-
-
-
-}
-
--keep class android.service.autofill.FieldClassification {
-    <init>(java.util.ArrayList);
-
-    public java.util.List getMatches();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.service.autofill.FieldClassification$Match {
-    <init>(java.lang.String, float);
-
-    public java.lang.String getCategoryId();
-    public float getScore();
-    public java.lang.String toString();
-
-
-}
-
--keep class android.service.autofill.FillEventHistory {
-    <init>(int, android.os.Bundle);
-
-    public void addEvent(android.service.autofill.FillEventHistory$Event);
-    public int describeContents();
-    public android.os.Bundle getClientState();
-    public java.util.List getEvents();
-    public int getSessionId();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.service.autofill.FillEventHistory$Event {
-    <init>(int, java.lang.String, android.os.Bundle, java.util.List, android.util.ArraySet, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList, android.view.autofill.AutofillId[], android.service.autofill.FieldClassification[]);
-
-    public java.util.Map getChangedFields();
-    public android.os.Bundle getClientState();
-    public java.lang.String getDatasetId();
-    public java.util.Map getFieldsClassification();
-    public java.util.Set getIgnoredDatasetIds();
-    public java.util.Map getManuallyEnteredField();
-    public java.util.Set getSelectedDatasetIds();
-    public int getType();
-    public java.lang.String toString();
-
-
-    public static int TYPE_AUTHENTICATION_SELECTED;
-    public static int TYPE_CONTEXT_COMMITTED;
-    public static int TYPE_DATASET_AUTHENTICATION_SELECTED;
-    public static int TYPE_DATASET_SELECTED;
-    public static int TYPE_SAVE_SHOWN;
-}
-
--keep class android.service.autofill.UserData {
-
-    public int describeContents();
-    public void dump(java.lang.String, java.io.PrintWriter);
-    public static void dumpConstraints(java.lang.String, java.io.PrintWriter);
-    public android.os.Bundle getAlgorithmArgs();
-    public java.lang.String[] getCategoryIds();
-    public java.lang.String getFieldClassificationAlgorithm();
-    public java.lang.String getId();
-    public static int getMaxCategoryCount();
-    public static int getMaxFieldClassificationIdsSize();
-    public static int getMaxUserDataSize();
-    public static int getMaxValueLength();
-    public static int getMinValueLength();
-    public java.lang.String[] getValues();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.service.voice.IVoiceInteractionSession {
-
-    public abstract void closeSystemDialogs();
-    public abstract void destroy();
-    public abstract void handleAssist(android.os.Bundle, android.app.assist.AssistStructure, android.app.assist.AssistContent, int, int);
-    public abstract void handleScreenshot(android.graphics.Bitmap);
-    public abstract void hide();
-    public abstract void onLockscreenShown();
-    public abstract void show(android.os.Bundle, int, com.android.internal.app.IVoiceInteractionSessionShowCallback);
-    public abstract void taskFinished(android.content.Intent, int);
-    public abstract void taskStarted(android.content.Intent, int);
-
-
-}
-
--keep class android.support.car.Car {
-
-    public void connect();
-    public static android.support.car.Car createCar(android.content.Context, android.support.car.CarConnectionCallback, android.os.Handler);
-    public static android.support.car.Car createCar(android.content.Context, android.support.car.CarConnectionCallback);
-    public void disconnect();
-    public java.lang.Object getCarManager(java.lang.String);
-    public java.lang.Object getCarManager(java.lang.Class);
-    public boolean isConnected();
-    public boolean isConnecting();
-
-
-    public static java.lang.String APP_FOCUS_SERVICE;
-    public static java.lang.String AUDIO_SERVICE;
-    public static java.lang.String INFO_SERVICE;
-    public static java.lang.String NAVIGATION_STATUS_SERVICE;
-    public static java.lang.String PERMISSION_CAR_NAVIGATION_MANAGER;
-    public static java.lang.String PERMISSION_VENDOR_EXTENSION;
-    public static java.lang.String SENSOR_SERVICE;
-}
-
--keep class android.support.car.CarAppFocusManager {
-    <init>();
-
-    public abstract void abandonAppFocus(android.support.car.CarAppFocusManager$OnAppFocusOwnershipCallback, int);
-    public abstract void abandonAppFocus(android.support.car.CarAppFocusManager$OnAppFocusOwnershipCallback);
-    public abstract void addFocusListener(android.support.car.CarAppFocusManager$OnAppFocusChangedListener, int);
-    public abstract boolean isOwningFocus(int, android.support.car.CarAppFocusManager$OnAppFocusOwnershipCallback);
-    public abstract void removeFocusListener(android.support.car.CarAppFocusManager$OnAppFocusChangedListener, int);
-    public abstract void removeFocusListener(android.support.car.CarAppFocusManager$OnAppFocusChangedListener);
-    public abstract int requestAppFocus(int, android.support.car.CarAppFocusManager$OnAppFocusOwnershipCallback);
-
-
-    public static int APP_FOCUS_REQUEST_FAILED;
-    public static int APP_FOCUS_REQUEST_SUCCEEDED;
-    public static int APP_FOCUS_TYPE_NAVIGATION;
-}
-
--keep class android.support.car.CarAppFocusManager$OnAppFocusChangedListener {
-
-    public abstract void onAppFocusChanged(android.support.car.CarAppFocusManager, int, boolean);
-
-
-}
-
--keep class android.support.car.CarAppFocusManager$OnAppFocusOwnershipCallback {
-
-    public abstract void onAppFocusOwnershipGranted(android.support.car.CarAppFocusManager, int);
-    public abstract void onAppFocusOwnershipLost(android.support.car.CarAppFocusManager, int);
-
-
-}
-
--keep class android.support.car.CarConnectionCallback {
-    <init>();
-
-    public abstract void onConnected(android.support.car.Car);
-    public abstract void onDisconnected(android.support.car.Car);
-
-
-}
-
--keep class android.support.car.CarInfoManager {
-    <init>();
-
-    public abstract int getDriverPosition();
-    public abstract float getEvBatteryCapacity();
-    public abstract int[] getEvConnectorTypes();
-    public abstract float getFuelCapacity();
-    public abstract int[] getFuelTypes();
-    public abstract java.lang.String getHeadunitManufacturer();
-    public abstract java.lang.String getHeadunitModel();
-    public abstract java.lang.String getHeadunitSoftwareBuild();
-    public abstract java.lang.String getHeadunitSoftwareVersion();
-    public abstract java.lang.String getManufacturer();
-    public abstract java.lang.String getModel();
-    public abstract java.lang.String getModelYear();
-    public abstract java.lang.String getVehicleId();
-
-
-    public static int DRIVER_SIDE_CENTER;
-    public static int DRIVER_SIDE_LEFT;
-    public static int DRIVER_SIDE_RIGHT;
-    public static int DRIVER_SIDE_UNKNOWN;
-}
-
--keep class android.support.car.CarNotConnectedException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Exception);
-
-
-
-}
-
--keep class android.support.car.annotation.ValueTypeDef {
-
-
-
-}
-
--keep class android.support.car.annotation.VersionDef {
-
-
-
-}
-
--keep class android.support.car.hardware.CarSensorEvent {
-
-    public android.support.car.hardware.CarSensorEvent$CompassData getCompassData();
-    public android.support.car.hardware.CarSensorEvent$DrivingStatusData getDrivingStatusData();
-    public android.support.car.hardware.CarSensorEvent$NightData getNightData();
-    public android.support.car.hardware.CarSensorEvent$ParkingBrakeData getParkingBrakeData();
-
-
-    public static int DRIVE_STATUS_FULLY_RESTRICTED;
-    public static int DRIVE_STATUS_LIMIT_MESSAGE_LEN;
-    public static int DRIVE_STATUS_NO_CONFIG;
-    public static int DRIVE_STATUS_NO_KEYBOARD_INPUT;
-    public static int DRIVE_STATUS_NO_VIDEO;
-    public static int DRIVE_STATUS_NO_VOICE_INPUT;
-    public static int DRIVE_STATUS_UNRESTRICTED;
-    public static int INDEX_COMPASS_BEARING;
-    public static int INDEX_COMPASS_PITCH;
-    public static int INDEX_COMPASS_ROLL;
-    public static int INDEX_WHEEL_DISTANCE_FRONT_LEFT;
-    public static int INDEX_WHEEL_DISTANCE_FRONT_RIGHT;
-    public static int INDEX_WHEEL_DISTANCE_REAR_LEFT;
-    public static int INDEX_WHEEL_DISTANCE_REAR_RIGHT;
-    public static int INDEX_WHEEL_DISTANCE_RESET_COUNT;
-    public float[] floatValues;
-    public int[] intValues;
-    public long[] longValues;
-    public int sensorType;
-    public long timestamp;
-}
-
--keep class android.support.car.hardware.CarSensorEvent$CompassData {
-
-
-
-    public float bearing;
-    public float pitch;
-    public float roll;
-    public long timestamp;
-}
-
--keep class android.support.car.hardware.CarSensorEvent$DrivingStatusData {
-
-    public boolean isConfigurationRestricted();
-    public boolean isFullyRestricted();
-    public boolean isKeyboardRestricted();
-    public boolean isMessageLengthRestricted();
-    public boolean isVideoRestricted();
-    public boolean isVoiceRestricted();
-
-
-    public int status;
-    public long timestamp;
-}
-
--keep class android.support.car.hardware.CarSensorEvent$NightData {
-
-
-
-    public boolean isNightMode;
-    public long timestamp;
-}
-
--keep class android.support.car.hardware.CarSensorEvent$ParkingBrakeData {
-
-
-
-    public boolean isEngaged;
-    public long timestamp;
-}
-
--keep class android.support.car.hardware.CarSensorManager {
-    <init>();
-
-    public abstract boolean addListener(android.support.car.hardware.CarSensorManager$OnSensorChangedListener, int, int);
-    public abstract android.support.car.hardware.CarSensorEvent getLatestSensorEvent(int);
-    public abstract int[] getSupportedSensors();
-    public abstract boolean isSensorSupported(int);
-    public abstract void removeListener(android.support.car.hardware.CarSensorManager$OnSensorChangedListener);
-    public abstract void removeListener(android.support.car.hardware.CarSensorManager$OnSensorChangedListener, int);
-
-
-    public static int SENSOR_RATE_FASTEST;
-    public static int SENSOR_RATE_NORMAL;
-    public static int SENSOR_TYPE_ABS_ACTIVE;
-    public static int SENSOR_TYPE_COMPASS;
-    public static int SENSOR_TYPE_DRIVING_STATUS;
-    public static int SENSOR_TYPE_EV_BATTERY_CHARGE_RATE;
-    public static int SENSOR_TYPE_EV_BATTERY_LEVEL;
-    public static int SENSOR_TYPE_EV_CHARGE_PORT_CONNECTED;
-    public static int SENSOR_TYPE_EV_CHARGE_PORT_OPEN;
-    public static int SENSOR_TYPE_FUEL_DOOR_OPEN;
-    public static int SENSOR_TYPE_NIGHT;
-    public static int SENSOR_TYPE_PARKING_BRAKE;
-    public static int SENSOR_TYPE_TRACTION_CONTROL_ACTIVE;
-    public static int SENSOR_TYPE_WHEEL_TICK_DISTANCE;
-}
-
--keep class android.support.car.hardware.CarSensorManager$OnSensorChangedListener {
-
-    public abstract void onSensorChanged(android.support.car.hardware.CarSensorManager, android.support.car.hardware.CarSensorEvent);
-
-
-}
-
--keep class android.support.car.media.CarAudioManager {
-    <init>();
-
-    public abstract android.support.car.media.CarAudioRecord createCarAudioRecord(int);
-    public abstract android.media.AudioFormat getAudioRecordAudioFormat();
-    public abstract int getAudioRecordMaxBufferSize();
-    public abstract int getAudioRecordMinBufferSize();
-    public abstract boolean isAudioRecordSupported();
-
-
-}
-
--keep class android.support.car.media.CarAudioRecord {
-    <init>();
-
-    public abstract int getAudioSessionId();
-    public abstract int getBufferSize();
-    public abstract int getRecordingState();
-    public abstract int getState();
-    public abstract int read(byte[], int, int);
-    public abstract void release();
-    public abstract void startRecording();
-    public abstract void stop();
-
-
-}
-
--keep class android.support.car.navigation.CarNavigationInstrumentCluster {
-
-    public int getImageColorDepthBits();
-    public int getImageHeight();
-    public int getImageWidth();
-    public int getMinIntervalMillis();
-    public int getType();
-    public boolean supportsCustomImages();
-    public java.lang.String toString();
-
-
-    public static int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED;
-    public static int CLUSTER_TYPE_IMAGE_CODES_ONLY;
-}
-
--keep class android.support.car.navigation.CarNavigationStatusManager {
-    <init>();
-
-    public abstract void addListener(android.support.car.navigation.CarNavigationStatusManager$CarNavigationCallback);
-    public abstract void removeListener();
-    public abstract void sendEvent(int, android.os.Bundle);
-
-
-}
-
--keep class android.support.car.navigation.CarNavigationStatusManager$CarNavigationCallback {
-
-    public abstract void onInstrumentClusterStarted(android.support.car.navigation.CarNavigationStatusManager, android.support.car.navigation.CarNavigationInstrumentCluster);
-    public abstract void onInstrumentClusterStopped(android.support.car.navigation.CarNavigationStatusManager);
-
-
-}
-
--keep class android.transition.PathMotion {
-    <init>();
-    <init>(android.content.Context, android.util.AttributeSet);
-
-    public abstract android.graphics.Path getPath(float, float, float, float);
-
-
-}
-
--keep class android.transition.Scene {
-    <init>(android.view.ViewGroup);
-    <init>(android.view.ViewGroup, android.view.View);
-    <init>(android.view.ViewGroup, android.view.ViewGroup);
-
-    public void enter();
-    public void exit();
-    public static android.transition.Scene getSceneForLayout(android.view.ViewGroup, int, android.content.Context);
-    public android.view.ViewGroup getSceneRoot();
-    public void setEnterAction(java.lang.Runnable);
-    public void setExitAction(java.lang.Runnable);
-
-
-}
-
--keep class android.transition.Transition {
-    <init>();
-    <init>(android.content.Context, android.util.AttributeSet);
-
-    public android.transition.Transition addListener(android.transition.Transition$TransitionListener);
-    public android.transition.Transition addTarget(int);
-    public android.transition.Transition addTarget(java.lang.String);
-    public android.transition.Transition addTarget(java.lang.Class);
-    public android.transition.Transition addTarget(android.view.View);
-    protected void animate(android.animation.Animator);
-    public boolean canRemoveViews();
-    protected void cancel();
-    public abstract void captureEndValues(android.transition.TransitionValues);
-    public abstract void captureStartValues(android.transition.TransitionValues);
-    public android.transition.Transition clone();
-    public java.lang.Object clone();
-    public android.animation.Animator createAnimator(android.view.ViewGroup, android.transition.TransitionValues, android.transition.TransitionValues);
-    protected void createAnimators(android.view.ViewGroup, android.transition.TransitionValuesMaps, android.transition.TransitionValuesMaps, java.util.ArrayList, java.util.ArrayList);
-    protected void end();
-    public android.transition.Transition excludeChildren(int, boolean);
-    public android.transition.Transition excludeChildren(android.view.View, boolean);
-    public android.transition.Transition excludeChildren(java.lang.Class, boolean);
-    public android.transition.Transition excludeTarget(int, boolean);
-    public android.transition.Transition excludeTarget(java.lang.String, boolean);
-    public android.transition.Transition excludeTarget(android.view.View, boolean);
-    public android.transition.Transition excludeTarget(java.lang.Class, boolean);
-    public long getDuration();
-    public android.graphics.Rect getEpicenter();
-    public android.transition.Transition$EpicenterCallback getEpicenterCallback();
-    public android.animation.TimeInterpolator getInterpolator();
-    public java.lang.String getName();
-    public android.util.ArrayMap getNameOverrides();
-    public android.transition.PathMotion getPathMotion();
-    public android.transition.TransitionPropagation getPropagation();
-    public long getStartDelay();
-    public java.util.List getTargetIds();
-    public java.util.List getTargetNames();
-    public java.util.List getTargetTypes();
-    public java.util.List getTargetViewNames();
-    public java.util.List getTargets();
-    public java.lang.String[] getTransitionProperties();
-    public android.transition.TransitionValues getTransitionValues(android.view.View, boolean);
-    public boolean isTransitionRequired(android.transition.TransitionValues, android.transition.TransitionValues);
-    public boolean isValidTarget(android.view.View);
-    public void pause(android.view.View);
-    public android.transition.Transition removeListener(android.transition.Transition$TransitionListener);
-    public android.transition.Transition removeTarget(int);
-    public android.transition.Transition removeTarget(java.lang.String);
-    public android.transition.Transition removeTarget(android.view.View);
-    public android.transition.Transition removeTarget(java.lang.Class);
-    public void resume(android.view.View);
-    protected void runAnimators();
-    public android.transition.Transition setDuration(long);
-    public void setEpicenterCallback(android.transition.Transition$EpicenterCallback);
-    public android.transition.Transition setInterpolator(android.animation.TimeInterpolator);
-    public void setMatchOrder(int[]);
-    public void setNameOverrides(android.util.ArrayMap);
-    public void setPathMotion(android.transition.PathMotion);
-    public void setPropagation(android.transition.TransitionPropagation);
-    public android.transition.Transition setStartDelay(long);
-    protected void start();
-    public java.lang.String toString();
-
-
-    public static int MATCH_ID;
-    public static int MATCH_INSTANCE;
-    public static int MATCH_ITEM_ID;
-    public static int MATCH_NAME;
-}
-
--keep class android.transition.Transition$EpicenterCallback {
-    <init>();
-
-    public abstract android.graphics.Rect onGetEpicenter(android.transition.Transition);
-
-
-}
-
--keep class android.transition.Transition$TransitionListener {
-
-    public abstract void onTransitionCancel(android.transition.Transition);
-    public abstract void onTransitionEnd(android.transition.Transition);
-    public abstract void onTransitionPause(android.transition.Transition);
-    public abstract void onTransitionResume(android.transition.Transition);
-    public abstract void onTransitionStart(android.transition.Transition);
-
-
-}
-
--keep class android.transition.TransitionManager {
-    <init>();
-
-    public static void beginDelayedTransition(android.view.ViewGroup);
-    public static void beginDelayedTransition(android.view.ViewGroup, android.transition.Transition);
-    public static void endTransitions(android.view.ViewGroup);
-    public static android.transition.Transition getDefaultTransition();
-    public android.transition.Transition getTransition(android.transition.Scene);
-    public static void go(android.transition.Scene);
-    public static void go(android.transition.Scene, android.transition.Transition);
-    public void setDefaultTransition(android.transition.Transition);
-    public void setTransition(android.transition.Scene, android.transition.Transition);
-    public void setTransition(android.transition.Scene, android.transition.Scene, android.transition.Transition);
-    public void transitionTo(android.transition.Scene);
-
-
-}
-
--keep class android.transition.TransitionPropagation {
-    <init>();
-
-    public abstract void captureValues(android.transition.TransitionValues);
-    public abstract java.lang.String[] getPropagationProperties();
-    public abstract long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues);
-
-
-}
-
--keep class android.transition.TransitionValues {
-    <init>();
-
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public java.lang.String toString();
-
-
-    public java.util.Map values;
-    public android.view.View view;
-}
-
--keep class android.transition.TransitionValuesMaps {
-
-
-
-}
-
--keep class android.util.AndroidException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Exception);
-    <init>(java.lang.String, java.lang.Throwable, boolean, boolean);
-
-
-
-}
-
--keep class android.util.ArrayMap {
-    <init>();
-    <init>(int);
-    <init>(int, boolean);
-    <init>(android.util.ArrayMap);
-
-    public void append(java.lang.Object, java.lang.Object);
-    public void clear();
-    public boolean containsAll(java.util.Collection);
-    public boolean containsKey(java.lang.Object);
-    public boolean containsValue(java.lang.Object);
-    public void ensureCapacity(int);
-    public java.util.Set entrySet();
-    public boolean equals(java.lang.Object);
-    public void erase();
-    public java.lang.Object get(java.lang.Object);
-    public int hashCode();
-    public int indexOfKey(java.lang.Object);
-    public boolean isEmpty();
-    public java.lang.Object keyAt(int);
-    public java.util.Set keySet();
-    public java.lang.Object put(java.lang.Object, java.lang.Object);
-    public void putAll(android.util.ArrayMap);
-    public void putAll(java.util.Map);
-    public java.lang.Object remove(java.lang.Object);
-    public boolean removeAll(java.util.Collection);
-    public java.lang.Object removeAt(int);
-    public boolean retainAll(java.util.Collection);
-    public java.lang.Object setValueAt(int, java.lang.Object);
-    public int size();
-    public java.lang.String toString();
-    public void validate();
-    public java.lang.Object valueAt(int);
-    public java.util.Collection values();
-
-
-    public static android.util.ArrayMap EMPTY;
-}
-
--keep class android.util.ArraySet {
-    <init>();
-    <init>(int);
-    <init>(int, boolean);
-    <init>(android.util.ArraySet);
-    <init>(java.util.Collection);
-
-    public boolean add(java.lang.Object);
-    public void addAll(android.util.ArraySet);
-    public boolean addAll(java.util.Collection);
-    public void append(java.lang.Object);
-    public void clear();
-    public boolean contains(java.lang.Object);
-    public boolean containsAll(java.util.Collection);
-    public void ensureCapacity(int);
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public int indexOf(java.lang.Object);
-    public boolean isEmpty();
-    public java.util.Iterator iterator();
-    public boolean remove(java.lang.Object);
-    public boolean removeAll(android.util.ArraySet);
-    public boolean removeAll(java.util.Collection);
-    public java.lang.Object removeAt(int);
-    public boolean retainAll(java.util.Collection);
-    public int size();
-    public java.lang.Object[] toArray();
-    public java.lang.Object[] toArray(java.lang.Object[]);
-    public java.lang.String toString();
-    public java.lang.Object valueAt(int);
-
-
-}
-
--keep class android.util.AttributeSet {
-
-    public abstract boolean getAttributeBooleanValue(java.lang.String, java.lang.String, boolean);
-    public abstract boolean getAttributeBooleanValue(int, boolean);
-    public abstract int getAttributeCount();
-    public abstract float getAttributeFloatValue(java.lang.String, java.lang.String, float);
-    public abstract float getAttributeFloatValue(int, float);
-    public abstract int getAttributeIntValue(java.lang.String, java.lang.String, int);
-    public abstract int getAttributeIntValue(int, int);
-    public abstract int getAttributeListValue(java.lang.String, java.lang.String, java.lang.String[], int);
-    public abstract int getAttributeListValue(int, java.lang.String[], int);
-    public abstract java.lang.String getAttributeName(int);
-    public abstract int getAttributeNameResource(int);
-    public java.lang.String getAttributeNamespace(int);
-    public abstract int getAttributeResourceValue(java.lang.String, java.lang.String, int);
-    public abstract int getAttributeResourceValue(int, int);
-    public abstract int getAttributeUnsignedIntValue(java.lang.String, java.lang.String, int);
-    public abstract int getAttributeUnsignedIntValue(int, int);
-    public abstract java.lang.String getAttributeValue(int);
-    public abstract java.lang.String getAttributeValue(java.lang.String, java.lang.String);
-    public abstract java.lang.String getClassAttribute();
-    public abstract java.lang.String getIdAttribute();
-    public abstract int getIdAttributeResourceValue(int);
-    public abstract java.lang.String getPositionDescription();
-    public abstract int getStyleAttribute();
-
-
-}
-
--keep class android.util.DisplayMetrics {
-    <init>();
-
-    public boolean equals(java.lang.Object);
-    public boolean equals(android.util.DisplayMetrics);
-    public boolean equalsPhysical(android.util.DisplayMetrics);
-    public int hashCode();
-    public void setTo(android.util.DisplayMetrics);
-    public void setToDefaults();
-    public java.lang.String toString();
-
-
-    public static int DENSITY_260;
-    public static int DENSITY_280;
-    public static int DENSITY_300;
-    public static int DENSITY_340;
-    public static int DENSITY_360;
-    public static int DENSITY_400;
-    public static int DENSITY_420;
-    public static int DENSITY_440;
-    public static int DENSITY_560;
-    public static int DENSITY_DEFAULT;
-    public static float DENSITY_DEFAULT_SCALE;
-    public static int DENSITY_DEVICE;
-    public static int DENSITY_DEVICE_STABLE;
-    public static int DENSITY_HIGH;
-    public static int DENSITY_LOW;
-    public static int DENSITY_MEDIUM;
-    public static int DENSITY_TV;
-    public static int DENSITY_XHIGH;
-    public static int DENSITY_XXHIGH;
-    public static int DENSITY_XXXHIGH;
-    public float density;
-    public int densityDpi;
-    public int heightPixels;
-    public float noncompatDensity;
-    public int noncompatDensityDpi;
-    public int noncompatHeightPixels;
-    public float noncompatScaledDensity;
-    public int noncompatWidthPixels;
-    public float noncompatXdpi;
-    public float noncompatYdpi;
-    public float scaledDensity;
-    public int widthPixels;
-    public float xdpi;
-    public float ydpi;
-}
-
--keep class android.util.LongArray {
-    <init>();
-    <init>(int);
-
-    public void add(long);
-    public void add(int, long);
-    public void addAll(android.util.LongArray);
-    public void clear();
-    public android.util.LongArray clone();
-    public java.lang.Object clone();
-    public static boolean elementsEqual(android.util.LongArray, android.util.LongArray);
-    public static android.util.LongArray fromArray(long[], int);
-    public long get(int);
-    public int indexOf(long);
-    public void remove(int);
-    public void resize(int);
-    public void set(int, long);
-    public int size();
-    public long[] toArray();
-    public static android.util.LongArray wrap(long[]);
-
-
-}
-
--keep class android.util.LongSparseArray {
-    <init>();
-    <init>(int);
-
-    public void append(long, java.lang.Object);
-    public void clear();
-    public android.util.LongSparseArray clone();
-    public java.lang.Object clone();
-    public void delete(long);
-    public java.lang.Object get(long);
-    public java.lang.Object get(long, java.lang.Object);
-    public int indexOfKey(long);
-    public int indexOfValue(java.lang.Object);
-    public int indexOfValueByValue(java.lang.Object);
-    public long keyAt(int);
-    public void put(long, java.lang.Object);
-    public void remove(long);
-    public void removeAt(int);
-    public void setValueAt(int, java.lang.Object);
-    public int size();
-    public java.lang.String toString();
-    public java.lang.Object valueAt(int);
-
-
-}
-
--keep class android.util.MergedConfiguration {
-    <init>();
-    <init>(android.content.res.Configuration, android.content.res.Configuration);
-    <init>(android.content.res.Configuration);
-    <init>(android.util.MergedConfiguration);
-
-    public int describeContents();
-    public void dump(java.io.PrintWriter, java.lang.String);
-    public boolean equals(java.lang.Object);
-    public android.content.res.Configuration getGlobalConfiguration();
-    public android.content.res.Configuration getMergedConfiguration();
-    public android.content.res.Configuration getOverrideConfiguration();
-    public int hashCode();
-    public void readFromParcel(android.os.Parcel);
-    public void setConfiguration(android.content.res.Configuration, android.content.res.Configuration);
-    public void setGlobalConfiguration(android.content.res.Configuration);
-    public void setOverrideConfiguration(android.content.res.Configuration);
-    public void setTo(android.util.MergedConfiguration);
-    public java.lang.String toString();
-    public void unset();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.util.Pair {
-    <init>(java.lang.Object, java.lang.Object);
-
-    public static android.util.Pair create(java.lang.Object, java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public java.lang.String toString();
-
-
-    public java.lang.Object first;
-    public java.lang.Object second;
-}
-
--keep class android.util.Printer {
-
-    public abstract void println(java.lang.String);
-
-
-}
-
--keep class android.util.Property {
-    <init>(java.lang.Class, java.lang.String);
-
-    public abstract java.lang.Object get(java.lang.Object);
-    public java.lang.String getName();
-    public java.lang.Class getType();
-    public boolean isReadOnly();
-    public static android.util.Property of(java.lang.Class, java.lang.Class, java.lang.String);
-    public void set(java.lang.Object, java.lang.Object);
-
-
-}
-
--keep class android.util.Rational {
-    <init>(int, int);
-
-    public int compareTo(android.util.Rational);
-    public int compareTo(java.lang.Object);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public float floatValue();
-    public static int gcd(int, int);
-    public int getDenominator();
-    public int getNumerator();
-    public int hashCode();
-    public int intValue();
-    public boolean isFinite();
-    public boolean isInfinite();
-    public boolean isNaN();
-    public boolean isZero();
-    public long longValue();
-    public static android.util.Rational parseRational(java.lang.String);
-    public short shortValue();
-    public float toFloat();
-    public java.lang.String toString();
-
-
-    public static android.util.Rational NEGATIVE_INFINITY;
-    public static android.util.Rational NaN;
-    public static android.util.Rational POSITIVE_INFINITY;
-    public static android.util.Rational ZERO;
-}
-
--keep class android.util.Size {
-    <init>(int, int);
-
-    public boolean equals(java.lang.Object);
-    public int getHeight();
-    public int getWidth();
-    public int hashCode();
-    public static android.util.Size parseSize(java.lang.String);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.util.SizeF {
-    <init>(float, float);
-
-    public boolean equals(java.lang.Object);
-    public float getHeight();
-    public float getWidth();
-    public int hashCode();
-    public static android.util.SizeF parseSizeF(java.lang.String);
-    public java.lang.String toString();
-
-
-}
-
--keep class android.util.SparseArray {
-    <init>();
-    <init>(int);
-
-    public void append(int, java.lang.Object);
-    public void clear();
-    public android.util.SparseArray clone();
-    public java.lang.Object clone();
-    public void delete(int);
-    public java.lang.Object get(int);
-    public java.lang.Object get(int, java.lang.Object);
-    public int indexOfKey(int);
-    public int indexOfValue(java.lang.Object);
-    public int indexOfValueByValue(java.lang.Object);
-    public int keyAt(int);
-    public void put(int, java.lang.Object);
-    public void remove(int);
-    public void removeAt(int);
-    public void removeAtRange(int, int);
-    public java.lang.Object removeReturnOld(int);
-    public void setValueAt(int, java.lang.Object);
-    public int size();
-    public java.lang.String toString();
-    public java.lang.Object valueAt(int);
-
-
-}
-
--keep class android.util.SparseBooleanArray {
-    <init>();
-    <init>(int);
-
-    public void append(int, boolean);
-    public void clear();
-    public android.util.SparseBooleanArray clone();
-    public java.lang.Object clone();
-    public void delete(int);
-    public boolean equals(java.lang.Object);
-    public boolean get(int);
-    public boolean get(int, boolean);
-    public int hashCode();
-    public int indexOfKey(int);
-    public int indexOfValue(boolean);
-    public int keyAt(int);
-    public void put(int, boolean);
-    public void removeAt(int);
-    public void setKeyAt(int, int);
-    public void setValueAt(int, boolean);
-    public int size();
-    public java.lang.String toString();
-    public boolean valueAt(int);
-
-
-}
-
--keep class android.util.SparseIntArray {
-    <init>();
-    <init>(int);
-
-    public void append(int, int);
-    public void clear();
-    public android.util.SparseIntArray clone();
-    public java.lang.Object clone();
-    public int[] copyKeys();
-    public void delete(int);
-    public int get(int);
-    public int get(int, int);
-    public int indexOfKey(int);
-    public int indexOfValue(int);
-    public int keyAt(int);
-    public void put(int, int);
-    public void removeAt(int);
-    public void setValueAt(int, int);
-    public int size();
-    public java.lang.String toString();
-    public int valueAt(int);
-
-
-}
-
--keep class android.util.TypedValue {
-    <init>();
-
-    public static float applyDimension(int, float, android.util.DisplayMetrics);
-    public java.lang.CharSequence coerceToString();
-    public static java.lang.String coerceToString(int, int);
-    public static float complexToDimension(int, android.util.DisplayMetrics);
-    public static float complexToDimensionNoisy(int, android.util.DisplayMetrics);
-    public static int complexToDimensionPixelOffset(int, android.util.DisplayMetrics);
-    public static int complexToDimensionPixelSize(int, android.util.DisplayMetrics);
-    public static float complexToFloat(int);
-    public static float complexToFraction(int, float, float);
-    public int getComplexUnit();
-    public float getDimension(android.util.DisplayMetrics);
-    public float getFloat();
-    public float getFraction(float, float);
-    public void setTo(android.util.TypedValue);
-    public java.lang.String toString();
-
-
-    public static int COMPLEX_MANTISSA_MASK;
-    public static int COMPLEX_MANTISSA_SHIFT;
-    public static int COMPLEX_RADIX_0p23;
-    public static int COMPLEX_RADIX_16p7;
-    public static int COMPLEX_RADIX_23p0;
-    public static int COMPLEX_RADIX_8p15;
-    public static int COMPLEX_RADIX_MASK;
-    public static int COMPLEX_RADIX_SHIFT;
-    public static int COMPLEX_UNIT_DIP;
-    public static int COMPLEX_UNIT_FRACTION;
-    public static int COMPLEX_UNIT_FRACTION_PARENT;
-    public static int COMPLEX_UNIT_IN;
-    public static int COMPLEX_UNIT_MASK;
-    public static int COMPLEX_UNIT_MM;
-    public static int COMPLEX_UNIT_PT;
-    public static int COMPLEX_UNIT_PX;
-    public static int COMPLEX_UNIT_SHIFT;
-    public static int COMPLEX_UNIT_SP;
-    public static int DATA_NULL_EMPTY;
-    public static int DATA_NULL_UNDEFINED;
-    public static int DENSITY_DEFAULT;
-    public static int DENSITY_NONE;
-    public static int TYPE_ATTRIBUTE;
-    public static int TYPE_DIMENSION;
-    public static int TYPE_FIRST_COLOR_INT;
-    public static int TYPE_FIRST_INT;
-    public static int TYPE_FLOAT;
-    public static int TYPE_FRACTION;
-    public static int TYPE_INT_BOOLEAN;
-    public static int TYPE_INT_COLOR_ARGB4;
-    public static int TYPE_INT_COLOR_ARGB8;
-    public static int TYPE_INT_COLOR_RGB4;
-    public static int TYPE_INT_COLOR_RGB8;
-    public static int TYPE_INT_DEC;
-    public static int TYPE_INT_HEX;
-    public static int TYPE_LAST_COLOR_INT;
-    public static int TYPE_LAST_INT;
-    public static int TYPE_NULL;
-    public static int TYPE_REFERENCE;
-    public static int TYPE_STRING;
-    public int assetCookie;
-    public int changingConfigurations;
-    public int data;
-    public int density;
-    public int resourceId;
-    public java.lang.CharSequence string;
-    public int type;
-}
-
--keep class android.util.proto.ProtoOutputStream {
-    <init>();
-    <init>(int);
-    <init>(java.io.OutputStream);
-    <init>(java.io.FileDescriptor);
-
-    public static int checkFieldId(long, long);
-    public static int convertObjectIdToOrdinal(int);
-    public void dump(java.lang.String);
-    public void end(long);
-    public void endObject(long);
-    public void endRepeatedObject(long);
-    public void flush();
-    public byte[] getBytes();
-    public static int getDepthFromToken(long);
-    public static int getObjectIdFromToken(long);
-    public static boolean getRepeatedFromToken(long);
-    public static int getSizePosFromToken(long);
-    public static int getTagSizeFromToken(long);
-    public static long makeFieldId(int, long);
-    public static long makeToken(int, boolean, int, int, int);
-    public long start(long);
-    public long startObject(long);
-    public long startRepeatedObject(long);
-    public static java.lang.String token2String(long);
-    public void write(long, double);
-    public void write(long, float);
-    public void write(long, int);
-    public void write(long, long);
-    public void write(long, boolean);
-    public void write(long, java.lang.String);
-    public void write(long, byte[]);
-    public void writeBool(long, boolean);
-    public void writeBytes(long, byte[]);
-    public void writeDouble(long, double);
-    public void writeEnum(long, int);
-    public void writeFixed32(long, int);
-    public void writeFixed64(long, long);
-    public void writeFloat(long, float);
-    public void writeInt32(long, int);
-    public void writeInt64(long, long);
-    public void writeObject(long, byte[]);
-    public void writePackedBool(long, boolean[]);
-    public void writePackedDouble(long, double[]);
-    public void writePackedEnum(long, int[]);
-    public void writePackedFixed32(long, int[]);
-    public void writePackedFixed64(long, long[]);
-    public void writePackedFloat(long, float[]);
-    public void writePackedInt32(long, int[]);
-    public void writePackedInt64(long, long[]);
-    public void writePackedSFixed32(long, int[]);
-    public void writePackedSFixed64(long, long[]);
-    public void writePackedSInt32(long, int[]);
-    public void writePackedSInt64(long, long[]);
-    public void writePackedUInt32(long, int[]);
-    public void writePackedUInt64(long, long[]);
-    public void writeRepeatedBool(long, boolean);
-    public void writeRepeatedBytes(long, byte[]);
-    public void writeRepeatedDouble(long, double);
-    public void writeRepeatedEnum(long, int);
-    public void writeRepeatedFixed32(long, int);
-    public void writeRepeatedFixed64(long, long);
-    public void writeRepeatedFloat(long, float);
-    public void writeRepeatedInt32(long, int);
-    public void writeRepeatedInt64(long, long);
-    public void writeRepeatedObject(long, byte[]);
-    public void writeRepeatedSFixed32(long, int);
-    public void writeRepeatedSFixed64(long, long);
-    public void writeRepeatedSInt32(long, int);
-    public void writeRepeatedSInt64(long, long);
-    public void writeRepeatedString(long, java.lang.String);
-    public void writeRepeatedUInt32(long, int);
-    public void writeRepeatedUInt64(long, long);
-    public void writeSFixed32(long, int);
-    public void writeSFixed64(long, long);
-    public void writeSInt32(long, int);
-    public void writeSInt64(long, long);
-    public void writeString(long, java.lang.String);
-    public void writeTag(int, int);
-    public void writeUInt32(long, int);
-    public void writeUInt64(long, long);
-
-
-    public static long FIELD_COUNT_MASK;
-    public static long FIELD_COUNT_PACKED;
-    public static long FIELD_COUNT_REPEATED;
-    public static int FIELD_COUNT_SHIFT;
-    public static long FIELD_COUNT_SINGLE;
-    public static long FIELD_COUNT_UNKNOWN;
-    public static int FIELD_ID_MASK;
-    public static int FIELD_ID_SHIFT;
-    public static long FIELD_TYPE_BOOL;
-    public static long FIELD_TYPE_BYTES;
-    public static long FIELD_TYPE_DOUBLE;
-    public static long FIELD_TYPE_ENUM;
-    public static long FIELD_TYPE_FIXED32;
-    public static long FIELD_TYPE_FIXED64;
-    public static long FIELD_TYPE_FLOAT;
-    public static long FIELD_TYPE_INT32;
-    public static long FIELD_TYPE_INT64;
-    public static long FIELD_TYPE_MASK;
-    public static long FIELD_TYPE_MESSAGE;
-    public static long FIELD_TYPE_SFIXED32;
-    public static long FIELD_TYPE_SFIXED64;
-    public static int FIELD_TYPE_SHIFT;
-    public static long FIELD_TYPE_SINT32;
-    public static long FIELD_TYPE_SINT64;
-    public static long FIELD_TYPE_STRING;
-    public static long FIELD_TYPE_UINT32;
-    public static long FIELD_TYPE_UINT64;
-    public static long FIELD_TYPE_UNKNOWN;
-    public static java.lang.String TAG;
-    public static int WIRE_TYPE_END_GROUP;
-    public static int WIRE_TYPE_FIXED32;
-    public static int WIRE_TYPE_FIXED64;
-    public static int WIRE_TYPE_LENGTH_DELIMITED;
-    public static int WIRE_TYPE_MASK;
-    public static int WIRE_TYPE_START_GROUP;
-    public static int WIRE_TYPE_VARINT;
-}
-
--keep class android.view.AccessibilityInteractionController {
-    <init>(android.view.ViewRootImpl);
-
-    public void findAccessibilityNodeInfoByAccessibilityIdClientThread(long, android.graphics.Region, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, int, long, android.view.MagnificationSpec, android.os.Bundle);
-    public void findAccessibilityNodeInfosByTextClientThread(long, java.lang.String, android.graphics.Region, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, int, long, android.view.MagnificationSpec);
-    public void findAccessibilityNodeInfosByViewIdClientThread(long, java.lang.String, android.graphics.Region, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, int, long, android.view.MagnificationSpec);
-    public void findFocusClientThread(long, int, android.graphics.Region, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, int, long, android.view.MagnificationSpec);
-    public void focusSearchClientThread(long, int, android.graphics.Region, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, int, long, android.view.MagnificationSpec);
-    public void performAccessibilityActionClientThread(long, int, android.os.Bundle, int, android.view.accessibility.IAccessibilityInteractionConnectionCallback, int, int, long);
-
-
-}
-
--keep class android.view.AccessibilityIterators {
-    <init>();
-
-
-
-}
-
--keep class android.view.AccessibilityIterators$TextSegmentIterator {
-
-    public abstract int[] following(int);
-    public abstract int[] preceding(int);
-
-
-}
-
--keep class android.view.ActionMode {
-    <init>();
-
-    public abstract void finish();
-    public abstract android.view.View getCustomView();
-    public abstract android.view.Menu getMenu();
-    public abstract android.view.MenuInflater getMenuInflater();
-    public abstract java.lang.CharSequence getSubtitle();
-    public java.lang.Object getTag();
-    public abstract java.lang.CharSequence getTitle();
-    public boolean getTitleOptionalHint();
-    public int getType();
-    public void hide(long);
-    public abstract void invalidate();
-    public void invalidateContentRect();
-    public boolean isTitleOptional();
-    public boolean isUiFocusable();
-    public void onWindowFocusChanged(boolean);
-    public abstract void setCustomView(android.view.View);
-    public abstract void setSubtitle(java.lang.CharSequence);
-    public abstract void setSubtitle(int);
-    public void setTag(java.lang.Object);
-    public abstract void setTitle(java.lang.CharSequence);
-    public abstract void setTitle(int);
-    public void setTitleOptionalHint(boolean);
-    public void setType(int);
-
-
-    public static int DEFAULT_HIDE_DURATION;
-    public static int TYPE_FLOATING;
-    public static int TYPE_PRIMARY;
-}
-
--keep class android.view.ActionMode$Callback {
-
-    public abstract boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
-    public abstract boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
-    public abstract void onDestroyActionMode(android.view.ActionMode);
-    public abstract boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
-
-
-}
-
--keep class android.view.ActionProvider {
-    <init>(android.content.Context);
-
-    public boolean hasSubMenu();
-    public boolean isVisible();
-    public abstract android.view.View onCreateActionView();
-    public android.view.View onCreateActionView(android.view.MenuItem);
-    public boolean onPerformDefaultAction();
-    public void onPrepareSubMenu(android.view.SubMenu);
-    public boolean overridesItemVisibility();
-    public void refreshVisibility();
-    public void reset();
-    public void setSubUiVisibilityListener(android.view.ActionProvider$SubUiVisibilityListener);
-    public void setVisibilityListener(android.view.ActionProvider$VisibilityListener);
-    public void subUiVisibilityChanged(boolean);
-
-
-}
-
--keep class android.view.ActionProvider$SubUiVisibilityListener {
-
-    public abstract void onSubUiVisibilityChanged(boolean);
-
-
-}
-
--keep class android.view.ActionProvider$VisibilityListener {
-
-    public abstract void onActionProviderVisibilityChanged(boolean);
-
-
-}
-
--keep class android.view.AppTransitionAnimationSpec {
-    <init>(int, android.graphics.GraphicBuffer, android.graphics.Rect);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.graphics.GraphicBuffer buffer;
-    public android.graphics.Rect rect;
-    public int taskId;
-}
-
--keep class android.view.Choreographer {
-
-    public static long getFrameDelay();
-    public long getFrameIntervalNanos();
-    public long getFrameTime();
-    public long getFrameTimeNanos();
-    public static android.view.Choreographer getInstance();
-    public long getLastFrameTimeNanos();
-    public static android.view.Choreographer getMainThreadInstance();
-    public static android.view.Choreographer getSfInstance();
-    public void postCallback(int, java.lang.Runnable, java.lang.Object);
-    public void postCallbackDelayed(int, java.lang.Runnable, java.lang.Object, long);
-    public void postFrameCallback(android.view.Choreographer$FrameCallback);
-    public void postFrameCallbackDelayed(android.view.Choreographer$FrameCallback, long);
-    public static void releaseInstance();
-    public void removeCallbacks(int, java.lang.Runnable, java.lang.Object);
-    public void removeFrameCallback(android.view.Choreographer$FrameCallback);
-    public static void setFrameDelay(long);
-    public static long subtractFrameDelay(long);
-
-
-    public static int CALLBACK_ANIMATION;
-    public static int CALLBACK_COMMIT;
-    public static int CALLBACK_INPUT;
-    public static int CALLBACK_TRAVERSAL;
-}
-
--keep class android.view.Choreographer$FrameCallback {
-
-    public abstract void doFrame(long);
-
-
-}
-
--keep class android.view.ContextMenu {
-
-    public abstract void clearHeader();
-    public abstract android.view.ContextMenu setHeaderIcon(int);
-    public abstract android.view.ContextMenu setHeaderIcon(android.graphics.drawable.Drawable);
-    public abstract android.view.ContextMenu setHeaderTitle(int);
-    public abstract android.view.ContextMenu setHeaderTitle(java.lang.CharSequence);
-    public abstract android.view.ContextMenu setHeaderView(android.view.View);
-
-
-}
-
--keep class android.view.ContextMenu$ContextMenuInfo {
-
-
-
-}
-
--keep class android.view.ContextThemeWrapper {
-    <init>();
-    <init>(android.content.Context, int);
-    <init>(android.content.Context, android.content.res.Resources$Theme);
-
-    public void applyOverrideConfiguration(android.content.res.Configuration);
-    protected void attachBaseContext(android.content.Context);
-    public android.content.res.AssetManager getAssets();
-    public android.content.res.Configuration getOverrideConfiguration();
-    public android.content.res.Resources getResources();
-    public java.lang.Object getSystemService(java.lang.String);
-    public android.content.res.Resources$Theme getTheme();
-    public int getThemeResId();
-    protected void onApplyThemeResource(android.content.res.Resources$Theme, int, boolean);
-    public void setTheme(int);
-
-
-}
-
--keep class android.view.Display {
-    <init>(android.hardware.display.DisplayManagerGlobal, int, android.view.DisplayInfo, android.view.DisplayAdjustments);
-    <init>(android.hardware.display.DisplayManagerGlobal, int, android.view.DisplayInfo, android.content.res.Resources);
-
-    public java.lang.String getAddress();
-    public long getAppVsyncOffsetNanos();
-    public int getColorMode();
-    public void getCurrentSizeRange(android.graphics.Point, android.graphics.Point);
-    public android.view.DisplayAdjustments getDisplayAdjustments();
-    public int getDisplayId();
-    public boolean getDisplayInfo(android.view.DisplayInfo);
-    public int getFlags();
-    public android.view.Display$HdrCapabilities getHdrCapabilities();
-    public int getHeight();
-    public int getLayerStack();
-    public int getMaximumSizeDimension();
-    public void getMetrics(android.util.DisplayMetrics);
-    public android.view.Display$Mode getMode();
-    public java.lang.String getName();
-    public int getOrientation();
-    public void getOverscanInsets(android.graphics.Rect);
-    public java.lang.String getOwnerPackageName();
-    public int getOwnerUid();
-    public int getPixelFormat();
-    public long getPresentationDeadlineNanos();
-    public void getRealMetrics(android.util.DisplayMetrics);
-    public void getRealSize(android.graphics.Point);
-    public void getRectSize(android.graphics.Rect);
-    public float getRefreshRate();
-    public int getRemoveMode();
-    public int getRotation();
-    public void getSize(android.graphics.Point);
-    public int getState();
-    public int[] getSupportedColorModes();
-    public android.view.Display$Mode[] getSupportedModes();
-    public float[] getSupportedRefreshRates();
-    public int getType();
-    public int getWidth();
-    public boolean hasAccess(int);
-    public static boolean hasAccess(int, int, int);
-    public static boolean isDozeState(int);
-    public boolean isHdr();
-    public boolean isPublicPresentation();
-    public static boolean isSuspendedState(int);
-    public boolean isValid();
-    public boolean isWideColorGamut();
-    public void requestColorMode(int);
-    public static java.lang.String stateToString(int);
-    public java.lang.String toString();
-    public static java.lang.String typeToString(int);
-
-
-    public static int COLOR_MODE_ADOBE_RGB;
-    public static int COLOR_MODE_BT601_525;
-    public static int COLOR_MODE_BT601_525_UNADJUSTED;
-    public static int COLOR_MODE_BT601_625;
-    public static int COLOR_MODE_BT601_625_UNADJUSTED;
-    public static int COLOR_MODE_BT709;
-    public static int COLOR_MODE_DCI_P3;
-    public static int COLOR_MODE_DEFAULT;
-    public static int COLOR_MODE_DISPLAY_P3;
-    public static int COLOR_MODE_INVALID;
-    public static int COLOR_MODE_SRGB;
-    public static int DEFAULT_DISPLAY;
-    public static int FLAG_CAN_SHOW_WITH_INSECURE_KEYGUARD;
-    public static int FLAG_PRESENTATION;
-    public static int FLAG_PRIVATE;
-    public static int FLAG_ROUND;
-    public static int FLAG_SCALING_DISABLED;
-    public static int FLAG_SECURE;
-    public static int FLAG_SUPPORTS_PROTECTED_BUFFERS;
-    public static int INVALID_DISPLAY;
-    public static int REMOVE_MODE_DESTROY_CONTENT;
-    public static int REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY;
-    public static int STATE_DOZE;
-    public static int STATE_DOZE_SUSPEND;
-    public static int STATE_OFF;
-    public static int STATE_ON;
-    public static int STATE_ON_SUSPEND;
-    public static int STATE_UNKNOWN;
-    public static int STATE_VR;
-    public static int TYPE_BUILT_IN;
-    public static int TYPE_HDMI;
-    public static int TYPE_OVERLAY;
-    public static int TYPE_UNKNOWN;
-    public static int TYPE_VIRTUAL;
-    public static int TYPE_WIFI;
-}
-
--keep class android.view.Display$HdrCapabilities {
-    <init>();
-    <init>(int[], float, float, float);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public float getDesiredMaxAverageLuminance();
-    public float getDesiredMaxLuminance();
-    public float getDesiredMinLuminance();
-    public int[] getSupportedHdrTypes();
-    public int hashCode();
-    public void readFromParcel(android.os.Parcel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int HDR_TYPE_DOLBY_VISION;
-    public static int HDR_TYPE_HDR10;
-    public static int HDR_TYPE_HLG;
-    public static float INVALID_LUMINANCE;
-}
-
--keep class android.view.Display$Mode {
-    <init>(int, int, int, float);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int getModeId();
-    public int getPhysicalHeight();
-    public int getPhysicalWidth();
-    public float getRefreshRate();
-    public int hashCode();
-    public boolean matches(int, int, float);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static android.view.Display$Mode[] EMPTY_ARRAY;
-}
-
--keep class android.view.DisplayAdjustments {
-    <init>();
-    <init>(android.content.res.Configuration);
-    <init>(android.view.DisplayAdjustments);
-
-    public boolean equals(java.lang.Object);
-    public android.content.res.CompatibilityInfo getCompatibilityInfo();
-    public android.content.res.Configuration getConfiguration();
-    public int hashCode();
-    public void setCompatibilityInfo(android.content.res.CompatibilityInfo);
-    public void setConfiguration(android.content.res.Configuration);
-
-
-    public static android.view.DisplayAdjustments DEFAULT_DISPLAY_ADJUSTMENTS;
-}
-
--keep class android.view.DisplayCutout {
-    <init>(android.graphics.Rect, java.util.List);
-
-    public boolean equals(java.lang.Object);
-    public static android.view.DisplayCutout fromBoundingRect(int, int, int, int);
-    public static android.view.DisplayCutout fromBounds(android.graphics.Region);
-    public static android.view.DisplayCutout fromResourcesRectApproximation(android.content.res.Resources, int, int);
-    public static android.view.DisplayCutout fromSpec(java.lang.String, int, int, float);
-    public java.util.List getBoundingRects();
-    public android.graphics.Region getBounds();
-    public int getSafeInsetBottom();
-    public int getSafeInsetLeft();
-    public int getSafeInsetRight();
-    public int getSafeInsetTop();
-    public android.graphics.Rect getSafeInsets();
-    public int hashCode();
-    public android.view.DisplayCutout inset(int, int, int, int);
-    public boolean isBoundsEmpty();
-    public boolean isEmpty();
-    public static android.graphics.Path pathFromResources(android.content.res.Resources, int, int);
-    public android.view.DisplayCutout replaceSafeInsets(android.graphics.Rect);
-    public java.lang.String toString();
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static java.lang.String EMULATION_OVERLAY_CATEGORY;
-    public static android.view.DisplayCutout NO_CUTOUT;
-}
-
--keep class android.view.DisplayCutout$ParcelableWrapper {
-    <init>();
-    <init>(android.view.DisplayCutout);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.view.DisplayCutout get();
-    public int hashCode();
-    public static android.view.DisplayCutout readCutoutFromParcel(android.os.Parcel);
-    public void readFromParcel(android.os.Parcel);
-    public void set(android.view.DisplayCutout$ParcelableWrapper);
-    public void set(android.view.DisplayCutout);
-    public java.lang.String toString();
-    public static void writeCutoutToParcel(android.view.DisplayCutout, android.os.Parcel, int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.DisplayInfo {
-    <init>();
-    <init>(android.view.DisplayInfo);
-
-    public void copyFrom(android.view.DisplayInfo);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public boolean equals(android.view.DisplayInfo);
-    public int findDefaultModeByRefreshRate(float);
-    public void getAppMetrics(android.util.DisplayMetrics);
-    public void getAppMetrics(android.util.DisplayMetrics, android.view.DisplayAdjustments);
-    public void getAppMetrics(android.util.DisplayMetrics, android.content.res.CompatibilityInfo, android.content.res.Configuration);
-    public android.view.Display$Mode getDefaultMode();
-    public float[] getDefaultRefreshRates();
-    public void getLogicalMetrics(android.util.DisplayMetrics, android.content.res.CompatibilityInfo, android.content.res.Configuration);
-    public android.view.Display$Mode getMode();
-    public int getNaturalHeight();
-    public int getNaturalWidth();
-    public boolean hasAccess(int);
-    public int hashCode();
-    public boolean isHdr();
-    public boolean isWideColorGamut();
-    public void readFromParcel(android.os.Parcel);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String address;
-    public int appHeight;
-    public long appVsyncOffsetNanos;
-    public int appWidth;
-    public int colorMode;
-    public int defaultModeId;
-    public android.view.DisplayCutout displayCutout;
-    public int flags;
-    public android.view.Display$HdrCapabilities hdrCapabilities;
-    public int largestNominalAppHeight;
-    public int largestNominalAppWidth;
-    public int layerStack;
-    public int logicalDensityDpi;
-    public int logicalHeight;
-    public int logicalWidth;
-    public int modeId;
-    public java.lang.String name;
-    public int overscanBottom;
-    public int overscanLeft;
-    public int overscanRight;
-    public int overscanTop;
-    public java.lang.String ownerPackageName;
-    public int ownerUid;
-    public float physicalXDpi;
-    public float physicalYDpi;
-    public long presentationDeadlineNanos;
-    public int removeMode;
-    public int rotation;
-    public int smallestNominalAppHeight;
-    public int smallestNominalAppWidth;
-    public int state;
-    public int[] supportedColorModes;
-    public android.view.Display$Mode[] supportedModes;
-    public int type;
-    public java.lang.String uniqueId;
-}
-
--keep class android.view.DisplayListCanvas {
-
-    public void callDrawGLFunction2(long);
-    public void drawCircle(android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty);
-    public void drawGLFunctor2(long, java.lang.Runnable);
-    public void drawRenderNode(android.view.RenderNode);
-    public void drawRoundRect(android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty, android.graphics.CanvasProperty);
-    public int getHeight();
-    public int getMaximumBitmapHeight();
-    public int getMaximumBitmapWidth();
-    public int getWidth();
-    public void insertInorderBarrier();
-    public void insertReorderBarrier();
-    public boolean isHardwareAccelerated();
-    public boolean isOpaque();
-    public boolean isRecordingFor(java.lang.Object);
-    public void setBitmap(android.graphics.Bitmap);
-    public void setDensity(int);
-    protected void throwIfCannotDraw(android.graphics.Bitmap);
-
-
-}
-
--keep class android.view.DragAndDropPermissions {
-
-    public int describeContents();
-    public static android.view.DragAndDropPermissions obtain(android.view.DragEvent);
-    public void release();
-    public boolean take(android.os.IBinder);
-    public boolean takeTransient();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.DragEvent {
-
-    public int describeContents();
-    public int getAction();
-    public android.content.ClipData getClipData();
-    public android.content.ClipDescription getClipDescription();
-    public com.android.internal.view.IDragAndDropPermissions getDragAndDropPermissions();
-    public java.lang.Object getLocalState();
-    public boolean getResult();
-    public float getX();
-    public float getY();
-    public static android.view.DragEvent obtain(int, float, float, java.lang.Object, android.content.ClipDescription, android.content.ClipData, com.android.internal.view.IDragAndDropPermissions, boolean);
-    public static android.view.DragEvent obtain(android.view.DragEvent);
-    public void recycle();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int ACTION_DRAG_ENDED;
-    public static int ACTION_DRAG_ENTERED;
-    public static int ACTION_DRAG_EXITED;
-    public static int ACTION_DRAG_LOCATION;
-    public static int ACTION_DRAG_STARTED;
-    public static int ACTION_DROP;
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.FrameMetrics {
-    <init>(android.view.FrameMetrics);
-
-    public long getMetric(int);
-
-
-    public static int ANIMATION_DURATION;
-    public static int COMMAND_ISSUE_DURATION;
-    public static int DRAW_DURATION;
-    public static int FIRST_DRAW_FRAME;
-    public static int INPUT_HANDLING_DURATION;
-    public static int INTENDED_VSYNC_TIMESTAMP;
-    public static int LAYOUT_MEASURE_DURATION;
-    public static int SWAP_BUFFERS_DURATION;
-    public static int SYNC_DURATION;
-    public static int TOTAL_DURATION;
-    public static int UNKNOWN_DELAY_DURATION;
-    public static int VSYNC_TIMESTAMP;
-}
-
--keep class android.view.FrameStats {
-    <init>();
-
-    public long getEndTimeNano();
-    public int getFrameCount();
-    public long getFramePresentedTimeNano(int);
-    public long getRefreshPeriodNano();
-    public long getStartTimeNano();
-
-
-    public static long UNDEFINED_TIME_NANO;
-    protected long[] mFramesPresentedTimeNano;
-    protected long mRefreshPeriodNano;
-}
-
--keep class android.view.IAppTransitionAnimationSpecsFuture {
-
-    public abstract android.view.AppTransitionAnimationSpec[] get();
-
-
-}
-
--keep class android.view.IRecentsAnimationController {
-
-    public abstract void finish(boolean);
-    public abstract void hideCurrentInputMethod();
-    public abstract android.app.ActivityManager$TaskSnapshot screenshotTask(int);
-    public abstract void setAnimationTargetsBehindSystemBars(boolean);
-    public abstract void setInputConsumerEnabled(boolean);
-    public abstract void setSplitScreenMinimized(boolean);
-
-
-}
-
--keep class android.view.IRecentsAnimationRunner {
-
-    public abstract void onAnimationCanceled();
-    public abstract void onAnimationStart(android.view.IRecentsAnimationController, android.view.RemoteAnimationTarget[], android.graphics.Rect, android.graphics.Rect);
-
-
-}
-
--keep class android.view.IRemoteAnimationFinishedCallback {
-
-    public abstract void onAnimationFinished();
-
-
-}
-
--keep class android.view.IRemoteAnimationRunner {
-
-    public abstract void onAnimationCancelled();
-    public abstract void onAnimationStart(android.view.RemoteAnimationTarget[], android.view.IRemoteAnimationFinishedCallback);
-
-
-}
-
--keep class android.view.IWindow {
-
-    public abstract void closeSystemDialogs(java.lang.String);
-    public abstract void dispatchAppVisibility(boolean);
-    public abstract void dispatchDragEvent(android.view.DragEvent);
-    public abstract void dispatchGetNewSurface();
-    public abstract void dispatchPointerCaptureChanged(boolean);
-    public abstract void dispatchSystemUiVisibilityChanged(int, int, int, int);
-    public abstract void dispatchWallpaperCommand(java.lang.String, int, int, int, android.os.Bundle, boolean);
-    public abstract void dispatchWallpaperOffsets(float, float, float, float, boolean);
-    public abstract void dispatchWindowShown();
-    public abstract void executeCommand(java.lang.String, java.lang.String, android.os.ParcelFileDescriptor);
-    public abstract void moved(int, int);
-    public abstract void requestAppKeyboardShortcuts(com.android.internal.os.IResultReceiver, int);
-    public abstract void resized(android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, boolean, android.util.MergedConfiguration, android.graphics.Rect, boolean, boolean, int, android.view.DisplayCutout$ParcelableWrapper);
-    public abstract void updatePointerIcon(float, float);
-    public abstract void windowFocusChanged(boolean, boolean);
-
-
-}
-
--keep class android.view.IWindowFocusObserver {
-
-    public abstract void focusGained(android.os.IBinder);
-    public abstract void focusLost(android.os.IBinder);
-
-
-}
-
--keep class android.view.IWindowId {
-
-    public abstract boolean isFocused();
-    public abstract void registerFocusObserver(android.view.IWindowFocusObserver);
-    public abstract void unregisterFocusObserver(android.view.IWindowFocusObserver);
-
-
-}
-
--keep class android.view.InflateException {
-    <init>();
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.String);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class android.view.InputChannel {
-    <init>();
-
-    public int describeContents();
-    public void dispose();
-    public android.view.InputChannel dup();
-    protected void finalize();
-    public java.lang.String getName();
-    public static android.view.InputChannel[] openInputChannelPair(java.lang.String);
-    public void readFromParcel(android.os.Parcel);
-    public java.lang.String toString();
-    public void transferTo(android.view.InputChannel);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.InputDevice {
-
-    public int describeContents();
-    public void disable();
-    public void enable();
-    public int getControllerNumber();
-    public java.lang.String getDescriptor();
-    public static android.view.InputDevice getDevice(int);
-    public static int[] getDeviceIds();
-    public int getGeneration();
-    public int getId();
-    public android.hardware.input.InputDeviceIdentifier getIdentifier();
-    public android.view.KeyCharacterMap getKeyCharacterMap();
-    public int getKeyboardType();
-    public android.view.InputDevice$MotionRange getMotionRange(int);
-    public android.view.InputDevice$MotionRange getMotionRange(int, int);
-    public java.util.List getMotionRanges();
-    public java.lang.String getName();
-    public int getProductId();
-    public int getSources();
-    public int getVendorId();
-    public android.os.Vibrator getVibrator();
-    public boolean hasButtonUnderPad();
-    public boolean[] hasKeys(int[]);
-    public boolean hasMicrophone();
-    public boolean isEnabled();
-    public boolean isExternal();
-    public boolean isFullKeyboard();
-    public boolean isVirtual();
-    public void setCustomPointerIcon(android.view.PointerIcon);
-    public void setPointerType(int);
-    public boolean supportsSource(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int KEYBOARD_TYPE_ALPHABETIC;
-    public static int KEYBOARD_TYPE_NONE;
-    public static int KEYBOARD_TYPE_NON_ALPHABETIC;
-    public static int MOTION_RANGE_ORIENTATION;
-    public static int MOTION_RANGE_PRESSURE;
-    public static int MOTION_RANGE_SIZE;
-    public static int MOTION_RANGE_TOOL_MAJOR;
-    public static int MOTION_RANGE_TOOL_MINOR;
-    public static int MOTION_RANGE_TOUCH_MAJOR;
-    public static int MOTION_RANGE_TOUCH_MINOR;
-    public static int MOTION_RANGE_X;
-    public static int MOTION_RANGE_Y;
-    public static int SOURCE_ANY;
-    public static int SOURCE_BLUETOOTH_STYLUS;
-    public static int SOURCE_CLASS_BUTTON;
-    public static int SOURCE_CLASS_JOYSTICK;
-    public static int SOURCE_CLASS_MASK;
-    public static int SOURCE_CLASS_NONE;
-    public static int SOURCE_CLASS_POINTER;
-    public static int SOURCE_CLASS_POSITION;
-    public static int SOURCE_CLASS_TRACKBALL;
-    public static int SOURCE_DPAD;
-    public static int SOURCE_GAMEPAD;
-    public static int SOURCE_HDMI;
-    public static int SOURCE_JOYSTICK;
-    public static int SOURCE_KEYBOARD;
-    public static int SOURCE_MOUSE;
-    public static int SOURCE_MOUSE_RELATIVE;
-    public static int SOURCE_ROTARY_ENCODER;
-    public static int SOURCE_STYLUS;
-    public static int SOURCE_TOUCHPAD;
-    public static int SOURCE_TOUCHSCREEN;
-    public static int SOURCE_TOUCH_NAVIGATION;
-    public static int SOURCE_TRACKBALL;
-    public static int SOURCE_UNKNOWN;
-}
-
--keep class android.view.InputDevice$MotionRange {
-
-    public int getAxis();
-    public float getFlat();
-    public float getFuzz();
-    public float getMax();
-    public float getMin();
-    public float getRange();
-    public float getResolution();
-    public int getSource();
-    public boolean isFromSource(int);
-
-
-}
-
--keep class android.view.InputEvent {
-
-    public abstract void cancel();
-    public abstract android.view.InputEvent copy();
-    public int describeContents();
-    public android.view.InputDevice getDevice();
-    public abstract int getDeviceId();
-    public abstract long getEventTime();
-    public abstract long getEventTimeNano();
-    public int getSequenceNumber();
-    public abstract int getSource();
-    public boolean isFromSource(int);
-    public abstract boolean isTainted();
-    protected void prepareForReuse();
-    public void recycle();
-    public void recycleIfNeededAfterDispatch();
-    public abstract void setSource(int);
-    public abstract void setTainted(boolean);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    protected static int PARCEL_TOKEN_KEY_EVENT;
-    protected static int PARCEL_TOKEN_MOTION_EVENT;
-    protected boolean mRecycled;
-    protected int mSeq;
-}
-
--keep class android.view.InputEventConsistencyVerifier {
-    <init>(java.lang.Object, int);
-    <init>(java.lang.Object, int, java.lang.String);
-
-    public static boolean isInstrumentationEnabled();
-    public void onGenericMotionEvent(android.view.MotionEvent, int);
-    public void onInputEvent(android.view.InputEvent, int);
-    public void onKeyEvent(android.view.KeyEvent, int);
-    public void onTouchEvent(android.view.MotionEvent, int);
-    public void onTrackballEvent(android.view.MotionEvent, int);
-    public void onUnhandledEvent(android.view.InputEvent, int);
-    public void reset();
-
-
-    public static int FLAG_RAW_DEVICE_INPUT;
-}
-
--keep class android.view.InputEventReceiver {
-    <init>(android.view.InputChannel, android.os.Looper);
-
-    public boolean consumeBatchedInputEvents(long);
-    public void dispose();
-    protected void finalize();
-    public void finishInputEvent(android.view.InputEvent, boolean);
-    public void onBatchedInputEventPending();
-    public void onInputEvent(android.view.InputEvent);
-
-
-}
-
--keep class android.view.InputQueue {
-    <init>();
-
-    public void dispose();
-    public void dispose(boolean);
-    protected void finalize();
-    public long getNativePtr();
-    public void sendInputEvent(android.view.InputEvent, java.lang.Object, boolean, android.view.InputQueue$FinishedInputEventCallback);
-
-
-}
-
--keep class android.view.InputQueue$Callback {
-
-    public abstract void onInputQueueCreated(android.view.InputQueue);
-    public abstract void onInputQueueDestroyed(android.view.InputQueue);
-
-
-}
-
--keep class android.view.InputQueue$FinishedInputEventCallback {
-
-    public abstract void onFinishedInputEvent(java.lang.Object, boolean);
-
-
-}
-
--keep class android.view.KeyCharacterMap {
-
-    public int describeContents();
-    public static boolean deviceHasKey(int);
-    public static boolean[] deviceHasKeys(int[]);
-    protected void finalize();
-    public int get(int, int);
-    public static int getDeadChar(int, int);
-    public char getDisplayLabel(int);
-    public android.view.KeyEvent[] getEvents(char[]);
-    public android.view.KeyCharacterMap$FallbackAction getFallbackAction(int, int);
-    public boolean getKeyData(int, android.view.KeyCharacterMap$KeyData);
-    public int getKeyboardType();
-    public char getMatch(int, char[]);
-    public char getMatch(int, char[], int);
-    public int getModifierBehavior();
-    public char getNumber(int);
-    public boolean isPrintingKey(int);
-    public static android.view.KeyCharacterMap load(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int ALPHA;
-    public static int BUILT_IN_KEYBOARD;
-    public static int COMBINING_ACCENT;
-    public static int COMBINING_ACCENT_MASK;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FULL;
-    public static char HEX_INPUT;
-    public static int MODIFIER_BEHAVIOR_CHORDED;
-    public static int MODIFIER_BEHAVIOR_CHORDED_OR_TOGGLED;
-    public static int NUMERIC;
-    public static char PICKER_DIALOG_INPUT;
-    public static int PREDICTIVE;
-    public static int SPECIAL_FUNCTION;
-    public static int VIRTUAL_KEYBOARD;
-}
-
--keep class android.view.KeyCharacterMap$FallbackAction {
-
-    public static android.view.KeyCharacterMap$FallbackAction obtain();
-    public void recycle();
-
-
-    public int keyCode;
-    public int metaState;
-}
-
--keep class android.view.KeyCharacterMap$KeyData {
-    <init>();
-
-
-
-    public static int META_LENGTH;
-    public char displayLabel;
-    public char[] meta;
-    public char number;
-}
-
--keep class android.view.KeyEvent {
-    <init>(int, int);
-    <init>(long, long, int, int, int);
-    <init>(long, long, int, int, int, int);
-    <init>(long, long, int, int, int, int, int, int);
-    <init>(long, long, int, int, int, int, int, int, int);
-    <init>(long, long, int, int, int, int, int, int, int, int);
-    <init>(long, java.lang.String, int, int);
-    <init>(android.view.KeyEvent);
-    <init>(android.view.KeyEvent, long, int);
-
-    public static java.lang.String actionToString(int);
-    public void cancel();
-    public static android.view.KeyEvent changeAction(android.view.KeyEvent, int);
-    public static android.view.KeyEvent changeFlags(android.view.KeyEvent, int);
-    public static android.view.KeyEvent changeTimeRepeat(android.view.KeyEvent, long, int);
-    public static android.view.KeyEvent changeTimeRepeat(android.view.KeyEvent, long, int, int);
-    public android.view.KeyEvent copy();
-    public android.view.InputEvent copy();
-    public static android.view.KeyEvent createFromParcelBody(android.os.Parcel);
-    public boolean dispatch(android.view.KeyEvent$Callback);
-    public boolean dispatch(android.view.KeyEvent$Callback, android.view.KeyEvent$DispatcherState, java.lang.Object);
-    public int getAction();
-    public java.lang.String getCharacters();
-    public static int getDeadChar(int, int);
-    public int getDeviceId();
-    public char getDisplayLabel();
-    public long getDownTime();
-    public long getEventTime();
-    public long getEventTimeNano();
-    public int getFlags();
-    public android.view.KeyCharacterMap getKeyCharacterMap();
-    public int getKeyCode();
-    public boolean getKeyData(android.view.KeyCharacterMap$KeyData);
-    public int getKeyboardDevice();
-    public char getMatch(char[]);
-    public char getMatch(char[], int);
-    public static int getMaxKeyCode();
-    public int getMetaState();
-    public static int getModifierMetaStateMask();
-    public int getModifiers();
-    public char getNumber();
-    public int getRepeatCount();
-    public int getScanCode();
-    public int getSource();
-    public int getUnicodeChar();
-    public int getUnicodeChar(int);
-    public boolean hasModifiers(int);
-    public boolean hasNoModifiers();
-    public static boolean isAltKey(int);
-    public boolean isAltPressed();
-    public boolean isCanceled();
-    public boolean isCapsLockOn();
-    public static boolean isConfirmKey(int);
-    public boolean isCtrlPressed();
-    public boolean isDown();
-    public boolean isFunctionPressed();
-    public static boolean isGamepadButton(int);
-    public boolean isLongPress();
-    public static boolean isMediaKey(int);
-    public static boolean isMetaKey(int);
-    public boolean isMetaPressed();
-    public static boolean isModifierKey(int);
-    public boolean isNumLockOn();
-    public boolean isPrintingKey();
-    public boolean isScrollLockOn();
-    public boolean isShiftPressed();
-    public boolean isSymPressed();
-    public boolean isSystem();
-    public static boolean isSystemKey(int);
-    public boolean isTainted();
-    public boolean isTracking();
-    public boolean isWakeKey();
-    public static boolean isWakeKey(int);
-    public static int keyCodeFromString(java.lang.String);
-    public static java.lang.String keyCodeToString(int);
-    public static boolean metaStateHasModifiers(int, int);
-    public static boolean metaStateHasNoModifiers(int);
-    public static java.lang.String metaStateToString(int);
-    public static int normalizeMetaState(int);
-    public static android.view.KeyEvent obtain(long, long, int, int, int, int, int, int, int, int, java.lang.String);
-    public static android.view.KeyEvent obtain(android.view.KeyEvent);
-    public void recycle();
-    public void recycleIfNeededAfterDispatch();
-    public void setSource(int);
-    public void setTainted(boolean);
-    public void startTracking();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int ACTION_DOWN;
-    public static int ACTION_MULTIPLE;
-    public static int ACTION_UP;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_CANCELED;
-    public static int FLAG_CANCELED_LONG_PRESS;
-    public static int FLAG_EDITOR_ACTION;
-    public static int FLAG_FALLBACK;
-    public static int FLAG_FROM_SYSTEM;
-    public static int FLAG_KEEP_TOUCH_MODE;
-    public static int FLAG_LONG_PRESS;
-    public static int FLAG_PREDISPATCH;
-    public static int FLAG_SOFT_KEYBOARD;
-    public static int FLAG_START_TRACKING;
-    public static int FLAG_TAINTED;
-    public static int FLAG_TRACKING;
-    public static int FLAG_VIRTUAL_HARD_KEY;
-    public static int FLAG_WOKE_HERE;
-    public static int KEYCODE_0;
-    public static int KEYCODE_1;
-    public static int KEYCODE_11;
-    public static int KEYCODE_12;
-    public static int KEYCODE_2;
-    public static int KEYCODE_3;
-    public static int KEYCODE_3D_MODE;
-    public static int KEYCODE_4;
-    public static int KEYCODE_5;
-    public static int KEYCODE_6;
-    public static int KEYCODE_7;
-    public static int KEYCODE_8;
-    public static int KEYCODE_9;
-    public static int KEYCODE_A;
-    public static int KEYCODE_ALL_APPS;
-    public static int KEYCODE_ALT_LEFT;
-    public static int KEYCODE_ALT_RIGHT;
-    public static int KEYCODE_APOSTROPHE;
-    public static int KEYCODE_APP_SWITCH;
-    public static int KEYCODE_ASSIST;
-    public static int KEYCODE_AT;
-    public static int KEYCODE_AVR_INPUT;
-    public static int KEYCODE_AVR_POWER;
-    public static int KEYCODE_B;
-    public static int KEYCODE_BACK;
-    public static int KEYCODE_BACKSLASH;
-    public static int KEYCODE_BOOKMARK;
-    public static int KEYCODE_BREAK;
-    public static int KEYCODE_BRIGHTNESS_DOWN;
-    public static int KEYCODE_BRIGHTNESS_UP;
-    public static int KEYCODE_BUTTON_1;
-    public static int KEYCODE_BUTTON_10;
-    public static int KEYCODE_BUTTON_11;
-    public static int KEYCODE_BUTTON_12;
-    public static int KEYCODE_BUTTON_13;
-    public static int KEYCODE_BUTTON_14;
-    public static int KEYCODE_BUTTON_15;
-    public static int KEYCODE_BUTTON_16;
-    public static int KEYCODE_BUTTON_2;
-    public static int KEYCODE_BUTTON_3;
-    public static int KEYCODE_BUTTON_4;
-    public static int KEYCODE_BUTTON_5;
-    public static int KEYCODE_BUTTON_6;
-    public static int KEYCODE_BUTTON_7;
-    public static int KEYCODE_BUTTON_8;
-    public static int KEYCODE_BUTTON_9;
-    public static int KEYCODE_BUTTON_A;
-    public static int KEYCODE_BUTTON_B;
-    public static int KEYCODE_BUTTON_C;
-    public static int KEYCODE_BUTTON_L1;
-    public static int KEYCODE_BUTTON_L2;
-    public static int KEYCODE_BUTTON_MODE;
-    public static int KEYCODE_BUTTON_R1;
-    public static int KEYCODE_BUTTON_R2;
-    public static int KEYCODE_BUTTON_SELECT;
-    public static int KEYCODE_BUTTON_START;
-    public static int KEYCODE_BUTTON_THUMBL;
-    public static int KEYCODE_BUTTON_THUMBR;
-    public static int KEYCODE_BUTTON_X;
-    public static int KEYCODE_BUTTON_Y;
-    public static int KEYCODE_BUTTON_Z;
-    public static int KEYCODE_C;
-    public static int KEYCODE_CALCULATOR;
-    public static int KEYCODE_CALENDAR;
-    public static int KEYCODE_CALL;
-    public static int KEYCODE_CAMERA;
-    public static int KEYCODE_CAPS_LOCK;
-    public static int KEYCODE_CAPTIONS;
-    public static int KEYCODE_CHANNEL_DOWN;
-    public static int KEYCODE_CHANNEL_UP;
-    public static int KEYCODE_CLEAR;
-    public static int KEYCODE_COMMA;
-    public static int KEYCODE_CONTACTS;
-    public static int KEYCODE_COPY;
-    public static int KEYCODE_CTRL_LEFT;
-    public static int KEYCODE_CTRL_RIGHT;
-    public static int KEYCODE_CUT;
-    public static int KEYCODE_D;
-    public static int KEYCODE_DEL;
-    public static int KEYCODE_DPAD_CENTER;
-    public static int KEYCODE_DPAD_DOWN;
-    public static int KEYCODE_DPAD_DOWN_LEFT;
-    public static int KEYCODE_DPAD_DOWN_RIGHT;
-    public static int KEYCODE_DPAD_LEFT;
-    public static int KEYCODE_DPAD_RIGHT;
-    public static int KEYCODE_DPAD_UP;
-    public static int KEYCODE_DPAD_UP_LEFT;
-    public static int KEYCODE_DPAD_UP_RIGHT;
-    public static int KEYCODE_DVR;
-    public static int KEYCODE_E;
-    public static int KEYCODE_EISU;
-    public static int KEYCODE_ENDCALL;
-    public static int KEYCODE_ENTER;
-    public static int KEYCODE_ENVELOPE;
-    public static int KEYCODE_EQUALS;
-    public static int KEYCODE_ESCAPE;
-    public static int KEYCODE_EXPLORER;
-    public static int KEYCODE_F;
-    public static int KEYCODE_F1;
-    public static int KEYCODE_F10;
-    public static int KEYCODE_F11;
-    public static int KEYCODE_F12;
-    public static int KEYCODE_F2;
-    public static int KEYCODE_F3;
-    public static int KEYCODE_F4;
-    public static int KEYCODE_F5;
-    public static int KEYCODE_F6;
-    public static int KEYCODE_F7;
-    public static int KEYCODE_F8;
-    public static int KEYCODE_F9;
-    public static int KEYCODE_FOCUS;
-    public static int KEYCODE_FORWARD;
-    public static int KEYCODE_FORWARD_DEL;
-    public static int KEYCODE_FUNCTION;
-    public static int KEYCODE_G;
-    public static int KEYCODE_GRAVE;
-    public static int KEYCODE_GUIDE;
-    public static int KEYCODE_H;
-    public static int KEYCODE_HEADSETHOOK;
-    public static int KEYCODE_HELP;
-    public static int KEYCODE_HENKAN;
-    public static int KEYCODE_HOME;
-    public static int KEYCODE_I;
-    public static int KEYCODE_INFO;
-    public static int KEYCODE_INSERT;
-    public static int KEYCODE_J;
-    public static int KEYCODE_K;
-    public static int KEYCODE_KANA;
-    public static int KEYCODE_KATAKANA_HIRAGANA;
-    public static int KEYCODE_L;
-    public static int KEYCODE_LANGUAGE_SWITCH;
-    public static int KEYCODE_LAST_CHANNEL;
-    public static int KEYCODE_LEFT_BRACKET;
-    public static int KEYCODE_M;
-    public static int KEYCODE_MANNER_MODE;
-    public static int KEYCODE_MEDIA_AUDIO_TRACK;
-    public static int KEYCODE_MEDIA_CLOSE;
-    public static int KEYCODE_MEDIA_EJECT;
-    public static int KEYCODE_MEDIA_FAST_FORWARD;
-    public static int KEYCODE_MEDIA_NEXT;
-    public static int KEYCODE_MEDIA_PAUSE;
-    public static int KEYCODE_MEDIA_PLAY;
-    public static int KEYCODE_MEDIA_PLAY_PAUSE;
-    public static int KEYCODE_MEDIA_PREVIOUS;
-    public static int KEYCODE_MEDIA_RECORD;
-    public static int KEYCODE_MEDIA_REWIND;
-    public static int KEYCODE_MEDIA_SKIP_BACKWARD;
-    public static int KEYCODE_MEDIA_SKIP_FORWARD;
-    public static int KEYCODE_MEDIA_STEP_BACKWARD;
-    public static int KEYCODE_MEDIA_STEP_FORWARD;
-    public static int KEYCODE_MEDIA_STOP;
-    public static int KEYCODE_MEDIA_TOP_MENU;
-    public static int KEYCODE_MENU;
-    public static int KEYCODE_META_LEFT;
-    public static int KEYCODE_META_RIGHT;
-    public static int KEYCODE_MINUS;
-    public static int KEYCODE_MOVE_END;
-    public static int KEYCODE_MOVE_HOME;
-    public static int KEYCODE_MUHENKAN;
-    public static int KEYCODE_MUSIC;
-    public static int KEYCODE_MUTE;
-    public static int KEYCODE_N;
-    public static int KEYCODE_NAVIGATE_IN;
-    public static int KEYCODE_NAVIGATE_NEXT;
-    public static int KEYCODE_NAVIGATE_OUT;
-    public static int KEYCODE_NAVIGATE_PREVIOUS;
-    public static int KEYCODE_NOTIFICATION;
-    public static int KEYCODE_NUM;
-    public static int KEYCODE_NUMPAD_0;
-    public static int KEYCODE_NUMPAD_1;
-    public static int KEYCODE_NUMPAD_2;
-    public static int KEYCODE_NUMPAD_3;
-    public static int KEYCODE_NUMPAD_4;
-    public static int KEYCODE_NUMPAD_5;
-    public static int KEYCODE_NUMPAD_6;
-    public static int KEYCODE_NUMPAD_7;
-    public static int KEYCODE_NUMPAD_8;
-    public static int KEYCODE_NUMPAD_9;
-    public static int KEYCODE_NUMPAD_ADD;
-    public static int KEYCODE_NUMPAD_COMMA;
-    public static int KEYCODE_NUMPAD_DIVIDE;
-    public static int KEYCODE_NUMPAD_DOT;
-    public static int KEYCODE_NUMPAD_ENTER;
-    public static int KEYCODE_NUMPAD_EQUALS;
-    public static int KEYCODE_NUMPAD_LEFT_PAREN;
-    public static int KEYCODE_NUMPAD_MULTIPLY;
-    public static int KEYCODE_NUMPAD_RIGHT_PAREN;
-    public static int KEYCODE_NUMPAD_SUBTRACT;
-    public static int KEYCODE_NUM_LOCK;
-    public static int KEYCODE_O;
-    public static int KEYCODE_P;
-    public static int KEYCODE_PAGE_DOWN;
-    public static int KEYCODE_PAGE_UP;
-    public static int KEYCODE_PAIRING;
-    public static int KEYCODE_PASTE;
-    public static int KEYCODE_PERIOD;
-    public static int KEYCODE_PICTSYMBOLS;
-    public static int KEYCODE_PLUS;
-    public static int KEYCODE_POUND;
-    public static int KEYCODE_POWER;
-    public static int KEYCODE_PROG_BLUE;
-    public static int KEYCODE_PROG_GREEN;
-    public static int KEYCODE_PROG_RED;
-    public static int KEYCODE_PROG_YELLOW;
-    public static int KEYCODE_Q;
-    public static int KEYCODE_R;
-    public static int KEYCODE_REFRESH;
-    public static int KEYCODE_RIGHT_BRACKET;
-    public static int KEYCODE_RO;
-    public static int KEYCODE_S;
-    public static int KEYCODE_SCROLL_LOCK;
-    public static int KEYCODE_SEARCH;
-    public static int KEYCODE_SEMICOLON;
-    public static int KEYCODE_SETTINGS;
-    public static int KEYCODE_SHIFT_LEFT;
-    public static int KEYCODE_SHIFT_RIGHT;
-    public static int KEYCODE_SLASH;
-    public static int KEYCODE_SLEEP;
-    public static int KEYCODE_SOFT_LEFT;
-    public static int KEYCODE_SOFT_RIGHT;
-    public static int KEYCODE_SOFT_SLEEP;
-    public static int KEYCODE_SPACE;
-    public static int KEYCODE_STAR;
-    public static int KEYCODE_STB_INPUT;
-    public static int KEYCODE_STB_POWER;
-    public static int KEYCODE_STEM_1;
-    public static int KEYCODE_STEM_2;
-    public static int KEYCODE_STEM_3;
-    public static int KEYCODE_STEM_PRIMARY;
-    public static int KEYCODE_SWITCH_CHARSET;
-    public static int KEYCODE_SYM;
-    public static int KEYCODE_SYSRQ;
-    public static int KEYCODE_SYSTEM_NAVIGATION_DOWN;
-    public static int KEYCODE_SYSTEM_NAVIGATION_LEFT;
-    public static int KEYCODE_SYSTEM_NAVIGATION_RIGHT;
-    public static int KEYCODE_SYSTEM_NAVIGATION_UP;
-    public static int KEYCODE_T;
-    public static int KEYCODE_TAB;
-    public static int KEYCODE_TV;
-    public static int KEYCODE_TV_ANTENNA_CABLE;
-    public static int KEYCODE_TV_AUDIO_DESCRIPTION;
-    public static int KEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN;
-    public static int KEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP;
-    public static int KEYCODE_TV_CONTENTS_MENU;
-    public static int KEYCODE_TV_DATA_SERVICE;
-    public static int KEYCODE_TV_INPUT;
-    public static int KEYCODE_TV_INPUT_COMPONENT_1;
-    public static int KEYCODE_TV_INPUT_COMPONENT_2;
-    public static int KEYCODE_TV_INPUT_COMPOSITE_1;
-    public static int KEYCODE_TV_INPUT_COMPOSITE_2;
-    public static int KEYCODE_TV_INPUT_HDMI_1;
-    public static int KEYCODE_TV_INPUT_HDMI_2;
-    public static int KEYCODE_TV_INPUT_HDMI_3;
-    public static int KEYCODE_TV_INPUT_HDMI_4;
-    public static int KEYCODE_TV_INPUT_VGA_1;
-    public static int KEYCODE_TV_MEDIA_CONTEXT_MENU;
-    public static int KEYCODE_TV_NETWORK;
-    public static int KEYCODE_TV_NUMBER_ENTRY;
-    public static int KEYCODE_TV_POWER;
-    public static int KEYCODE_TV_RADIO_SERVICE;
-    public static int KEYCODE_TV_SATELLITE;
-    public static int KEYCODE_TV_SATELLITE_BS;
-    public static int KEYCODE_TV_SATELLITE_CS;
-    public static int KEYCODE_TV_SATELLITE_SERVICE;
-    public static int KEYCODE_TV_TELETEXT;
-    public static int KEYCODE_TV_TERRESTRIAL_ANALOG;
-    public static int KEYCODE_TV_TERRESTRIAL_DIGITAL;
-    public static int KEYCODE_TV_TIMER_PROGRAMMING;
-    public static int KEYCODE_TV_ZOOM_MODE;
-    public static int KEYCODE_U;
-    public static int KEYCODE_UNKNOWN;
-    public static int KEYCODE_V;
-    public static int KEYCODE_VOICE_ASSIST;
-    public static int KEYCODE_VOLUME_DOWN;
-    public static int KEYCODE_VOLUME_MUTE;
-    public static int KEYCODE_VOLUME_UP;
-    public static int KEYCODE_W;
-    public static int KEYCODE_WAKEUP;
-    public static int KEYCODE_WINDOW;
-    public static int KEYCODE_X;
-    public static int KEYCODE_Y;
-    public static int KEYCODE_YEN;
-    public static int KEYCODE_Z;
-    public static int KEYCODE_ZENKAKU_HANKAKU;
-    public static int KEYCODE_ZOOM_IN;
-    public static int KEYCODE_ZOOM_OUT;
-    public static int LAST_KEYCODE;
-    public static int MAX_KEYCODE;
-    public static int META_ALT_LEFT_ON;
-    public static int META_ALT_LOCKED;
-    public static int META_ALT_MASK;
-    public static int META_ALT_ON;
-    public static int META_ALT_RIGHT_ON;
-    public static int META_CAPS_LOCK_ON;
-    public static int META_CAP_LOCKED;
-    public static int META_CTRL_LEFT_ON;
-    public static int META_CTRL_MASK;
-    public static int META_CTRL_ON;
-    public static int META_CTRL_RIGHT_ON;
-    public static int META_FUNCTION_ON;
-    public static int META_META_LEFT_ON;
-    public static int META_META_MASK;
-    public static int META_META_ON;
-    public static int META_META_RIGHT_ON;
-    public static int META_NUM_LOCK_ON;
-    public static int META_SCROLL_LOCK_ON;
-    public static int META_SELECTING;
-    public static int META_SHIFT_LEFT_ON;
-    public static int META_SHIFT_MASK;
-    public static int META_SHIFT_ON;
-    public static int META_SHIFT_RIGHT_ON;
-    public static int META_SYM_LOCKED;
-    public static int META_SYM_ON;
-}
-
--keep class android.view.KeyEvent$Callback {
-
-    public abstract boolean onKeyDown(int, android.view.KeyEvent);
-    public abstract boolean onKeyLongPress(int, android.view.KeyEvent);
-    public abstract boolean onKeyMultiple(int, int, android.view.KeyEvent);
-    public abstract boolean onKeyUp(int, android.view.KeyEvent);
-
-
-}
-
--keep class android.view.KeyEvent$DispatcherState {
-    <init>();
-
-    public void handleUpEvent(android.view.KeyEvent);
-    public boolean isTracking(android.view.KeyEvent);
-    public void performedLongPress(android.view.KeyEvent);
-    public void reset();
-    public void reset(java.lang.Object);
-    public void startTracking(android.view.KeyEvent, java.lang.Object);
-
-
-}
-
--keep class android.view.KeyboardShortcutGroup {
-    <init>(java.lang.CharSequence, java.util.List);
-    <init>(java.lang.CharSequence);
-    <init>(java.lang.CharSequence, java.util.List, boolean);
-    <init>(java.lang.CharSequence, boolean);
-
-    public void addItem(android.view.KeyboardShortcutInfo);
-    public int describeContents();
-    public java.util.List getItems();
-    public java.lang.CharSequence getLabel();
-    public boolean isSystemGroup();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.KeyboardShortcutInfo {
-    <init>(java.lang.CharSequence, android.graphics.drawable.Icon, int, int);
-    <init>(java.lang.CharSequence, int, int);
-    <init>(java.lang.CharSequence, char, int);
-
-    public int describeContents();
-    public char getBaseCharacter();
-    public android.graphics.drawable.Icon getIcon();
-    public int getKeycode();
-    public java.lang.CharSequence getLabel();
-    public int getModifiers();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.LayoutInflater {
-    <init>(android.content.Context);
-    <init>(android.view.LayoutInflater, android.content.Context);
-
-    public abstract android.view.LayoutInflater cloneInContext(android.content.Context);
-    public android.view.View createView(java.lang.String, java.lang.String, android.util.AttributeSet);
-    public static android.view.LayoutInflater from(android.content.Context);
-    public android.content.Context getContext();
-    public android.view.LayoutInflater$Factory getFactory();
-    public android.view.LayoutInflater$Factory2 getFactory2();
-    public android.view.LayoutInflater$Filter getFilter();
-    public android.view.View inflate(int, android.view.ViewGroup);
-    public android.view.View inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup);
-    public android.view.View inflate(int, android.view.ViewGroup, boolean);
-    public android.view.View inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean);
-    protected android.view.View onCreateView(java.lang.String, android.util.AttributeSet);
-    protected android.view.View onCreateView(android.view.View, java.lang.String, android.util.AttributeSet);
-    public void setFactory(android.view.LayoutInflater$Factory);
-    public void setFactory2(android.view.LayoutInflater$Factory2);
-    public void setFilter(android.view.LayoutInflater$Filter);
-    public void setPrivateFactory(android.view.LayoutInflater$Factory2);
-
-
-    protected android.content.Context mContext;
-}
-
--keep class android.view.LayoutInflater$Factory {
-
-    public abstract android.view.View onCreateView(java.lang.String, android.content.Context, android.util.AttributeSet);
-
-
-}
-
--keep class android.view.LayoutInflater$Factory2 {
-
-    public abstract android.view.View onCreateView(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet);
-
-
-}
-
--keep class android.view.LayoutInflater$Filter {
-
-    public abstract boolean onLoadClass(java.lang.Class);
-
-
-}
-
--keep class android.view.MagnificationSpec {
-
-    public void clear();
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void initialize(float, float, float);
-    public boolean isNop();
-    public static android.view.MagnificationSpec obtain(android.view.MagnificationSpec);
-    public static android.view.MagnificationSpec obtain();
-    public void recycle();
-    public void setTo(android.view.MagnificationSpec);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public float offsetX;
-    public float offsetY;
-    public float scale;
-}
-
--keep class android.view.Menu {
-
-    public abstract android.view.MenuItem add(java.lang.CharSequence);
-    public abstract android.view.MenuItem add(int);
-    public abstract android.view.MenuItem add(int, int, int, java.lang.CharSequence);
-    public abstract android.view.MenuItem add(int, int, int, int);
-    public abstract int addIntentOptions(int, int, int, android.content.ComponentName, android.content.Intent[], android.content.Intent, int, android.view.MenuItem[]);
-    public abstract android.view.SubMenu addSubMenu(java.lang.CharSequence);
-    public abstract android.view.SubMenu addSubMenu(int);
-    public abstract android.view.SubMenu addSubMenu(int, int, int, java.lang.CharSequence);
-    public abstract android.view.SubMenu addSubMenu(int, int, int, int);
-    public abstract void clear();
-    public abstract void close();
-    public abstract android.view.MenuItem findItem(int);
-    public abstract android.view.MenuItem getItem(int);
-    public abstract boolean hasVisibleItems();
-    public abstract boolean isShortcutKey(int, android.view.KeyEvent);
-    public abstract boolean performIdentifierAction(int, int);
-    public abstract boolean performShortcut(int, android.view.KeyEvent, int);
-    public abstract void removeGroup(int);
-    public abstract void removeItem(int);
-    public abstract void setGroupCheckable(int, boolean, boolean);
-    public void setGroupDividerEnabled(boolean);
-    public abstract void setGroupEnabled(int, boolean);
-    public abstract void setGroupVisible(int, boolean);
-    public abstract void setQwertyMode(boolean);
-    public abstract int size();
-
-
-    public static int CATEGORY_ALTERNATIVE;
-    public static int CATEGORY_CONTAINER;
-    public static int CATEGORY_MASK;
-    public static int CATEGORY_SECONDARY;
-    public static int CATEGORY_SHIFT;
-    public static int CATEGORY_SYSTEM;
-    public static int FIRST;
-    public static int FLAG_ALWAYS_PERFORM_CLOSE;
-    public static int FLAG_APPEND_TO_GROUP;
-    public static int FLAG_PERFORM_NO_CLOSE;
-    public static int NONE;
-    public static int SUPPORTED_MODIFIERS_MASK;
-    public static int USER_MASK;
-    public static int USER_SHIFT;
-}
-
--keep class android.view.MenuInflater {
-    <init>(android.content.Context);
-    <init>(android.content.Context, java.lang.Object);
-
-    public void inflate(int, android.view.Menu);
-
-
-}
-
--keep class android.view.MenuItem {
-
-    public abstract boolean collapseActionView();
-    public abstract boolean expandActionView();
-    public abstract android.view.ActionProvider getActionProvider();
-    public abstract android.view.View getActionView();
-    public int getAlphabeticModifiers();
-    public abstract char getAlphabeticShortcut();
-    public java.lang.CharSequence getContentDescription();
-    public abstract int getGroupId();
-    public abstract android.graphics.drawable.Drawable getIcon();
-    public android.content.res.ColorStateList getIconTintList();
-    public android.graphics.PorterDuff$Mode getIconTintMode();
-    public abstract android.content.Intent getIntent();
-    public abstract int getItemId();
-    public abstract android.view.ContextMenu$ContextMenuInfo getMenuInfo();
-    public int getNumericModifiers();
-    public abstract char getNumericShortcut();
-    public abstract int getOrder();
-    public abstract android.view.SubMenu getSubMenu();
-    public abstract java.lang.CharSequence getTitle();
-    public abstract java.lang.CharSequence getTitleCondensed();
-    public java.lang.CharSequence getTooltipText();
-    public abstract boolean hasSubMenu();
-    public abstract boolean isActionViewExpanded();
-    public abstract boolean isCheckable();
-    public abstract boolean isChecked();
-    public abstract boolean isEnabled();
-    public abstract boolean isVisible();
-    public boolean requiresActionButton();
-    public boolean requiresOverflow();
-    public abstract android.view.MenuItem setActionProvider(android.view.ActionProvider);
-    public abstract android.view.MenuItem setActionView(android.view.View);
-    public abstract android.view.MenuItem setActionView(int);
-    public abstract android.view.MenuItem setAlphabeticShortcut(char);
-    public android.view.MenuItem setAlphabeticShortcut(char, int);
-    public abstract android.view.MenuItem setCheckable(boolean);
-    public abstract android.view.MenuItem setChecked(boolean);
-    public android.view.MenuItem setContentDescription(java.lang.CharSequence);
-    public abstract android.view.MenuItem setEnabled(boolean);
-    public abstract android.view.MenuItem setIcon(android.graphics.drawable.Drawable);
-    public abstract android.view.MenuItem setIcon(int);
-    public android.view.MenuItem setIconTintList(android.content.res.ColorStateList);
-    public android.view.MenuItem setIconTintMode(android.graphics.PorterDuff$Mode);
-    public abstract android.view.MenuItem setIntent(android.content.Intent);
-    public abstract android.view.MenuItem setNumericShortcut(char);
-    public android.view.MenuItem setNumericShortcut(char, int);
-    public abstract android.view.MenuItem setOnActionExpandListener(android.view.MenuItem$OnActionExpandListener);
-    public abstract android.view.MenuItem setOnMenuItemClickListener(android.view.MenuItem$OnMenuItemClickListener);
-    public abstract android.view.MenuItem setShortcut(char, char);
-    public android.view.MenuItem setShortcut(char, char, int, int);
-    public abstract void setShowAsAction(int);
-    public abstract android.view.MenuItem setShowAsActionFlags(int);
-    public abstract android.view.MenuItem setTitle(java.lang.CharSequence);
-    public abstract android.view.MenuItem setTitle(int);
-    public abstract android.view.MenuItem setTitleCondensed(java.lang.CharSequence);
-    public android.view.MenuItem setTooltipText(java.lang.CharSequence);
-    public abstract android.view.MenuItem setVisible(boolean);
-
-
-    public static int SHOW_AS_ACTION_ALWAYS;
-    public static int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW;
-    public static int SHOW_AS_ACTION_IF_ROOM;
-    public static int SHOW_AS_ACTION_NEVER;
-    public static int SHOW_AS_ACTION_WITH_TEXT;
-}
-
--keep class android.view.MenuItem$OnActionExpandListener {
-
-    public abstract boolean onMenuItemActionCollapse(android.view.MenuItem);
-    public abstract boolean onMenuItemActionExpand(android.view.MenuItem);
-
-
-}
-
--keep class android.view.MenuItem$OnMenuItemClickListener {
-
-    public abstract boolean onMenuItemClick(android.view.MenuItem);
-
-
-}
-
--keep class android.view.MotionEvent {
-
-    public static java.lang.String actionToString(int);
-    public void addBatch(long, float, float, float, float, int);
-    public void addBatch(long, android.view.MotionEvent$PointerCoords[], int);
-    public boolean addBatch(android.view.MotionEvent);
-    public static int axisFromString(java.lang.String);
-    public static java.lang.String axisToString(int);
-    public static java.lang.String buttonStateToString(int);
-    public void cancel();
-    public android.view.MotionEvent clampNoHistory(float, float, float, float);
-    public android.view.MotionEvent copy();
-    public android.view.InputEvent copy();
-    public static android.view.MotionEvent createFromParcelBody(android.os.Parcel);
-    protected void finalize();
-    public int findPointerIndex(int);
-    public int getAction();
-    public int getActionButton();
-    public int getActionIndex();
-    public int getActionMasked();
-    public float getAxisValue(int);
-    public float getAxisValue(int, int);
-    public int getButtonState();
-    public int getDeviceId();
-    public int getDisplayId();
-    public long getDownTime();
-    public int getEdgeFlags();
-    public long getEventTime();
-    public long getEventTimeNano();
-    public int getFlags();
-    public float getHistoricalAxisValue(int, int);
-    public float getHistoricalAxisValue(int, int, int);
-    public long getHistoricalEventTime(int);
-    public long getHistoricalEventTimeNano(int);
-    public float getHistoricalOrientation(int);
-    public float getHistoricalOrientation(int, int);
-    public void getHistoricalPointerCoords(int, int, android.view.MotionEvent$PointerCoords);
-    public float getHistoricalPressure(int);
-    public float getHistoricalPressure(int, int);
-    public float getHistoricalSize(int);
-    public float getHistoricalSize(int, int);
-    public float getHistoricalToolMajor(int);
-    public float getHistoricalToolMajor(int, int);
-    public float getHistoricalToolMinor(int);
-    public float getHistoricalToolMinor(int, int);
-    public float getHistoricalTouchMajor(int);
-    public float getHistoricalTouchMajor(int, int);
-    public float getHistoricalTouchMinor(int);
-    public float getHistoricalTouchMinor(int, int);
-    public float getHistoricalX(int);
-    public float getHistoricalX(int, int);
-    public float getHistoricalY(int);
-    public float getHistoricalY(int, int);
-    public int getHistorySize();
-    public int getMetaState();
-    public float getOrientation();
-    public float getOrientation(int);
-    public void getPointerCoords(int, android.view.MotionEvent$PointerCoords);
-    public int getPointerCount();
-    public int getPointerId(int);
-    public int getPointerIdBits();
-    public void getPointerProperties(int, android.view.MotionEvent$PointerProperties);
-    public float getPressure();
-    public float getPressure(int);
-    public float getRawX();
-    public float getRawY();
-    public float getSize();
-    public float getSize(int);
-    public int getSource();
-    public float getToolMajor();
-    public float getToolMajor(int);
-    public float getToolMinor();
-    public float getToolMinor(int);
-    public int getToolType(int);
-    public float getTouchMajor();
-    public float getTouchMajor(int);
-    public float getTouchMinor();
-    public float getTouchMinor(int);
-    public float getX();
-    public float getX(int);
-    public float getXPrecision();
-    public float getY();
-    public float getY(int);
-    public float getYPrecision();
-    public boolean isButtonPressed(int);
-    public boolean isHoverExitPending();
-    public boolean isTainted();
-    public boolean isTargetAccessibilityFocus();
-    public boolean isTouchEvent();
-    public boolean isWithinBoundsNoHistory(float, float, float, float);
-    public static android.view.MotionEvent obtain(long, long, int, int, android.view.MotionEvent$PointerProperties[], android.view.MotionEvent$PointerCoords[], int, int, float, float, int, int, int, int, int);
-    public static android.view.MotionEvent obtain(long, long, int, int, android.view.MotionEvent$PointerProperties[], android.view.MotionEvent$PointerCoords[], int, int, float, float, int, int, int, int);
-    public static android.view.MotionEvent obtain(long, long, int, int, int[], android.view.MotionEvent$PointerCoords[], int, float, float, int, int, int, int);
-    public static android.view.MotionEvent obtain(long, long, int, float, float, float, float, int, float, float, int, int);
-    public static android.view.MotionEvent obtain(long, long, int, int, float, float, float, float, int, float, float, int, int);
-    public static android.view.MotionEvent obtain(long, long, int, float, float, int);
-    public static android.view.MotionEvent obtain(android.view.MotionEvent);
-    public static android.view.MotionEvent obtainNoHistory(android.view.MotionEvent);
-    public void offsetLocation(float, float);
-    public void recycle();
-    public void scale(float);
-    public void setAction(int);
-    public void setActionButton(int);
-    public void setButtonState(int);
-    public void setDisplayId(int);
-    public void setDownTime(long);
-    public void setEdgeFlags(int);
-    public void setHoverExitPending(boolean);
-    public void setLocation(float, float);
-    public void setSource(int);
-    public void setTainted(boolean);
-    public void setTargetAccessibilityFocus(boolean);
-    public android.view.MotionEvent split(int);
-    public java.lang.String toString();
-    public static java.lang.String toolTypeToString(int);
-    public void transform(android.graphics.Matrix);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int ACTION_BUTTON_PRESS;
-    public static int ACTION_BUTTON_RELEASE;
-    public static int ACTION_CANCEL;
-    public static int ACTION_DOWN;
-    public static int ACTION_HOVER_ENTER;
-    public static int ACTION_HOVER_EXIT;
-    public static int ACTION_HOVER_MOVE;
-    public static int ACTION_MASK;
-    public static int ACTION_MOVE;
-    public static int ACTION_OUTSIDE;
-    public static int ACTION_POINTER_1_DOWN;
-    public static int ACTION_POINTER_1_UP;
-    public static int ACTION_POINTER_2_DOWN;
-    public static int ACTION_POINTER_2_UP;
-    public static int ACTION_POINTER_3_DOWN;
-    public static int ACTION_POINTER_3_UP;
-    public static int ACTION_POINTER_DOWN;
-    public static int ACTION_POINTER_ID_MASK;
-    public static int ACTION_POINTER_ID_SHIFT;
-    public static int ACTION_POINTER_INDEX_MASK;
-    public static int ACTION_POINTER_INDEX_SHIFT;
-    public static int ACTION_POINTER_UP;
-    public static int ACTION_SCROLL;
-    public static int ACTION_UP;
-    public static int AXIS_BRAKE;
-    public static int AXIS_DISTANCE;
-    public static int AXIS_GAS;
-    public static int AXIS_GENERIC_1;
-    public static int AXIS_GENERIC_10;
-    public static int AXIS_GENERIC_11;
-    public static int AXIS_GENERIC_12;
-    public static int AXIS_GENERIC_13;
-    public static int AXIS_GENERIC_14;
-    public static int AXIS_GENERIC_15;
-    public static int AXIS_GENERIC_16;
-    public static int AXIS_GENERIC_2;
-    public static int AXIS_GENERIC_3;
-    public static int AXIS_GENERIC_4;
-    public static int AXIS_GENERIC_5;
-    public static int AXIS_GENERIC_6;
-    public static int AXIS_GENERIC_7;
-    public static int AXIS_GENERIC_8;
-    public static int AXIS_GENERIC_9;
-    public static int AXIS_HAT_X;
-    public static int AXIS_HAT_Y;
-    public static int AXIS_HSCROLL;
-    public static int AXIS_LTRIGGER;
-    public static int AXIS_ORIENTATION;
-    public static int AXIS_PRESSURE;
-    public static int AXIS_RELATIVE_X;
-    public static int AXIS_RELATIVE_Y;
-    public static int AXIS_RTRIGGER;
-    public static int AXIS_RUDDER;
-    public static int AXIS_RX;
-    public static int AXIS_RY;
-    public static int AXIS_RZ;
-    public static int AXIS_SCROLL;
-    public static int AXIS_SIZE;
-    public static int AXIS_THROTTLE;
-    public static int AXIS_TILT;
-    public static int AXIS_TOOL_MAJOR;
-    public static int AXIS_TOOL_MINOR;
-    public static int AXIS_TOUCH_MAJOR;
-    public static int AXIS_TOUCH_MINOR;
-    public static int AXIS_VSCROLL;
-    public static int AXIS_WHEEL;
-    public static int AXIS_X;
-    public static int AXIS_Y;
-    public static int AXIS_Z;
-    public static int BUTTON_BACK;
-    public static int BUTTON_FORWARD;
-    public static int BUTTON_PRIMARY;
-    public static int BUTTON_SECONDARY;
-    public static int BUTTON_STYLUS_PRIMARY;
-    public static int BUTTON_STYLUS_SECONDARY;
-    public static int BUTTON_TERTIARY;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int EDGE_BOTTOM;
-    public static int EDGE_LEFT;
-    public static int EDGE_RIGHT;
-    public static int EDGE_TOP;
-    public static int FLAG_HOVER_EXIT_PENDING;
-    public static int FLAG_IS_GENERATED_GESTURE;
-    public static int FLAG_TAINTED;
-    public static int FLAG_TARGET_ACCESSIBILITY_FOCUS;
-    public static int FLAG_WINDOW_IS_OBSCURED;
-    public static int FLAG_WINDOW_IS_PARTIALLY_OBSCURED;
-    public static int INVALID_POINTER_ID;
-    public static int TOOL_TYPE_ERASER;
-    public static int TOOL_TYPE_FINGER;
-    public static int TOOL_TYPE_MOUSE;
-    public static int TOOL_TYPE_STYLUS;
-    public static int TOOL_TYPE_UNKNOWN;
-}
-
--keep class android.view.MotionEvent$PointerCoords {
-    <init>();
-    <init>(android.view.MotionEvent$PointerCoords);
-
-    public void clear();
-    public void copyFrom(android.view.MotionEvent$PointerCoords);
-    public static android.view.MotionEvent$PointerCoords[] createArray(int);
-    public float getAxisValue(int);
-    public void setAxisValue(int, float);
-
-
-    public float orientation;
-    public float pressure;
-    public float size;
-    public float toolMajor;
-    public float toolMinor;
-    public float touchMajor;
-    public float touchMinor;
-    public float x;
-    public float y;
-}
-
--keep class android.view.MotionEvent$PointerProperties {
-    <init>();
-    <init>(android.view.MotionEvent$PointerProperties);
-
-    public void clear();
-    public void copyFrom(android.view.MotionEvent$PointerProperties);
-    public static android.view.MotionEvent$PointerProperties[] createArray(int);
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-
-
-    public int id;
-    public int toolType;
-}
-
--keep class android.view.PointerIcon {
-
-    public static android.view.PointerIcon create(android.graphics.Bitmap, float, float);
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static android.view.PointerIcon getDefaultIcon(android.content.Context);
-    public static android.view.PointerIcon getNullIcon();
-    public static android.view.PointerIcon getSystemIcon(android.content.Context, int);
-    public int getType();
-    public static android.view.PointerIcon load(android.content.res.Resources, int);
-    public android.view.PointerIcon load(android.content.Context);
-    public static void setUseLargeIcons(boolean);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int TYPE_ALIAS;
-    public static int TYPE_ALL_SCROLL;
-    public static int TYPE_ARROW;
-    public static int TYPE_CELL;
-    public static int TYPE_CONTEXT_MENU;
-    public static int TYPE_COPY;
-    public static int TYPE_CROSSHAIR;
-    public static int TYPE_CUSTOM;
-    public static int TYPE_DEFAULT;
-    public static int TYPE_GRAB;
-    public static int TYPE_GRABBING;
-    public static int TYPE_HAND;
-    public static int TYPE_HELP;
-    public static int TYPE_HORIZONTAL_DOUBLE_ARROW;
-    public static int TYPE_NOT_SPECIFIED;
-    public static int TYPE_NO_DROP;
-    public static int TYPE_NULL;
-    public static int TYPE_SPOT_ANCHOR;
-    public static int TYPE_SPOT_HOVER;
-    public static int TYPE_SPOT_TOUCH;
-    public static int TYPE_TEXT;
-    public static int TYPE_TOP_LEFT_DIAGONAL_DOUBLE_ARROW;
-    public static int TYPE_TOP_RIGHT_DIAGONAL_DOUBLE_ARROW;
-    public static int TYPE_VERTICAL_DOUBLE_ARROW;
-    public static int TYPE_VERTICAL_TEXT;
-    public static int TYPE_WAIT;
-    public static int TYPE_ZOOM_IN;
-    public static int TYPE_ZOOM_OUT;
-}
-
--keep class android.view.RecordingCanvas {
-    <init>(long);
-
-    public void drawARGB(int, int, int, int);
-    public void drawArc(float, float, float, float, float, float, boolean, android.graphics.Paint);
-    public void drawArc(android.graphics.RectF, float, float, boolean, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, float, float, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Matrix, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Rect, android.graphics.Rect, android.graphics.Paint);
-    public void drawBitmap(android.graphics.Bitmap, android.graphics.Rect, android.graphics.RectF, android.graphics.Paint);
-    public void drawBitmap(int[], int, int, float, float, int, int, boolean, android.graphics.Paint);
-    public void drawBitmap(int[], int, int, int, int, int, int, boolean, android.graphics.Paint);
-    public void drawBitmapMesh(android.graphics.Bitmap, int, int, float[], int, int[], int, android.graphics.Paint);
-    public void drawCircle(float, float, float, android.graphics.Paint);
-    public void drawColor(int);
-    public void drawColor(int, android.graphics.PorterDuff$Mode);
-    public void drawLine(float, float, float, float, android.graphics.Paint);
-    public void drawLines(float[], int, int, android.graphics.Paint);
-    public void drawLines(float[], android.graphics.Paint);
-    public void drawOval(float, float, float, float, android.graphics.Paint);
-    public void drawOval(android.graphics.RectF, android.graphics.Paint);
-    public void drawPaint(android.graphics.Paint);
-    public void drawPatch(android.graphics.NinePatch, android.graphics.Rect, android.graphics.Paint);
-    public void drawPatch(android.graphics.NinePatch, android.graphics.RectF, android.graphics.Paint);
-    public void drawPath(android.graphics.Path, android.graphics.Paint);
-    public void drawPicture(android.graphics.Picture);
-    public void drawPicture(android.graphics.Picture, android.graphics.Rect);
-    public void drawPicture(android.graphics.Picture, android.graphics.RectF);
-    public void drawPoint(float, float, android.graphics.Paint);
-    public void drawPoints(float[], int, int, android.graphics.Paint);
-    public void drawPoints(float[], android.graphics.Paint);
-    public void drawPosText(char[], int, int, float[], android.graphics.Paint);
-    public void drawPosText(java.lang.String, float[], android.graphics.Paint);
-    public void drawRGB(int, int, int);
-    public void drawRect(float, float, float, float, android.graphics.Paint);
-    public void drawRect(android.graphics.Rect, android.graphics.Paint);
-    public void drawRect(android.graphics.RectF, android.graphics.Paint);
-    public void drawRoundRect(float, float, float, float, float, float, android.graphics.Paint);
-    public void drawRoundRect(android.graphics.RectF, float, float, android.graphics.Paint);
-    public void drawText(char[], int, int, float, float, android.graphics.Paint);
-    public void drawText(java.lang.CharSequence, int, int, float, float, android.graphics.Paint);
-    public void drawText(java.lang.String, float, float, android.graphics.Paint);
-    public void drawText(java.lang.String, int, int, float, float, android.graphics.Paint);
-    public void drawTextOnPath(char[], int, int, android.graphics.Path, float, float, android.graphics.Paint);
-    public void drawTextOnPath(java.lang.String, android.graphics.Path, float, float, android.graphics.Paint);
-    public void drawTextRun(char[], int, int, int, int, float, float, boolean, android.graphics.Paint);
-    public void drawTextRun(java.lang.CharSequence, int, int, int, int, float, float, boolean, android.graphics.Paint);
-    public void drawVertices(android.graphics.Canvas$VertexMode, int, float[], int, float[], int, int[], int, short[], int, int, android.graphics.Paint);
-
-
-}
-
--keep class android.view.RemoteAnimationAdapter {
-    <init>(android.view.IRemoteAnimationRunner, long, long);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public int getCallingPid();
-    public long getDuration();
-    public android.view.IRemoteAnimationRunner getRunner();
-    public long getStatusBarTransitionDelay();
-    public void setCallingPid(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.RemoteAnimationDefinition {
-    <init>();
-    <init>(android.os.Parcel);
-
-    public void addRemoteAnimation(int, int, android.view.RemoteAnimationAdapter);
-    public void addRemoteAnimation(int, android.view.RemoteAnimationAdapter);
-    public int describeContents();
-    public android.view.RemoteAnimationAdapter getAdapter(int, android.util.ArraySet);
-    public boolean hasTransition(int, android.util.ArraySet);
-    public void setCallingPid(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.RemoteAnimationTarget {
-    <init>(int, int, android.view.SurfaceControl, boolean, android.graphics.Rect, android.graphics.Rect, int, android.graphics.Point, android.graphics.Rect, android.app.WindowConfiguration, boolean);
-    <init>(android.os.Parcel);
-
-    public int describeContents();
-    public void dump(java.io.PrintWriter, java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int MODE_CLOSING;
-    public static int MODE_OPENING;
-    public android.graphics.Rect clipRect;
-    public android.graphics.Rect contentInsets;
-    public boolean isNotInRecents;
-    public boolean isTranslucent;
-    public android.view.SurfaceControl leash;
-    public int mode;
-    public android.graphics.Point position;
-    public int prefixOrderIndex;
-    public android.graphics.Rect sourceContainerBounds;
-    public int taskId;
-    public android.app.WindowConfiguration windowConfiguration;
-}
-
--keep class android.view.RenderNode {
-
-    public void addAnimator(android.view.RenderNodeAnimator);
-    public static android.view.RenderNode adopt(long);
-    public static android.view.RenderNode create(java.lang.String, android.view.View);
-    public void destroy();
-    public void discardDisplayList();
-    public void end(android.view.DisplayListCanvas);
-    public void endAllAnimators();
-    public float getAlpha();
-    public int getAmbientShadowColor();
-    public float getCameraDistance();
-    public boolean getClipToOutline();
-    public int getDebugSize();
-    public float getElevation();
-    public void getInverseMatrix(android.graphics.Matrix);
-    public void getMatrix(android.graphics.Matrix);
-    public float getPivotX();
-    public float getPivotY();
-    public float getRotation();
-    public float getRotationX();
-    public float getRotationY();
-    public float getScaleX();
-    public float getScaleY();
-    public int getSpotShadowColor();
-    public float getTranslationX();
-    public float getTranslationY();
-    public float getTranslationZ();
-    public boolean hasIdentityMatrix();
-    public boolean hasOverlappingRendering();
-    public boolean hasShadow();
-    public boolean isAttached();
-    public boolean isPivotExplicitlySet();
-    public boolean isValid();
-    public boolean offsetLeftAndRight(int);
-    public boolean offsetTopAndBottom(int);
-    public void output();
-    public void registerVectorDrawableAnimator(android.graphics.drawable.AnimatedVectorDrawable$VectorDrawableAnimatorRT);
-    public void requestPositionUpdates(android.view.SurfaceView);
-    public boolean resetPivot();
-    public boolean setAlpha(float);
-    public boolean setAmbientShadowColor(int);
-    public boolean setAnimationMatrix(android.graphics.Matrix);
-    public boolean setBottom(int);
-    public boolean setCameraDistance(float);
-    public boolean setClipBounds(android.graphics.Rect);
-    public boolean setClipToBounds(boolean);
-    public boolean setClipToOutline(boolean);
-    public boolean setElevation(float);
-    public boolean setHasOverlappingRendering(boolean);
-    public boolean setLayerPaint(android.graphics.Paint);
-    public boolean setLayerType(int);
-    public boolean setLeft(int);
-    public boolean setLeftTopRightBottom(int, int, int, int);
-    public boolean setOutline(android.graphics.Outline);
-    public boolean setPivotX(float);
-    public boolean setPivotY(float);
-    public boolean setProjectBackwards(boolean);
-    public boolean setProjectionReceiver(boolean);
-    public boolean setRevealClip(boolean, float, float, float);
-    public boolean setRight(int);
-    public boolean setRotation(float);
-    public boolean setRotationX(float);
-    public boolean setRotationY(float);
-    public boolean setScaleX(float);
-    public boolean setScaleY(float);
-    public boolean setSpotShadowColor(int);
-    public boolean setStaticMatrix(android.graphics.Matrix);
-    public boolean setTop(int);
-    public boolean setTranslationX(float);
-    public boolean setTranslationY(float);
-    public boolean setTranslationZ(float);
-    public android.view.DisplayListCanvas start(int, int);
-
-
-}
-
--keep class android.view.RenderNodeAnimator {
-    <init>(int, float);
-    <init>(android.graphics.CanvasProperty, float);
-    <init>(android.graphics.CanvasProperty, int, float);
-    <init>(int, int, float, float);
-
-    public void cancel();
-    public android.animation.Animator clone();
-    public java.lang.Object clone();
-    public void end();
-    public long getDuration();
-    public android.animation.TimeInterpolator getInterpolator();
-    public long getStartDelay();
-    public long getTotalDuration();
-    public boolean isRunning();
-    public boolean isStarted();
-    public static int mapViewPropertyToRenderProperty(int);
-    protected void onFinished();
-    public void pause();
-    public void resume();
-    public void setAllowRunningAsynchronously(boolean);
-    public android.view.RenderNodeAnimator setDuration(long);
-    public android.animation.Animator setDuration(long);
-    public void setInterpolator(android.animation.TimeInterpolator);
-    public void setStartDelay(long);
-    public void setStartValue(float);
-    public void setTarget(android.view.View);
-    public void setTarget(android.view.DisplayListCanvas);
-    public void start();
-
-
-    public static int ALPHA;
-    public static int LAST_VALUE;
-    public static int PAINT_ALPHA;
-    public static int PAINT_STROKE_WIDTH;
-    public static int ROTATION;
-    public static int ROTATION_X;
-    public static int ROTATION_Y;
-    public static int SCALE_X;
-    public static int SCALE_Y;
-    public static int TRANSLATION_X;
-    public static int TRANSLATION_Y;
-    public static int TRANSLATION_Z;
-    public static int X;
-    public static int Y;
-    public static int Z;
-}
-
--keep class android.view.SearchEvent {
-    <init>(android.view.InputDevice);
-
-    public android.view.InputDevice getInputDevice();
-
-
-}
-
--keep class android.view.SubMenu {
-
-    public abstract void clearHeader();
-    public abstract android.view.MenuItem getItem();
-    public abstract android.view.SubMenu setHeaderIcon(int);
-    public abstract android.view.SubMenu setHeaderIcon(android.graphics.drawable.Drawable);
-    public abstract android.view.SubMenu setHeaderTitle(int);
-    public abstract android.view.SubMenu setHeaderTitle(java.lang.CharSequence);
-    public abstract android.view.SubMenu setHeaderView(android.view.View);
-    public abstract android.view.SubMenu setIcon(int);
-    public abstract android.view.SubMenu setIcon(android.graphics.drawable.Drawable);
-
-
-}
-
--keep class android.view.Surface {
-    <init>();
-    <init>(android.graphics.SurfaceTexture);
-
-    public void allocateBuffers();
-    public void attachAndQueueBuffer(android.graphics.GraphicBuffer);
-    public void copyFrom(android.view.SurfaceControl);
-    public void createFrom(android.view.SurfaceControl);
-    public int describeContents();
-    public void destroy();
-    protected void finalize();
-    public int getGenerationId();
-    public long getNextFrameNumber();
-    public void hwuiDestroy();
-    public boolean isAutoRefreshEnabled();
-    public boolean isConsumerRunningBehind();
-    public boolean isSharedBufferModeEnabled();
-    public boolean isSingleBuffered();
-    public boolean isValid();
-    public android.graphics.Canvas lockCanvas(android.graphics.Rect);
-    public android.graphics.Canvas lockHardwareCanvas();
-    public android.graphics.Canvas lockHardwareWideColorGamutCanvas();
-    public void readFromParcel(android.os.Parcel);
-    public void release();
-    public static java.lang.String rotationToString(int);
-    public void setAutoRefreshEnabled(boolean);
-    public void setSharedBufferModeEnabled(boolean);
-    public java.lang.String toString();
-    public void transferFrom(android.view.Surface);
-    public void unlockCanvas(android.graphics.Canvas);
-    public void unlockCanvasAndPost(android.graphics.Canvas);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int ROTATION_0;
-    public static int ROTATION_180;
-    public static int ROTATION_270;
-    public static int ROTATION_90;
-    public static int SCALING_MODE_FREEZE;
-    public static int SCALING_MODE_NO_SCALE_CROP;
-    public static int SCALING_MODE_SCALE_CROP;
-    public static int SCALING_MODE_SCALE_TO_WINDOW;
-}
-
--keep class android.view.Surface$OutOfResourcesException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class android.view.SurfaceControl {
-    <init>(android.view.SurfaceControl);
-
-    public static android.graphics.GraphicBuffer captureLayers(android.os.IBinder, android.graphics.Rect, float);
-    public static boolean clearAnimationFrameStats();
-    public boolean clearContentFrameStats();
-    public static void closeTransaction();
-    public static void closeTransactionSync();
-    public static android.os.IBinder createDisplay(java.lang.String, boolean);
-    public void deferTransactionUntil(android.os.IBinder, long);
-    public void deferTransactionUntil(android.view.Surface, long);
-    public int describeContents();
-    public void destroy();
-    public static void destroyDisplay(android.os.IBinder);
-    public void detachChildren();
-    public void disconnect();
-    protected void finalize();
-    public static int getActiveColorMode(android.os.IBinder);
-    public static int getActiveConfig(android.os.IBinder);
-    public static boolean getAnimationFrameStats(android.view.WindowAnimationFrameStats);
-    public static android.os.IBinder getBuiltInDisplay(int);
-    public boolean getContentFrameStats(android.view.WindowContentFrameStats);
-    public static int[] getDisplayColorModes(android.os.IBinder);
-    public static android.view.SurfaceControl$PhysicalDisplayInfo[] getDisplayConfigs(android.os.IBinder);
-    public android.os.IBinder getHandle();
-    public static android.view.Display$HdrCapabilities getHdrCapabilities(android.os.IBinder);
-    public int getHeight();
-    public int getWidth();
-    public void hide();
-    public static void mergeToGlobalTransaction(android.view.SurfaceControl$Transaction);
-    public static void openTransaction();
-    public void release();
-    public void reparent(android.os.IBinder);
-    public void reparentChildren(android.os.IBinder);
-    public static void screenshot(android.os.IBinder, android.view.Surface, int, int, int, int, boolean);
-    public static void screenshot(android.os.IBinder, android.view.Surface, int, int);
-    public static void screenshot(android.os.IBinder, android.view.Surface);
-    public static android.graphics.Bitmap screenshot(android.graphics.Rect, int, int, int, int, boolean, int);
-    public static android.graphics.Bitmap screenshot(android.graphics.Rect, int, int, int);
-    public static android.graphics.GraphicBuffer screenshotToBuffer(android.graphics.Rect, int, int, int, int, boolean, int);
-    public static boolean setActiveColorMode(android.os.IBinder, int);
-    public static boolean setActiveConfig(android.os.IBinder, int);
-    public void setAlpha(float);
-    public static void setAnimationTransaction();
-    public void setColor(float[]);
-    public static void setDisplayLayerStack(android.os.IBinder, int);
-    public static void setDisplayPowerMode(android.os.IBinder, int);
-    public static void setDisplayProjection(android.os.IBinder, int, android.graphics.Rect, android.graphics.Rect);
-    public static void setDisplaySize(android.os.IBinder, int, int);
-    public static void setDisplaySurface(android.os.IBinder, android.view.Surface);
-    public void setFinalCrop(android.graphics.Rect);
-    public void setGeometryAppliesWithResize();
-    public void setLayer(int);
-    public void setLayerStack(int);
-    public void setMatrix(float, float, float, float);
-    public void setMatrix(android.graphics.Matrix, float[]);
-    public void setOpaque(boolean);
-    public void setOverrideScalingMode(int);
-    public void setPosition(float, float);
-    public void setRelativeLayer(android.view.SurfaceControl, int);
-    public void setSecure(boolean);
-    public void setSize(int, int);
-    public void setTransparentRegionHint(android.graphics.Region);
-    public void setWindowCrop(android.graphics.Rect);
-    public void show();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static int BUILT_IN_DISPLAY_ID_HDMI;
-    public static int BUILT_IN_DISPLAY_ID_MAIN;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int CURSOR_WINDOW;
-    public static int FX_SURFACE_DIM;
-    public static int FX_SURFACE_MASK;
-    public static int FX_SURFACE_NORMAL;
-    public static int HIDDEN;
-    public static int NON_PREMULTIPLIED;
-    public static int OPAQUE;
-    public static int POWER_MODE_DOZE;
-    public static int POWER_MODE_DOZE_SUSPEND;
-    public static int POWER_MODE_NORMAL;
-    public static int POWER_MODE_OFF;
-    public static int POWER_MODE_ON_SUSPEND;
-    public static int PROTECTED_APP;
-    public static int SECURE;
-    public static int WINDOW_TYPE_DONT_SCREENSHOT;
-}
-
--keep class android.view.SurfaceControl$PhysicalDisplayInfo {
-    <init>();
-    <init>(android.view.SurfaceControl$PhysicalDisplayInfo);
-
-    public void copyFrom(android.view.SurfaceControl$PhysicalDisplayInfo);
-    public boolean equals(java.lang.Object);
-    public boolean equals(android.view.SurfaceControl$PhysicalDisplayInfo);
-    public int hashCode();
-    public java.lang.String toString();
-
-
-    public long appVsyncOffsetNanos;
-    public float density;
-    public int height;
-    public long presentationDeadlineNanos;
-    public float refreshRate;
-    public boolean secure;
-    public int width;
-    public float xDpi;
-    public float yDpi;
-}
-
--keep class android.view.SurfaceControl$Transaction {
-    <init>();
-
-    public void apply();
-    public void apply(boolean);
-    public void close();
-    public android.view.SurfaceControl$Transaction deferTransactionUntil(android.view.SurfaceControl, android.os.IBinder, long);
-    public android.view.SurfaceControl$Transaction deferTransactionUntilSurface(android.view.SurfaceControl, android.view.Surface, long);
-    public android.view.SurfaceControl$Transaction destroy(android.view.SurfaceControl);
-    public android.view.SurfaceControl$Transaction detachChildren(android.view.SurfaceControl);
-    public android.view.SurfaceControl$Transaction hide(android.view.SurfaceControl);
-    public android.view.SurfaceControl$Transaction merge(android.view.SurfaceControl$Transaction);
-    public android.view.SurfaceControl$Transaction reparent(android.view.SurfaceControl, android.os.IBinder);
-    public android.view.SurfaceControl$Transaction reparentChildren(android.view.SurfaceControl, android.os.IBinder);
-    public android.view.SurfaceControl$Transaction setAlpha(android.view.SurfaceControl, float);
-    public android.view.SurfaceControl$Transaction setAnimationTransaction();
-    public android.view.SurfaceControl$Transaction setColor(android.view.SurfaceControl, float[]);
-    public android.view.SurfaceControl$Transaction setDisplayLayerStack(android.os.IBinder, int);
-    public android.view.SurfaceControl$Transaction setDisplayProjection(android.os.IBinder, int, android.graphics.Rect, android.graphics.Rect);
-    public android.view.SurfaceControl$Transaction setDisplaySize(android.os.IBinder, int, int);
-    public android.view.SurfaceControl$Transaction setDisplaySurface(android.os.IBinder, android.view.Surface);
-    public android.view.SurfaceControl$Transaction setEarlyWakeup();
-    public android.view.SurfaceControl$Transaction setFinalCrop(android.view.SurfaceControl, android.graphics.Rect);
-    public android.view.SurfaceControl$Transaction setGeometryAppliesWithResize(android.view.SurfaceControl);
-    public android.view.SurfaceControl$Transaction setLayer(android.view.SurfaceControl, int);
-    public android.view.SurfaceControl$Transaction setLayerStack(android.view.SurfaceControl, int);
-    public android.view.SurfaceControl$Transaction setMatrix(android.view.SurfaceControl, float, float, float, float);
-    public android.view.SurfaceControl$Transaction setMatrix(android.view.SurfaceControl, android.graphics.Matrix, float[]);
-    public android.view.SurfaceControl$Transaction setOpaque(android.view.SurfaceControl, boolean);
-    public android.view.SurfaceControl$Transaction setOverrideScalingMode(android.view.SurfaceControl, int);
-    public android.view.SurfaceControl$Transaction setPosition(android.view.SurfaceControl, float, float);
-    public android.view.SurfaceControl$Transaction setRelativeLayer(android.view.SurfaceControl, android.view.SurfaceControl, int);
-    public android.view.SurfaceControl$Transaction setSecure(android.view.SurfaceControl, boolean);
-    public android.view.SurfaceControl$Transaction setSize(android.view.SurfaceControl, int, int);
-    public android.view.SurfaceControl$Transaction setTransparentRegionHint(android.view.SurfaceControl, android.graphics.Region);
-    public android.view.SurfaceControl$Transaction setWindowCrop(android.view.SurfaceControl, android.graphics.Rect);
-    public android.view.SurfaceControl$Transaction show(android.view.SurfaceControl);
-
-
-    public static libcore.util.NativeAllocationRegistry sRegistry;
-}
-
--keep class android.view.SurfaceHolder {
-
-    public abstract void addCallback(android.view.SurfaceHolder$Callback);
-    public abstract android.view.Surface getSurface();
-    public abstract android.graphics.Rect getSurfaceFrame();
-    public abstract boolean isCreating();
-    public abstract android.graphics.Canvas lockCanvas();
-    public abstract android.graphics.Canvas lockCanvas(android.graphics.Rect);
-    public android.graphics.Canvas lockHardwareCanvas();
-    public abstract void removeCallback(android.view.SurfaceHolder$Callback);
-    public abstract void setFixedSize(int, int);
-    public abstract void setFormat(int);
-    public abstract void setKeepScreenOn(boolean);
-    public abstract void setSizeFromLayout();
-    public abstract void setType(int);
-    public abstract void unlockCanvasAndPost(android.graphics.Canvas);
-
-
-    public static int SURFACE_TYPE_GPU;
-    public static int SURFACE_TYPE_HARDWARE;
-    public static int SURFACE_TYPE_NORMAL;
-    public static int SURFACE_TYPE_PUSH_BUFFERS;
-}
-
--keep class android.view.SurfaceHolder$Callback {
-
-    public abstract void surfaceChanged(android.view.SurfaceHolder, int, int, int);
-    public abstract void surfaceCreated(android.view.SurfaceHolder);
-    public abstract void surfaceDestroyed(android.view.SurfaceHolder);
-
-
-}
-
--keep class android.view.SurfaceHolder$Callback2 {
-
-    public abstract void surfaceRedrawNeeded(android.view.SurfaceHolder);
-    public void surfaceRedrawNeededAsync(android.view.SurfaceHolder, java.lang.Runnable);
-
-
-}
-
--keep class android.view.SurfaceView {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    protected void applyChildSurfaceTransaction_renderWorker(android.view.SurfaceControl$Transaction, android.view.Surface, long);
-    protected void dispatchDraw(android.graphics.Canvas);
-    public void draw(android.graphics.Canvas);
-    public boolean gatherTransparentRegion(android.graphics.Region);
-    public android.view.SurfaceHolder getHolder();
-    public boolean isFixedSize();
-    protected void onAttachedToWindow();
-    protected void onDetachedFromWindow();
-    protected void onMeasure(int, int);
-    protected void onWindowVisibilityChanged(int);
-    protected boolean setFrame(int, int, int, int);
-    public void setResizeBackgroundColor(int);
-    public void setSecure(boolean);
-    public void setVisibility(int);
-    public void setZOrderMediaOverlay(boolean);
-    public void setZOrderOnTop(boolean);
-    public void surfacePositionLost_uiRtSync(long);
-    protected void updateSurface();
-    public void updateSurfacePosition_renderWorker(long, int, int, int, int);
-    public void windowStopped(boolean);
-
-
-}
-
--keep class android.view.ThreadedRenderer {
-
-    public void addRenderNode(android.view.RenderNode, boolean);
-    public static int copySurfaceInto(android.view.Surface, android.graphics.Rect, android.graphics.Bitmap);
-    public static android.view.ThreadedRenderer create(android.content.Context, boolean, java.lang.String);
-    public static android.graphics.Bitmap createHardwareBitmap(android.view.RenderNode, int, int);
-    public static void disable(boolean);
-    public static void disableVsync();
-    public void drawRenderNode(android.view.RenderNode);
-    public static void enableForegroundTrimming();
-    protected void finalize();
-    public static boolean isAvailable();
-    public void notifyFramePending();
-    public static void overrideProperty(java.lang.String, java.lang.String);
-    public void removeRenderNode(android.view.RenderNode);
-    public void setContentDrawBounds(int, int, int, int);
-    public static void setContextPriority(int);
-    public static void setDebuggingEnabled(boolean);
-    public static void setFPSDivisor(int);
-    public static void setHighContrastText(boolean);
-    public static void setIsolatedProcess(boolean);
-    public static void setupDiskCache(java.io.File);
-    public static void trimMemory(int);
-
-
-    public static java.lang.String DEBUG_DIRTY_REGIONS_PROPERTY;
-    public static java.lang.String DEBUG_FPS_DIVISOR;
-    public static java.lang.String DEBUG_OVERDRAW_PROPERTY;
-    public static java.lang.String DEBUG_SHOW_LAYERS_UPDATES_PROPERTY;
-    public static java.lang.String DEBUG_SHOW_NON_RECTANGULAR_CLIP_PROPERTY;
-    public static int EGL_CONTEXT_PRIORITY_HIGH_IMG;
-    public static int EGL_CONTEXT_PRIORITY_LOW_IMG;
-    public static int EGL_CONTEXT_PRIORITY_MEDIUM_IMG;
-    public static java.lang.String OVERDRAW_PROPERTY_SHOW;
-    public static java.lang.String PROFILE_PROPERTY;
-    public static java.lang.String PROFILE_PROPERTY_VISUALIZE_BARS;
-    public static boolean sRendererDisabled;
-    public static boolean sSystemRendererDisabled;
-    public static boolean sTrimForeground;
-}
-
--keep class android.view.ThreadedRenderer$FrameDrawingCallback {
-
-    public abstract void onFrameDraw(long);
-
-
-}
-
--keep class android.view.TouchDelegate {
-    <init>(android.graphics.Rect, android.view.View);
-
-    public boolean onTouchEvent(android.view.MotionEvent);
-
-
-    public static int ABOVE;
-    public static int BELOW;
-    public static int TO_LEFT;
-    public static int TO_RIGHT;
-}
-
--keep class android.view.View {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    public void addChildrenForAccessibility(java.util.ArrayList);
-    public void addExtraDataToAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo, java.lang.String, android.os.Bundle);
-    public void addFocusables(java.util.ArrayList, int);
-    public void addFocusables(java.util.ArrayList, int, int);
-    public void addFrameMetricsListener(android.view.Window, android.view.Window$OnFrameMetricsAvailableListener, android.os.Handler);
-    public void addKeyboardNavigationClusters(java.util.Collection, int);
-    public void addOnAttachStateChangeListener(android.view.View$OnAttachStateChangeListener);
-    public void addOnLayoutChangeListener(android.view.View$OnLayoutChangeListener);
-    public void addOnUnhandledKeyEventListener(android.view.View$OnUnhandledKeyEventListener);
-    public void addTouchables(java.util.ArrayList);
-    public android.view.ViewPropertyAnimator animate();
-    public void announceForAccessibility(java.lang.CharSequence);
-    public void applyDrawableToTransparentRegion(android.graphics.drawable.Drawable, android.graphics.Region);
-    public void autofill(android.view.autofill.AutofillValue);
-    public void autofill(android.util.SparseArray);
-    protected boolean awakenScrollBars();
-    protected boolean awakenScrollBars(int);
-    protected boolean awakenScrollBars(int, boolean);
-    public void bringToFront();
-    public void buildDrawingCache();
-    public void buildDrawingCache(boolean);
-    public void buildLayer();
-    public boolean callOnClick();
-    public boolean canHaveDisplayList();
-    public boolean canNotifyAutofillEnterExitEvent();
-    public boolean canResolveLayoutDirection();
-    public boolean canResolveTextAlignment();
-    public boolean canResolveTextDirection();
-    public boolean canScrollHorizontally(int);
-    public boolean canScrollVertically(int);
-    public void cancelDragAndDrop();
-    public void cancelLongPress();
-    public void cancelPendingInputEvents();
-    public void captureTransitioningViews(java.util.List);
-    public boolean checkInputConnectionProxy(android.view.View);
-    public void clearAccessibilityFocus();
-    public void clearAnimation();
-    public void clearFocus();
-    public static int combineMeasuredStates(int, int);
-    protected boolean computeFitSystemWindows(android.graphics.Rect, android.graphics.Rect);
-    protected int computeHorizontalScrollExtent();
-    protected int computeHorizontalScrollOffset();
-    protected int computeHorizontalScrollRange();
-    protected void computeOpaqueFlags();
-    public void computeScroll();
-    public android.view.WindowInsets computeSystemWindowInsets(android.view.WindowInsets, android.graphics.Rect);
-    protected int computeVerticalScrollExtent();
-    protected int computeVerticalScrollOffset();
-    protected int computeVerticalScrollRange();
-    public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo();
-    public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfoInternal();
-    public void createContextMenu(android.view.ContextMenu);
-    public android.graphics.Bitmap createSnapshot(android.view.ViewDebug$CanvasProvider, boolean);
-    protected void damageInParent();
-    public void debug();
-    protected void debug(int);
-    protected static java.lang.String debugIndent(int);
-    public void destroyDrawingCache();
-    protected void destroyHardwareResources();
-    public boolean dispatchActivityResult(java.lang.String, int, int, android.content.Intent);
-    public android.view.WindowInsets dispatchApplyWindowInsets(android.view.WindowInsets);
-    public boolean dispatchCapturedPointerEvent(android.view.MotionEvent);
-    public void dispatchConfigurationChanged(android.content.res.Configuration);
-    public void dispatchDisplayHint(int);
-    public boolean dispatchDragEvent(android.view.DragEvent);
-    protected void dispatchDraw(android.graphics.Canvas);
-    public void dispatchDrawableHotspotChanged(float, float);
-    public void dispatchFinishTemporaryDetach();
-    protected boolean dispatchGenericFocusedEvent(android.view.MotionEvent);
-    public boolean dispatchGenericMotionEvent(android.view.MotionEvent);
-    protected boolean dispatchGenericPointerEvent(android.view.MotionEvent);
-    protected void dispatchGetDisplayList();
-    protected boolean dispatchHoverEvent(android.view.MotionEvent);
-    public boolean dispatchKeyEvent(android.view.KeyEvent);
-    public boolean dispatchKeyEventPreIme(android.view.KeyEvent);
-    public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
-    public boolean dispatchNestedFling(float, float, boolean);
-    public boolean dispatchNestedPreFling(float, float);
-    public boolean dispatchNestedPrePerformAccessibilityAction(int, android.os.Bundle);
-    public boolean dispatchNestedPreScroll(int, int, int[], int[]);
-    public boolean dispatchNestedScroll(int, int, int, int, int[]);
-    public void dispatchPointerCaptureChanged(boolean);
-    public boolean dispatchPointerEvent(android.view.MotionEvent);
-    public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-    public boolean dispatchPopulateAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    public void dispatchProvideAutofillStructure(android.view.ViewStructure, int);
-    public void dispatchProvideStructure(android.view.ViewStructure);
-    protected void dispatchRestoreInstanceState(android.util.SparseArray);
-    protected void dispatchSaveInstanceState(android.util.SparseArray);
-    protected void dispatchSetActivated(boolean);
-    protected void dispatchSetPressed(boolean);
-    protected void dispatchSetSelected(boolean);
-    public void dispatchStartTemporaryDetach();
-    public void dispatchSystemUiVisibilityChanged(int);
-    public boolean dispatchTouchEvent(android.view.MotionEvent);
-    public boolean dispatchTrackballEvent(android.view.MotionEvent);
-    public boolean dispatchUnhandledMove(android.view.View, int);
-    protected void dispatchVisibilityChanged(android.view.View, int);
-    public void dispatchWindowFocusChanged(boolean);
-    public void dispatchWindowSystemUiVisiblityChanged(int);
-    public void dispatchWindowVisibilityChanged(int);
-    public void draw(android.graphics.Canvas);
-    public void drawableHotspotChanged(float, float);
-    protected void drawableStateChanged();
-    public void encode(android.view.ViewHierarchyEncoder);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public android.view.View findFocus();
-    public void findNamedViews(java.util.Map);
-    public android.view.View findViewByAccessibilityIdTraversal(int);
-    public android.view.View findViewByAutofillIdTraversal(int);
-    public android.view.View findViewById(int);
-    public android.view.View findViewByPredicate(java.util.function.Predicate);
-    public android.view.View findViewByPredicateInsideOut(android.view.View, java.util.function.Predicate);
-    protected android.view.View findViewByPredicateTraversal(java.util.function.Predicate, android.view.View);
-    protected android.view.View findViewTraversal(int);
-    public android.view.View findViewWithTag(java.lang.Object);
-    protected android.view.View findViewWithTagTraversal(java.lang.Object);
-    public void findViewsWithText(java.util.ArrayList, java.lang.CharSequence, int);
-    protected boolean fitSystemWindows(android.graphics.Rect);
-    public boolean fitsSystemWindows();
-    public android.view.View focusSearch(int);
-    public void forceHasOverlappingRendering(boolean);
-    public void forceLayout();
-    public boolean gatherTransparentRegion(android.graphics.Region);
-    public static int generateViewId();
-    public java.lang.CharSequence getAccessibilityClassName();
-    public android.view.View$AccessibilityDelegate getAccessibilityDelegate();
-    public int getAccessibilityLiveRegion();
-    public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
-    public java.lang.CharSequence getAccessibilityPaneTitle();
-    public int getAccessibilitySelectionEnd();
-    public int getAccessibilitySelectionStart();
-    public int getAccessibilityTraversalAfter();
-    public int getAccessibilityTraversalBefore();
-    public int getAccessibilityViewId();
-    public int getAccessibilityWindowId();
-    public float getAlpha();
-    public android.view.animation.Animation getAnimation();
-    public android.os.IBinder getApplicationWindowToken();
-    public java.lang.String[] getAutofillHints();
-    public android.view.autofill.AutofillId getAutofillId();
-    public int getAutofillType();
-    public android.view.autofill.AutofillValue getAutofillValue();
-    public int getAutofillViewId();
-    public android.graphics.drawable.Drawable getBackground();
-    public android.content.res.ColorStateList getBackgroundTintList();
-    public android.graphics.PorterDuff$Mode getBackgroundTintMode();
-    public int getBaseline();
-    public int getBottom();
-    protected float getBottomFadingEdgeStrength();
-    protected int getBottomPaddingOffset();
-    public void getBoundsOnScreen(android.graphics.Rect);
-    public void getBoundsOnScreen(android.graphics.Rect, boolean);
-    public float getCameraDistance();
-    public android.graphics.Rect getClipBounds();
-    public boolean getClipBounds(android.graphics.Rect);
-    public boolean getClipToOutline();
-    public java.lang.CharSequence getContentDescription();
-    public android.content.Context getContext();
-    protected android.view.ContextMenu$ContextMenuInfo getContextMenuInfo();
-    public boolean getDefaultFocusHighlightEnabled();
-    public static int getDefaultSize(int, int);
-    public android.view.Display getDisplay();
-    public int[] getDrawableState();
-    public android.graphics.Bitmap getDrawingCache();
-    public android.graphics.Bitmap getDrawingCache(boolean);
-    public int getDrawingCacheBackgroundColor();
-    public int getDrawingCacheQuality();
-    public void getDrawingRect(android.graphics.Rect);
-    public long getDrawingTime();
-    public float getElevation();
-    protected int getFadeHeight(boolean);
-    protected int getFadeTop(boolean);
-    public boolean getFilterTouchesWhenObscured();
-    public boolean getFitsSystemWindows();
-    public int getFocusable();
-    public java.util.ArrayList getFocusables(int);
-    public void getFocusedRect(android.graphics.Rect);
-    public android.graphics.drawable.Drawable getForeground();
-    public int getForegroundGravity();
-    public android.content.res.ColorStateList getForegroundTintList();
-    public android.graphics.PorterDuff$Mode getForegroundTintMode();
-    public boolean getGlobalVisibleRect(android.graphics.Rect, android.graphics.Point);
-    public boolean getGlobalVisibleRect(android.graphics.Rect);
-    public android.os.Handler getHandler();
-    public boolean getHasOverlappingRendering();
-    public int getHeight();
-    public void getHitRect(android.graphics.Rect);
-    public int getHorizontalFadingEdgeLength();
-    protected float getHorizontalScrollFactor();
-    protected int getHorizontalScrollbarHeight();
-    public void getHotspotBounds(android.graphics.Rect);
-    public int getId();
-    public int getImportantForAccessibility();
-    public int getImportantForAutofill();
-    public android.graphics.Matrix getInverseMatrix();
-    public java.lang.CharSequence getIterableTextForAccessibility();
-    public android.view.AccessibilityIterators$TextSegmentIterator getIteratorForGranularity(int);
-    public boolean getKeepScreenOn();
-    public android.view.KeyEvent$DispatcherState getKeyDispatcherState();
-    public int getLabelFor();
-    public int getLayerType();
-    public int getLayoutDirection();
-    public android.view.ViewGroup$LayoutParams getLayoutParams();
-    public int getLeft();
-    protected float getLeftFadingEdgeStrength();
-    protected int getLeftPaddingOffset();
-    public boolean getLocalVisibleRect(android.graphics.Rect);
-    public void getLocationInSurface(int[]);
-    public void getLocationInWindow(int[]);
-    public int[] getLocationOnScreen();
-    public void getLocationOnScreen(int[]);
-    public android.graphics.Matrix getMatrix();
-    public int getMeasuredHeight();
-    public int getMeasuredHeightAndState();
-    public int getMeasuredState();
-    public int getMeasuredWidth();
-    public int getMeasuredWidthAndState();
-    public int getMinimumHeight();
-    public int getMinimumWidth();
-    public int getNextClusterForwardId();
-    public int getNextFocusDownId();
-    public int getNextFocusForwardId();
-    public int getNextFocusLeftId();
-    public int getNextFocusRightId();
-    public int getNextFocusUpId();
-    public android.view.View$OnFocusChangeListener getOnFocusChangeListener();
-    public android.graphics.Insets getOpticalInsets();
-    public int getOutlineAmbientShadowColor();
-    public android.view.ViewOutlineProvider getOutlineProvider();
-    public int getOutlineSpotShadowColor();
-    public void getOutsets(android.graphics.Rect);
-    public int getOverScrollMode();
-    public android.view.ViewOverlay getOverlay();
-    public int getPaddingBottom();
-    public int getPaddingEnd();
-    public int getPaddingLeft();
-    public int getPaddingRight();
-    public int getPaddingStart();
-    public int getPaddingTop();
-    public android.view.ViewParent getParent();
-    public android.view.ViewParent getParentForAccessibility();
-    public float getPivotX();
-    public float getPivotY();
-    public android.view.PointerIcon getPointerIcon();
-    public int getRawLayoutDirection();
-    public int getRawTextAlignment();
-    public int getRawTextDirection();
-    public android.content.res.Resources getResources();
-    public boolean getRevealOnFocusHint();
-    public int getRight();
-    protected float getRightFadingEdgeStrength();
-    protected int getRightPaddingOffset();
-    public android.view.View getRootView();
-    public android.view.WindowInsets getRootWindowInsets();
-    public float getRotation();
-    public float getRotationX();
-    public float getRotationY();
-    public float getScaleX();
-    public float getScaleY();
-    public int getScrollBarDefaultDelayBeforeFade();
-    public int getScrollBarFadeDuration();
-    public int getScrollBarSize();
-    public int getScrollBarStyle();
-    public int getScrollIndicators();
-    public int getScrollX();
-    public int getScrollY();
-    public int getSolidColor();
-    public android.animation.StateListAnimator getStateListAnimator();
-    protected int getSuggestedMinimumHeight();
-    protected int getSuggestedMinimumWidth();
-    public int getSystemUiVisibility();
-    public java.lang.Object getTag();
-    public java.lang.Object getTag(int);
-    public int getTextAlignment();
-    public int getTextDirection();
-    public android.view.ThreadedRenderer getThreadedRenderer();
-    public java.lang.CharSequence getTooltip();
-    public java.lang.CharSequence getTooltipText();
-    public android.view.View getTooltipView();
-    public int getTop();
-    protected float getTopFadingEdgeStrength();
-    protected int getTopPaddingOffset();
-    public android.view.TouchDelegate getTouchDelegate();
-    public java.util.ArrayList getTouchables();
-    public float getTransitionAlpha();
-    public java.lang.String getTransitionName();
-    public float getTranslationX();
-    public float getTranslationY();
-    public float getTranslationZ();
-    public int getVerticalFadingEdgeLength();
-    protected float getVerticalScrollFactor();
-    public int getVerticalScrollbarPosition();
-    public int getVerticalScrollbarWidth();
-    public android.view.ViewRootImpl getViewRootImpl();
-    public android.view.ViewTreeObserver getViewTreeObserver();
-    public int getVisibility();
-    public int getWidth();
-    protected android.view.IWindow getWindow();
-    protected int getWindowAttachCount();
-    public void getWindowDisplayFrame(android.graphics.Rect);
-    public android.view.WindowId getWindowId();
-    public int getWindowSystemUiVisibility();
-    public android.os.IBinder getWindowToken();
-    public int getWindowVisibility();
-    public void getWindowVisibleDisplayFrame(android.graphics.Rect);
-    public float getX();
-    public float getY();
-    public float getZ();
-    protected boolean handleScrollBarDragging(android.view.MotionEvent);
-    public boolean hasExplicitFocusable();
-    public boolean hasFocus();
-    public boolean hasFocusable();
-    protected boolean hasHoveredChild();
-    public boolean hasNestedScrollingParent();
-    public boolean hasOnClickListeners();
-    protected boolean hasOpaqueScrollbars();
-    public boolean hasOverlappingRendering();
-    public boolean hasPointerCapture();
-    public boolean hasShadow();
-    public boolean hasTransientState();
-    public boolean hasWindowFocus();
-    public boolean includeForAccessibility();
-    public static android.view.View inflate(android.content.Context, int, android.view.ViewGroup);
-    protected void initializeFadingEdge(android.content.res.TypedArray);
-    protected void initializeFadingEdgeInternal(android.content.res.TypedArray);
-    protected void initializeScrollbars(android.content.res.TypedArray);
-    protected void initializeScrollbarsInternal(android.content.res.TypedArray);
-    protected void internalSetPadding(int, int, int, int);
-    public void invalidate(android.graphics.Rect);
-    public void invalidate(int, int, int, int);
-    public void invalidate();
-    public void invalidate(boolean);
-    public void invalidateDrawable(android.graphics.drawable.Drawable);
-    public void invalidateOutline();
-    protected void invalidateParentCaches();
-    protected void invalidateParentIfNeeded();
-    protected void invalidateParentIfNeededAndWasQuickRejected();
-    public boolean isAccessibilityFocused();
-    public boolean isAccessibilityHeading();
-    public boolean isAccessibilitySelectionExtendable();
-    public boolean isActionableForAccessibility();
-    public boolean isActivated();
-    public boolean isAssistBlocked();
-    public boolean isAttachedToWindow();
-    public boolean isAutofilled();
-    public boolean isClickable();
-    public boolean isContextClickable();
-    public static boolean isDefaultFocusHighlightEnabled();
-    public boolean isDefaultFocusHighlightNeeded(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable);
-    public boolean isDirty();
-    public boolean isDrawingCacheEnabled();
-    public boolean isDuplicateParentStateEnabled();
-    public boolean isEnabled();
-    public boolean isFocusable();
-    public boolean isFocusableInTouchMode();
-    public boolean isFocused();
-    public boolean isFocusedByDefault();
-    public boolean isForegroundInsidePadding();
-    public boolean isHapticFeedbackEnabled();
-    public boolean isHardwareAccelerated();
-    public boolean isHorizontalFadingEdgeEnabled();
-    public boolean isHorizontalScrollBarEnabled();
-    public boolean isHovered();
-    public boolean isImportantForAccessibility();
-    public boolean isImportantForAutofill();
-    public boolean isInEditMode();
-    public boolean isInLayout();
-    public boolean isInScrollingContainer();
-    public boolean isInTouchMode();
-    public boolean isKeyboardNavigationCluster();
-    public boolean isLaidOut();
-    public boolean isLayoutDirectionInherited();
-    public boolean isLayoutDirectionResolved();
-    public static boolean isLayoutModeOptical(java.lang.Object);
-    public boolean isLayoutRequested();
-    public boolean isLayoutRtl();
-    public boolean isLongClickable();
-    public boolean isNestedScrollingEnabled();
-    public boolean isOpaque();
-    protected boolean isPaddingOffsetRequired();
-    public boolean isPaddingRelative();
-    public boolean isPivotSet();
-    public boolean isPressed();
-    public boolean isRootNamespace();
-    public boolean isSaveEnabled();
-    public boolean isSaveFromParentEnabled();
-    public boolean isScreenReaderFocusable();
-    public boolean isScrollContainer();
-    public boolean isScrollbarFadingEnabled();
-    public boolean isSelected();
-    public boolean isShown();
-    public boolean isSoundEffectsEnabled();
-    public boolean isTemporarilyDetached();
-    public boolean isTextAlignmentInherited();
-    public boolean isTextAlignmentResolved();
-    public boolean isTextDirectionInherited();
-    public boolean isTextDirectionResolved();
-    public boolean isVerticalFadingEdgeEnabled();
-    public boolean isVerticalScrollBarEnabled();
-    protected boolean isVerticalScrollBarHidden();
-    public boolean isVisibleToUser();
-    protected boolean isVisibleToUser(android.graphics.Rect);
-    public boolean isVisibleToUserForAutofill(int);
-    public void jumpDrawablesToCurrentState();
-    public android.view.View keyboardNavigationClusterSearch(android.view.View, int);
-    public void layout(int, int, int, int);
-    public void makeOptionalFitsSystemWindows();
-    public void mapRectFromViewToScreenCoords(android.graphics.RectF, boolean);
-    public void measure(int, int);
-    protected static int[] mergeDrawableStates(int[], int[]);
-    public void notifyEnterOrExitForAutoFillIfNeeded(boolean);
-    public void notifySubtreeAccessibilityStateChangedIfNeeded();
-    public void notifyViewAccessibilityStateChangedIfNeeded(int);
-    public void offsetLeftAndRight(int);
-    public void offsetTopAndBottom(int);
-    public void onActivityResult(int, int, android.content.Intent);
-    protected void onAnimationEnd();
-    protected void onAnimationStart();
-    public android.view.WindowInsets onApplyWindowInsets(android.view.WindowInsets);
-    protected void onAttachedToWindow();
-    public void onCancelPendingInputEvents();
-    public boolean onCapturedPointerEvent(android.view.MotionEvent);
-    public boolean onCheckIsTextEditor();
-    public void onCloseSystemDialogs(java.lang.String);
-    protected void onConfigurationChanged(android.content.res.Configuration);
-    protected void onCreateContextMenu(android.view.ContextMenu);
-    protected int[] onCreateDrawableState(int);
-    public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo);
-    protected void onDetachedFromWindow();
-    protected void onDetachedFromWindowInternal();
-    protected void onDisplayHint(int);
-    public boolean onDragEvent(android.view.DragEvent);
-    protected void onDraw(android.graphics.Canvas);
-    public void onDrawForeground(android.graphics.Canvas);
-    protected void onDrawHorizontalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
-    protected void onDrawScrollBars(android.graphics.Canvas);
-    protected void onDrawVerticalScrollBar(android.graphics.Canvas, android.graphics.drawable.Drawable, int, int, int, int);
-    public boolean onFilterTouchEventForSecurity(android.view.MotionEvent);
-    protected void onFinishInflate();
-    public void onFinishTemporaryDetach();
-    protected void onFocusChanged(boolean, int, android.graphics.Rect);
-    protected void onFocusLost();
-    public boolean onGenericMotionEvent(android.view.MotionEvent);
-    public void onHoverChanged(boolean);
-    public boolean onHoverEvent(android.view.MotionEvent);
-    public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-    public void onInitializeAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo);
-    public void onInitializeAccessibilityNodeInfoInternal(android.view.accessibility.AccessibilityNodeInfo);
-    public boolean onKeyDown(int, android.view.KeyEvent);
-    public boolean onKeyLongPress(int, android.view.KeyEvent);
-    public boolean onKeyMultiple(int, int, android.view.KeyEvent);
-    public boolean onKeyPreIme(int, android.view.KeyEvent);
-    public boolean onKeyShortcut(int, android.view.KeyEvent);
-    public boolean onKeyUp(int, android.view.KeyEvent);
-    protected void onLayout(boolean, int, int, int, int);
-    protected void onMeasure(int, int);
-    public void onMovedToDisplay(int, android.content.res.Configuration);
-    protected void onOverScrolled(int, int, boolean, boolean);
-    public void onPointerCaptureChange(boolean);
-    public void onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-    public void onPopulateAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    public void onProvideAutofillStructure(android.view.ViewStructure, int);
-    public void onProvideAutofillVirtualStructure(android.view.ViewStructure, int);
-    public void onProvideStructure(android.view.ViewStructure);
-    public void onProvideVirtualStructure(android.view.ViewStructure);
-    public void onResolveDrawables(int);
-    public android.view.PointerIcon onResolvePointerIcon(android.view.MotionEvent, int);
-    protected void onRestoreInstanceState(android.os.Parcelable);
-    public void onRtlPropertiesChanged(int);
-    protected android.os.Parcelable onSaveInstanceState();
-    public void onScreenStateChanged(int);
-    protected void onScrollChanged(int, int, int, int);
-    protected boolean onSetAlpha(int);
-    protected void onSizeChanged(int, int, int, int);
-    public void onStartTemporaryDetach();
-    public boolean onTouchEvent(android.view.MotionEvent);
-    public boolean onTrackballEvent(android.view.MotionEvent);
-    public void onVisibilityAggregated(boolean);
-    protected void onVisibilityChanged(android.view.View, int);
-    public void onWindowFocusChanged(boolean);
-    public void onWindowSystemUiVisibilityChanged(int);
-    protected void onWindowVisibilityChanged(int);
-    public void outputDirtyFlags(java.lang.String, boolean, int);
-    protected boolean overScrollBy(int, int, int, int, int, int, int, int, boolean);
-    public boolean performAccessibilityAction(int, android.os.Bundle);
-    public boolean performAccessibilityActionInternal(int, android.os.Bundle);
-    protected boolean performButtonActionOnTouchDown(android.view.MotionEvent);
-    public boolean performClick();
-    public boolean performContextClick(float, float);
-    public boolean performContextClick();
-    public boolean performHapticFeedback(int);
-    public boolean performHapticFeedback(int, int);
-    public boolean performLongClick();
-    public boolean performLongClick(float, float);
-    public void playSoundEffect(int);
-    public boolean pointInView(float, float, float);
-    public boolean post(java.lang.Runnable);
-    public boolean postDelayed(java.lang.Runnable, long);
-    public void postInvalidate();
-    public void postInvalidate(int, int, int, int);
-    public void postInvalidateDelayed(long);
-    public void postInvalidateDelayed(long, int, int, int, int);
-    public void postInvalidateOnAnimation();
-    public void postInvalidateOnAnimation(int, int, int, int);
-    public void postOnAnimation(java.lang.Runnable);
-    public void postOnAnimationDelayed(java.lang.Runnable, long);
-    protected void recomputePadding();
-    public void refreshDrawableState();
-    public void releasePointerCapture();
-    public boolean removeCallbacks(java.lang.Runnable);
-    public void removeFrameMetricsListener(android.view.Window$OnFrameMetricsAvailableListener);
-    public void removeOnAttachStateChangeListener(android.view.View$OnAttachStateChangeListener);
-    public void removeOnLayoutChangeListener(android.view.View$OnLayoutChangeListener);
-    public void removeOnUnhandledKeyEventListener(android.view.View$OnUnhandledKeyEventListener);
-    public boolean requestAccessibilityFocus();
-    public void requestApplyInsets();
-    public void requestFitSystemWindows();
-    public boolean requestFocus();
-    public boolean requestFocus(int);
-    public boolean requestFocus(int, android.graphics.Rect);
-    public boolean requestFocusFromTouch();
-    public void requestKeyboardShortcuts(java.util.List, int);
-    public void requestLayout();
-    public void requestPointerCapture();
-    public boolean requestRectangleOnScreen(android.graphics.Rect);
-    public boolean requestRectangleOnScreen(android.graphics.Rect, boolean);
-    public void requestUnbufferedDispatch(android.view.MotionEvent);
-    public android.view.View requireViewById(int);
-    public void resetPaddingToInitialValues();
-    public void resetPivot();
-    protected void resetResolvedDrawables();
-    public void resetResolvedLayoutDirection();
-    public void resetResolvedPadding();
-    public void resetResolvedTextAlignment();
-    public void resetResolvedTextDirection();
-    public void resetRtlProperties();
-    protected void resolveDrawables();
-    public boolean resolveLayoutDirection();
-    public void resolveLayoutParams();
-    public void resolvePadding();
-    public boolean resolveRtlPropertiesIfNeeded();
-    public static int resolveSize(int, int);
-    public static int resolveSizeAndState(int, int, int);
-    public boolean resolveTextAlignment();
-    public boolean resolveTextDirection();
-    public boolean restoreDefaultFocus();
-    public boolean restoreFocusInCluster(int);
-    public boolean restoreFocusNotInCluster();
-    public void restoreHierarchyState(android.util.SparseArray);
-    public void saveHierarchyState(android.util.SparseArray);
-    public void scheduleDrawable(android.graphics.drawable.Drawable, java.lang.Runnable, long);
-    public void scrollBy(int, int);
-    public void scrollTo(int, int);
-    public void sendAccessibilityEvent(int);
-    public void sendAccessibilityEventInternal(int);
-    public void sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent);
-    public void sendAccessibilityEventUncheckedInternal(android.view.accessibility.AccessibilityEvent);
-    public void setAccessibilityDelegate(android.view.View$AccessibilityDelegate);
-    public void setAccessibilityHeading(boolean);
-    public void setAccessibilityLiveRegion(int);
-    public void setAccessibilityPaneTitle(java.lang.CharSequence);
-    public void setAccessibilitySelection(int, int);
-    public void setAccessibilityTraversalAfter(int);
-    public void setAccessibilityTraversalBefore(int);
-    public void setActivated(boolean);
-    public void setAlpha(float);
-    public void setAnimation(android.view.animation.Animation);
-    public void setAnimationMatrix(android.graphics.Matrix);
-    public void setAssistBlocked(boolean);
-    public void setAutofillHints(java.lang.String[]);
-    public void setAutofillId(android.view.autofill.AutofillId);
-    public void setAutofilled(boolean);
-    public void setBackground(android.graphics.drawable.Drawable);
-    public void setBackgroundColor(int);
-    public void setBackgroundDrawable(android.graphics.drawable.Drawable);
-    public void setBackgroundResource(int);
-    public void setBackgroundTintList(android.content.res.ColorStateList);
-    public void setBackgroundTintMode(android.graphics.PorterDuff$Mode);
-    public void setBottom(int);
-    public void setCameraDistance(float);
-    public void setClickable(boolean);
-    public void setClipBounds(android.graphics.Rect);
-    public void setClipToOutline(boolean);
-    public void setContentDescription(java.lang.CharSequence);
-    public void setContextClickable(boolean);
-    public void setDefaultFocusHighlightEnabled(boolean);
-    public void setDisabledSystemUiVisibility(int);
-    public void setDrawingCacheBackgroundColor(int);
-    public void setDrawingCacheEnabled(boolean);
-    public void setDrawingCacheQuality(int);
-    public void setDuplicateParentStateEnabled(boolean);
-    public void setElevation(float);
-    public void setEnabled(boolean);
-    public void setFadingEdgeLength(int);
-    public void setFilterTouchesWhenObscured(boolean);
-    public void setFitsSystemWindows(boolean);
-    public void setFocusable(boolean);
-    public void setFocusable(int);
-    public void setFocusableInTouchMode(boolean);
-    public void setFocusedByDefault(boolean);
-    public void setFocusedInCluster();
-    public void setForeground(android.graphics.drawable.Drawable);
-    public void setForegroundGravity(int);
-    public void setForegroundTintList(android.content.res.ColorStateList);
-    public void setForegroundTintMode(android.graphics.PorterDuff$Mode);
-    protected boolean setFrame(int, int, int, int);
-    public void setHapticFeedbackEnabled(boolean);
-    public void setHasTransientState(boolean);
-    public void setHorizontalFadingEdgeEnabled(boolean);
-    public void setHorizontalScrollBarEnabled(boolean);
-    public void setHovered(boolean);
-    public void setId(int);
-    public void setImportantForAccessibility(int);
-    public void setImportantForAutofill(int);
-    public void setIsRootNamespace(boolean);
-    public void setKeepScreenOn(boolean);
-    public void setKeyboardNavigationCluster(boolean);
-    public void setLabelFor(int);
-    public void setLayerPaint(android.graphics.Paint);
-    public void setLayerType(int, android.graphics.Paint);
-    public void setLayoutDirection(int);
-    public void setLayoutParams(android.view.ViewGroup$LayoutParams);
-    public void setLeft(int);
-    public void setLeftTopRightBottom(int, int, int, int);
-    public void setLongClickable(boolean);
-    protected void setMeasuredDimension(int, int);
-    public void setMinimumHeight(int);
-    public void setMinimumWidth(int);
-    public void setNestedScrollingEnabled(boolean);
-    public void setNextClusterForwardId(int);
-    public void setNextFocusDownId(int);
-    public void setNextFocusForwardId(int);
-    public void setNextFocusLeftId(int);
-    public void setNextFocusRightId(int);
-    public void setNextFocusUpId(int);
-    public void setNotifyAutofillManagerOnClick(boolean);
-    public void setOnApplyWindowInsetsListener(android.view.View$OnApplyWindowInsetsListener);
-    public void setOnCapturedPointerListener(android.view.View$OnCapturedPointerListener);
-    public void setOnClickListener(android.view.View$OnClickListener);
-    public void setOnContextClickListener(android.view.View$OnContextClickListener);
-    public void setOnCreateContextMenuListener(android.view.View$OnCreateContextMenuListener);
-    public void setOnDragListener(android.view.View$OnDragListener);
-    public void setOnFocusChangeListener(android.view.View$OnFocusChangeListener);
-    public void setOnGenericMotionListener(android.view.View$OnGenericMotionListener);
-    public void setOnHoverListener(android.view.View$OnHoverListener);
-    public void setOnKeyListener(android.view.View$OnKeyListener);
-    public void setOnLongClickListener(android.view.View$OnLongClickListener);
-    public void setOnScrollChangeListener(android.view.View$OnScrollChangeListener);
-    public void setOnSystemUiVisibilityChangeListener(android.view.View$OnSystemUiVisibilityChangeListener);
-    public void setOnTouchListener(android.view.View$OnTouchListener);
-    public void setOpticalInsets(android.graphics.Insets);
-    public void setOutlineAmbientShadowColor(int);
-    public void setOutlineProvider(android.view.ViewOutlineProvider);
-    public void setOutlineSpotShadowColor(int);
-    public void setOverScrollMode(int);
-    public void setPadding(int, int, int, int);
-    public void setPaddingRelative(int, int, int, int);
-    public void setPivotX(float);
-    public void setPivotY(float);
-    public void setPointerIcon(android.view.PointerIcon);
-    public void setPressed(boolean);
-    public void setRevealClip(boolean, float, float, float);
-    public void setRevealOnFocusHint(boolean);
-    public void setRight(int);
-    public void setRotation(float);
-    public void setRotationX(float);
-    public void setRotationY(float);
-    public void setSaveEnabled(boolean);
-    public void setSaveFromParentEnabled(boolean);
-    public void setScaleX(float);
-    public void setScaleY(float);
-    public void setScreenReaderFocusable(boolean);
-    public void setScrollBarDefaultDelayBeforeFade(int);
-    public void setScrollBarFadeDuration(int);
-    public void setScrollBarSize(int);
-    public void setScrollBarStyle(int);
-    public void setScrollContainer(boolean);
-    public void setScrollIndicators(int);
-    public void setScrollIndicators(int, int);
-    public void setScrollX(int);
-    public void setScrollY(int);
-    public void setScrollbarFadingEnabled(boolean);
-    public void setSelected(boolean);
-    public void setSoundEffectsEnabled(boolean);
-    public void setStateListAnimator(android.animation.StateListAnimator);
-    public void setSystemUiVisibility(int);
-    public void setTag(java.lang.Object);
-    public void setTag(int, java.lang.Object);
-    public void setTagInternal(int, java.lang.Object);
-    public void setTextAlignment(int);
-    public void setTextDirection(int);
-    public void setTooltip(java.lang.CharSequence);
-    public void setTooltipText(java.lang.CharSequence);
-    public void setTop(int);
-    public void setTouchDelegate(android.view.TouchDelegate);
-    public void setTransitionAlpha(float);
-    public void setTransitionName(java.lang.String);
-    public void setTransitionVisibility(int);
-    public void setTranslationX(float);
-    public void setTranslationY(float);
-    public void setTranslationZ(float);
-    public void setVerticalFadingEdgeEnabled(boolean);
-    public void setVerticalScrollBarEnabled(boolean);
-    public void setVerticalScrollbarPosition(int);
-    public void setVisibility(int);
-    public void setWillNotCacheDrawing(boolean);
-    public void setWillNotDraw(boolean);
-    public void setX(float);
-    public void setY(float);
-    public void setZ(float);
-    public boolean showContextMenu();
-    public boolean showContextMenu(float, float);
-    public android.view.ActionMode startActionMode(android.view.ActionMode$Callback);
-    public android.view.ActionMode startActionMode(android.view.ActionMode$Callback, int);
-    public void startActivityForResult(android.content.Intent, int);
-    public void startAnimation(android.view.animation.Animation);
-    public boolean startDrag(android.content.ClipData, android.view.View$DragShadowBuilder, java.lang.Object, int);
-    public boolean startDragAndDrop(android.content.ClipData, android.view.View$DragShadowBuilder, java.lang.Object, int);
-    public boolean startMovingTask(float, float);
-    public boolean startNestedScroll(int);
-    public void stopNestedScroll();
-    public boolean toGlobalMotionEvent(android.view.MotionEvent);
-    public boolean toLocalMotionEvent(android.view.MotionEvent);
-    public java.lang.String toString();
-    public void transformFromViewToWindowSpace(int[]);
-    public void transformMatrixToGlobal(android.graphics.Matrix);
-    public void transformMatrixToLocal(android.graphics.Matrix);
-    public void unscheduleDrawable(android.graphics.drawable.Drawable, java.lang.Runnable);
-    public void unscheduleDrawable(android.graphics.drawable.Drawable);
-    public android.view.RenderNode updateDisplayListIfDirty();
-    public void updateDragShadow(android.view.View$DragShadowBuilder);
-    protected boolean verifyDrawable(android.graphics.drawable.Drawable);
-    public boolean willNotCacheDrawing();
-    public boolean willNotDraw();
-
-
-    public static int ACCESSIBILITY_CURSOR_POSITION_UNDEFINED;
-    public static int ACCESSIBILITY_LIVE_REGION_ASSERTIVE;
-    public static int ACCESSIBILITY_LIVE_REGION_NONE;
-    public static int ACCESSIBILITY_LIVE_REGION_POLITE;
-    public static android.util.Property ALPHA;
-    public static int AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS;
-    public static java.lang.String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE;
-    public static java.lang.String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY;
-    public static java.lang.String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH;
-    public static java.lang.String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR;
-    public static java.lang.String AUTOFILL_HINT_CREDIT_CARD_NUMBER;
-    public static java.lang.String AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE;
-    public static java.lang.String AUTOFILL_HINT_EMAIL_ADDRESS;
-    public static java.lang.String AUTOFILL_HINT_NAME;
-    public static java.lang.String AUTOFILL_HINT_PASSWORD;
-    public static java.lang.String AUTOFILL_HINT_PHONE;
-    public static java.lang.String AUTOFILL_HINT_POSTAL_ADDRESS;
-    public static java.lang.String AUTOFILL_HINT_POSTAL_CODE;
-    public static java.lang.String AUTOFILL_HINT_USERNAME;
-    public static int AUTOFILL_TYPE_DATE;
-    public static int AUTOFILL_TYPE_LIST;
-    public static int AUTOFILL_TYPE_NONE;
-    public static int AUTOFILL_TYPE_TEXT;
-    public static int AUTOFILL_TYPE_TOGGLE;
-    public static boolean DEBUG_DRAW;
-    public static java.lang.String DEBUG_LAYOUT_PROPERTY;
-    public static int DRAG_FLAG_GLOBAL;
-    public static int DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION;
-    public static int DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION;
-    public static int DRAG_FLAG_GLOBAL_URI_READ;
-    public static int DRAG_FLAG_GLOBAL_URI_WRITE;
-    public static int DRAG_FLAG_OPAQUE;
-    public static int DRAWING_CACHE_QUALITY_AUTO;
-    public static int DRAWING_CACHE_QUALITY_HIGH;
-    public static int DRAWING_CACHE_QUALITY_LOW;
-    protected static int[] EMPTY_STATE_SET;
-    protected static int[] ENABLED_FOCUSED_SELECTED_STATE_SET;
-    protected static int[] ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] ENABLED_FOCUSED_STATE_SET;
-    protected static int[] ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] ENABLED_SELECTED_STATE_SET;
-    protected static int[] ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] ENABLED_STATE_SET;
-    protected static int[] ENABLED_WINDOW_FOCUSED_STATE_SET;
-    public static int FIND_VIEWS_WITH_ACCESSIBILITY_NODE_PROVIDERS;
-    public static int FIND_VIEWS_WITH_CONTENT_DESCRIPTION;
-    public static int FIND_VIEWS_WITH_TEXT;
-    public static int FOCUSABLE;
-    public static int FOCUSABLES_ALL;
-    public static int FOCUSABLES_TOUCH_MODE;
-    public static int FOCUSABLE_AUTO;
-    protected static int[] FOCUSED_SELECTED_STATE_SET;
-    protected static int[] FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] FOCUSED_STATE_SET;
-    protected static int[] FOCUSED_WINDOW_FOCUSED_STATE_SET;
-    public static int FOCUS_BACKWARD;
-    public static int FOCUS_DOWN;
-    public static int FOCUS_FORWARD;
-    public static int FOCUS_LEFT;
-    public static int FOCUS_RIGHT;
-    public static int FOCUS_UP;
-    public static int GONE;
-    public static int HAPTIC_FEEDBACK_ENABLED;
-    public static int IMPORTANT_FOR_ACCESSIBILITY_AUTO;
-    public static int IMPORTANT_FOR_ACCESSIBILITY_NO;
-    public static int IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS;
-    public static int IMPORTANT_FOR_ACCESSIBILITY_YES;
-    public static int IMPORTANT_FOR_AUTOFILL_AUTO;
-    public static int IMPORTANT_FOR_AUTOFILL_NO;
-    public static int IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS;
-    public static int IMPORTANT_FOR_AUTOFILL_YES;
-    public static int IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS;
-    public static int INVISIBLE;
-    public static int KEEP_SCREEN_ON;
-    public static int LAST_APP_AUTOFILL_ID;
-    public static int LAYER_TYPE_HARDWARE;
-    public static int LAYER_TYPE_NONE;
-    public static int LAYER_TYPE_SOFTWARE;
-    public static int LAYOUT_DIRECTION_INHERIT;
-    public static int LAYOUT_DIRECTION_LOCALE;
-    public static int LAYOUT_DIRECTION_LTR;
-    public static int LAYOUT_DIRECTION_RTL;
-    public static int LAYOUT_DIRECTION_UNDEFINED;
-    public static int MEASURED_HEIGHT_STATE_SHIFT;
-    public static int MEASURED_SIZE_MASK;
-    public static int MEASURED_STATE_MASK;
-    public static int MEASURED_STATE_TOO_SMALL;
-    public static int NAVIGATION_BAR_TRANSIENT;
-    public static int NAVIGATION_BAR_TRANSLUCENT;
-    public static int NAVIGATION_BAR_TRANSPARENT;
-    public static int NAVIGATION_BAR_UNHIDE;
-    public static int NOT_FOCUSABLE;
-    public static int NO_ID;
-    public static int OVER_SCROLL_ALWAYS;
-    public static int OVER_SCROLL_IF_CONTENT_SCROLLS;
-    public static int OVER_SCROLL_NEVER;
-    protected static int[] PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_SELECTED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_STATE_SET;
-    protected static int[] PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_FOCUSED_SELECTED_STATE_SET;
-    protected static int[] PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_SELECTED_STATE_SET;
-    protected static int[] PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET;
-    protected static int[] PRESSED_STATE_SET;
-    protected static int[] PRESSED_WINDOW_FOCUSED_STATE_SET;
-    public static int PUBLIC_STATUS_BAR_VISIBILITY_MASK;
-    public static android.util.Property ROTATION;
-    public static android.util.Property ROTATION_X;
-    public static android.util.Property ROTATION_Y;
-    public static android.util.Property SCALE_X;
-    public static android.util.Property SCALE_Y;
-    public static int SCREEN_STATE_OFF;
-    public static int SCREEN_STATE_ON;
-    public static int SCROLLBARS_INSIDE_INSET;
-    public static int SCROLLBARS_INSIDE_OVERLAY;
-    public static int SCROLLBARS_OUTSIDE_INSET;
-    public static int SCROLLBARS_OUTSIDE_OVERLAY;
-    public static int SCROLLBAR_POSITION_DEFAULT;
-    public static int SCROLLBAR_POSITION_LEFT;
-    public static int SCROLLBAR_POSITION_RIGHT;
-    public static int SCROLL_AXIS_HORIZONTAL;
-    public static int SCROLL_AXIS_NONE;
-    public static int SCROLL_AXIS_VERTICAL;
-    public static int SCROLL_INDICATOR_BOTTOM;
-    public static int SCROLL_INDICATOR_END;
-    public static int SCROLL_INDICATOR_LEFT;
-    public static int SCROLL_INDICATOR_RIGHT;
-    public static int SCROLL_INDICATOR_START;
-    public static int SCROLL_INDICATOR_TOP;
-    protected static int[] SELECTED_STATE_SET;
-    protected static int[] SELECTED_WINDOW_FOCUSED_STATE_SET;
-    public static int SOUND_EFFECTS_ENABLED;
-    public static int STATUS_BAR_DISABLE_BACK;
-    public static int STATUS_BAR_DISABLE_CLOCK;
-    public static int STATUS_BAR_DISABLE_EXPAND;
-    public static int STATUS_BAR_DISABLE_HOME;
-    public static int STATUS_BAR_DISABLE_NOTIFICATION_ALERTS;
-    public static int STATUS_BAR_DISABLE_NOTIFICATION_ICONS;
-    public static int STATUS_BAR_DISABLE_NOTIFICATION_TICKER;
-    public static int STATUS_BAR_DISABLE_RECENT;
-    public static int STATUS_BAR_DISABLE_SEARCH;
-    public static int STATUS_BAR_DISABLE_SYSTEM_INFO;
-    public static int STATUS_BAR_HIDDEN;
-    public static int STATUS_BAR_TRANSIENT;
-    public static int STATUS_BAR_TRANSLUCENT;
-    public static int STATUS_BAR_TRANSPARENT;
-    public static int STATUS_BAR_UNHIDE;
-    public static int STATUS_BAR_VISIBLE;
-    public static int SYSTEM_UI_CLEARABLE_FLAGS;
-    public static int SYSTEM_UI_FLAG_FULLSCREEN;
-    public static int SYSTEM_UI_FLAG_HIDE_NAVIGATION;
-    public static int SYSTEM_UI_FLAG_IMMERSIVE;
-    public static int SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
-    public static int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
-    public static int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
-    public static int SYSTEM_UI_FLAG_LAYOUT_STABLE;
-    public static int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
-    public static int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
-    public static int SYSTEM_UI_FLAG_LOW_PROFILE;
-    public static int SYSTEM_UI_FLAG_VISIBLE;
-    public static int SYSTEM_UI_LAYOUT_FLAGS;
-    public static int SYSTEM_UI_TRANSPARENT;
-    public static int TEXT_ALIGNMENT_CENTER;
-    public static int TEXT_ALIGNMENT_GRAVITY;
-    public static int TEXT_ALIGNMENT_INHERIT;
-    public static int TEXT_ALIGNMENT_TEXT_END;
-    public static int TEXT_ALIGNMENT_TEXT_START;
-    public static int TEXT_ALIGNMENT_VIEW_END;
-    public static int TEXT_ALIGNMENT_VIEW_START;
-    public static int TEXT_DIRECTION_ANY_RTL;
-    public static int TEXT_DIRECTION_FIRST_STRONG;
-    public static int TEXT_DIRECTION_FIRST_STRONG_LTR;
-    public static int TEXT_DIRECTION_FIRST_STRONG_RTL;
-    public static int TEXT_DIRECTION_INHERIT;
-    public static int TEXT_DIRECTION_LOCALE;
-    public static int TEXT_DIRECTION_LTR;
-    public static int TEXT_DIRECTION_RTL;
-    public static android.util.Property TRANSLATION_X;
-    public static android.util.Property TRANSLATION_Y;
-    public static android.util.Property TRANSLATION_Z;
-    protected static java.lang.String VIEW_LOG_TAG;
-    public static int VISIBLE;
-    protected static int[] WINDOW_FOCUSED_STATE_SET;
-    public static android.util.Property X;
-    public static android.util.Property Y;
-    public static android.util.Property Z;
-    public java.lang.String[] mAttributes;
-    protected int mBottom;
-    public boolean mCachingFailed;
-    protected android.content.Context mContext;
-    protected android.view.animation.Animation mCurrentAnimation;
-    public static boolean mDebugViewAttributes;
-    protected android.view.InputEventConsistencyVerifier mInputEventConsistencyVerifier;
-    protected android.view.ViewGroup$LayoutParams mLayoutParams;
-    protected int mLeft;
-    protected int mPaddingBottom;
-    protected int mPaddingLeft;
-    protected int mPaddingRight;
-    protected int mPaddingTop;
-    protected android.view.ViewParent mParent;
-    public int mPrivateFlags;
-    protected int mRight;
-    protected int mScrollX;
-    protected int mScrollY;
-    protected java.lang.Object mTag;
-    protected int mTop;
-    public android.view.View$TransformationInfo mTransformationInfo;
-    protected int mUserPaddingBottom;
-    protected int mUserPaddingLeft;
-    protected int mUserPaddingRight;
-    protected static boolean sPreserveMarginParamsInLayoutParamConversion;
-}
-
--keep class android.view.View$AccessibilityDelegate {
-    <init>();
-
-    public void addExtraDataToAccessibilityNodeInfo(android.view.View, android.view.accessibility.AccessibilityNodeInfo, java.lang.String, android.os.Bundle);
-    public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(android.view.View);
-    public boolean dispatchPopulateAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider(android.view.View);
-    public void onInitializeAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public void onInitializeAccessibilityNodeInfo(android.view.View, android.view.accessibility.AccessibilityNodeInfo);
-    public void onPopulateAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public boolean onRequestSendAccessibilityEvent(android.view.ViewGroup, android.view.View, android.view.accessibility.AccessibilityEvent);
-    public boolean performAccessibilityAction(android.view.View, int, android.os.Bundle);
-    public void sendAccessibilityEvent(android.view.View, int);
-    public void sendAccessibilityEventUnchecked(android.view.View, android.view.accessibility.AccessibilityEvent);
-
-
-}
-
--keep class android.view.View$AttachInfo {
-
-
-
-    public android.view.Surface mDragSurface;
-}
-
--keep class android.view.View$AttachInfo$InvalidateInfo {
-
-    public static android.view.View$AttachInfo$InvalidateInfo obtain();
-    public void recycle();
-
-
-}
-
--keep class android.view.View$DragShadowBuilder {
-    <init>(android.view.View);
-    <init>();
-
-    public android.view.View getView();
-    public void onDrawShadow(android.graphics.Canvas);
-    public void onProvideShadowMetrics(android.graphics.Point, android.graphics.Point);
-
-
-}
-
--keep class android.view.View$OnApplyWindowInsetsListener {
-
-    public abstract android.view.WindowInsets onApplyWindowInsets(android.view.View, android.view.WindowInsets);
-
-
-}
-
--keep class android.view.View$OnAttachStateChangeListener {
-
-    public abstract void onViewAttachedToWindow(android.view.View);
-    public abstract void onViewDetachedFromWindow(android.view.View);
-
-
-}
-
--keep class android.view.View$OnCapturedPointerListener {
-
-    public abstract boolean onCapturedPointer(android.view.View, android.view.MotionEvent);
-
-
-}
-
--keep class android.view.View$OnClickListener {
-
-    public abstract void onClick(android.view.View);
-
-
-}
-
--keep class android.view.View$OnContextClickListener {
-
-    public abstract boolean onContextClick(android.view.View);
-
-
-}
-
--keep class android.view.View$OnCreateContextMenuListener {
-
-    public abstract void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu$ContextMenuInfo);
-
-
-}
-
--keep class android.view.View$OnDragListener {
-
-    public abstract boolean onDrag(android.view.View, android.view.DragEvent);
-
-
-}
-
--keep class android.view.View$OnFocusChangeListener {
-
-    public abstract void onFocusChange(android.view.View, boolean);
-
-
-}
-
--keep class android.view.View$OnGenericMotionListener {
-
-    public abstract boolean onGenericMotion(android.view.View, android.view.MotionEvent);
-
-
-}
-
--keep class android.view.View$OnHoverListener {
-
-    public abstract boolean onHover(android.view.View, android.view.MotionEvent);
-
-
-}
-
--keep class android.view.View$OnKeyListener {
-
-    public abstract boolean onKey(android.view.View, int, android.view.KeyEvent);
-
-
-}
-
--keep class android.view.View$OnLayoutChangeListener {
-
-    public abstract void onLayoutChange(android.view.View, int, int, int, int, int, int, int, int);
-
-
-}
-
--keep class android.view.View$OnLongClickListener {
-
-    public abstract boolean onLongClick(android.view.View);
-
-
-}
-
--keep class android.view.View$OnScrollChangeListener {
-
-    public abstract void onScrollChange(android.view.View, int, int, int, int);
-
-
-}
-
--keep class android.view.View$OnSystemUiVisibilityChangeListener {
-
-    public abstract void onSystemUiVisibilityChange(int);
-
-
-}
-
--keep class android.view.View$OnTouchListener {
-
-    public abstract boolean onTouch(android.view.View, android.view.MotionEvent);
-
-
-}
-
--keep class android.view.View$OnUnhandledKeyEventListener {
-
-    public abstract boolean onUnhandledKeyEvent(android.view.View, android.view.KeyEvent);
-
-
-}
-
--keep class android.view.View$TransformationInfo {
-
-
-
-}
-
--keep class android.view.ViewDebug {
-    <init>();
-
-    public static void capture(android.view.View, java.io.OutputStream, android.view.View);
-    public static void captureLayers(android.view.View, java.io.DataOutputStream);
-    public static void dump(android.view.View, boolean, boolean, java.io.OutputStream);
-    public static void dumpCapturedView(java.lang.String, java.lang.Object);
-    public static void dumpTheme(android.view.View, java.io.OutputStream);
-    public static void dumpv2(android.view.View, java.io.ByteArrayOutputStream);
-    public static android.view.View findView(android.view.View, java.lang.String);
-    public static java.lang.String flagsToString(java.lang.Class, java.lang.String, int);
-    public static long getViewInstanceCount();
-    public static long getViewRootImplCount();
-    public static java.lang.String intToString(java.lang.Class, java.lang.String, int);
-    public static java.lang.Object invokeViewMethod(android.view.View, java.lang.reflect.Method, java.lang.Object[]);
-    public static void outputDisplayList(android.view.View, android.view.View);
-    public static void profileViewAndChildren(android.view.View, java.io.BufferedWriter);
-    public static void setLayoutParameter(android.view.View, java.lang.String, int);
-    public static void startHierarchyTracing(java.lang.String, android.view.View);
-    public static void startRecyclerTracing(java.lang.String, android.view.View);
-    public static void stopHierarchyTracing();
-    public static void stopRecyclerTracing();
-    public static void trace(android.view.View, android.view.ViewDebug$RecyclerTraceType, int[]);
-    public static void trace(android.view.View, android.view.ViewDebug$HierarchyTraceType);
-
-
-    public static boolean DEBUG_DRAG;
-    public static boolean DEBUG_POSITIONING;
-    public static boolean TRACE_HIERARCHY;
-    public static boolean TRACE_RECYCLER;
-}
-
--keep class android.view.ViewDebug$CanvasProvider {
-
-    public abstract android.graphics.Bitmap createBitmap();
-    public abstract android.graphics.Canvas getCanvas(android.view.View, int, int);
-
-
-}
-
--keep class android.view.ViewDebug$HierarchyTraceType {
-
-    public static android.view.ViewDebug$HierarchyTraceType valueOf(java.lang.String);
-    public static android.view.ViewDebug$HierarchyTraceType[] values();
-
-    public static android.view.ViewDebug$HierarchyTraceType BUILD_CACHE;
-    public static android.view.ViewDebug$HierarchyTraceType DRAW;
-    public static android.view.ViewDebug$HierarchyTraceType INVALIDATE;
-    public static android.view.ViewDebug$HierarchyTraceType INVALIDATE_CHILD;
-    public static android.view.ViewDebug$HierarchyTraceType INVALIDATE_CHILD_IN_PARENT;
-    public static android.view.ViewDebug$HierarchyTraceType ON_LAYOUT;
-    public static android.view.ViewDebug$HierarchyTraceType ON_MEASURE;
-    public static android.view.ViewDebug$HierarchyTraceType REQUEST_LAYOUT;
-
-}
-
--keep class android.view.ViewDebug$RecyclerTraceType {
-
-    public static android.view.ViewDebug$RecyclerTraceType valueOf(java.lang.String);
-    public static android.view.ViewDebug$RecyclerTraceType[] values();
-
-    public static android.view.ViewDebug$RecyclerTraceType BIND_VIEW;
-    public static android.view.ViewDebug$RecyclerTraceType MOVE_FROM_ACTIVE_TO_SCRAP_HEAP;
-    public static android.view.ViewDebug$RecyclerTraceType MOVE_TO_SCRAP_HEAP;
-    public static android.view.ViewDebug$RecyclerTraceType NEW_VIEW;
-    public static android.view.ViewDebug$RecyclerTraceType RECYCLE_FROM_ACTIVE_HEAP;
-    public static android.view.ViewDebug$RecyclerTraceType RECYCLE_FROM_SCRAP_HEAP;
-
-}
-
--keep class android.view.ViewGroup {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    public void addChildrenForAccessibility(java.util.ArrayList);
-    public void addFocusables(java.util.ArrayList, int, int);
-    public void addKeyboardNavigationClusters(java.util.Collection, int);
-    public boolean addStatesFromChildren();
-    public void addTouchables(java.util.ArrayList);
-    public void addTransientView(android.view.View, int);
-    public void addView(android.view.View);
-    public void addView(android.view.View, int);
-    public void addView(android.view.View, int, int);
-    public void addView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void addView(android.view.View, int, android.view.ViewGroup$LayoutParams);
-    protected boolean addViewInLayout(android.view.View, int, android.view.ViewGroup$LayoutParams);
-    protected boolean addViewInLayout(android.view.View, int, android.view.ViewGroup$LayoutParams, boolean);
-    protected void attachLayoutAnimationParameters(android.view.View, android.view.ViewGroup$LayoutParams, int, int);
-    protected void attachViewToParent(android.view.View, int, android.view.ViewGroup$LayoutParams);
-    public void bringChildToFront(android.view.View);
-    public java.util.ArrayList buildTouchDispatchChildList();
-    protected boolean canAnimate();
-    public void captureTransitioningViews(java.util.List);
-    protected boolean checkLayoutParams(android.view.ViewGroup$LayoutParams);
-    public void childDrawableStateChanged(android.view.View);
-    public void childHasTransientStateChanged(android.view.View, boolean);
-    protected void cleanupLayoutState(android.view.View);
-    public void clearChildFocus(android.view.View);
-    public void clearDisappearingChildren();
-    public void clearFocus();
-    public android.graphics.Bitmap createSnapshot(android.view.ViewDebug$CanvasProvider, boolean);
-    protected void debug(int);
-    protected void destroyHardwareResources();
-    protected void detachAllViewsFromParent();
-    protected void detachViewFromParent(android.view.View);
-    protected void detachViewFromParent(int);
-    protected void detachViewsFromParent(int, int);
-    public boolean dispatchActivityResult(java.lang.String, int, int, android.content.Intent);
-    public android.view.WindowInsets dispatchApplyWindowInsets(android.view.WindowInsets);
-    public boolean dispatchCapturedPointerEvent(android.view.MotionEvent);
-    public void dispatchConfigurationChanged(android.content.res.Configuration);
-    public void dispatchDisplayHint(int);
-    public boolean dispatchDragEvent(android.view.DragEvent);
-    protected void dispatchDraw(android.graphics.Canvas);
-    public void dispatchDrawableHotspotChanged(float, float);
-    public void dispatchFinishTemporaryDetach();
-    protected void dispatchFreezeSelfOnly(android.util.SparseArray);
-    protected boolean dispatchGenericFocusedEvent(android.view.MotionEvent);
-    protected boolean dispatchGenericPointerEvent(android.view.MotionEvent);
-    protected void dispatchGetDisplayList();
-    protected boolean dispatchHoverEvent(android.view.MotionEvent);
-    public boolean dispatchKeyEvent(android.view.KeyEvent);
-    public boolean dispatchKeyEventPreIme(android.view.KeyEvent);
-    public boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
-    public void dispatchPointerCaptureChanged(boolean);
-    public boolean dispatchPopulateAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    public void dispatchProvideAutofillStructure(android.view.ViewStructure, int);
-    public void dispatchProvideStructure(android.view.ViewStructure);
-    protected void dispatchRestoreInstanceState(android.util.SparseArray);
-    protected void dispatchSaveInstanceState(android.util.SparseArray);
-    public void dispatchSetActivated(boolean);
-    protected void dispatchSetPressed(boolean);
-    public void dispatchSetSelected(boolean);
-    public void dispatchStartTemporaryDetach();
-    public void dispatchSystemUiVisibilityChanged(int);
-    protected void dispatchThawSelfOnly(android.util.SparseArray);
-    public boolean dispatchTouchEvent(android.view.MotionEvent);
-    public boolean dispatchTrackballEvent(android.view.MotionEvent);
-    public boolean dispatchUnhandledMove(android.view.View, int);
-    protected void dispatchVisibilityChanged(android.view.View, int);
-    public void dispatchWindowFocusChanged(boolean);
-    public void dispatchWindowSystemUiVisiblityChanged(int);
-    public void dispatchWindowVisibilityChanged(int);
-    protected boolean drawChild(android.graphics.Canvas, android.view.View, long);
-    protected void drawableStateChanged();
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public void endViewTransition(android.view.View);
-    public android.view.View findFocus();
-    public void findNamedViews(java.util.Map);
-    public android.view.View findViewByAccessibilityIdTraversal(int);
-    public android.view.View findViewByAutofillIdTraversal(int);
-    protected android.view.View findViewByPredicateTraversal(java.util.function.Predicate, android.view.View);
-    protected android.view.View findViewTraversal(int);
-    protected android.view.View findViewWithTagTraversal(java.lang.Object);
-    public void findViewsWithText(java.util.ArrayList, java.lang.CharSequence, int);
-    public android.view.View focusSearch(android.view.View, int);
-    public void focusableViewAvailable(android.view.View);
-    public boolean gatherTransparentRegion(android.graphics.Region);
-    protected android.view.ViewGroup$LayoutParams generateDefaultLayoutParams();
-    public android.view.ViewGroup$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    protected android.view.ViewGroup$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    public java.lang.CharSequence getAccessibilityClassName();
-    public android.view.View getChildAt(int);
-    public int getChildCount();
-    protected int getChildDrawingOrder(int, int);
-    public static int getChildMeasureSpec(int, int, int);
-    protected boolean getChildStaticTransformation(android.view.View, android.view.animation.Transformation);
-    public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point);
-    public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point, boolean);
-    public boolean getClipChildren();
-    public boolean getClipToPadding();
-    public int getDescendantFocusability();
-    public android.view.View getFocusedChild();
-    public android.view.animation.LayoutAnimationController getLayoutAnimation();
-    public android.view.animation.Animation$AnimationListener getLayoutAnimationListener();
-    public int getLayoutMode();
-    public android.animation.LayoutTransition getLayoutTransition();
-    public int getNestedScrollAxes();
-    public android.view.ViewGroupOverlay getOverlay();
-    public android.view.ViewOverlay getOverlay();
-    public int getPersistentDrawingCache();
-    public boolean getTouchscreenBlocksFocus();
-    public android.view.View getTransientView(int);
-    public int getTransientViewCount();
-    public int getTransientViewIndex(int);
-    public boolean hasFocus();
-    protected boolean hasHoveredChild();
-    public boolean hasTransientState();
-    public int indexOfChild(android.view.View);
-    protected void internalSetPadding(int, int, int, int);
-    public void invalidateChild(android.view.View, android.graphics.Rect);
-    public android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect);
-    public boolean isAlwaysDrawnWithCacheEnabled();
-    public boolean isAnimationCacheEnabled();
-    protected boolean isChildrenDrawingOrderEnabled();
-    protected boolean isChildrenDrawnWithCacheEnabled();
-    public boolean isLayoutSuppressed();
-    public boolean isMotionEventSplittingEnabled();
-    public boolean isShowingContextMenuWithCoords();
-    protected boolean isTransformedTouchPointInView(float, float, android.view.View, android.graphics.PointF);
-    public boolean isTransitionGroup();
-    public void jumpDrawablesToCurrentState();
-    public void layout(int, int, int, int);
-    public void makeOptionalFitsSystemWindows();
-    protected void measureChild(android.view.View, int, int);
-    protected void measureChildWithMargins(android.view.View, int, int, int, int);
-    protected void measureChildren(int, int);
-    public void notifySubtreeAccessibilityStateChanged(android.view.View, android.view.View, int);
-    public void notifySubtreeAccessibilityStateChangedIfNeeded();
-    public void offsetChildrenTopAndBottom(int);
-    public void offsetDescendantRectToMyCoords(android.view.View, android.graphics.Rect);
-    public void offsetRectIntoDescendantCoords(android.view.View, android.graphics.Rect);
-    protected void onAttachedToWindow();
-    protected void onChildVisibilityChanged(android.view.View, int, int);
-    protected int[] onCreateDrawableState(int);
-    protected void onDebugDraw(android.graphics.Canvas);
-    protected void onDebugDrawMargins(android.graphics.Canvas, android.graphics.Paint);
-    public void onDescendantInvalidated(android.view.View, android.view.View);
-    protected void onDetachedFromWindow();
-    public void onInitializeAccessibilityNodeInfoInternal(android.view.accessibility.AccessibilityNodeInfo);
-    public boolean onInterceptHoverEvent(android.view.MotionEvent);
-    public boolean onInterceptTouchEvent(android.view.MotionEvent);
-    protected abstract void onLayout(boolean, int, int, int, int);
-    public boolean onNestedFling(android.view.View, float, float, boolean);
-    public boolean onNestedPreFling(android.view.View, float, float);
-    public boolean onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle);
-    public void onNestedPreScroll(android.view.View, int, int, int[]);
-    public void onNestedScroll(android.view.View, int, int, int, int);
-    public void onNestedScrollAccepted(android.view.View, android.view.View, int);
-    protected boolean onRequestFocusInDescendants(int, android.graphics.Rect);
-    public boolean onRequestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public boolean onRequestSendAccessibilityEventInternal(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public android.view.PointerIcon onResolvePointerIcon(android.view.MotionEvent, int);
-    protected void onSetLayoutParams(android.view.View, android.view.ViewGroup$LayoutParams);
-    public boolean onStartNestedScroll(android.view.View, android.view.View, int);
-    public void onStopNestedScroll(android.view.View);
-    public void onViewAdded(android.view.View);
-    public void onViewRemoved(android.view.View);
-    public void recomputeViewAttributes(android.view.View);
-    public void removeAllViews();
-    public void removeAllViewsInLayout();
-    protected void removeDetachedView(android.view.View, boolean);
-    public void removeTransientView(android.view.View);
-    public void removeView(android.view.View);
-    public void removeViewAt(int);
-    public void removeViewInLayout(android.view.View);
-    public void removeViews(int, int);
-    public void removeViewsInLayout(int, int);
-    public void requestChildFocus(android.view.View, android.view.View);
-    public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
-    public void requestDisallowInterceptTouchEvent(boolean);
-    public boolean requestFocus(int, android.graphics.Rect);
-    public boolean requestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public void requestTransitionStart(android.animation.LayoutTransition);
-    public void requestTransparentRegion(android.view.View);
-    protected void resetResolvedDrawables();
-    public void resetResolvedLayoutDirection();
-    public void resetResolvedPadding();
-    public void resetResolvedTextAlignment();
-    public void resetResolvedTextDirection();
-    protected void resolveDrawables();
-    public boolean resolveLayoutDirection();
-    public void resolveLayoutParams();
-    public void resolvePadding();
-    public boolean resolveRtlPropertiesIfNeeded();
-    public boolean resolveTextAlignment();
-    public boolean resolveTextDirection();
-    public boolean restoreDefaultFocus();
-    public boolean restoreFocusInCluster(int);
-    public boolean restoreFocusNotInCluster();
-    public void scheduleLayoutAnimation();
-    public void setAddStatesFromChildren(boolean);
-    public void setAlwaysDrawnWithCacheEnabled(boolean);
-    public void setAnimationCacheEnabled(boolean);
-    protected void setChildrenDrawingCacheEnabled(boolean);
-    protected void setChildrenDrawingOrderEnabled(boolean);
-    protected void setChildrenDrawnWithCacheEnabled(boolean);
-    public void setClipChildren(boolean);
-    public void setClipToPadding(boolean);
-    public void setDescendantFocusability(int);
-    public void setLayoutAnimation(android.view.animation.LayoutAnimationController);
-    public void setLayoutAnimationListener(android.view.animation.Animation$AnimationListener);
-    public void setLayoutMode(int);
-    public void setLayoutTransition(android.animation.LayoutTransition);
-    public void setMotionEventSplittingEnabled(boolean);
-    public void setOnHierarchyChangeListener(android.view.ViewGroup$OnHierarchyChangeListener);
-    public void setPersistentDrawingCache(int);
-    protected void setStaticTransformationsEnabled(boolean);
-    public void setTouchscreenBlocksFocus(boolean);
-    public void setTransitionGroup(boolean);
-    public boolean shouldDelayChildPressedState();
-    public boolean showContextMenuForChild(android.view.View);
-    public boolean showContextMenuForChild(android.view.View, float, float);
-    public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode$Callback);
-    public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode$Callback, int);
-    public void startLayoutAnimation();
-    public void startViewTransition(android.view.View);
-    public void suppressLayout(boolean);
-    public void transformPointToViewLocal(float[], android.view.View);
-    public void updateViewLayout(android.view.View, android.view.ViewGroup$LayoutParams);
-
-
-    protected static int CLIP_TO_PADDING_MASK;
-    protected static int FLAG_DISALLOW_INTERCEPT;
-    protected static int FLAG_SUPPORT_STATIC_TRANSFORMATIONS;
-    protected static int FLAG_USE_CHILD_DRAWING_ORDER;
-    public static int FOCUS_AFTER_DESCENDANTS;
-    public static int FOCUS_BEFORE_DESCENDANTS;
-    public static int FOCUS_BLOCK_DESCENDANTS;
-    public static int LAYOUT_MODE_CLIP_BOUNDS;
-    public static int LAYOUT_MODE_DEFAULT;
-    public static int LAYOUT_MODE_OPTICAL_BOUNDS;
-    public static int PERSISTENT_ALL_CACHES;
-    public static int PERSISTENT_ANIMATION_CACHE;
-    public static int PERSISTENT_NO_CACHE;
-    public static int PERSISTENT_SCROLLING_CACHE;
-    protected java.util.ArrayList mDisappearingChildren;
-    protected int mGroupFlags;
-    protected android.view.ViewGroup$OnHierarchyChangeListener mOnHierarchyChangeListener;
-    protected int mPersistentDrawingCache;
-}
-
--keep class android.view.ViewGroup$LayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(int, int);
-    <init>(android.view.ViewGroup$LayoutParams);
-
-    public java.lang.String debug(java.lang.String);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public void onDebugDraw(android.view.View, android.graphics.Canvas, android.graphics.Paint);
-    public void resolveLayoutDirection(int);
-    protected void setBaseAttributes(android.content.res.TypedArray, int, int);
-    protected static java.lang.String sizeToString(int);
-
-
-    public static int FILL_PARENT;
-    public static int MATCH_PARENT;
-    public static int WRAP_CONTENT;
-    public int height;
-    public android.view.animation.LayoutAnimationController$AnimationParameters layoutAnimationParameters;
-    public int width;
-}
-
--keep class android.view.ViewGroup$MarginLayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(int, int);
-    <init>(android.view.ViewGroup$MarginLayoutParams);
-    <init>(android.view.ViewGroup$LayoutParams);
-
-    public void copyMarginsFrom(android.view.ViewGroup$MarginLayoutParams);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public int getLayoutDirection();
-    public int getMarginEnd();
-    public int getMarginStart();
-    public boolean isLayoutRtl();
-    public boolean isMarginRelative();
-    public void onDebugDraw(android.view.View, android.graphics.Canvas, android.graphics.Paint);
-    public void resolveLayoutDirection(int);
-    public void setLayoutDirection(int);
-    public void setMarginEnd(int);
-    public void setMarginStart(int);
-    public void setMargins(int, int, int, int);
-    public void setMarginsRelative(int, int, int, int);
-
-
-    public static int DEFAULT_MARGIN_RELATIVE;
-    public int bottomMargin;
-    public int leftMargin;
-    public int rightMargin;
-    public int topMargin;
-}
-
--keep class android.view.ViewGroup$OnHierarchyChangeListener {
-
-    public abstract void onChildViewAdded(android.view.View, android.view.View);
-    public abstract void onChildViewRemoved(android.view.View, android.view.View);
-
-
-}
-
--keep class android.view.ViewGroupOverlay {
-
-    public void add(android.view.View);
-    public void remove(android.view.View);
-
-
-}
-
--keep class android.view.ViewHierarchyEncoder {
-    <init>(java.io.ByteArrayOutputStream);
-
-    public void addProperty(java.lang.String, boolean);
-    public void addProperty(java.lang.String, short);
-    public void addProperty(java.lang.String, int);
-    public void addProperty(java.lang.String, float);
-    public void addProperty(java.lang.String, java.lang.String);
-    public void addPropertyKey(java.lang.String);
-    public void beginObject(java.lang.Object);
-    public void endObject();
-    public void endStream();
-
-
-}
-
--keep class android.view.ViewOutlineProvider {
-    <init>();
-
-    public abstract void getOutline(android.view.View, android.graphics.Outline);
-
-
-    public static android.view.ViewOutlineProvider BACKGROUND;
-    public static android.view.ViewOutlineProvider BOUNDS;
-    public static android.view.ViewOutlineProvider PADDED_BOUNDS;
-}
-
--keep class android.view.ViewOverlay {
-
-    public void add(android.graphics.drawable.Drawable);
-    public void clear();
-    public void remove(android.graphics.drawable.Drawable);
-
-
-}
-
--keep class android.view.ViewParent {
-
-    public abstract void bringChildToFront(android.view.View);
-    public abstract boolean canResolveLayoutDirection();
-    public abstract boolean canResolveTextAlignment();
-    public abstract boolean canResolveTextDirection();
-    public abstract void childDrawableStateChanged(android.view.View);
-    public abstract void childHasTransientStateChanged(android.view.View, boolean);
-    public abstract void clearChildFocus(android.view.View);
-    public abstract void createContextMenu(android.view.ContextMenu);
-    public abstract android.view.View focusSearch(android.view.View, int);
-    public abstract void focusableViewAvailable(android.view.View);
-    public abstract boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point);
-    public abstract int getLayoutDirection();
-    public abstract android.view.ViewParent getParent();
-    public abstract android.view.ViewParent getParentForAccessibility();
-    public abstract int getTextAlignment();
-    public abstract int getTextDirection();
-    public abstract void invalidateChild(android.view.View, android.graphics.Rect);
-    public abstract android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect);
-    public abstract boolean isLayoutDirectionResolved();
-    public abstract boolean isLayoutRequested();
-    public abstract boolean isTextAlignmentResolved();
-    public abstract boolean isTextDirectionResolved();
-    public abstract android.view.View keyboardNavigationClusterSearch(android.view.View, int);
-    public abstract void notifySubtreeAccessibilityStateChanged(android.view.View, android.view.View, int);
-    public void onDescendantInvalidated(android.view.View, android.view.View);
-    public abstract boolean onNestedFling(android.view.View, float, float, boolean);
-    public abstract boolean onNestedPreFling(android.view.View, float, float);
-    public abstract boolean onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle);
-    public abstract void onNestedPreScroll(android.view.View, int, int, int[]);
-    public abstract void onNestedScroll(android.view.View, int, int, int, int);
-    public abstract void onNestedScrollAccepted(android.view.View, android.view.View, int);
-    public abstract boolean onStartNestedScroll(android.view.View, android.view.View, int);
-    public abstract void onStopNestedScroll(android.view.View);
-    public abstract void recomputeViewAttributes(android.view.View);
-    public abstract void requestChildFocus(android.view.View, android.view.View);
-    public abstract boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
-    public abstract void requestDisallowInterceptTouchEvent(boolean);
-    public abstract void requestFitSystemWindows();
-    public abstract void requestLayout();
-    public abstract boolean requestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public abstract void requestTransparentRegion(android.view.View);
-    public abstract boolean showContextMenuForChild(android.view.View);
-    public abstract boolean showContextMenuForChild(android.view.View, float, float);
-    public abstract android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode$Callback);
-    public abstract android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode$Callback, int);
-
-
-}
-
--keep class android.view.ViewPropertyAnimator {
-
-    public android.view.ViewPropertyAnimator alpha(float);
-    public android.view.ViewPropertyAnimator alphaBy(float);
-    public void cancel();
-    public long getDuration();
-    public android.animation.TimeInterpolator getInterpolator();
-    public long getStartDelay();
-    public android.view.ViewPropertyAnimator rotation(float);
-    public android.view.ViewPropertyAnimator rotationBy(float);
-    public android.view.ViewPropertyAnimator rotationX(float);
-    public android.view.ViewPropertyAnimator rotationXBy(float);
-    public android.view.ViewPropertyAnimator rotationY(float);
-    public android.view.ViewPropertyAnimator rotationYBy(float);
-    public android.view.ViewPropertyAnimator scaleX(float);
-    public android.view.ViewPropertyAnimator scaleXBy(float);
-    public android.view.ViewPropertyAnimator scaleY(float);
-    public android.view.ViewPropertyAnimator scaleYBy(float);
-    public android.view.ViewPropertyAnimator setDuration(long);
-    public android.view.ViewPropertyAnimator setInterpolator(android.animation.TimeInterpolator);
-    public android.view.ViewPropertyAnimator setListener(android.animation.Animator$AnimatorListener);
-    public android.view.ViewPropertyAnimator setStartDelay(long);
-    public android.view.ViewPropertyAnimator setUpdateListener(android.animation.ValueAnimator$AnimatorUpdateListener);
-    public void start();
-    public android.view.ViewPropertyAnimator translationX(float);
-    public android.view.ViewPropertyAnimator translationXBy(float);
-    public android.view.ViewPropertyAnimator translationY(float);
-    public android.view.ViewPropertyAnimator translationYBy(float);
-    public android.view.ViewPropertyAnimator translationZ(float);
-    public android.view.ViewPropertyAnimator translationZBy(float);
-    public android.view.ViewPropertyAnimator withEndAction(java.lang.Runnable);
-    public android.view.ViewPropertyAnimator withLayer();
-    public android.view.ViewPropertyAnimator withStartAction(java.lang.Runnable);
-    public android.view.ViewPropertyAnimator x(float);
-    public android.view.ViewPropertyAnimator xBy(float);
-    public android.view.ViewPropertyAnimator y(float);
-    public android.view.ViewPropertyAnimator yBy(float);
-    public android.view.ViewPropertyAnimator z(float);
-    public android.view.ViewPropertyAnimator zBy(float);
-
-
-}
-
--keep class android.view.ViewRootImpl {
-    <init>(android.content.Context, android.view.Display);
-
-    public static void addConfigCallback(android.view.ViewRootImpl$ConfigChangedCallback);
-    public static void addFirstDrawHandler(java.lang.Runnable);
-    public void addWindowCallbacks(android.view.WindowCallbacks);
-    public void bringChildToFront(android.view.View);
-    public boolean canResolveLayoutDirection();
-    public boolean canResolveTextAlignment();
-    public boolean canResolveTextDirection();
-    public void cancelInvalidate(android.view.View);
-    public void childDrawableStateChanged(android.view.View);
-    public void childHasTransientStateChanged(android.view.View, boolean);
-    public void clearChildFocus(android.view.View);
-    public void createContextMenu(android.view.ContextMenu);
-    public void debug();
-    public void detachFunctor(long);
-    public void dispatchAppVisibility(boolean);
-    public void dispatchCheckFocus();
-    public void dispatchCloseSystemDialogs(java.lang.String);
-    public void dispatchDragEvent(android.view.DragEvent);
-    public void dispatchGetNewSurface();
-    public void dispatchInputEvent(android.view.InputEvent);
-    public void dispatchInputEvent(android.view.InputEvent, android.view.InputEventReceiver);
-    public void dispatchInvalidateDelayed(android.view.View, long);
-    public void dispatchInvalidateOnAnimation(android.view.View);
-    public void dispatchInvalidateRectDelayed(android.view.View$AttachInfo$InvalidateInfo, long);
-    public void dispatchInvalidateRectOnAnimation(android.view.View$AttachInfo$InvalidateInfo);
-    public void dispatchKeyFromAutofill(android.view.KeyEvent);
-    public void dispatchKeyFromIme(android.view.KeyEvent);
-    public void dispatchMoved(int, int);
-    public void dispatchPointerCaptureChanged(boolean);
-    public void dispatchRequestKeyboardShortcuts(com.android.internal.os.IResultReceiver, int);
-    public void dispatchSystemUiVisibilityChanged(int, int, int, int);
-    public void dispatchUnhandledInputEvent(android.view.InputEvent);
-    public boolean dispatchUnhandledKeyEvent(android.view.KeyEvent);
-    public void dispatchWindowShown();
-    public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
-    public void dumpGfxInfo(int[]);
-    public android.view.View focusSearch(android.view.View, int);
-    public void focusableViewAvailable(android.view.View);
-    public android.view.View getAccessibilityFocusedHost();
-    public android.view.accessibility.AccessibilityNodeInfo getAccessibilityFocusedVirtualView();
-    public android.view.AccessibilityInteractionController getAccessibilityInteractionController();
-    public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point);
-    public int getDisplayId();
-    public int getHeight();
-    public void getLastTouchPoint(android.graphics.Point);
-    public int getLastTouchSource();
-    public int getLayoutDirection();
-    public android.view.ViewParent getParent();
-    public android.view.ViewParent getParentForAccessibility();
-    public int getTextAlignment();
-    public int getTextDirection();
-    public java.lang.CharSequence getTitle();
-    public android.view.View getView();
-    public int getWidth();
-    public int getWindowFlags();
-    public void handleDispatchSystemUiVisibilityChanged(android.view.ViewRootImpl$SystemUiVisibilityInfo);
-    public void handleDispatchWindowShown();
-    public void handleRequestKeyboardShortcuts(com.android.internal.os.IResultReceiver, int);
-    public void invalidateChild(android.view.View, android.graphics.Rect);
-    public android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect);
-    public static void invokeFunctor(long, boolean);
-    public boolean isLayoutDirectionResolved();
-    public boolean isLayoutRequested();
-    public boolean isTextAlignmentResolved();
-    public boolean isTextDirectionResolved();
-    public static boolean isViewDescendantOf(android.view.View, android.view.View);
-    public android.view.View keyboardNavigationClusterSearch(android.view.View, int);
-    public void loadSystemProperties();
-    public void notifyChildRebuilt();
-    public void notifySubtreeAccessibilityStateChanged(android.view.View, android.view.View, int);
-    public void onDescendantInvalidated(android.view.View, android.view.View);
-    public void onMovedToDisplay(int, android.content.res.Configuration);
-    public boolean onNestedFling(android.view.View, float, float, boolean);
-    public boolean onNestedPreFling(android.view.View, float, float);
-    public boolean onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle);
-    public void onNestedPreScroll(android.view.View, int, int, int[]);
-    public void onNestedScroll(android.view.View, int, int, int, int);
-    public void onNestedScrollAccepted(android.view.View, android.view.View, int);
-    public void onPostDraw(android.view.DisplayListCanvas);
-    public void onPreDraw(android.view.DisplayListCanvas);
-    public boolean onStartNestedScroll(android.view.View, android.view.View, int);
-    public void onStopNestedScroll(android.view.View);
-    public void onWindowTitleChanged();
-    public boolean performHapticFeedback(int, boolean);
-    public void playSoundEffect(int);
-    public void profile();
-    public void recomputeViewAttributes(android.view.View);
-    public void registerAnimatingRenderNode(android.view.RenderNode);
-    public void registerRtFrameCallback(android.view.ThreadedRenderer$FrameDrawingCallback);
-    public void registerVectorDrawableAnimator(android.graphics.drawable.AnimatedVectorDrawable$VectorDrawableAnimatorRT);
-    public void removeWindowCallbacks(android.view.WindowCallbacks);
-    public void reportActivityRelaunched();
-    public void reportDrawFinish();
-    public void requestChildFocus(android.view.View, android.view.View);
-    public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
-    public void requestDisallowInterceptTouchEvent(boolean);
-    public void requestFitSystemWindows();
-    public void requestInvalidateRootRenderNode();
-    public void requestLayout();
-    public boolean requestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public void requestTransitionStart(android.animation.LayoutTransition);
-    public void requestTransparentRegion(android.view.View);
-    public void requestUpdateConfiguration(android.content.res.Configuration);
-    public void setActivityConfigCallback(android.view.ViewRootImpl$ActivityConfigCallback);
-    public void setDragFocus(android.view.View, android.view.DragEvent);
-    public void setIsAmbientMode(boolean);
-    public void setPausedForTransition(boolean);
-    public void setReportNextDraw();
-    public void setView(android.view.View, android.view.WindowManager$LayoutParams, android.view.View);
-    public boolean showContextMenuForChild(android.view.View);
-    public boolean showContextMenuForChild(android.view.View, float, float);
-    public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode$Callback);
-    public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode$Callback, int);
-    public void synthesizeInputEvent(android.view.InputEvent);
-    public void updateConfiguration(int);
-    public void updatePointerIcon(float, float);
-    public void windowFocusChanged(boolean, boolean);
-
-
-    public static java.lang.String PROPERTY_EMULATOR_WIN_OUTSET_BOTTOM_PX;
-    protected android.view.InputEventConsistencyVerifier mInputEventConsistencyVerifier;
-    public boolean mIsAnimating;
-    public android.view.Surface mSurface;
-    public boolean mTraversalScheduled;
-    public android.view.WindowManager$LayoutParams mWindowAttributes;
-}
-
--keep class android.view.ViewRootImpl$ActivityConfigCallback {
-
-    public abstract void onConfigurationChanged(android.content.res.Configuration, int);
-
-
-}
-
--keep class android.view.ViewRootImpl$ConfigChangedCallback {
-
-    public abstract void onConfigurationChanged(android.content.res.Configuration);
-
-
-}
-
--keep class android.view.ViewRootImpl$SystemUiVisibilityInfo {
-
-
-
-}
-
--keep class android.view.ViewStructure {
-    <init>();
-
-    public abstract int addChildCount(int);
-    public abstract void asyncCommit();
-    public abstract android.view.ViewStructure asyncNewChild(int);
-    public abstract android.view.autofill.AutofillId getAutofillId();
-    public abstract int getChildCount();
-    public abstract android.os.Bundle getExtras();
-    public abstract java.lang.CharSequence getHint();
-    public abstract android.graphics.Rect getTempRect();
-    public abstract java.lang.CharSequence getText();
-    public abstract int getTextSelectionEnd();
-    public abstract int getTextSelectionStart();
-    public abstract boolean hasExtras();
-    public abstract android.view.ViewStructure newChild(int);
-    public abstract android.view.ViewStructure$HtmlInfo$Builder newHtmlInfoBuilder(java.lang.String);
-    public abstract void setAccessibilityFocused(boolean);
-    public abstract void setActivated(boolean);
-    public abstract void setAlpha(float);
-    public abstract void setAssistBlocked(boolean);
-    public abstract void setAutofillHints(java.lang.String[]);
-    public abstract void setAutofillId(android.view.autofill.AutofillId);
-    public abstract void setAutofillId(android.view.autofill.AutofillId, int);
-    public abstract void setAutofillOptions(java.lang.CharSequence[]);
-    public abstract void setAutofillType(int);
-    public abstract void setAutofillValue(android.view.autofill.AutofillValue);
-    public abstract void setCheckable(boolean);
-    public abstract void setChecked(boolean);
-    public abstract void setChildCount(int);
-    public abstract void setClassName(java.lang.String);
-    public abstract void setClickable(boolean);
-    public abstract void setContentDescription(java.lang.CharSequence);
-    public abstract void setContextClickable(boolean);
-    public abstract void setDataIsSensitive(boolean);
-    public abstract void setDimens(int, int, int, int, int, int);
-    public abstract void setElevation(float);
-    public abstract void setEnabled(boolean);
-    public abstract void setFocusable(boolean);
-    public abstract void setFocused(boolean);
-    public abstract void setHint(java.lang.CharSequence);
-    public abstract void setHtmlInfo(android.view.ViewStructure$HtmlInfo);
-    public abstract void setId(int, java.lang.String, java.lang.String, java.lang.String);
-    public void setImportantForAutofill(int);
-    public abstract void setInputType(int);
-    public abstract void setLocaleList(android.os.LocaleList);
-    public abstract void setLongClickable(boolean);
-    public void setMaxTextEms(int);
-    public void setMaxTextLength(int);
-    public void setMinTextEms(int);
-    public abstract void setOpaque(boolean);
-    public abstract void setSelected(boolean);
-    public abstract void setText(java.lang.CharSequence);
-    public abstract void setText(java.lang.CharSequence, int, int);
-    public void setTextIdEntry(java.lang.String);
-    public abstract void setTextLines(int[], int[]);
-    public abstract void setTextStyle(float, int, int, int);
-    public abstract void setTransformation(android.graphics.Matrix);
-    public abstract void setVisibility(int);
-    public abstract void setWebDomain(java.lang.String);
-
-
-}
-
--keep class android.view.ViewStructure$HtmlInfo {
-    <init>();
-
-    public abstract java.util.List getAttributes();
-    public abstract java.lang.String getTag();
-
-
-}
-
--keep class android.view.ViewStructure$HtmlInfo$Builder {
-    <init>();
-
-    public abstract android.view.ViewStructure$HtmlInfo$Builder addAttribute(java.lang.String, java.lang.String);
-    public abstract android.view.ViewStructure$HtmlInfo build();
-
-
-}
-
--keep class android.view.ViewTreeObserver {
-
-    public void addOnComputeInternalInsetsListener(android.view.ViewTreeObserver$OnComputeInternalInsetsListener);
-    public void addOnDrawListener(android.view.ViewTreeObserver$OnDrawListener);
-    public void addOnEnterAnimationCompleteListener(android.view.ViewTreeObserver$OnEnterAnimationCompleteListener);
-    public void addOnGlobalFocusChangeListener(android.view.ViewTreeObserver$OnGlobalFocusChangeListener);
-    public void addOnGlobalLayoutListener(android.view.ViewTreeObserver$OnGlobalLayoutListener);
-    public void addOnPreDrawListener(android.view.ViewTreeObserver$OnPreDrawListener);
-    public void addOnScrollChangedListener(android.view.ViewTreeObserver$OnScrollChangedListener);
-    public void addOnTouchModeChangeListener(android.view.ViewTreeObserver$OnTouchModeChangeListener);
-    public void addOnWindowAttachListener(android.view.ViewTreeObserver$OnWindowAttachListener);
-    public void addOnWindowFocusChangeListener(android.view.ViewTreeObserver$OnWindowFocusChangeListener);
-    public void addOnWindowShownListener(android.view.ViewTreeObserver$OnWindowShownListener);
-    public void dispatchOnDraw();
-    public void dispatchOnEnterAnimationComplete();
-    public void dispatchOnGlobalLayout();
-    public boolean dispatchOnPreDraw();
-    public void dispatchOnWindowShown();
-    public boolean isAlive();
-    public void removeGlobalOnLayoutListener(android.view.ViewTreeObserver$OnGlobalLayoutListener);
-    public void removeOnComputeInternalInsetsListener(android.view.ViewTreeObserver$OnComputeInternalInsetsListener);
-    public void removeOnDrawListener(android.view.ViewTreeObserver$OnDrawListener);
-    public void removeOnEnterAnimationCompleteListener(android.view.ViewTreeObserver$OnEnterAnimationCompleteListener);
-    public void removeOnGlobalFocusChangeListener(android.view.ViewTreeObserver$OnGlobalFocusChangeListener);
-    public void removeOnGlobalLayoutListener(android.view.ViewTreeObserver$OnGlobalLayoutListener);
-    public void removeOnPreDrawListener(android.view.ViewTreeObserver$OnPreDrawListener);
-    public void removeOnScrollChangedListener(android.view.ViewTreeObserver$OnScrollChangedListener);
-    public void removeOnTouchModeChangeListener(android.view.ViewTreeObserver$OnTouchModeChangeListener);
-    public void removeOnWindowAttachListener(android.view.ViewTreeObserver$OnWindowAttachListener);
-    public void removeOnWindowFocusChangeListener(android.view.ViewTreeObserver$OnWindowFocusChangeListener);
-    public void removeOnWindowShownListener(android.view.ViewTreeObserver$OnWindowShownListener);
-
-
-}
-
--keep class android.view.ViewTreeObserver$InternalInsetsInfo {
-    <init>();
-
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void setTouchableInsets(int);
-
-
-    public static int TOUCHABLE_INSETS_CONTENT;
-    public static int TOUCHABLE_INSETS_FRAME;
-    public static int TOUCHABLE_INSETS_REGION;
-    public static int TOUCHABLE_INSETS_VISIBLE;
-    public android.graphics.Rect contentInsets;
-    public android.graphics.Region touchableRegion;
-    public android.graphics.Rect visibleInsets;
-}
-
--keep class android.view.ViewTreeObserver$OnComputeInternalInsetsListener {
-
-    public abstract void onComputeInternalInsets(android.view.ViewTreeObserver$InternalInsetsInfo);
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnDrawListener {
-
-    public abstract void onDraw();
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnEnterAnimationCompleteListener {
-
-    public abstract void onEnterAnimationComplete();
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnGlobalFocusChangeListener {
-
-    public abstract void onGlobalFocusChanged(android.view.View, android.view.View);
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnGlobalLayoutListener {
-
-    public abstract void onGlobalLayout();
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnPreDrawListener {
-
-    public abstract boolean onPreDraw();
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnScrollChangedListener {
-
-    public abstract void onScrollChanged();
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnTouchModeChangeListener {
-
-    public abstract void onTouchModeChanged(boolean);
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnWindowAttachListener {
-
-    public abstract void onWindowAttached();
-    public abstract void onWindowDetached();
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnWindowFocusChangeListener {
-
-    public abstract void onWindowFocusChanged(boolean);
-
-
-}
-
--keep class android.view.ViewTreeObserver$OnWindowShownListener {
-
-    public abstract void onWindowShown();
-
-
-}
-
--keep class android.view.Window {
-    <init>(android.content.Context);
-
-    public abstract void addContentView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void addFlags(int);
-    public void addOnFrameMetricsAvailableListener(android.view.Window$OnFrameMetricsAvailableListener, android.os.Handler);
-    public void addPrivateFlags(int);
-    public abstract void alwaysReadCloseOnTouchAttr();
-    public abstract void clearContentView();
-    public void clearFlags(int);
-    public abstract void closeAllPanels();
-    public abstract void closePanel(int);
-    public void destroy();
-    public void dispatchOnWindowDismissed(boolean, boolean);
-    public void dispatchOnWindowSwipeDismissed();
-    protected void dispatchWindowAttributesChanged(android.view.WindowManager$LayoutParams);
-    public android.view.View findViewById(int);
-    public boolean getAllowEnterTransitionOverlap();
-    public boolean getAllowReturnTransitionOverlap();
-    public android.view.WindowManager$LayoutParams getAttributes();
-    public android.view.Window$Callback getCallback();
-    public int getColorMode();
-    public android.view.Window getContainer();
-    public android.transition.Scene getContentScene();
-    public android.content.Context getContext();
-    public abstract android.view.View getCurrentFocus();
-    public abstract android.view.View getDecorView();
-    public static int getDefaultFeatures(android.content.Context);
-    public float getElevation();
-    public android.transition.Transition getEnterTransition();
-    public android.transition.Transition getExitTransition();
-    protected int getFeatures();
-    protected int getForcedWindowFlags();
-    public abstract android.view.LayoutInflater getLayoutInflater();
-    protected int getLocalFeatures();
-    public android.media.session.MediaController getMediaController();
-    public abstract int getNavigationBarColor();
-    public int getNavigationBarDividerColor();
-    public android.transition.Transition getReenterTransition();
-    public android.transition.Transition getReturnTransition();
-    public android.transition.Transition getSharedElementEnterTransition();
-    public android.transition.Transition getSharedElementExitTransition();
-    public android.transition.Transition getSharedElementReenterTransition();
-    public android.transition.Transition getSharedElementReturnTransition();
-    public boolean getSharedElementsUseOverlay();
-    public abstract int getStatusBarColor();
-    public long getTransitionBackgroundFadeDuration();
-    public android.transition.TransitionManager getTransitionManager();
-    public abstract int getVolumeControlStream();
-    public android.view.Window$WindowControllerCallback getWindowControllerCallback();
-    public android.view.WindowManager getWindowManager();
-    public android.content.res.TypedArray getWindowStyle();
-    public boolean hasChildren();
-    public boolean hasFeature(int);
-    protected boolean hasSoftInputMode();
-    protected boolean haveDimAmount();
-    public void injectInputEvent(android.view.InputEvent);
-    public abstract void invalidatePanelMenu(int);
-    public boolean isActive();
-    public boolean isCloseOnSwipeEnabled();
-    public boolean isDestroyed();
-    public abstract boolean isFloating();
-    public boolean isOverlayWithDecorCaptionEnabled();
-    public abstract boolean isShortcutKey(int, android.view.KeyEvent);
-    public boolean isWideColorGamut();
-    public void makeActive();
-    public void notifyRestrictedCaptionAreaCallback(int, int, int, int);
-    protected abstract void onActive();
-    public abstract void onConfigurationChanged(android.content.res.Configuration);
-    public abstract void onMultiWindowModeChanged();
-    public abstract void onPictureInPictureModeChanged(boolean);
-    public abstract void openPanel(int, android.view.KeyEvent);
-    public abstract android.view.View peekDecorView();
-    public abstract boolean performContextMenuIdentifierAction(int, int);
-    public abstract boolean performPanelIdentifierAction(int, int, int);
-    public abstract boolean performPanelShortcut(int, int, android.view.KeyEvent, int);
-    protected void removeFeature(int);
-    public void removeOnFrameMetricsAvailableListener(android.view.Window$OnFrameMetricsAvailableListener);
-    public abstract void reportActivityRelaunched();
-    public boolean requestFeature(int);
-    public android.view.View requireViewById(int);
-    public abstract void restoreHierarchyState(android.os.Bundle);
-    public abstract android.os.Bundle saveHierarchyState();
-    public void setAllowEnterTransitionOverlap(boolean);
-    public void setAllowReturnTransitionOverlap(boolean);
-    public void setAttributes(android.view.WindowManager$LayoutParams);
-    public abstract void setBackgroundDrawable(android.graphics.drawable.Drawable);
-    public void setBackgroundDrawableResource(int);
-    public void setCallback(android.view.Window$Callback);
-    public abstract void setChildDrawable(int, android.graphics.drawable.Drawable);
-    public abstract void setChildInt(int, int);
-    public void setClipToOutline(boolean);
-    public void setCloseOnSwipeEnabled(boolean);
-    public void setCloseOnTouchOutside(boolean);
-    public void setCloseOnTouchOutsideIfNotSet(boolean);
-    public void setColorMode(int);
-    public void setContainer(android.view.Window);
-    public abstract void setContentView(int);
-    public abstract void setContentView(android.view.View);
-    public abstract void setContentView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public abstract void setDecorCaptionShade(int);
-    public void setDefaultIcon(int);
-    public void setDefaultLogo(int);
-    protected void setDefaultWindowFormat(int);
-    public void setDimAmount(float);
-    public void setElevation(float);
-    public void setEnterTransition(android.transition.Transition);
-    public void setExitTransition(android.transition.Transition);
-    public abstract void setFeatureDrawable(int, android.graphics.drawable.Drawable);
-    public abstract void setFeatureDrawableAlpha(int, int);
-    public abstract void setFeatureDrawableResource(int, int);
-    public abstract void setFeatureDrawableUri(int, android.net.Uri);
-    public abstract void setFeatureInt(int, int);
-    public void setFlags(int, int);
-    public void setFormat(int);
-    public void setGravity(int);
-    public void setIcon(int);
-    public void setLayout(int, int);
-    public void setLocalFocus(boolean, boolean);
-    public void setLogo(int);
-    public void setMediaController(android.media.session.MediaController);
-    public abstract void setNavigationBarColor(int);
-    public void setNavigationBarDividerColor(int);
-    protected void setNeedsMenuKey(int);
-    public void setOnWindowDismissedCallback(android.view.Window$OnWindowDismissedCallback);
-    public void setOnWindowSwipeDismissedCallback(android.view.Window$OnWindowSwipeDismissedCallback);
-    public void setOverlayWithDecorCaptionEnabled(boolean);
-    public void setReenterTransition(android.transition.Transition);
-    public abstract void setResizingCaptionDrawable(android.graphics.drawable.Drawable);
-    public void setRestrictedCaptionAreaListener(android.view.Window$OnRestrictedCaptionAreaChangedListener);
-    public void setReturnTransition(android.transition.Transition);
-    public void setSharedElementEnterTransition(android.transition.Transition);
-    public void setSharedElementExitTransition(android.transition.Transition);
-    public void setSharedElementReenterTransition(android.transition.Transition);
-    public void setSharedElementReturnTransition(android.transition.Transition);
-    public void setSharedElementsUseOverlay(boolean);
-    public void setSoftInputMode(int);
-    public abstract void setStatusBarColor(int);
-    public void setSustainedPerformanceMode(boolean);
-    public void setTheme(int);
-    public abstract void setTitle(java.lang.CharSequence);
-    public abstract void setTitleColor(int);
-    public void setTransitionBackgroundFadeDuration(long);
-    public void setTransitionManager(android.transition.TransitionManager);
-    public void setType(int);
-    public void setUiOptions(int);
-    public void setUiOptions(int, int);
-    public abstract void setVolumeControlStream(int);
-    public void setWindowAnimations(int);
-    public void setWindowControllerCallback(android.view.Window$WindowControllerCallback);
-    public void setWindowManager(android.view.WindowManager, android.os.IBinder, java.lang.String);
-    public void setWindowManager(android.view.WindowManager, android.os.IBinder, java.lang.String, boolean);
-    public boolean shouldCloseOnTouch(android.content.Context, android.view.MotionEvent);
-    public abstract boolean superDispatchGenericMotionEvent(android.view.MotionEvent);
-    public abstract boolean superDispatchKeyEvent(android.view.KeyEvent);
-    public abstract boolean superDispatchKeyShortcutEvent(android.view.KeyEvent);
-    public abstract boolean superDispatchTouchEvent(android.view.MotionEvent);
-    public abstract boolean superDispatchTrackballEvent(android.view.MotionEvent);
-    public abstract void takeInputQueue(android.view.InputQueue$Callback);
-    public abstract void takeKeyEvents(boolean);
-    public abstract void takeSurface(android.view.SurfaceHolder$Callback2);
-    public abstract void togglePanel(int, android.view.KeyEvent);
-
-
-    public static int DECOR_CAPTION_SHADE_AUTO;
-    public static int DECOR_CAPTION_SHADE_DARK;
-    public static int DECOR_CAPTION_SHADE_LIGHT;
-    protected static int DEFAULT_FEATURES;
-    public static int FEATURE_ACTION_BAR;
-    public static int FEATURE_ACTION_BAR_OVERLAY;
-    public static int FEATURE_ACTION_MODE_OVERLAY;
-    public static int FEATURE_ACTIVITY_TRANSITIONS;
-    public static int FEATURE_CONTENT_TRANSITIONS;
-    public static int FEATURE_CONTEXT_MENU;
-    public static int FEATURE_CUSTOM_TITLE;
-    public static int FEATURE_INDETERMINATE_PROGRESS;
-    public static int FEATURE_LEFT_ICON;
-    public static int FEATURE_MAX;
-    public static int FEATURE_NO_TITLE;
-    public static int FEATURE_OPTIONS_PANEL;
-    public static int FEATURE_PROGRESS;
-    public static int FEATURE_RIGHT_ICON;
-    public static int FEATURE_SWIPE_TO_DISMISS;
-    public static int ID_ANDROID_CONTENT;
-    public static java.lang.String NAVIGATION_BAR_BACKGROUND_TRANSITION_NAME;
-    public static int PROGRESS_END;
-    public static int PROGRESS_INDETERMINATE_OFF;
-    public static int PROGRESS_INDETERMINATE_ON;
-    public static int PROGRESS_SECONDARY_END;
-    public static int PROGRESS_SECONDARY_START;
-    public static int PROGRESS_START;
-    public static int PROGRESS_VISIBILITY_OFF;
-    public static int PROGRESS_VISIBILITY_ON;
-    public static java.lang.String STATUS_BAR_BACKGROUND_TRANSITION_NAME;
-}
-
--keep class android.view.Window$Callback {
-
-    public abstract boolean dispatchGenericMotionEvent(android.view.MotionEvent);
-    public abstract boolean dispatchKeyEvent(android.view.KeyEvent);
-    public abstract boolean dispatchKeyShortcutEvent(android.view.KeyEvent);
-    public abstract boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent);
-    public abstract boolean dispatchTouchEvent(android.view.MotionEvent);
-    public abstract boolean dispatchTrackballEvent(android.view.MotionEvent);
-    public abstract void onActionModeFinished(android.view.ActionMode);
-    public abstract void onActionModeStarted(android.view.ActionMode);
-    public abstract void onAttachedToWindow();
-    public abstract void onContentChanged();
-    public abstract boolean onCreatePanelMenu(int, android.view.Menu);
-    public abstract android.view.View onCreatePanelView(int);
-    public abstract void onDetachedFromWindow();
-    public abstract boolean onMenuItemSelected(int, android.view.MenuItem);
-    public abstract boolean onMenuOpened(int, android.view.Menu);
-    public abstract void onPanelClosed(int, android.view.Menu);
-    public void onPointerCaptureChanged(boolean);
-    public abstract boolean onPreparePanel(int, android.view.View, android.view.Menu);
-    public void onProvideKeyboardShortcuts(java.util.List, android.view.Menu, int);
-    public abstract boolean onSearchRequested();
-    public abstract boolean onSearchRequested(android.view.SearchEvent);
-    public abstract void onWindowAttributesChanged(android.view.WindowManager$LayoutParams);
-    public abstract void onWindowFocusChanged(boolean);
-    public abstract android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback);
-    public abstract android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback, int);
-
-
-}
-
--keep class android.view.Window$OnFrameMetricsAvailableListener {
-
-    public abstract void onFrameMetricsAvailable(android.view.Window, android.view.FrameMetrics, int);
-
-
-}
-
--keep class android.view.Window$OnRestrictedCaptionAreaChangedListener {
-
-    public abstract void onRestrictedCaptionAreaChanged(android.graphics.Rect);
-
-
-}
-
--keep class android.view.Window$OnWindowDismissedCallback {
-
-    public abstract void onWindowDismissed(boolean, boolean);
-
-
-}
-
--keep class android.view.Window$OnWindowSwipeDismissedCallback {
-
-    public abstract void onWindowSwipeDismissed();
-
-
-}
-
--keep class android.view.Window$WindowControllerCallback {
-
-    public abstract void enterPictureInPictureModeIfPossible();
-    public abstract void exitFreeformMode();
-    public abstract boolean isTaskRoot();
-
-
-}
-
--keep class android.view.WindowAnimationFrameStats {
-    <init>();
-
-    public int describeContents();
-    public void init(long, long[]);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.WindowCallbacks {
-
-    public abstract boolean onContentDrawn(int, int, int, int);
-    public abstract void onPostDraw(android.view.DisplayListCanvas);
-    public abstract void onRequestDraw(boolean);
-    public abstract void onWindowDragResizeEnd();
-    public abstract void onWindowDragResizeStart(android.graphics.Rect, boolean, android.graphics.Rect, android.graphics.Rect, int);
-    public abstract void onWindowSizeIsChanging(android.graphics.Rect, boolean, android.graphics.Rect, android.graphics.Rect);
-
-
-    public static int RESIZE_MODE_DOCKED_DIVIDER;
-    public static int RESIZE_MODE_FREEFORM;
-    public static int RESIZE_MODE_INVALID;
-}
-
--keep class android.view.WindowContentFrameStats {
-    <init>();
-
-    public int describeContents();
-    public long getFramePostedTimeNano(int);
-    public long getFrameReadyTimeNano(int);
-    public void init(long, long[], long[], long[]);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.WindowId {
-    <init>(android.view.IWindowId);
-    <init>(android.os.IBinder);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public android.view.IWindowId getTarget();
-    public int hashCode();
-    public boolean isFocused();
-    public void registerFocusObserver(android.view.WindowId$FocusObserver);
-    public java.lang.String toString();
-    public void unregisterFocusObserver(android.view.WindowId$FocusObserver);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.WindowId$FocusObserver {
-    <init>();
-
-    public abstract void onFocusGained(android.view.WindowId);
-    public abstract void onFocusLost(android.view.WindowId);
-
-
-}
-
--keep class android.view.WindowInsets {
-    <init>(android.graphics.Rect, android.graphics.Rect, android.graphics.Rect, boolean, boolean, android.view.DisplayCutout);
-    <init>(android.view.WindowInsets);
-    <init>(android.graphics.Rect);
-
-    public android.view.WindowInsets consumeDisplayCutout();
-    public android.view.WindowInsets consumeStableInsets();
-    public android.view.WindowInsets consumeSystemWindowInsets();
-    public android.view.WindowInsets consumeSystemWindowInsets(boolean, boolean, boolean, boolean);
-    public android.view.WindowInsets consumeWindowDecorInsets();
-    public android.view.WindowInsets consumeWindowDecorInsets(boolean, boolean, boolean, boolean);
-    public boolean equals(java.lang.Object);
-    public android.view.DisplayCutout getDisplayCutout();
-    public int getStableInsetBottom();
-    public int getStableInsetLeft();
-    public int getStableInsetRight();
-    public int getStableInsetTop();
-    public int getSystemWindowInsetBottom();
-    public int getSystemWindowInsetLeft();
-    public int getSystemWindowInsetRight();
-    public int getSystemWindowInsetTop();
-    public android.graphics.Rect getSystemWindowInsets();
-    public int getWindowDecorInsetBottom();
-    public int getWindowDecorInsetLeft();
-    public int getWindowDecorInsetRight();
-    public int getWindowDecorInsetTop();
-    public boolean hasInsets();
-    public boolean hasStableInsets();
-    public boolean hasSystemWindowInsets();
-    public boolean hasWindowDecorInsets();
-    public int hashCode();
-    public android.view.WindowInsets inset(android.graphics.Rect);
-    public android.view.WindowInsets inset(int, int, int, int);
-    public boolean isConsumed();
-    public boolean isRound();
-    public android.view.WindowInsets replaceSystemWindowInsets(int, int, int, int);
-    public android.view.WindowInsets replaceSystemWindowInsets(android.graphics.Rect);
-    public android.view.WindowInsets replaceWindowDecorInsets(int, int, int, int);
-    public boolean shouldAlwaysConsumeNavBar();
-    public java.lang.String toString();
-
-
-    public static android.view.WindowInsets CONSUMED;
-}
-
--keep class android.view.WindowManager {
-
-    public abstract android.graphics.Region getCurrentImeTouchRegion();
-    public abstract android.view.Display getDefaultDisplay();
-    public abstract void removeViewImmediate(android.view.View);
-    public abstract void requestAppKeyboardShortcuts(android.view.WindowManager$KeyboardShortcutsReceiver, int);
-
-
-    public static int DOCKED_BOTTOM;
-    public static int DOCKED_INVALID;
-    public static int DOCKED_LEFT;
-    public static int DOCKED_RIGHT;
-    public static int DOCKED_TOP;
-    public static java.lang.String INPUT_CONSUMER_NAVIGATION;
-    public static java.lang.String INPUT_CONSUMER_PIP;
-    public static java.lang.String INPUT_CONSUMER_RECENTS_ANIMATION;
-    public static java.lang.String INPUT_CONSUMER_WALLPAPER;
-    public static java.lang.String PARCEL_KEY_SHORTCUTS_ARRAY;
-    public static int TAKE_SCREENSHOT_FULLSCREEN;
-    public static int TAKE_SCREENSHOT_SELECTED_REGION;
-    public static int TRANSIT_ACTIVITY_CLOSE;
-    public static int TRANSIT_ACTIVITY_OPEN;
-    public static int TRANSIT_ACTIVITY_RELAUNCH;
-    public static int TRANSIT_CRASHING_ACTIVITY_CLOSE;
-    public static int TRANSIT_DOCK_TASK_FROM_RECENTS;
-    public static int TRANSIT_FLAG_KEYGUARD_GOING_AWAY_NO_ANIMATION;
-    public static int TRANSIT_FLAG_KEYGUARD_GOING_AWAY_TO_SHADE;
-    public static int TRANSIT_FLAG_KEYGUARD_GOING_AWAY_WITH_WALLPAPER;
-    public static int TRANSIT_KEYGUARD_GOING_AWAY;
-    public static int TRANSIT_KEYGUARD_GOING_AWAY_ON_WALLPAPER;
-    public static int TRANSIT_KEYGUARD_OCCLUDE;
-    public static int TRANSIT_KEYGUARD_UNOCCLUDE;
-    public static int TRANSIT_NONE;
-    public static int TRANSIT_TASK_CLOSE;
-    public static int TRANSIT_TASK_IN_PLACE;
-    public static int TRANSIT_TASK_OPEN;
-    public static int TRANSIT_TASK_OPEN_BEHIND;
-    public static int TRANSIT_TASK_TO_BACK;
-    public static int TRANSIT_TASK_TO_FRONT;
-    public static int TRANSIT_TRANSLUCENT_ACTIVITY_CLOSE;
-    public static int TRANSIT_TRANSLUCENT_ACTIVITY_OPEN;
-    public static int TRANSIT_UNSET;
-    public static int TRANSIT_WALLPAPER_CLOSE;
-    public static int TRANSIT_WALLPAPER_INTRA_CLOSE;
-    public static int TRANSIT_WALLPAPER_INTRA_OPEN;
-    public static int TRANSIT_WALLPAPER_OPEN;
-}
-
--keep class android.view.WindowManager$KeyboardShortcutsReceiver {
-
-    public abstract void onKeyboardShortcutsReceived(java.util.List);
-
-
-}
-
--keep class android.view.WindowManager$LayoutParams {
-    <init>();
-    <init>(int);
-    <init>(int, int);
-    <init>(int, int, int);
-    <init>(int, int, int, int, int);
-    <init>(int, int, int, int, int, int, int);
-    <init>(android.os.Parcel);
-
-    public int copyFrom(android.view.WindowManager$LayoutParams);
-    public java.lang.String debug(java.lang.String);
-    public int describeContents();
-    public void dumpDimensions(java.lang.StringBuilder);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public int getColorMode();
-    public java.lang.CharSequence getTitle();
-    public long getUserActivityTimeout();
-    public boolean isFullscreen();
-    public static boolean isSystemAlertWindowType(int);
-    public static boolean mayUseInputMethod(int);
-    public void scale(float);
-    public void setColorMode(int);
-    public void setSurfaceInsets(android.view.View, boolean, boolean);
-    public void setTitle(java.lang.CharSequence);
-    public void setUserActivityTimeout(long);
-    public java.lang.String toString();
-    public java.lang.String toString(java.lang.String);
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToProto(android.util.proto.ProtoOutputStream, long);
-
-
-    public static int ACCESSIBILITY_ANCHOR_CHANGED;
-    public static int ACCESSIBILITY_TITLE_CHANGED;
-    public static int ALPHA_CHANGED;
-    public static int ANIMATION_CHANGED;
-    public static float BRIGHTNESS_OVERRIDE_FULL;
-    public static float BRIGHTNESS_OVERRIDE_NONE;
-    public static float BRIGHTNESS_OVERRIDE_OFF;
-    public static int BUTTON_BRIGHTNESS_CHANGED;
-    public static int COLOR_MODE_CHANGED;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int DIM_AMOUNT_CHANGED;
-    public static int EVERYTHING_CHANGED;
-    public static int FIRST_APPLICATION_WINDOW;
-    public static int FIRST_SUB_WINDOW;
-    public static int FIRST_SYSTEM_WINDOW;
-    public static int FLAGS_CHANGED;
-    public static int FLAG_ALLOW_LOCK_WHILE_SCREEN_ON;
-    public static int FLAG_ALT_FOCUSABLE_IM;
-    public static int FLAG_BLUR_BEHIND;
-    public static int FLAG_DIM_BEHIND;
-    public static int FLAG_DISMISS_KEYGUARD;
-    public static int FLAG_DITHER;
-    public static int FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS;
-    public static int FLAG_FORCE_NOT_FULLSCREEN;
-    public static int FLAG_FULLSCREEN;
-    public static int FLAG_HARDWARE_ACCELERATED;
-    public static int FLAG_IGNORE_CHEEK_PRESSES;
-    public static int FLAG_KEEP_SCREEN_ON;
-    public static int FLAG_LAYOUT_ATTACHED_IN_DECOR;
-    public static int FLAG_LAYOUT_INSET_DECOR;
-    public static int FLAG_LAYOUT_IN_OVERSCAN;
-    public static int FLAG_LAYOUT_IN_SCREEN;
-    public static int FLAG_LAYOUT_NO_LIMITS;
-    public static int FLAG_LOCAL_FOCUS_MODE;
-    public static int FLAG_NOT_FOCUSABLE;
-    public static int FLAG_NOT_TOUCHABLE;
-    public static int FLAG_NOT_TOUCH_MODAL;
-    public static int FLAG_SCALED;
-    public static int FLAG_SECURE;
-    public static int FLAG_SHOW_WALLPAPER;
-    public static int FLAG_SHOW_WHEN_LOCKED;
-    public static int FLAG_SLIPPERY;
-    public static int FLAG_SPLIT_TOUCH;
-    public static int FLAG_TOUCHABLE_WHEN_WAKING;
-    public static int FLAG_TRANSLUCENT_NAVIGATION;
-    public static int FLAG_TRANSLUCENT_STATUS;
-    public static int FLAG_TURN_SCREEN_ON;
-    public static int FLAG_WATCH_OUTSIDE_TOUCH;
-    public static int FORMAT_CHANGED;
-    public static int INPUT_FEATURES_CHANGED;
-    public static int INPUT_FEATURE_DISABLE_POINTER_GESTURES;
-    public static int INPUT_FEATURE_DISABLE_USER_ACTIVITY;
-    public static int INPUT_FEATURE_NO_INPUT_CHANNEL;
-    public static int INVALID_WINDOW_TYPE;
-    public static int LAST_APPLICATION_WINDOW;
-    public static int LAST_SUB_WINDOW;
-    public static int LAST_SYSTEM_WINDOW;
-    public static int LAYOUT_CHANGED;
-    public static int LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
-    public static int LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT;
-    public static int LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER;
-    public static int LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
-    public static int MEMORY_TYPE_CHANGED;
-    public static int MEMORY_TYPE_GPU;
-    public static int MEMORY_TYPE_HARDWARE;
-    public static int MEMORY_TYPE_NORMAL;
-    public static int MEMORY_TYPE_PUSH_BUFFERS;
-    public static int NEEDS_MENU_KEY_CHANGED;
-    public static int NEEDS_MENU_SET_FALSE;
-    public static int NEEDS_MENU_SET_TRUE;
-    public static int NEEDS_MENU_UNSET;
-    public static int PREFERRED_DISPLAY_MODE_ID;
-    public static int PREFERRED_REFRESH_RATE_CHANGED;
-    public static int PRIVATE_FLAGS_CHANGED;
-    public static int PRIVATE_FLAG_ACQUIRES_SLEEP_TOKEN;
-    public static int PRIVATE_FLAG_COMPATIBLE_WINDOW;
-    public static int PRIVATE_FLAG_DISABLE_WALLPAPER_TOUCH_EVENTS;
-    public static int PRIVATE_FLAG_FAKE_HARDWARE_ACCELERATED;
-    public static int PRIVATE_FLAG_FORCE_DECOR_VIEW_VISIBILITY;
-    public static int PRIVATE_FLAG_FORCE_DRAW_STATUS_BAR_BACKGROUND;
-    public static int PRIVATE_FLAG_FORCE_HARDWARE_ACCELERATED;
-    public static int PRIVATE_FLAG_FORCE_STATUS_BAR_VISIBLE_TRANSPARENT;
-    public static int PRIVATE_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS;
-    public static int PRIVATE_FLAG_INHERIT_TRANSLUCENT_DECOR;
-    public static int PRIVATE_FLAG_IS_ROUNDED_CORNERS_OVERLAY;
-    public static int PRIVATE_FLAG_IS_SCREEN_DECOR;
-    public static int PRIVATE_FLAG_KEYGUARD;
-    public static int PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME;
-    public static int PRIVATE_FLAG_NO_MOVE_ANIMATION;
-    public static int PRIVATE_FLAG_PRESERVE_GEOMETRY;
-    public static int PRIVATE_FLAG_SHOW_FOR_ALL_USERS;
-    public static int PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE;
-    public static int PRIVATE_FLAG_SYSTEM_ERROR;
-    public static int PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS;
-    public static int PRIVATE_FLAG_WILL_NOT_REPLACE_ON_RELAUNCH;
-    public static int ROTATION_ANIMATION_CHANGED;
-    public static int ROTATION_ANIMATION_CROSSFADE;
-    public static int ROTATION_ANIMATION_JUMPCUT;
-    public static int ROTATION_ANIMATION_ROTATE;
-    public static int ROTATION_ANIMATION_SEAMLESS;
-    public static int ROTATION_ANIMATION_UNSPECIFIED;
-    public static int SCREEN_BRIGHTNESS_CHANGED;
-    public static int SCREEN_ORIENTATION_CHANGED;
-    public static int SOFT_INPUT_ADJUST_NOTHING;
-    public static int SOFT_INPUT_ADJUST_PAN;
-    public static int SOFT_INPUT_ADJUST_RESIZE;
-    public static int SOFT_INPUT_ADJUST_UNSPECIFIED;
-    public static int SOFT_INPUT_IS_FORWARD_NAVIGATION;
-    public static int SOFT_INPUT_MASK_ADJUST;
-    public static int SOFT_INPUT_MASK_STATE;
-    public static int SOFT_INPUT_MODE_CHANGED;
-    public static int SOFT_INPUT_STATE_ALWAYS_HIDDEN;
-    public static int SOFT_INPUT_STATE_ALWAYS_VISIBLE;
-    public static int SOFT_INPUT_STATE_HIDDEN;
-    public static int SOFT_INPUT_STATE_UNCHANGED;
-    public static int SOFT_INPUT_STATE_UNSPECIFIED;
-    public static int SOFT_INPUT_STATE_VISIBLE;
-    public static int SURFACE_INSETS_CHANGED;
-    public static int SYSTEM_UI_LISTENER_CHANGED;
-    public static int SYSTEM_UI_VISIBILITY_CHANGED;
-    public static int TITLE_CHANGED;
-    public static int TRANSLUCENT_FLAGS_CHANGED;
-    public static int TYPE_ACCESSIBILITY_OVERLAY;
-    public static int TYPE_APPLICATION;
-    public static int TYPE_APPLICATION_ABOVE_SUB_PANEL;
-    public static int TYPE_APPLICATION_ATTACHED_DIALOG;
-    public static int TYPE_APPLICATION_MEDIA;
-    public static int TYPE_APPLICATION_MEDIA_OVERLAY;
-    public static int TYPE_APPLICATION_OVERLAY;
-    public static int TYPE_APPLICATION_PANEL;
-    public static int TYPE_APPLICATION_STARTING;
-    public static int TYPE_APPLICATION_SUB_PANEL;
-    public static int TYPE_BASE_APPLICATION;
-    public static int TYPE_BOOT_PROGRESS;
-    public static int TYPE_CHANGED;
-    public static int TYPE_DISPLAY_OVERLAY;
-    public static int TYPE_DOCK_DIVIDER;
-    public static int TYPE_DRAG;
-    public static int TYPE_DRAWN_APPLICATION;
-    public static int TYPE_DREAM;
-    public static int TYPE_INPUT_CONSUMER;
-    public static int TYPE_INPUT_METHOD;
-    public static int TYPE_INPUT_METHOD_DIALOG;
-    public static int TYPE_KEYGUARD;
-    public static int TYPE_KEYGUARD_DIALOG;
-    public static int TYPE_MAGNIFICATION_OVERLAY;
-    public static int TYPE_NAVIGATION_BAR;
-    public static int TYPE_NAVIGATION_BAR_PANEL;
-    public static int TYPE_PHONE;
-    public static int TYPE_POINTER;
-    public static int TYPE_PRESENTATION;
-    public static int TYPE_PRIORITY_PHONE;
-    public static int TYPE_PRIVATE_PRESENTATION;
-    public static int TYPE_QS_DIALOG;
-    public static int TYPE_SCREENSHOT;
-    public static int TYPE_SEARCH_BAR;
-    public static int TYPE_SECURE_SYSTEM_OVERLAY;
-    public static int TYPE_STATUS_BAR;
-    public static int TYPE_STATUS_BAR_PANEL;
-    public static int TYPE_STATUS_BAR_SUB_PANEL;
-    public static int TYPE_SYSTEM_ALERT;
-    public static int TYPE_SYSTEM_DIALOG;
-    public static int TYPE_SYSTEM_ERROR;
-    public static int TYPE_SYSTEM_OVERLAY;
-    public static int TYPE_TOAST;
-    public static int TYPE_VOICE_INTERACTION;
-    public static int TYPE_VOICE_INTERACTION_STARTING;
-    public static int TYPE_VOLUME_OVERLAY;
-    public static int TYPE_WALLPAPER;
-    public static int USER_ACTIVITY_TIMEOUT_CHANGED;
-    public long accessibilityIdOfAnchor;
-    public java.lang.CharSequence accessibilityTitle;
-    public float alpha;
-    public float buttonBrightness;
-    public float dimAmount;
-    public int flags;
-    public int format;
-    public int gravity;
-    public boolean hasManualSurfaceInsets;
-    public boolean hasSystemUiListeners;
-    public long hideTimeoutMilliseconds;
-    public float horizontalMargin;
-    public float horizontalWeight;
-    public int inputFeatures;
-    public int layoutInDisplayCutoutMode;
-    public int memoryType;
-    public int needsMenuKey;
-    public java.lang.String packageName;
-    public int preferredDisplayModeId;
-    public float preferredRefreshRate;
-    public boolean preservePreviousSurfaceInsets;
-    public int privateFlags;
-    public int rotationAnimation;
-    public float screenBrightness;
-    public int screenOrientation;
-    public int softInputMode;
-    public int subtreeSystemUiVisibility;
-    public android.graphics.Rect surfaceInsets;
-    public int systemUiVisibility;
-    public android.os.IBinder token;
-    public int type;
-    public long userActivityTimeout;
-    public float verticalMargin;
-    public float verticalWeight;
-    public int windowAnimations;
-    public int x;
-    public int y;
-}
-
--keep class android.view.accessibility.AccessibilityEvent {
-
-    public void appendRecord(android.view.accessibility.AccessibilityRecord);
-    protected void clear();
-    public int describeContents();
-    public static java.lang.String eventTypeToString(int);
-    public int getAction();
-    public int getContentChangeTypes();
-    public long getEventTime();
-    public int getEventType();
-    public int getMovementGranularity();
-    public java.lang.CharSequence getPackageName();
-    public android.view.accessibility.AccessibilityRecord getRecord(int);
-    public int getRecordCount();
-    public int getWindowChanges();
-    public void initFromParcel(android.os.Parcel);
-    public static android.view.accessibility.AccessibilityEvent obtain(int);
-    public static android.view.accessibility.AccessibilityEvent obtain(android.view.accessibility.AccessibilityEvent);
-    public static android.view.accessibility.AccessibilityEvent obtain();
-    public static android.view.accessibility.AccessibilityEvent obtainWindowsChangedEvent(int, int);
-    public void recycle();
-    public void setAction(int);
-    public void setContentChangeTypes(int);
-    public void setEventTime(long);
-    public void setEventType(int);
-    public void setMovementGranularity(int);
-    public void setPackageName(java.lang.CharSequence);
-    public void setSealed(boolean);
-    public void setWindowChanges(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int CONTENT_CHANGE_TYPE_CONTENT_DESCRIPTION;
-    public static int CONTENT_CHANGE_TYPE_PANE_APPEARED;
-    public static int CONTENT_CHANGE_TYPE_PANE_DISAPPEARED;
-    public static int CONTENT_CHANGE_TYPE_PANE_TITLE;
-    public static int CONTENT_CHANGE_TYPE_SUBTREE;
-    public static int CONTENT_CHANGE_TYPE_TEXT;
-    public static int CONTENT_CHANGE_TYPE_UNDEFINED;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static boolean DEBUG_ORIGIN;
-    public static int INVALID_POSITION;
-    public static int MAX_TEXT_LENGTH;
-    public static int TYPES_ALL_MASK;
-    public static int TYPE_ANNOUNCEMENT;
-    public static int TYPE_ASSIST_READING_CONTEXT;
-    public static int TYPE_GESTURE_DETECTION_END;
-    public static int TYPE_GESTURE_DETECTION_START;
-    public static int TYPE_NOTIFICATION_STATE_CHANGED;
-    public static int TYPE_TOUCH_EXPLORATION_GESTURE_END;
-    public static int TYPE_TOUCH_EXPLORATION_GESTURE_START;
-    public static int TYPE_TOUCH_INTERACTION_END;
-    public static int TYPE_TOUCH_INTERACTION_START;
-    public static int TYPE_VIEW_ACCESSIBILITY_FOCUSED;
-    public static int TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED;
-    public static int TYPE_VIEW_CLICKED;
-    public static int TYPE_VIEW_CONTEXT_CLICKED;
-    public static int TYPE_VIEW_FOCUSED;
-    public static int TYPE_VIEW_HOVER_ENTER;
-    public static int TYPE_VIEW_HOVER_EXIT;
-    public static int TYPE_VIEW_LONG_CLICKED;
-    public static int TYPE_VIEW_SCROLLED;
-    public static int TYPE_VIEW_SELECTED;
-    public static int TYPE_VIEW_TEXT_CHANGED;
-    public static int TYPE_VIEW_TEXT_SELECTION_CHANGED;
-    public static int TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY;
-    public static int TYPE_WINDOWS_CHANGED;
-    public static int TYPE_WINDOW_CONTENT_CHANGED;
-    public static int TYPE_WINDOW_STATE_CHANGED;
-    public static int WINDOWS_CHANGE_ACCESSIBILITY_FOCUSED;
-    public static int WINDOWS_CHANGE_ACTIVE;
-    public static int WINDOWS_CHANGE_ADDED;
-    public static int WINDOWS_CHANGE_BOUNDS;
-    public static int WINDOWS_CHANGE_CHILDREN;
-    public static int WINDOWS_CHANGE_FOCUSED;
-    public static int WINDOWS_CHANGE_LAYER;
-    public static int WINDOWS_CHANGE_PARENT;
-    public static int WINDOWS_CHANGE_PIP;
-    public static int WINDOWS_CHANGE_REMOVED;
-    public static int WINDOWS_CHANGE_TITLE;
-    public java.lang.StackTraceElement[] originStackTrace;
-}
-
--keep class android.view.accessibility.AccessibilityNodeInfo {
-
-    public void addAction(android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction);
-    public void addAction(int);
-    public void addChild(android.view.View);
-    public void addChild(android.view.View, int);
-    public void addChildUnchecked(android.view.View);
-    public boolean canOpenPopup();
-    public int describeContents();
-    protected void enforceNotSealed();
-    protected void enforceSealed();
-    public boolean equals(java.lang.Object);
-    public java.util.List findAccessibilityNodeInfosByText(java.lang.String);
-    public java.util.List findAccessibilityNodeInfosByViewId(java.lang.String);
-    public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
-    public android.view.accessibility.AccessibilityNodeInfo focusSearch(int);
-    public static int getAccessibilityViewId(long);
-    public java.util.List getActionList();
-    public int getActions();
-    public java.util.List getAvailableExtraData();
-    public void getBoundsInParent(android.graphics.Rect);
-    public void getBoundsInScreen(android.graphics.Rect);
-    public android.graphics.Rect getBoundsInScreen();
-    public android.view.accessibility.AccessibilityNodeInfo getChild(int);
-    public int getChildCount();
-    public long getChildId(int);
-    public android.util.LongArray getChildNodeIds();
-    public java.lang.CharSequence getClassName();
-    public android.view.accessibility.AccessibilityNodeInfo$CollectionInfo getCollectionInfo();
-    public android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo getCollectionItemInfo();
-    public int getConnectionId();
-    public java.lang.CharSequence getContentDescription();
-    public int getDrawingOrder();
-    public java.lang.CharSequence getError();
-    public android.os.Bundle getExtras();
-    public java.lang.CharSequence getHintText();
-    public int getInputType();
-    public android.view.accessibility.AccessibilityNodeInfo getLabelFor();
-    public android.view.accessibility.AccessibilityNodeInfo getLabeledBy();
-    public int getLiveRegion();
-    public int getMaxTextLength();
-    public int getMovementGranularities();
-    public java.lang.CharSequence getOriginalText();
-    public java.lang.CharSequence getPackageName();
-    public java.lang.CharSequence getPaneTitle();
-    public android.view.accessibility.AccessibilityNodeInfo getParent();
-    public long getParentNodeId();
-    public android.view.accessibility.AccessibilityNodeInfo$RangeInfo getRangeInfo();
-    public long getSourceNodeId();
-    public java.lang.CharSequence getText();
-    public int getTextSelectionEnd();
-    public int getTextSelectionStart();
-    public java.lang.CharSequence getTooltipText();
-    public android.view.accessibility.AccessibilityNodeInfo getTraversalAfter();
-    public android.view.accessibility.AccessibilityNodeInfo getTraversalBefore();
-    public java.lang.String getViewIdResourceName();
-    public static int getVirtualDescendantId(long);
-    public android.view.accessibility.AccessibilityWindowInfo getWindow();
-    public int getWindowId();
-    public boolean hasExtras();
-    public int hashCode();
-    public static java.lang.String idToString(long);
-    public boolean isAccessibilityFocused();
-    public boolean isCheckable();
-    public boolean isChecked();
-    public boolean isClickable();
-    public boolean isContentInvalid();
-    public boolean isContextClickable();
-    public boolean isDismissable();
-    public boolean isEditable();
-    public boolean isEnabled();
-    public boolean isFocusable();
-    public boolean isFocused();
-    public boolean isHeading();
-    public boolean isImportantForAccessibility();
-    public boolean isLongClickable();
-    public boolean isMultiLine();
-    public boolean isPassword();
-    public boolean isScreenReaderFocusable();
-    public boolean isScrollable();
-    public boolean isSealed();
-    public boolean isSelected();
-    public boolean isShowingHintText();
-    public boolean isVisibleToUser();
-    public static long makeNodeId(int, int);
-    public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View);
-    public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View, int);
-    public static android.view.accessibility.AccessibilityNodeInfo obtain();
-    public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.accessibility.AccessibilityNodeInfo);
-    public boolean performAction(int);
-    public boolean performAction(int, android.os.Bundle);
-    public void recycle();
-    public boolean refresh(android.os.Bundle, boolean);
-    public boolean refresh();
-    public boolean refreshWithExtraData(java.lang.String, android.os.Bundle);
-    public void removeAction(int);
-    public boolean removeAction(android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction);
-    public void removeAllActions();
-    public boolean removeChild(android.view.View);
-    public boolean removeChild(android.view.View, int);
-    public void setAccessibilityFocused(boolean);
-    public void setAvailableExtraData(java.util.List);
-    public void setBoundsInParent(android.graphics.Rect);
-    public void setBoundsInScreen(android.graphics.Rect);
-    public void setCanOpenPopup(boolean);
-    public void setCheckable(boolean);
-    public void setChecked(boolean);
-    public void setClassName(java.lang.CharSequence);
-    public void setClickable(boolean);
-    public void setCollectionInfo(android.view.accessibility.AccessibilityNodeInfo$CollectionInfo);
-    public void setCollectionItemInfo(android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo);
-    public void setConnectionId(int);
-    public void setContentDescription(java.lang.CharSequence);
-    public void setContentInvalid(boolean);
-    public void setContextClickable(boolean);
-    public void setDismissable(boolean);
-    public void setDrawingOrder(int);
-    public void setEditable(boolean);
-    public void setEnabled(boolean);
-    public void setError(java.lang.CharSequence);
-    public void setFocusable(boolean);
-    public void setFocused(boolean);
-    public void setHeading(boolean);
-    public void setHintText(java.lang.CharSequence);
-    public void setImportantForAccessibility(boolean);
-    public void setInputType(int);
-    public void setLabelFor(android.view.View);
-    public void setLabelFor(android.view.View, int);
-    public void setLabeledBy(android.view.View);
-    public void setLabeledBy(android.view.View, int);
-    public void setLiveRegion(int);
-    public void setLongClickable(boolean);
-    public void setMaxTextLength(int);
-    public void setMovementGranularities(int);
-    public void setMultiLine(boolean);
-    public static void setNumInstancesInUseCounter(java.util.concurrent.atomic.AtomicInteger);
-    public void setPackageName(java.lang.CharSequence);
-    public void setPaneTitle(java.lang.CharSequence);
-    public void setParent(android.view.View);
-    public void setParent(android.view.View, int);
-    public void setPassword(boolean);
-    public void setRangeInfo(android.view.accessibility.AccessibilityNodeInfo$RangeInfo);
-    public void setScreenReaderFocusable(boolean);
-    public void setScrollable(boolean);
-    public void setSealed(boolean);
-    public void setSelected(boolean);
-    public void setShowingHintText(boolean);
-    public void setSource(android.view.View);
-    public void setSource(android.view.View, int);
-    public void setSourceNodeId(long, int);
-    public void setText(java.lang.CharSequence);
-    public void setTextSelection(int, int);
-    public void setTooltipText(java.lang.CharSequence);
-    public void setTraversalAfter(android.view.View);
-    public void setTraversalAfter(android.view.View, int);
-    public void setTraversalBefore(android.view.View);
-    public void setTraversalBefore(android.view.View, int);
-    public void setViewIdResourceName(java.lang.String);
-    public void setVisibleToUser(boolean);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-    public void writeToParcelNoRecycle(android.os.Parcel, int);
-
-
-    public static int ACTION_ACCESSIBILITY_FOCUS;
-    public static java.lang.String ACTION_ARGUMENT_ACCESSIBLE_CLICKABLE_SPAN;
-    public static java.lang.String ACTION_ARGUMENT_COLUMN_INT;
-    public static java.lang.String ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN;
-    public static java.lang.String ACTION_ARGUMENT_HTML_ELEMENT_STRING;
-    public static java.lang.String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT;
-    public static java.lang.String ACTION_ARGUMENT_MOVE_WINDOW_X;
-    public static java.lang.String ACTION_ARGUMENT_MOVE_WINDOW_Y;
-    public static java.lang.String ACTION_ARGUMENT_PROGRESS_VALUE;
-    public static java.lang.String ACTION_ARGUMENT_ROW_INT;
-    public static java.lang.String ACTION_ARGUMENT_SELECTION_END_INT;
-    public static java.lang.String ACTION_ARGUMENT_SELECTION_START_INT;
-    public static java.lang.String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE;
-    public static int ACTION_CLEAR_ACCESSIBILITY_FOCUS;
-    public static int ACTION_CLEAR_FOCUS;
-    public static int ACTION_CLEAR_SELECTION;
-    public static int ACTION_CLICK;
-    public static int ACTION_COLLAPSE;
-    public static int ACTION_COPY;
-    public static int ACTION_CUT;
-    public static int ACTION_DISMISS;
-    public static int ACTION_EXPAND;
-    public static int ACTION_FOCUS;
-    public static int ACTION_LONG_CLICK;
-    public static int ACTION_NEXT_AT_MOVEMENT_GRANULARITY;
-    public static int ACTION_NEXT_HTML_ELEMENT;
-    public static int ACTION_PASTE;
-    public static int ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY;
-    public static int ACTION_PREVIOUS_HTML_ELEMENT;
-    public static int ACTION_SCROLL_BACKWARD;
-    public static int ACTION_SCROLL_FORWARD;
-    public static int ACTION_SELECT;
-    public static int ACTION_SET_SELECTION;
-    public static int ACTION_SET_TEXT;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static java.lang.String EXTRA_DATA_REQUESTED_KEY;
-    public static java.lang.String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH;
-    public static java.lang.String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX;
-    public static java.lang.String EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY;
-    public static int FLAG_INCLUDE_NOT_IMPORTANT_VIEWS;
-    public static int FLAG_PREFETCH_DESCENDANTS;
-    public static int FLAG_PREFETCH_PREDECESSORS;
-    public static int FLAG_PREFETCH_SIBLINGS;
-    public static int FLAG_REPORT_VIEW_IDS;
-    public static int FOCUS_ACCESSIBILITY;
-    public static int FOCUS_INPUT;
-    public static int LAST_LEGACY_STANDARD_ACTION;
-    public static int MOVEMENT_GRANULARITY_CHARACTER;
-    public static int MOVEMENT_GRANULARITY_LINE;
-    public static int MOVEMENT_GRANULARITY_PAGE;
-    public static int MOVEMENT_GRANULARITY_PARAGRAPH;
-    public static int MOVEMENT_GRANULARITY_WORD;
-    public static int ROOT_ITEM_ID;
-    public static long ROOT_NODE_ID;
-    public static int UNDEFINED_CONNECTION_ID;
-    public static int UNDEFINED_ITEM_ID;
-    public static long UNDEFINED_NODE_ID;
-    public static int UNDEFINED_SELECTION_INDEX;
-}
-
--keep class android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction {
-    <init>(int, java.lang.CharSequence);
-
-    public boolean equals(java.lang.Object);
-    public int getId();
-    public java.lang.CharSequence getLabel();
-    public int hashCode();
-    public java.lang.String toString();
-
-
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_ACCESSIBILITY_FOCUS;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_CLEAR_ACCESSIBILITY_FOCUS;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_CLEAR_FOCUS;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_CLEAR_SELECTION;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_CLICK;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_COLLAPSE;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_CONTEXT_CLICK;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_COPY;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_CUT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_DISMISS;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_EXPAND;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_FOCUS;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_HIDE_TOOLTIP;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_LONG_CLICK;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_MOVE_WINDOW;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_NEXT_AT_MOVEMENT_GRANULARITY;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_NEXT_HTML_ELEMENT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_PASTE;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_PREVIOUS_HTML_ELEMENT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_BACKWARD;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_DOWN;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_FORWARD;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_LEFT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_RIGHT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_TO_POSITION;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SCROLL_UP;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SELECT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SET_PROGRESS;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SET_SELECTION;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SET_TEXT;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SHOW_ON_SCREEN;
-    public static android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction ACTION_SHOW_TOOLTIP;
-    public long mSerializationFlag;
-    public static android.util.ArraySet sStandardActions;
-}
-
--keep class android.view.accessibility.AccessibilityNodeInfo$CollectionInfo {
-
-    public int getColumnCount();
-    public int getRowCount();
-    public int getSelectionMode();
-    public boolean isHierarchical();
-    public static android.view.accessibility.AccessibilityNodeInfo$CollectionInfo obtain(android.view.accessibility.AccessibilityNodeInfo$CollectionInfo);
-    public static android.view.accessibility.AccessibilityNodeInfo$CollectionInfo obtain(int, int, boolean);
-    public static android.view.accessibility.AccessibilityNodeInfo$CollectionInfo obtain(int, int, boolean, int);
-
-
-    public static int SELECTION_MODE_MULTIPLE;
-    public static int SELECTION_MODE_NONE;
-    public static int SELECTION_MODE_SINGLE;
-}
-
--keep class android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo {
-
-    public int getColumnIndex();
-    public int getColumnSpan();
-    public int getRowIndex();
-    public int getRowSpan();
-    public boolean isHeading();
-    public boolean isSelected();
-    public static android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo obtain(android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo);
-    public static android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo obtain(int, int, int, int, boolean);
-    public static android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo obtain(int, int, int, int, boolean, boolean);
-
-
-}
-
--keep class android.view.accessibility.AccessibilityNodeInfo$RangeInfo {
-
-    public float getCurrent();
-    public float getMax();
-    public float getMin();
-    public int getType();
-    public static android.view.accessibility.AccessibilityNodeInfo$RangeInfo obtain(android.view.accessibility.AccessibilityNodeInfo$RangeInfo);
-    public static android.view.accessibility.AccessibilityNodeInfo$RangeInfo obtain(int, float, float, float);
-
-
-    public static int RANGE_TYPE_FLOAT;
-    public static int RANGE_TYPE_INT;
-    public static int RANGE_TYPE_PERCENT;
-}
-
--keep class android.view.accessibility.AccessibilityNodeProvider {
-    <init>();
-
-    public void addExtraDataToAccessibilityNodeInfo(int, android.view.accessibility.AccessibilityNodeInfo, java.lang.String, android.os.Bundle);
-    public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(int);
-    public java.util.List findAccessibilityNodeInfosByText(java.lang.String, int);
-    public android.view.accessibility.AccessibilityNodeInfo findFocus(int);
-    public boolean performAction(int, int, android.os.Bundle);
-
-
-    public static int HOST_VIEW_ID;
-}
-
--keep class android.view.accessibility.AccessibilityRecord {
-
-    public int getAddedCount();
-    public java.lang.CharSequence getBeforeText();
-    public java.lang.CharSequence getClassName();
-    public java.lang.CharSequence getContentDescription();
-    public int getCurrentItemIndex();
-    public int getFromIndex();
-    public int getItemCount();
-    public int getMaxScrollX();
-    public int getMaxScrollY();
-    public android.os.Parcelable getParcelableData();
-    public int getRemovedCount();
-    public int getScrollDeltaX();
-    public int getScrollDeltaY();
-    public int getScrollX();
-    public int getScrollY();
-    public android.view.accessibility.AccessibilityNodeInfo getSource();
-    public long getSourceNodeId();
-    public java.util.List getText();
-    public int getToIndex();
-    public int getWindowId();
-    public boolean isChecked();
-    public boolean isEnabled();
-    public boolean isFullScreen();
-    public boolean isImportantForAccessibility();
-    public boolean isPassword();
-    public boolean isScrollable();
-    public static android.view.accessibility.AccessibilityRecord obtain(android.view.accessibility.AccessibilityRecord);
-    public static android.view.accessibility.AccessibilityRecord obtain();
-    public void recycle();
-    public void setAddedCount(int);
-    public void setBeforeText(java.lang.CharSequence);
-    public void setChecked(boolean);
-    public void setClassName(java.lang.CharSequence);
-    public void setConnectionId(int);
-    public void setContentDescription(java.lang.CharSequence);
-    public void setCurrentItemIndex(int);
-    public void setEnabled(boolean);
-    public void setFromIndex(int);
-    public void setFullScreen(boolean);
-    public void setImportantForAccessibility(boolean);
-    public void setItemCount(int);
-    public void setMaxScrollX(int);
-    public void setMaxScrollY(int);
-    public void setParcelableData(android.os.Parcelable);
-    public void setPassword(boolean);
-    public void setRemovedCount(int);
-    public void setScrollDeltaX(int);
-    public void setScrollDeltaY(int);
-    public void setScrollX(int);
-    public void setScrollY(int);
-    public void setScrollable(boolean);
-    public void setSealed(boolean);
-    public void setSource(android.view.View);
-    public void setSource(android.view.View, int);
-    public void setSourceNodeId(long);
-    public void setToIndex(int);
-    public void setWindowId(int);
-    public java.lang.String toString();
-
-
-    protected static boolean DEBUG_CONCISE_TOSTRING;
-}
-
--keep class android.view.accessibility.AccessibilityWindowInfo {
-
-    public void addChild(int);
-    public boolean changed(android.view.accessibility.AccessibilityWindowInfo);
-    public int describeContents();
-    public int differenceFrom(android.view.accessibility.AccessibilityWindowInfo);
-    public boolean equals(java.lang.Object);
-    public android.view.accessibility.AccessibilityNodeInfo getAnchor();
-    public void getBoundsInScreen(android.graphics.Rect);
-    public android.view.accessibility.AccessibilityWindowInfo getChild(int);
-    public int getChildCount();
-    public int getId();
-    public int getLayer();
-    public android.view.accessibility.AccessibilityWindowInfo getParent();
-    public android.view.accessibility.AccessibilityNodeInfo getRoot();
-    public java.lang.CharSequence getTitle();
-    public int getType();
-    public int hashCode();
-    public boolean isAccessibilityFocused();
-    public boolean isActive();
-    public boolean isFocused();
-    public boolean isInPictureInPictureMode();
-    public static android.view.accessibility.AccessibilityWindowInfo obtain();
-    public static android.view.accessibility.AccessibilityWindowInfo obtain(android.view.accessibility.AccessibilityWindowInfo);
-    public void recycle();
-    public void setAccessibilityFocused(boolean);
-    public void setActive(boolean);
-    public void setAnchorId(long);
-    public void setBoundsInScreen(android.graphics.Rect);
-    public void setConnectionId(int);
-    public void setFocused(boolean);
-    public void setId(int);
-    public void setLayer(int);
-    public static void setNumInstancesInUseCounter(java.util.concurrent.atomic.AtomicInteger);
-    public void setParentId(int);
-    public void setPictureInPicture(boolean);
-    public void setTitle(java.lang.CharSequence);
-    public void setType(int);
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static int ACTIVE_WINDOW_ID;
-    public static int ANY_WINDOW_ID;
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int PICTURE_IN_PICTURE_ACTION_REPLACER_WINDOW_ID;
-    public static int TYPE_ACCESSIBILITY_OVERLAY;
-    public static int TYPE_APPLICATION;
-    public static int TYPE_INPUT_METHOD;
-    public static int TYPE_SPLIT_SCREEN_DIVIDER;
-    public static int TYPE_SYSTEM;
-    public static int UNDEFINED_WINDOW_ID;
-}
-
--keep class android.view.accessibility.IAccessibilityInteractionConnectionCallback {
-
-    public abstract void setFindAccessibilityNodeInfoResult(android.view.accessibility.AccessibilityNodeInfo, int);
-    public abstract void setFindAccessibilityNodeInfosResult(java.util.List, int);
-    public abstract void setPerformAccessibilityActionResult(boolean, int);
-
-
-}
-
--keep class android.view.animation.Animation {
-    <init>();
-    <init>(android.content.Context, android.util.AttributeSet);
-
-    protected void applyTransformation(float, android.view.animation.Transformation);
-    public void cancel();
-    protected android.view.animation.Animation clone();
-    protected java.lang.Object clone();
-    public long computeDurationHint();
-    public void detach();
-    protected void ensureInterpolator();
-    protected void finalize();
-    public int getBackgroundColor();
-    public boolean getDetachWallpaper();
-    public long getDuration();
-    public boolean getFillAfter();
-    public boolean getFillBefore();
-    public android.view.animation.Interpolator getInterpolator();
-    public void getInvalidateRegion(int, int, int, int, android.graphics.RectF, android.view.animation.Transformation);
-    public int getRepeatCount();
-    public int getRepeatMode();
-    protected float getScaleFactor();
-    public boolean getShowWallpaper();
-    public long getStartOffset();
-    public long getStartTime();
-    public boolean getTransformation(long, android.view.animation.Transformation);
-    public boolean getTransformation(long, android.view.animation.Transformation, float);
-    public int getZAdjustment();
-    public boolean hasAlpha();
-    public boolean hasEnded();
-    public boolean hasStarted();
-    public void initialize(int, int, int, int);
-    public void initializeInvalidateRegion(int, int, int, int);
-    public boolean isFillEnabled();
-    public boolean isInitialized();
-    public void reset();
-    protected float resolveSize(int, float, int, int);
-    public void restrictDuration(long);
-    public void scaleCurrentDuration(float);
-    public void setAnimationListener(android.view.animation.Animation$AnimationListener);
-    public void setBackgroundColor(int);
-    public void setDetachWallpaper(boolean);
-    public void setDuration(long);
-    public void setFillAfter(boolean);
-    public void setFillBefore(boolean);
-    public void setFillEnabled(boolean);
-    public void setInterpolator(android.content.Context, int);
-    public void setInterpolator(android.view.animation.Interpolator);
-    public void setListenerHandler(android.os.Handler);
-    public void setRepeatCount(int);
-    public void setRepeatMode(int);
-    public void setShowWallpaper(boolean);
-    public void setStartOffset(long);
-    public void setStartTime(long);
-    public void setZAdjustment(int);
-    public void start();
-    public void startNow();
-    public boolean willChangeBounds();
-    public boolean willChangeTransformationMatrix();
-
-
-    public static int ABSOLUTE;
-    public static int INFINITE;
-    public static int RELATIVE_TO_PARENT;
-    public static int RELATIVE_TO_SELF;
-    public static int RESTART;
-    public static int REVERSE;
-    public static int START_ON_FIRST_FRAME;
-    public static int ZORDER_BOTTOM;
-    public static int ZORDER_NORMAL;
-    public static int ZORDER_TOP;
-}
-
--keep class android.view.animation.Animation$AnimationListener {
-
-    public abstract void onAnimationEnd(android.view.animation.Animation);
-    public abstract void onAnimationRepeat(android.view.animation.Animation);
-    public abstract void onAnimationStart(android.view.animation.Animation);
-
-
-}
-
--keep class android.view.animation.Interpolator {
-
-
-
-}
-
--keep class android.view.animation.LayoutAnimationController {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.view.animation.Animation);
-    <init>(android.view.animation.Animation, float);
-
-    public android.view.animation.Animation getAnimation();
-    public android.view.animation.Animation getAnimationForView(android.view.View);
-    public float getDelay();
-    protected long getDelayForView(android.view.View);
-    public android.view.animation.Interpolator getInterpolator();
-    public int getOrder();
-    protected int getTransformedIndex(android.view.animation.LayoutAnimationController$AnimationParameters);
-    public boolean isDone();
-    public void setAnimation(android.content.Context, int);
-    public void setAnimation(android.view.animation.Animation);
-    public void setDelay(float);
-    public void setInterpolator(android.content.Context, int);
-    public void setInterpolator(android.view.animation.Interpolator);
-    public void setOrder(int);
-    public void start();
-    public boolean willOverlap();
-
-
-    public static int ORDER_NORMAL;
-    public static int ORDER_RANDOM;
-    public static int ORDER_REVERSE;
-    protected android.view.animation.Animation mAnimation;
-    protected android.view.animation.Interpolator mInterpolator;
-    protected java.util.Random mRandomizer;
-}
-
--keep class android.view.animation.LayoutAnimationController$AnimationParameters {
-    <init>();
-
-
-
-    public int count;
-    public int index;
-}
-
--keep class android.view.animation.Transformation {
-    <init>();
-
-    public void clear();
-    public void compose(android.view.animation.Transformation);
-    public float getAlpha();
-    public android.graphics.Rect getClipRect();
-    public android.graphics.Matrix getMatrix();
-    public int getTransformationType();
-    public boolean hasClipRect();
-    public void postCompose(android.view.animation.Transformation);
-    public void printShortString(java.io.PrintWriter);
-    public void set(android.view.animation.Transformation);
-    public void setAlpha(float);
-    public void setClipRect(android.graphics.Rect);
-    public void setClipRect(int, int, int, int);
-    public void setTransformationType(int);
-    public java.lang.String toShortString();
-    public void toShortString(java.lang.StringBuilder);
-    public java.lang.String toString();
-
-
-    public static int TYPE_ALPHA;
-    public static int TYPE_BOTH;
-    public static int TYPE_IDENTITY;
-    public static int TYPE_MATRIX;
-    protected float mAlpha;
-    protected android.graphics.Matrix mMatrix;
-    protected int mTransformationType;
-}
-
--keep class android.view.autofill.AutofillId {
-    <init>(int);
-    <init>(android.view.autofill.AutofillId, int);
-    <init>(int, int);
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public int getViewId();
-    public int getVirtualChildId();
-    public int hashCode();
-    public boolean isVirtual();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.autofill.AutofillManager {
-    <init>(android.content.Context, android.view.autofill.IAutoFillManager);
-
-    public void cancel();
-    public void commit();
-    public void disableAutofillServices();
-    public void disableOwnedAutofillServices();
-    public void dump(java.lang.String, java.io.PrintWriter);
-    public void enableCompatibilityMode();
-    public android.content.ComponentName getAutofillServiceComponentName();
-    public java.util.List getAvailableFieldClassificationAlgorithms();
-    public static int getDatasetIdFromAuthenticationId(int);
-    public java.lang.String getDefaultFieldClassificationAlgorithm();
-    public android.service.autofill.FillEventHistory getFillEventHistory();
-    public android.view.autofill.AutofillId getNextAutofillId();
-    public static int getRequestIdFromAuthenticationId(int);
-    public android.service.autofill.UserData getUserData();
-    public java.lang.String getUserDataId();
-    public boolean hasAutofillFeature();
-    public boolean hasEnabledAutofillServices();
-    public boolean isAutofillSupported();
-    public boolean isAutofillUiShowing();
-    public boolean isCompatibilityModeEnabledLocked();
-    public boolean isEnabled();
-    public boolean isFieldClassificationEnabled();
-    public static int makeAuthenticationId(int, int);
-    public void notifyValueChanged(android.view.View);
-    public void notifyValueChanged(android.view.View, int, android.view.autofill.AutofillValue);
-    public void notifyViewClicked(android.view.View);
-    public void notifyViewClicked(android.view.View, int);
-    public void notifyViewEntered(android.view.View);
-    public void notifyViewEntered(android.view.View, int, android.graphics.Rect);
-    public void notifyViewExited(android.view.View);
-    public void notifyViewExited(android.view.View, int);
-    public void notifyViewVisibilityChanged(android.view.View, boolean);
-    public void notifyViewVisibilityChanged(android.view.View, int, boolean);
-    public void onActivityFinishing();
-    public void onAuthenticationResult(int, android.content.Intent, android.view.View);
-    public void onCreate(android.os.Bundle);
-    public void onInvisibleForAutofill();
-    public void onPendingSaveUi(int, android.os.IBinder);
-    public void onSaveInstanceState(android.os.Bundle);
-    public void onVisibleForAutofill();
-    public void registerCallback(android.view.autofill.AutofillManager$AutofillCallback);
-    public void requestAutofill(android.view.View);
-    public void requestAutofill(android.view.View, int, android.graphics.Rect);
-    public void requestHideFillUi();
-    public void setUserData(android.service.autofill.UserData);
-    public void unregisterCallback(android.view.autofill.AutofillManager$AutofillCallback);
-
-
-    public static int ACTION_START_SESSION;
-    public static int ACTION_VALUE_CHANGED;
-    public static int ACTION_VIEW_ENTERED;
-    public static int ACTION_VIEW_EXITED;
-    public static int AUTHENTICATION_ID_DATASET_ID_UNDEFINED;
-    public static java.lang.String EXTRA_ASSIST_STRUCTURE;
-    public static java.lang.String EXTRA_AUTHENTICATION_RESULT;
-    public static java.lang.String EXTRA_CLIENT_STATE;
-    public static java.lang.String EXTRA_RESTORE_SESSION_TOKEN;
-    public static int FC_SERVICE_TIMEOUT;
-    public static int FLAG_ADD_CLIENT_DEBUG;
-    public static int FLAG_ADD_CLIENT_ENABLED;
-    public static int FLAG_ADD_CLIENT_VERBOSE;
-    public static int NO_SESSION;
-    public static int PENDING_UI_OPERATION_CANCEL;
-    public static int PENDING_UI_OPERATION_RESTORE;
-    public static int SET_STATE_FLAG_DEBUG;
-    public static int SET_STATE_FLAG_ENABLED;
-    public static int SET_STATE_FLAG_RESET_CLIENT;
-    public static int SET_STATE_FLAG_RESET_SESSION;
-    public static int SET_STATE_FLAG_VERBOSE;
-    public static int STATE_ACTIVE;
-    public static int STATE_DISABLED_BY_SERVICE;
-    public static int STATE_FINISHED;
-    public static int STATE_SHOWING_SAVE_UI;
-    public static int STATE_UNKNOWN;
-    public static int STATE_UNKNOWN_COMPAT_MODE;
-}
-
--keep class android.view.autofill.AutofillManager$AutofillCallback {
-    <init>();
-
-    public void onAutofillEvent(android.view.View, int);
-    public void onAutofillEvent(android.view.View, int, int);
-
-
-    public static int EVENT_INPUT_HIDDEN;
-    public static int EVENT_INPUT_SHOWN;
-    public static int EVENT_INPUT_UNAVAILABLE;
-}
-
--keep class android.view.autofill.AutofillManager$AutofillClient {
-
-    public abstract void autofillClientAuthenticate(int, android.content.IntentSender, android.content.Intent);
-    public abstract void autofillClientDispatchUnhandledKey(android.view.View, android.view.KeyEvent);
-    public abstract android.view.View autofillClientFindViewByAccessibilityIdTraversal(int, int);
-    public abstract android.view.View autofillClientFindViewByAutofillIdTraversal(android.view.autofill.AutofillId);
-    public abstract android.view.View[] autofillClientFindViewsByAutofillIdTraversal(android.view.autofill.AutofillId[]);
-    public abstract android.os.IBinder autofillClientGetActivityToken();
-    public abstract android.content.ComponentName autofillClientGetComponentName();
-    public abstract android.view.autofill.AutofillId autofillClientGetNextAutofillId();
-    public abstract boolean[] autofillClientGetViewVisibility(android.view.autofill.AutofillId[]);
-    public abstract boolean autofillClientIsCompatibilityModeEnabled();
-    public abstract boolean autofillClientIsFillUiShowing();
-    public abstract boolean autofillClientIsVisibleForAutofill();
-    public abstract boolean autofillClientRequestHideFillUi();
-    public abstract boolean autofillClientRequestShowFillUi(android.view.View, int, int, android.graphics.Rect, android.view.autofill.IAutofillWindowPresenter);
-    public abstract void autofillClientResetableStateAvailable();
-    public abstract void autofillClientRunOnUiThread(java.lang.Runnable);
-    public abstract boolean isDisablingEnterExitEventForAutofill();
-
-
-}
-
--keep class android.view.autofill.AutofillValue {
-
-    public int describeContents();
-    public boolean equals(java.lang.Object);
-    public static android.view.autofill.AutofillValue forDate(long);
-    public static android.view.autofill.AutofillValue forList(int);
-    public static android.view.autofill.AutofillValue forText(java.lang.CharSequence);
-    public static android.view.autofill.AutofillValue forToggle(boolean);
-    public long getDateValue();
-    public int getListValue();
-    public java.lang.CharSequence getTextValue();
-    public boolean getToggleValue();
-    public int hashCode();
-    public boolean isDate();
-    public boolean isEmpty();
-    public boolean isList();
-    public boolean isText();
-    public boolean isToggle();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.autofill.IAutoFillManager {
-
-    public abstract int addClient(android.view.autofill.IAutoFillManagerClient, int);
-    public abstract void cancelSession(int, int);
-    public abstract void disableOwnedAutofillServices(int);
-    public abstract void finishSession(int, int);
-    public abstract android.content.ComponentName getAutofillServiceComponentName();
-    public abstract java.lang.String[] getAvailableFieldClassificationAlgorithms();
-    public abstract java.lang.String getDefaultFieldClassificationAlgorithm();
-    public abstract android.service.autofill.FillEventHistory getFillEventHistory();
-    public abstract android.service.autofill.UserData getUserData();
-    public abstract java.lang.String getUserDataId();
-    public abstract boolean isFieldClassificationEnabled();
-    public abstract boolean isServiceEnabled(int, java.lang.String);
-    public abstract boolean isServiceSupported(int);
-    public abstract void onPendingSaveUi(int, android.os.IBinder);
-    public abstract void removeClient(android.view.autofill.IAutoFillManagerClient, int);
-    public abstract boolean restoreSession(int, android.os.IBinder, android.os.IBinder);
-    public abstract void setAuthenticationResult(android.os.Bundle, int, int, int);
-    public abstract void setAutofillFailure(int, java.util.List, int);
-    public abstract void setHasCallback(int, int, boolean);
-    public abstract void setUserData(android.service.autofill.UserData);
-    public abstract int startSession(android.os.IBinder, android.os.IBinder, android.view.autofill.AutofillId, android.graphics.Rect, android.view.autofill.AutofillValue, int, boolean, int, android.content.ComponentName, boolean);
-    public abstract int updateOrRestartSession(android.os.IBinder, android.os.IBinder, android.view.autofill.AutofillId, android.graphics.Rect, android.view.autofill.AutofillValue, int, boolean, int, android.content.ComponentName, int, int, boolean);
-    public abstract void updateSession(int, android.view.autofill.AutofillId, android.graphics.Rect, android.view.autofill.AutofillValue, int, int, int);
-
-
-}
-
--keep class android.view.autofill.IAutoFillManagerClient {
-
-    public abstract void authenticate(int, int, android.content.IntentSender, android.content.Intent);
-    public abstract void autofill(int, java.util.List, java.util.List);
-    public abstract void dispatchUnhandledKey(int, android.view.autofill.AutofillId, android.view.KeyEvent);
-    public abstract void notifyNoFillUi(int, android.view.autofill.AutofillId, int);
-    public abstract void requestHideFillUi(int, android.view.autofill.AutofillId);
-    public abstract void requestShowFillUi(int, android.view.autofill.AutofillId, int, int, android.graphics.Rect, android.view.autofill.IAutofillWindowPresenter);
-    public abstract void setSaveUiState(int, boolean);
-    public abstract void setSessionFinished(int);
-    public abstract void setState(int);
-    public abstract void setTrackedViews(int, android.view.autofill.AutofillId[], boolean, boolean, android.view.autofill.AutofillId[], android.view.autofill.AutofillId);
-    public abstract void startIntentSender(android.content.IntentSender, android.content.Intent);
-
-
-}
-
--keep class android.view.autofill.IAutofillWindowPresenter {
-
-    public abstract void hide(android.graphics.Rect);
-    public abstract void show(android.view.WindowManager$LayoutParams, android.graphics.Rect, boolean, int);
-
-
-}
-
--keep class android.view.inputmethod.CompletionInfo {
-    <init>(long, int, java.lang.CharSequence);
-    <init>(long, int, java.lang.CharSequence, java.lang.CharSequence);
-
-    public int describeContents();
-    public long getId();
-    public java.lang.CharSequence getLabel();
-    public int getPosition();
-    public java.lang.CharSequence getText();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.inputmethod.CorrectionInfo {
-    <init>(int, java.lang.CharSequence, java.lang.CharSequence);
-
-    public int describeContents();
-    public java.lang.CharSequence getNewText();
-    public int getOffset();
-    public java.lang.CharSequence getOldText();
-    public java.lang.String toString();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.view.inputmethod.EditorInfo {
-    <init>();
-
-    public int describeContents();
-    public void dump(android.util.Printer, java.lang.String);
-    public void makeCompatible(int);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int IME_ACTION_DONE;
-    public static int IME_ACTION_GO;
-    public static int IME_ACTION_NEXT;
-    public static int IME_ACTION_NONE;
-    public static int IME_ACTION_PREVIOUS;
-    public static int IME_ACTION_SEARCH;
-    public static int IME_ACTION_SEND;
-    public static int IME_ACTION_UNSPECIFIED;
-    public static int IME_FLAG_FORCE_ASCII;
-    public static int IME_FLAG_NAVIGATE_NEXT;
-    public static int IME_FLAG_NAVIGATE_PREVIOUS;
-    public static int IME_FLAG_NO_ACCESSORY_ACTION;
-    public static int IME_FLAG_NO_ENTER_ACTION;
-    public static int IME_FLAG_NO_EXTRACT_UI;
-    public static int IME_FLAG_NO_FULLSCREEN;
-    public static int IME_FLAG_NO_PERSONALIZED_LEARNING;
-    public static int IME_MASK_ACTION;
-    public static int IME_NULL;
-    public int actionId;
-    public java.lang.CharSequence actionLabel;
-    public java.lang.String[] contentMimeTypes;
-    public android.os.Bundle extras;
-    public int fieldId;
-    public java.lang.String fieldName;
-    public android.os.LocaleList hintLocales;
-    public java.lang.CharSequence hintText;
-    public int imeOptions;
-    public int initialCapsMode;
-    public int initialSelEnd;
-    public int initialSelStart;
-    public int inputType;
-    public java.lang.CharSequence label;
-    public java.lang.String packageName;
-    public java.lang.String privateImeOptions;
-}
-
--keep class android.view.inputmethod.ExtractedText {
-    <init>();
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public static int FLAG_SELECTING;
-    public static int FLAG_SINGLE_LINE;
-    public int flags;
-    public java.lang.CharSequence hint;
-    public int partialEndOffset;
-    public int partialStartOffset;
-    public int selectionEnd;
-    public int selectionStart;
-    public int startOffset;
-    public java.lang.CharSequence text;
-}
-
--keep class android.view.inputmethod.ExtractedTextRequest {
-    <init>();
-
-    public int describeContents();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public int flags;
-    public int hintMaxChars;
-    public int hintMaxLines;
-    public int token;
-}
-
--keep class android.view.inputmethod.InputConnection {
-
-    public abstract boolean beginBatchEdit();
-    public abstract boolean clearMetaKeyStates(int);
-    public abstract void closeConnection();
-    public abstract boolean commitCompletion(android.view.inputmethod.CompletionInfo);
-    public abstract boolean commitContent(android.view.inputmethod.InputContentInfo, int, android.os.Bundle);
-    public abstract boolean commitCorrection(android.view.inputmethod.CorrectionInfo);
-    public abstract boolean commitText(java.lang.CharSequence, int);
-    public abstract boolean deleteSurroundingText(int, int);
-    public abstract boolean deleteSurroundingTextInCodePoints(int, int);
-    public abstract boolean endBatchEdit();
-    public abstract boolean finishComposingText();
-    public abstract int getCursorCapsMode(int);
-    public abstract android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int);
-    public abstract android.os.Handler getHandler();
-    public abstract java.lang.CharSequence getSelectedText(int);
-    public abstract java.lang.CharSequence getTextAfterCursor(int, int);
-    public abstract java.lang.CharSequence getTextBeforeCursor(int, int);
-    public abstract boolean performContextMenuAction(int);
-    public abstract boolean performEditorAction(int);
-    public abstract boolean performPrivateCommand(java.lang.String, android.os.Bundle);
-    public abstract boolean reportFullscreenMode(boolean);
-    public abstract boolean requestCursorUpdates(int);
-    public abstract boolean sendKeyEvent(android.view.KeyEvent);
-    public abstract boolean setComposingRegion(int, int);
-    public abstract boolean setComposingText(java.lang.CharSequence, int);
-    public abstract boolean setSelection(int, int);
-
-
-    public static int CURSOR_UPDATE_IMMEDIATE;
-    public static int CURSOR_UPDATE_MONITOR;
-    public static int GET_EXTRACTED_TEXT_MONITOR;
-    public static int GET_TEXT_WITH_STYLES;
-    public static int INPUT_CONTENT_GRANT_READ_URI_PERMISSION;
-}
-
--keep class android.view.inputmethod.InputContentInfo {
-    <init>(android.net.Uri, android.content.ClipDescription);
-    <init>(android.net.Uri, android.content.ClipDescription, android.net.Uri);
-
-    public int describeContents();
-    public android.net.Uri getContentUri();
-    public android.content.ClipDescription getDescription();
-    public android.net.Uri getLinkUri();
-    public void releasePermission();
-    public void requestPermission();
-    public boolean validate();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-}
-
--keep class android.widget.ActionMenuPresenter {
-    <init>(android.content.Context);
-
-    public void bindItemView(com.android.internal.view.menu.MenuItemImpl, com.android.internal.view.menu.MenuView$ItemView);
-    public boolean dismissPopupMenus();
-    public boolean filterLeftoverView(android.view.ViewGroup, int);
-    public boolean flagActionItems();
-    public android.view.View getItemView(com.android.internal.view.menu.MenuItemImpl, android.view.View, android.view.ViewGroup);
-    public com.android.internal.view.menu.MenuView getMenuView(android.view.ViewGroup);
-    public android.graphics.drawable.Drawable getOverflowIcon();
-    public boolean hideOverflowMenu();
-    public boolean hideSubMenus();
-    public void initForMenu(android.content.Context, com.android.internal.view.menu.MenuBuilder);
-    public boolean isOverflowMenuShowPending();
-    public boolean isOverflowMenuShowing();
-    public boolean isOverflowReserved();
-    public void onCloseMenu(com.android.internal.view.menu.MenuBuilder, boolean);
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public void onRestoreInstanceState(android.os.Parcelable);
-    public android.os.Parcelable onSaveInstanceState();
-    public boolean onSubMenuSelected(com.android.internal.view.menu.SubMenuBuilder);
-    public void onSubUiVisibilityChanged(boolean);
-    public void setExpandedActionViewsExclusive(boolean);
-    public void setItemLimit(int);
-    public void setMenuView(android.widget.ActionMenuView);
-    public void setOverflowIcon(android.graphics.drawable.Drawable);
-    public void setReserveOverflow(boolean);
-    public void setWidthLimit(int, boolean);
-    public boolean shouldIncludeItem(int, com.android.internal.view.menu.MenuItemImpl);
-    public boolean showOverflowMenu();
-    public void updateMenuView(boolean);
-
-
-}
-
--keep class android.widget.ActionMenuView {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-
-    protected boolean checkLayoutParams(android.view.ViewGroup$LayoutParams);
-    public void dismissPopupMenus();
-    public boolean dispatchPopulateAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    protected android.widget.ActionMenuView$LayoutParams generateDefaultLayoutParams();
-    protected android.widget.LinearLayout$LayoutParams generateDefaultLayoutParams();
-    protected android.view.ViewGroup$LayoutParams generateDefaultLayoutParams();
-    public android.widget.ActionMenuView$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    protected android.widget.ActionMenuView$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    protected android.widget.LinearLayout$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    public android.widget.LinearLayout$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    protected android.view.ViewGroup$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    public android.view.ViewGroup$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    public android.widget.ActionMenuView$LayoutParams generateOverflowButtonLayoutParams();
-    public android.view.Menu getMenu();
-    public android.graphics.drawable.Drawable getOverflowIcon();
-    public int getPopupTheme();
-    public int getWindowAnimations();
-    protected boolean hasDividerBeforeChildAt(int);
-    public boolean hideOverflowMenu();
-    public void initialize(com.android.internal.view.menu.MenuBuilder);
-    public boolean invokeItem(com.android.internal.view.menu.MenuItemImpl);
-    public boolean isOverflowMenuShowPending();
-    public boolean isOverflowMenuShowing();
-    public boolean isOverflowReserved();
-    public void onConfigurationChanged(android.content.res.Configuration);
-    public void onDetachedFromWindow();
-    protected void onLayout(boolean, int, int, int, int);
-    protected void onMeasure(int, int);
-    public com.android.internal.view.menu.MenuBuilder peekMenu();
-    public void setExpandedActionViewsExclusive(boolean);
-    public void setMenuCallbacks(com.android.internal.view.menu.MenuPresenter$Callback, com.android.internal.view.menu.MenuBuilder$Callback);
-    public void setOnMenuItemClickListener(android.widget.ActionMenuView$OnMenuItemClickListener);
-    public void setOverflowIcon(android.graphics.drawable.Drawable);
-    public void setOverflowReserved(boolean);
-    public void setPopupTheme(int);
-    public void setPresenter(android.widget.ActionMenuPresenter);
-    public boolean showOverflowMenu();
-
-
-}
-
--keep class android.widget.ActionMenuView$LayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.view.ViewGroup$LayoutParams);
-    <init>(android.widget.ActionMenuView$LayoutParams);
-    <init>(int, int);
-    <init>(int, int, boolean);
-
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-
-
-    public int cellsUsed;
-    public boolean expandable;
-    public boolean expanded;
-    public int extraPixels;
-    public boolean isOverflowButton;
-    public boolean preventEdgeOffset;
-}
-
--keep class android.widget.ActionMenuView$OnMenuItemClickListener {
-
-    public abstract boolean onMenuItemClick(android.view.MenuItem);
-
-
-}
-
--keep class android.widget.Adapter {
-
-    public java.lang.CharSequence[] getAutofillOptions();
-    public abstract int getCount();
-    public abstract java.lang.Object getItem(int);
-    public abstract long getItemId(int);
-    public abstract int getItemViewType(int);
-    public abstract android.view.View getView(int, android.view.View, android.view.ViewGroup);
-    public abstract int getViewTypeCount();
-    public abstract boolean hasStableIds();
-    public abstract boolean isEmpty();
-    public abstract void registerDataSetObserver(android.database.DataSetObserver);
-    public abstract void unregisterDataSetObserver(android.database.DataSetObserver);
-
-
-    public static int IGNORE_ITEM_VIEW_TYPE;
-    public static int NO_SELECTION;
-}
-
--keep class android.widget.AdapterView {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    public void addView(android.view.View);
-    public void addView(android.view.View, int);
-    public void addView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void addView(android.view.View, int, android.view.ViewGroup$LayoutParams);
-    protected boolean canAnimate();
-    public boolean dispatchPopulateAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    protected void dispatchRestoreInstanceState(android.util.SparseArray);
-    protected void dispatchSaveInstanceState(android.util.SparseArray);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public java.lang.CharSequence getAccessibilityClassName();
-    public abstract android.widget.Adapter getAdapter();
-    public int getCount();
-    public android.view.View getEmptyView();
-    public int getFirstVisiblePosition();
-    public java.lang.Object getItemAtPosition(int);
-    public long getItemIdAtPosition(int);
-    public int getLastVisiblePosition();
-    public android.widget.AdapterView$OnItemClickListener getOnItemClickListener();
-    public android.widget.AdapterView$OnItemLongClickListener getOnItemLongClickListener();
-    public android.widget.AdapterView$OnItemSelectedListener getOnItemSelectedListener();
-    public int getPositionForView(android.view.View);
-    public java.lang.Object getSelectedItem();
-    public long getSelectedItemId();
-    public int getSelectedItemPosition();
-    public abstract android.view.View getSelectedView();
-    protected void onDetachedFromWindow();
-    public void onInitializeAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    public void onInitializeAccessibilityNodeInfoInternal(android.view.accessibility.AccessibilityNodeInfo);
-    protected void onLayout(boolean, int, int, int, int);
-    public void onProvideAutofillStructure(android.view.ViewStructure, int);
-    public boolean onRequestSendAccessibilityEventInternal(android.view.View, android.view.accessibility.AccessibilityEvent);
-    public boolean performItemClick(android.view.View, int, long);
-    public void removeAllViews();
-    public void removeView(android.view.View);
-    public void removeViewAt(int);
-    public abstract void setAdapter(android.widget.Adapter);
-    public void setEmptyView(android.view.View);
-    public void setFocusable(int);
-    public void setFocusableInTouchMode(boolean);
-    public void setOnClickListener(android.view.View$OnClickListener);
-    public void setOnItemClickListener(android.widget.AdapterView$OnItemClickListener);
-    public void setOnItemLongClickListener(android.widget.AdapterView$OnItemLongClickListener);
-    public void setOnItemSelectedListener(android.widget.AdapterView$OnItemSelectedListener);
-    public abstract void setSelection(int);
-
-
-    public static int INVALID_POSITION;
-    public static long INVALID_ROW_ID;
-    public static int ITEM_VIEW_TYPE_HEADER_OR_FOOTER;
-    public static int ITEM_VIEW_TYPE_IGNORE;
-}
-
--keep class android.widget.AdapterView$OnItemClickListener {
-
-    public abstract void onItemClick(android.widget.AdapterView, android.view.View, int, long);
-
-
-}
-
--keep class android.widget.AdapterView$OnItemLongClickListener {
-
-    public abstract boolean onItemLongClick(android.widget.AdapterView, android.view.View, int, long);
-
-
-}
-
--keep class android.widget.AdapterView$OnItemSelectedListener {
-
-    public abstract void onItemSelected(android.widget.AdapterView, android.view.View, int, long);
-    public abstract void onNothingSelected(android.widget.AdapterView);
-
-
-}
-
--keep class android.widget.FrameLayout {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    protected boolean checkLayoutParams(android.view.ViewGroup$LayoutParams);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    protected android.widget.FrameLayout$LayoutParams generateDefaultLayoutParams();
-    protected android.view.ViewGroup$LayoutParams generateDefaultLayoutParams();
-    public android.widget.FrameLayout$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    protected android.view.ViewGroup$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    public android.view.ViewGroup$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    public java.lang.CharSequence getAccessibilityClassName();
-    public boolean getConsiderGoneChildrenWhenMeasuring();
-    public boolean getMeasureAllChildren();
-    protected void onLayout(boolean, int, int, int, int);
-    protected void onMeasure(int, int);
-    public void setForegroundGravity(int);
-    public void setMeasureAllChildren(boolean);
-    public boolean shouldDelayChildPressedState();
-
-
-}
-
--keep class android.widget.FrameLayout$LayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(int, int);
-    <init>(int, int, int);
-    <init>(android.view.ViewGroup$LayoutParams);
-    <init>(android.view.ViewGroup$MarginLayoutParams);
-    <init>(android.widget.FrameLayout$LayoutParams);
-
-
-
-    public static int UNSPECIFIED_GRAVITY;
-    public int gravity;
-}
-
--keep class android.widget.HorizontalScrollView {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    public void addView(android.view.View);
-    public void addView(android.view.View, int);
-    public void addView(android.view.View, android.view.ViewGroup$LayoutParams);
-    public void addView(android.view.View, int, android.view.ViewGroup$LayoutParams);
-    public boolean arrowScroll(int);
-    protected int computeHorizontalScrollOffset();
-    protected int computeHorizontalScrollRange();
-    public void computeScroll();
-    protected int computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect);
-    public boolean dispatchKeyEvent(android.view.KeyEvent);
-    public void draw(android.graphics.Canvas);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    public boolean executeKeyEvent(android.view.KeyEvent);
-    public void fling(int);
-    public boolean fullScroll(int);
-    public java.lang.CharSequence getAccessibilityClassName();
-    protected float getLeftFadingEdgeStrength();
-    public int getMaxScrollAmount();
-    protected float getRightFadingEdgeStrength();
-    public boolean isFillViewport();
-    public boolean isSmoothScrollingEnabled();
-    protected void measureChild(android.view.View, int, int);
-    protected void measureChildWithMargins(android.view.View, int, int, int, int);
-    public boolean onGenericMotionEvent(android.view.MotionEvent);
-    public void onInitializeAccessibilityEventInternal(android.view.accessibility.AccessibilityEvent);
-    public void onInitializeAccessibilityNodeInfoInternal(android.view.accessibility.AccessibilityNodeInfo);
-    public boolean onInterceptTouchEvent(android.view.MotionEvent);
-    protected void onLayout(boolean, int, int, int, int);
-    protected void onMeasure(int, int);
-    protected void onOverScrolled(int, int, boolean, boolean);
-    protected boolean onRequestFocusInDescendants(int, android.graphics.Rect);
-    protected void onRestoreInstanceState(android.os.Parcelable);
-    protected android.os.Parcelable onSaveInstanceState();
-    protected void onSizeChanged(int, int, int, int);
-    public boolean onTouchEvent(android.view.MotionEvent);
-    public boolean pageScroll(int);
-    public boolean performAccessibilityActionInternal(int, android.os.Bundle);
-    public void requestChildFocus(android.view.View, android.view.View);
-    public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean);
-    public void requestDisallowInterceptTouchEvent(boolean);
-    public void requestLayout();
-    public void scrollTo(int, int);
-    public void setFillViewport(boolean);
-    public void setOverScrollMode(int);
-    public void setSmoothScrollingEnabled(boolean);
-    public boolean shouldDelayChildPressedState();
-    public void smoothScrollBy(int, int);
-    public void smoothScrollTo(int, int);
-
-
-}
-
--keep class android.widget.LinearLayout {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    protected boolean checkLayoutParams(android.view.ViewGroup$LayoutParams);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-    protected android.widget.LinearLayout$LayoutParams generateDefaultLayoutParams();
-    protected android.view.ViewGroup$LayoutParams generateDefaultLayoutParams();
-    public android.widget.LinearLayout$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    protected android.widget.LinearLayout$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    protected android.view.ViewGroup$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    public android.view.ViewGroup$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    public java.lang.CharSequence getAccessibilityClassName();
-    public int getBaseline();
-    public int getBaselineAlignedChildIndex();
-    public android.graphics.drawable.Drawable getDividerDrawable();
-    public int getDividerPadding();
-    public int getDividerWidth();
-    public int getGravity();
-    public int getOrientation();
-    public int getShowDividers();
-    public float getWeightSum();
-    protected boolean hasDividerBeforeChildAt(int);
-    public boolean isBaselineAligned();
-    public boolean isMeasureWithLargestChildEnabled();
-    protected void onDraw(android.graphics.Canvas);
-    protected void onLayout(boolean, int, int, int, int);
-    protected void onMeasure(int, int);
-    public void onRtlPropertiesChanged(int);
-    public void setBaselineAligned(boolean);
-    public void setBaselineAlignedChildIndex(int);
-    public void setDividerDrawable(android.graphics.drawable.Drawable);
-    public void setDividerPadding(int);
-    public void setGravity(int);
-    public void setHorizontalGravity(int);
-    public void setMeasureWithLargestChildEnabled(boolean);
-    public void setOrientation(int);
-    public void setShowDividers(int);
-    public void setVerticalGravity(int);
-    public void setWeightSum(float);
-    public boolean shouldDelayChildPressedState();
-
-
-    public static int HORIZONTAL;
-    public static int SHOW_DIVIDER_BEGINNING;
-    public static int SHOW_DIVIDER_END;
-    public static int SHOW_DIVIDER_MIDDLE;
-    public static int SHOW_DIVIDER_NONE;
-    public static int VERTICAL;
-}
-
--keep class android.widget.LinearLayout$LayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(int, int);
-    <init>(int, int, float);
-    <init>(android.view.ViewGroup$LayoutParams);
-    <init>(android.view.ViewGroup$MarginLayoutParams);
-    <init>(android.widget.LinearLayout$LayoutParams);
-
-    public java.lang.String debug(java.lang.String);
-    protected void encodeProperties(android.view.ViewHierarchyEncoder);
-
-
-    public int gravity;
-    public float weight;
-}
-
--keep class android.widget.RemoteViews {
-    <init>(java.lang.String, int);
-    <init>(java.lang.String, int, int);
-    <init>(android.content.pm.ApplicationInfo, int);
-    <init>(android.widget.RemoteViews, android.widget.RemoteViews);
-    <init>(android.widget.RemoteViews);
-    <init>(android.os.Parcel);
-
-    public void addView(int, android.widget.RemoteViews);
-    public void addView(int, android.widget.RemoteViews, int);
-    public android.view.View apply(android.content.Context, android.view.ViewGroup);
-    public android.view.View apply(android.content.Context, android.view.ViewGroup, android.widget.RemoteViews$OnClickHandler);
-    public android.os.CancellationSignal applyAsync(android.content.Context, android.view.ViewGroup, java.util.concurrent.Executor, android.widget.RemoteViews$OnViewAppliedListener);
-    public android.os.CancellationSignal applyAsync(android.content.Context, android.view.ViewGroup, java.util.concurrent.Executor, android.widget.RemoteViews$OnViewAppliedListener, android.widget.RemoteViews$OnClickHandler);
-    public android.widget.RemoteViews clone();
-    public java.lang.Object clone();
-    public int describeContents();
-    public int estimateMemoryUsage();
-    public int getLayoutId();
-    public java.lang.String getPackage();
-    public int getSequenceNumber();
-    public boolean hasSameAppInfo(android.content.pm.ApplicationInfo);
-    public boolean isReapplyDisallowed();
-    public void mergeRemoteViews(android.widget.RemoteViews);
-    public boolean onLoadClass(java.lang.Class);
-    public void overrideTextColors(int);
-    public boolean prefersAsyncApply();
-    public void reapply(android.content.Context, android.view.View);
-    public void reapply(android.content.Context, android.view.View, android.widget.RemoteViews$OnClickHandler);
-    public android.os.CancellationSignal reapplyAsync(android.content.Context, android.view.View, java.util.concurrent.Executor, android.widget.RemoteViews$OnViewAppliedListener);
-    public android.os.CancellationSignal reapplyAsync(android.content.Context, android.view.View, java.util.concurrent.Executor, android.widget.RemoteViews$OnViewAppliedListener, android.widget.RemoteViews$OnClickHandler);
-    public void reduceImageSizes(int, int);
-    public void removeAllViews(int);
-    public void removeAllViewsExceptId(int, int);
-    public void setAccessibilityTraversalAfter(int, int);
-    public void setAccessibilityTraversalBefore(int, int);
-    public void setApplyTheme(int);
-    public void setBitmap(int, java.lang.String, android.graphics.Bitmap);
-    public void setBoolean(int, java.lang.String, boolean);
-    public void setBundle(int, java.lang.String, android.os.Bundle);
-    public void setByte(int, java.lang.String, byte);
-    public void setChar(int, java.lang.String, char);
-    public void setCharSequence(int, java.lang.String, java.lang.CharSequence);
-    public void setChronometer(int, long, java.lang.String, boolean);
-    public void setChronometerCountDown(int, boolean);
-    public void setColorStateList(int, java.lang.String, android.content.res.ColorStateList);
-    public void setContentDescription(int, java.lang.CharSequence);
-    public void setDisplayedChild(int, int);
-    public void setDouble(int, java.lang.String, double);
-    public void setDrawableTint(int, boolean, int, android.graphics.PorterDuff$Mode);
-    public void setEmptyView(int, int);
-    public void setFloat(int, java.lang.String, float);
-    public void setIcon(int, java.lang.String, android.graphics.drawable.Icon);
-    public void setImageViewBitmap(int, android.graphics.Bitmap);
-    public void setImageViewIcon(int, android.graphics.drawable.Icon);
-    public void setImageViewResource(int, int);
-    public void setImageViewUri(int, android.net.Uri);
-    public void setInt(int, java.lang.String, int);
-    public void setIntent(int, java.lang.String, android.content.Intent);
-    public void setLabelFor(int, int);
-    public void setLong(int, java.lang.String, long);
-    public void setOnClickFillInIntent(int, android.content.Intent);
-    public void setOnClickPendingIntent(int, android.app.PendingIntent);
-    public void setPendingIntentTemplate(int, android.app.PendingIntent);
-    public void setProgressBackgroundTintList(int, android.content.res.ColorStateList);
-    public void setProgressBar(int, int, int, boolean);
-    public void setProgressIndeterminateTintList(int, android.content.res.ColorStateList);
-    public void setProgressTintList(int, android.content.res.ColorStateList);
-    public void setReapplyDisallowed();
-    public void setRelativeScrollPosition(int, int);
-    public void setRemoteAdapter(int, int, android.content.Intent);
-    public void setRemoteAdapter(int, android.content.Intent);
-    public void setRemoteAdapter(int, java.util.ArrayList, int);
-    public void setRemoteInputs(int, android.app.RemoteInput[]);
-    public void setScrollPosition(int, int);
-    public void setShort(int, java.lang.String, short);
-    public void setString(int, java.lang.String, java.lang.String);
-    public void setTextColor(int, int);
-    public void setTextColor(int, android.content.res.ColorStateList);
-    public void setTextViewCompoundDrawables(int, int, int, int, int);
-    public void setTextViewCompoundDrawables(int, android.graphics.drawable.Icon, android.graphics.drawable.Icon, android.graphics.drawable.Icon, android.graphics.drawable.Icon);
-    public void setTextViewCompoundDrawablesRelative(int, int, int, int, int);
-    public void setTextViewCompoundDrawablesRelative(int, android.graphics.drawable.Icon, android.graphics.drawable.Icon, android.graphics.drawable.Icon, android.graphics.drawable.Icon);
-    public void setTextViewText(int, java.lang.CharSequence);
-    public void setTextViewTextSize(int, int, float);
-    public void setUri(int, java.lang.String, android.net.Uri);
-    public void setViewLayoutMarginBottomDimen(int, int);
-    public void setViewLayoutMarginEnd(int, int);
-    public void setViewLayoutMarginEndDimen(int, int);
-    public void setViewLayoutWidth(int, int);
-    public void setViewPadding(int, int, int, int, int);
-    public void setViewVisibility(int, int);
-    public void showNext(int);
-    public void showPrevious(int);
-    public void visitUris(java.util.function.Consumer);
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public android.content.pm.ApplicationInfo mApplication;
-}
-
--keep class android.widget.RemoteViews$OnClickHandler {
-    <init>();
-
-    public boolean onClickHandler(android.view.View, android.app.PendingIntent, android.content.Intent);
-    public boolean onClickHandler(android.view.View, android.app.PendingIntent, android.content.Intent, int);
-    public void setEnterAnimationId(int);
-
-
-}
-
--keep class android.widget.RemoteViews$OnViewAppliedListener {
-
-    public abstract void onError(java.lang.Exception);
-    public abstract void onViewApplied(android.view.View);
-
-
-}
-
--keep class android.widget.SpinnerAdapter {
-
-    public abstract android.view.View getDropDownView(int, android.view.View, android.view.ViewGroup);
-
-
-}
-
--keep class android.widget.Toolbar {
-    <init>(android.content.Context);
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(android.content.Context, android.util.AttributeSet, int);
-    <init>(android.content.Context, android.util.AttributeSet, int, int);
-
-    public boolean canShowOverflowMenu();
-    protected boolean checkLayoutParams(android.view.ViewGroup$LayoutParams);
-    public void collapseActionView();
-    public void dismissPopupMenus();
-    protected android.widget.Toolbar$LayoutParams generateDefaultLayoutParams();
-    protected android.view.ViewGroup$LayoutParams generateDefaultLayoutParams();
-    public android.widget.Toolbar$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    protected android.widget.Toolbar$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    protected android.view.ViewGroup$LayoutParams generateLayoutParams(android.view.ViewGroup$LayoutParams);
-    public android.view.ViewGroup$LayoutParams generateLayoutParams(android.util.AttributeSet);
-    public java.lang.CharSequence getCollapseContentDescription();
-    public android.graphics.drawable.Drawable getCollapseIcon();
-    public int getContentInsetEnd();
-    public int getContentInsetEndWithActions();
-    public int getContentInsetLeft();
-    public int getContentInsetRight();
-    public int getContentInsetStart();
-    public int getContentInsetStartWithNavigation();
-    public int getCurrentContentInsetEnd();
-    public int getCurrentContentInsetLeft();
-    public int getCurrentContentInsetRight();
-    public int getCurrentContentInsetStart();
-    public android.graphics.drawable.Drawable getLogo();
-    public java.lang.CharSequence getLogoDescription();
-    public android.view.Menu getMenu();
-    public java.lang.CharSequence getNavigationContentDescription();
-    public android.graphics.drawable.Drawable getNavigationIcon();
-    public android.view.View getNavigationView();
-    public android.graphics.drawable.Drawable getOverflowIcon();
-    public int getPopupTheme();
-    public java.lang.CharSequence getSubtitle();
-    public java.lang.CharSequence getTitle();
-    public int getTitleMarginBottom();
-    public int getTitleMarginEnd();
-    public int getTitleMarginStart();
-    public int getTitleMarginTop();
-    public com.android.internal.widget.DecorToolbar getWrapper();
-    public boolean hasExpandedActionView();
-    public boolean hideOverflowMenu();
-    public void inflateMenu(int);
-    public boolean isOverflowMenuShowPending();
-    public boolean isOverflowMenuShowing();
-    public boolean isTitleTruncated();
-    protected void onAttachedToWindow();
-    protected void onDetachedFromWindow();
-    protected void onLayout(boolean, int, int, int, int);
-    protected void onMeasure(int, int);
-    protected void onRestoreInstanceState(android.os.Parcelable);
-    public void onRtlPropertiesChanged(int);
-    protected android.os.Parcelable onSaveInstanceState();
-    protected void onSetLayoutParams(android.view.View, android.view.ViewGroup$LayoutParams);
-    public boolean onTouchEvent(android.view.MotionEvent);
-    public void setCollapseContentDescription(int);
-    public void setCollapseContentDescription(java.lang.CharSequence);
-    public void setCollapseIcon(int);
-    public void setCollapseIcon(android.graphics.drawable.Drawable);
-    public void setCollapsible(boolean);
-    public void setContentInsetEndWithActions(int);
-    public void setContentInsetStartWithNavigation(int);
-    public void setContentInsetsAbsolute(int, int);
-    public void setContentInsetsRelative(int, int);
-    public void setLogo(int);
-    public void setLogo(android.graphics.drawable.Drawable);
-    public void setLogoDescription(int);
-    public void setLogoDescription(java.lang.CharSequence);
-    public void setMenu(com.android.internal.view.menu.MenuBuilder, android.widget.ActionMenuPresenter);
-    public void setMenuCallbacks(com.android.internal.view.menu.MenuPresenter$Callback, com.android.internal.view.menu.MenuBuilder$Callback);
-    public void setNavigationContentDescription(int);
-    public void setNavigationContentDescription(java.lang.CharSequence);
-    public void setNavigationIcon(int);
-    public void setNavigationIcon(android.graphics.drawable.Drawable);
-    public void setNavigationOnClickListener(android.view.View$OnClickListener);
-    public void setOnMenuItemClickListener(android.widget.Toolbar$OnMenuItemClickListener);
-    public void setOverflowIcon(android.graphics.drawable.Drawable);
-    public void setPopupTheme(int);
-    public void setSubtitle(int);
-    public void setSubtitle(java.lang.CharSequence);
-    public void setSubtitleTextAppearance(android.content.Context, int);
-    public void setSubtitleTextColor(int);
-    public void setTitle(int);
-    public void setTitle(java.lang.CharSequence);
-    public void setTitleMargin(int, int, int, int);
-    public void setTitleMarginBottom(int);
-    public void setTitleMarginEnd(int);
-    public void setTitleMarginStart(int);
-    public void setTitleMarginTop(int);
-    public void setTitleTextAppearance(android.content.Context, int);
-    public void setTitleTextColor(int);
-    public boolean showOverflowMenu();
-
-
-}
-
--keep class android.widget.Toolbar$LayoutParams {
-    <init>(android.content.Context, android.util.AttributeSet);
-    <init>(int, int);
-    <init>(int, int, int);
-    <init>(int);
-    <init>(android.widget.Toolbar$LayoutParams);
-    <init>(android.app.ActionBar$LayoutParams);
-    <init>(android.view.ViewGroup$MarginLayoutParams);
-    <init>(android.view.ViewGroup$LayoutParams);
-
-
-
-}
-
--keep class android.widget.Toolbar$OnMenuItemClickListener {
-
-    public abstract boolean onMenuItemClick(android.view.MenuItem);
-
-
-}
-
--keep class com.android.internal.app.IAppOpsActiveCallback {
-
-    public abstract void opActiveChanged(int, int, java.lang.String, boolean);
-
-
-}
-
--keep class com.android.internal.app.IAppOpsCallback {
-
-    public abstract void opChanged(int, int, java.lang.String);
-
-
-}
-
--keep class com.android.internal.app.IAppOpsService {
-
-    public abstract int checkAudioOperation(int, int, int, java.lang.String);
-    public abstract int checkOperation(int, int, java.lang.String);
-    public abstract int checkPackage(int, java.lang.String);
-    public abstract void finishOperation(android.os.IBinder, int, int, java.lang.String);
-    public abstract java.util.List getOpsForPackage(int, java.lang.String, int[]);
-    public abstract java.util.List getPackagesForOps(int[]);
-    public abstract android.os.IBinder getToken(android.os.IBinder);
-    public abstract java.util.List getUidOps(int, int[]);
-    public abstract boolean isOperationActive(int, int, java.lang.String);
-    public abstract int noteOperation(int, int, java.lang.String);
-    public abstract int noteProxyOperation(int, java.lang.String, int, java.lang.String);
-    public abstract int permissionToOpCode(java.lang.String);
-    public abstract void removeUser(int);
-    public abstract void resetAllModes(int, java.lang.String);
-    public abstract void setAudioRestriction(int, int, int, int, java.lang.String[]);
-    public abstract void setMode(int, int, java.lang.String, int);
-    public abstract void setUidMode(int, int, int);
-    public abstract void setUserRestriction(int, boolean, android.os.IBinder, int, java.lang.String[]);
-    public abstract void setUserRestrictions(android.os.Bundle, android.os.IBinder, int);
-    public abstract int startOperation(android.os.IBinder, int, int, java.lang.String, boolean);
-    public abstract void startWatchingActive(int[], com.android.internal.app.IAppOpsActiveCallback);
-    public abstract void startWatchingMode(int, java.lang.String, com.android.internal.app.IAppOpsCallback);
-    public abstract void startWatchingModeWithFlags(int, java.lang.String, int, com.android.internal.app.IAppOpsCallback);
-    public abstract void stopWatchingActive(com.android.internal.app.IAppOpsActiveCallback);
-    public abstract void stopWatchingMode(com.android.internal.app.IAppOpsCallback);
-
-
-}
-
--keep class com.android.internal.app.IVoiceInteractionSessionShowCallback {
-
-    public abstract void onFailed();
-    public abstract void onShown();
-
-
-}
-
--keep class com.android.internal.app.IVoiceInteractor {
-
-    public abstract com.android.internal.app.IVoiceInteractorRequest startAbortVoice(java.lang.String, com.android.internal.app.IVoiceInteractorCallback, android.app.VoiceInteractor$Prompt, android.os.Bundle);
-    public abstract com.android.internal.app.IVoiceInteractorRequest startCommand(java.lang.String, com.android.internal.app.IVoiceInteractorCallback, java.lang.String, android.os.Bundle);
-    public abstract com.android.internal.app.IVoiceInteractorRequest startCompleteVoice(java.lang.String, com.android.internal.app.IVoiceInteractorCallback, android.app.VoiceInteractor$Prompt, android.os.Bundle);
-    public abstract com.android.internal.app.IVoiceInteractorRequest startConfirmation(java.lang.String, com.android.internal.app.IVoiceInteractorCallback, android.app.VoiceInteractor$Prompt, android.os.Bundle);
-    public abstract com.android.internal.app.IVoiceInteractorRequest startPickOption(java.lang.String, com.android.internal.app.IVoiceInteractorCallback, android.app.VoiceInteractor$Prompt, android.app.VoiceInteractor$PickOptionRequest$Option[], android.os.Bundle);
-    public abstract boolean[] supportsCommands(java.lang.String, java.lang.String[]);
-
-
-}
-
--keep class com.android.internal.app.IVoiceInteractorCallback {
-
-    public abstract void deliverAbortVoiceResult(com.android.internal.app.IVoiceInteractorRequest, android.os.Bundle);
-    public abstract void deliverCancel(com.android.internal.app.IVoiceInteractorRequest);
-    public abstract void deliverCommandResult(com.android.internal.app.IVoiceInteractorRequest, boolean, android.os.Bundle);
-    public abstract void deliverCompleteVoiceResult(com.android.internal.app.IVoiceInteractorRequest, android.os.Bundle);
-    public abstract void deliverConfirmationResult(com.android.internal.app.IVoiceInteractorRequest, boolean, android.os.Bundle);
-    public abstract void deliverPickOptionResult(com.android.internal.app.IVoiceInteractorRequest, boolean, android.app.VoiceInteractor$PickOptionRequest$Option[], android.os.Bundle);
-
-
-}
-
--keep class com.android.internal.app.IVoiceInteractorRequest {
-
-    public abstract void cancel();
-
-
-}
-
--keep class com.android.internal.content.ReferrerIntent {
-    <init>(android.content.Intent, java.lang.String);
-
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public void writeToParcel(android.os.Parcel, int);
-
-
-    public static android.os.Parcelable$Creator CREATOR;
-    public java.lang.String mReferrer;
-}
-
--keep class com.android.internal.os.IResultReceiver {
-
-    public abstract void send(int, android.os.Bundle);
-
-
-}
-
--keep class com.android.internal.policy.IKeyguardDismissCallback {
-
-    public abstract void onDismissCancelled();
-    public abstract void onDismissError();
-    public abstract void onDismissSucceeded();
-
-
-}
-
--keep class com.android.internal.util.FunctionalUtils {
-
-    public static java.lang.Runnable handleExceptions(com.android.internal.util.FunctionalUtils$ThrowingRunnable, java.util.function.Consumer);
-    public static java.util.function.Consumer ignoreRemoteException(com.android.internal.util.FunctionalUtils$RemoteExceptionIgnoringConsumer);
-    public static java.util.function.Consumer uncheckExceptions(com.android.internal.util.FunctionalUtils$ThrowingConsumer);
-
-
-}
-
--keep class com.android.internal.util.FunctionalUtils$RemoteExceptionIgnoringConsumer {
-
-    public void accept(java.lang.Object);
-    public abstract void acceptOrThrow(java.lang.Object);
-
-
-}
-
--keep class com.android.internal.util.FunctionalUtils$ThrowingConsumer {
-
-    public void accept(java.lang.Object);
-    public abstract void acceptOrThrow(java.lang.Object);
-
-
-}
-
--keep class com.android.internal.util.FunctionalUtils$ThrowingRunnable {
-
-    public void run();
-    public abstract void runOrThrow();
-
-
-}
-
--keep class com.android.internal.util.FunctionalUtils$ThrowingSupplier {
-
-    public abstract java.lang.Object getOrThrow();
-
-
-}
-
--keep class com.android.internal.util.IndentingPrintWriter {
-    <init>(java.io.Writer, java.lang.String);
-    <init>(java.io.Writer, java.lang.String, int);
-
-    public com.android.internal.util.IndentingPrintWriter decreaseIndent();
-    public com.android.internal.util.IndentingPrintWriter increaseIndent();
-    public com.android.internal.util.IndentingPrintWriter printHexPair(java.lang.String, int);
-    public com.android.internal.util.IndentingPrintWriter printPair(java.lang.String, java.lang.Object);
-    public com.android.internal.util.IndentingPrintWriter printPair(java.lang.String, java.lang.Object[]);
-    public void println();
-    public com.android.internal.util.IndentingPrintWriter setIndent(java.lang.String);
-    public com.android.internal.util.IndentingPrintWriter setIndent(int);
-    public void write(int);
-    public void write(java.lang.String, int, int);
-    public void write(char[], int, int);
-
-
-}
-
--keep class com.android.internal.view.IDragAndDropPermissions {
-
-    public abstract void release();
-    public abstract void take(android.os.IBinder);
-    public abstract void takeTransient(android.os.IBinder);
-
-
-}
-
--keep class com.android.internal.view.menu.BaseMenuPresenter {
-    <init>(android.content.Context, int, int);
-
-    protected void addItemView(android.view.View, int);
-    public abstract void bindItemView(com.android.internal.view.menu.MenuItemImpl, com.android.internal.view.menu.MenuView$ItemView);
-    public boolean collapseItemActionView(com.android.internal.view.menu.MenuBuilder, com.android.internal.view.menu.MenuItemImpl);
-    public com.android.internal.view.menu.MenuView$ItemView createItemView(android.view.ViewGroup);
-    public boolean expandItemActionView(com.android.internal.view.menu.MenuBuilder, com.android.internal.view.menu.MenuItemImpl);
-    protected boolean filterLeftoverView(android.view.ViewGroup, int);
-    public boolean flagActionItems();
-    public com.android.internal.view.menu.MenuPresenter$Callback getCallback();
-    public int getId();
-    public android.view.View getItemView(com.android.internal.view.menu.MenuItemImpl, android.view.View, android.view.ViewGroup);
-    public com.android.internal.view.menu.MenuView getMenuView(android.view.ViewGroup);
-    public void initForMenu(android.content.Context, com.android.internal.view.menu.MenuBuilder);
-    public void onCloseMenu(com.android.internal.view.menu.MenuBuilder, boolean);
-    public boolean onSubMenuSelected(com.android.internal.view.menu.SubMenuBuilder);
-    public void setCallback(com.android.internal.view.menu.MenuPresenter$Callback);
-    public void setId(int);
-    public boolean shouldIncludeItem(int, com.android.internal.view.menu.MenuItemImpl);
-    public void updateMenuView(boolean);
-
-
-    protected android.content.Context mContext;
-    protected android.view.LayoutInflater mInflater;
-    protected com.android.internal.view.menu.MenuBuilder mMenu;
-    protected com.android.internal.view.menu.MenuView mMenuView;
-    protected android.content.Context mSystemContext;
-    protected android.view.LayoutInflater mSystemInflater;
-}
-
--keep class com.android.internal.view.menu.MenuBuilder {
-    <init>(android.content.Context);
-
-    public android.view.MenuItem add(java.lang.CharSequence);
-    public android.view.MenuItem add(int);
-    public android.view.MenuItem add(int, int, int, java.lang.CharSequence);
-    public android.view.MenuItem add(int, int, int, int);
-    public int addIntentOptions(int, int, int, android.content.ComponentName, android.content.Intent[], android.content.Intent, int, android.view.MenuItem[]);
-    public void addMenuPresenter(com.android.internal.view.menu.MenuPresenter);
-    public void addMenuPresenter(com.android.internal.view.menu.MenuPresenter, android.content.Context);
-    public android.view.SubMenu addSubMenu(java.lang.CharSequence);
-    public android.view.SubMenu addSubMenu(int);
-    public android.view.SubMenu addSubMenu(int, int, int, java.lang.CharSequence);
-    public android.view.SubMenu addSubMenu(int, int, int, int);
-    public void changeMenuMode();
-    public void clear();
-    public void clearAll();
-    public void clearHeader();
-    public void close(boolean);
-    public void close();
-    public boolean collapseItemActionView(com.android.internal.view.menu.MenuItemImpl);
-    public boolean expandItemActionView(com.android.internal.view.menu.MenuItemImpl);
-    public int findGroupIndex(int);
-    public int findGroupIndex(int, int);
-    public android.view.MenuItem findItem(int);
-    public int findItemIndex(int);
-    public void flagActionItems();
-    public java.util.ArrayList getActionItems();
-    protected java.lang.String getActionViewStatesKey();
-    public android.content.Context getContext();
-    public com.android.internal.view.menu.MenuItemImpl getExpandedItem();
-    public android.graphics.drawable.Drawable getHeaderIcon();
-    public java.lang.CharSequence getHeaderTitle();
-    public android.view.View getHeaderView();
-    public android.view.MenuItem getItem(int);
-    public java.util.ArrayList getNonActionItems();
-    public com.android.internal.view.menu.MenuBuilder getRootMenu();
-    public java.util.ArrayList getVisibleItems();
-    public boolean hasVisibleItems();
-    public boolean isGroupDividerEnabled();
-    public boolean isShortcutKey(int, android.view.KeyEvent);
-    public boolean isShortcutsVisible();
-    public void onItemsChanged(boolean);
-    public boolean performIdentifierAction(int, int);
-    public boolean performItemAction(android.view.MenuItem, int);
-    public boolean performItemAction(android.view.MenuItem, com.android.internal.view.menu.MenuPresenter, int);
-    public boolean performShortcut(int, android.view.KeyEvent, int);
-    public void removeGroup(int);
-    public void removeItem(int);
-    public void removeItemAt(int);
-    public void removeMenuPresenter(com.android.internal.view.menu.MenuPresenter);
-    public void restoreActionViewStates(android.os.Bundle);
-    public void restorePresenterStates(android.os.Bundle);
-    public void saveActionViewStates(android.os.Bundle);
-    public void savePresenterStates(android.os.Bundle);
-    public void setCallback(com.android.internal.view.menu.MenuBuilder$Callback);
-    public void setCurrentMenuInfo(android.view.ContextMenu$ContextMenuInfo);
-    public com.android.internal.view.menu.MenuBuilder setDefaultShowAsAction(int);
-    public void setGroupCheckable(int, boolean, boolean);
-    public void setGroupDividerEnabled(boolean);
-    public void setGroupEnabled(int, boolean);
-    public void setGroupVisible(int, boolean);
-    protected com.android.internal.view.menu.MenuBuilder setHeaderIconInt(android.graphics.drawable.Drawable);
-    protected com.android.internal.view.menu.MenuBuilder setHeaderIconInt(int);
-    protected com.android.internal.view.menu.MenuBuilder setHeaderTitleInt(java.lang.CharSequence);
-    protected com.android.internal.view.menu.MenuBuilder setHeaderTitleInt(int);
-    protected com.android.internal.view.menu.MenuBuilder setHeaderViewInt(android.view.View);
-    public void setQwertyMode(boolean);
-    public void setShortcutsVisible(boolean);
-    public int size();
-    public void startDispatchingItemsChanged();
-    public void stopDispatchingItemsChanged();
-
-
-}
-
--keep class com.android.internal.view.menu.MenuBuilder$Callback {
-
-    public abstract boolean onMenuItemSelected(com.android.internal.view.menu.MenuBuilder, android.view.MenuItem);
-    public abstract void onMenuModeChange(com.android.internal.view.menu.MenuBuilder);
-
-
-}
-
--keep class com.android.internal.view.menu.MenuItemImpl {
-
-    public void actionFormatChanged();
-    public boolean collapseActionView();
-    public boolean expandActionView();
-    public android.view.ActionProvider getActionProvider();
-    public android.view.View getActionView();
-    public int getAlphabeticModifiers();
-    public char getAlphabeticShortcut();
-    public java.lang.CharSequence getContentDescription();
-    public int getGroupId();
-    public android.graphics.drawable.Drawable getIcon();
-    public android.content.res.ColorStateList getIconTintList();
-    public android.graphics.PorterDuff$Mode getIconTintMode();
-    public android.content.Intent getIntent();
-    public int getItemId();
-    public android.view.ContextMenu$ContextMenuInfo getMenuInfo();
-    public int getNumericModifiers();
-    public char getNumericShortcut();
-    public int getOrder();
-    public int getOrdering();
-    public android.view.SubMenu getSubMenu();
-    public java.lang.CharSequence getTitle();
-    public java.lang.CharSequence getTitleCondensed();
-    public java.lang.CharSequence getTooltipText();
-    public boolean hasCollapsibleActionView();
-    public boolean hasSubMenu();
-    public boolean invoke();
-    public boolean isActionButton();
-    public boolean isActionViewExpanded();
-    public boolean isCheckable();
-    public boolean isChecked();
-    public boolean isEnabled();
-    public boolean isExclusiveCheckable();
-    public boolean isVisible();
-    public boolean requestsActionButton();
-    public boolean requiresActionButton();
-    public boolean requiresOverflow();
-    public android.view.MenuItem setActionProvider(android.view.ActionProvider);
-    public android.view.MenuItem setActionView(android.view.View);
-    public android.view.MenuItem setActionView(int);
-    public void setActionViewExpanded(boolean);
-    public android.view.MenuItem setAlphabeticShortcut(char);
-    public android.view.MenuItem setAlphabeticShortcut(char, int);
-    public android.view.MenuItem setCallback(java.lang.Runnable);
-    public android.view.MenuItem setCheckable(boolean);
-    public android.view.MenuItem setChecked(boolean);
-    public android.view.MenuItem setContentDescription(java.lang.CharSequence);
-    public android.view.MenuItem setEnabled(boolean);
-    public void setExclusiveCheckable(boolean);
-    public android.view.MenuItem setIcon(android.graphics.drawable.Drawable);
-    public android.view.MenuItem setIcon(int);
-    public android.view.MenuItem setIconTintList(android.content.res.ColorStateList);
-    public android.view.MenuItem setIconTintMode(android.graphics.PorterDuff$Mode);
-    public android.view.MenuItem setIntent(android.content.Intent);
-    public void setIsActionButton(boolean);
-    public android.view.MenuItem setNumericShortcut(char);
-    public android.view.MenuItem setNumericShortcut(char, int);
-    public android.view.MenuItem setOnActionExpandListener(android.view.MenuItem$OnActionExpandListener);
-    public android.view.MenuItem setOnMenuItemClickListener(android.view.MenuItem$OnMenuItemClickListener);
-    public android.view.MenuItem setShortcut(char, char);
-    public android.view.MenuItem setShortcut(char, char, int, int);
-    public void setShowAsAction(int);
-    public android.view.MenuItem setShowAsActionFlags(int);
-    public android.view.MenuItem setTitle(java.lang.CharSequence);
-    public android.view.MenuItem setTitle(int);
-    public android.view.MenuItem setTitleCondensed(java.lang.CharSequence);
-    public android.view.MenuItem setTooltipText(java.lang.CharSequence);
-    public android.view.MenuItem setVisible(boolean);
-    public boolean shouldShowIcon();
-    public boolean showsTextAsAction();
-    public java.lang.String toString();
-
-
-}
-
--keep class com.android.internal.view.menu.MenuPresenter {
-
-    public abstract boolean collapseItemActionView(com.android.internal.view.menu.MenuBuilder, com.android.internal.view.menu.MenuItemImpl);
-    public abstract boolean expandItemActionView(com.android.internal.view.menu.MenuBuilder, com.android.internal.view.menu.MenuItemImpl);
-    public abstract boolean flagActionItems();
-    public abstract int getId();
-    public abstract com.android.internal.view.menu.MenuView getMenuView(android.view.ViewGroup);
-    public abstract void initForMenu(android.content.Context, com.android.internal.view.menu.MenuBuilder);
-    public abstract void onCloseMenu(com.android.internal.view.menu.MenuBuilder, boolean);
-    public abstract void onRestoreInstanceState(android.os.Parcelable);
-    public abstract android.os.Parcelable onSaveInstanceState();
-    public abstract boolean onSubMenuSelected(com.android.internal.view.menu.SubMenuBuilder);
-    public abstract void setCallback(com.android.internal.view.menu.MenuPresenter$Callback);
-    public abstract void updateMenuView(boolean);
-
-
-}
-
--keep class com.android.internal.view.menu.MenuPresenter$Callback {
-
-    public abstract void onCloseMenu(com.android.internal.view.menu.MenuBuilder, boolean);
-    public abstract boolean onOpenSubMenu(com.android.internal.view.menu.MenuBuilder);
-
-
-}
-
--keep class com.android.internal.view.menu.MenuView {
-
-    public abstract int getWindowAnimations();
-    public abstract void initialize(com.android.internal.view.menu.MenuBuilder);
-
-
-}
-
--keep class com.android.internal.view.menu.MenuView$ItemView {
-
-    public abstract com.android.internal.view.menu.MenuItemImpl getItemData();
-    public abstract void initialize(com.android.internal.view.menu.MenuItemImpl, int);
-    public abstract boolean prefersCondensedTitle();
-    public abstract void setCheckable(boolean);
-    public abstract void setChecked(boolean);
-    public abstract void setEnabled(boolean);
-    public abstract void setIcon(android.graphics.drawable.Drawable);
-    public abstract void setShortcut(boolean, char);
-    public abstract void setTitle(java.lang.CharSequence);
-    public abstract boolean showsIcon();
-
-
-}
-
--keep class com.android.internal.view.menu.SubMenuBuilder {
-    <init>(android.content.Context, com.android.internal.view.menu.MenuBuilder, com.android.internal.view.menu.MenuItemImpl);
-
-    public boolean collapseItemActionView(com.android.internal.view.menu.MenuItemImpl);
-    public boolean expandItemActionView(com.android.internal.view.menu.MenuItemImpl);
-    public java.lang.String getActionViewStatesKey();
-    public android.view.MenuItem getItem();
-    public android.view.Menu getParentMenu();
-    public com.android.internal.view.menu.MenuBuilder getRootMenu();
-    public boolean isGroupDividerEnabled();
-    public boolean isQwertyMode();
-    public boolean isShortcutsVisible();
-    public void setCallback(com.android.internal.view.menu.MenuBuilder$Callback);
-    public void setGroupDividerEnabled(boolean);
-    public android.view.SubMenu setHeaderIcon(android.graphics.drawable.Drawable);
-    public android.view.SubMenu setHeaderIcon(int);
-    public android.view.SubMenu setHeaderTitle(java.lang.CharSequence);
-    public android.view.SubMenu setHeaderTitle(int);
-    public android.view.SubMenu setHeaderView(android.view.View);
-    public android.view.SubMenu setIcon(android.graphics.drawable.Drawable);
-    public android.view.SubMenu setIcon(int);
-    public void setQwertyMode(boolean);
-    public void setShortcutsVisible(boolean);
-
-
-}
-
--keep class com.android.internal.widget.DecorToolbar {
-
-    public abstract void animateToVisibility(int);
-    public abstract boolean canShowOverflowMenu();
-    public abstract boolean canSplit();
-    public abstract void collapseActionView();
-    public abstract void dismissPopupMenus();
-    public abstract android.content.Context getContext();
-    public abstract android.view.View getCustomView();
-    public abstract int getDisplayOptions();
-    public abstract int getDropdownItemCount();
-    public abstract int getDropdownSelectedPosition();
-    public abstract int getHeight();
-    public abstract android.view.Menu getMenu();
-    public abstract int getNavigationMode();
-    public abstract java.lang.CharSequence getSubtitle();
-    public abstract java.lang.CharSequence getTitle();
-    public abstract android.view.ViewGroup getViewGroup();
-    public abstract int getVisibility();
-    public abstract boolean hasEmbeddedTabs();
-    public abstract boolean hasExpandedActionView();
-    public abstract boolean hasIcon();
-    public abstract boolean hasLogo();
-    public abstract boolean hideOverflowMenu();
-    public abstract void initIndeterminateProgress();
-    public abstract void initProgress();
-    public abstract boolean isOverflowMenuShowPending();
-    public abstract boolean isOverflowMenuShowing();
-    public abstract boolean isSplit();
-    public abstract boolean isTitleTruncated();
-    public abstract void restoreHierarchyState(android.util.SparseArray);
-    public abstract void saveHierarchyState(android.util.SparseArray);
-    public abstract void setBackgroundDrawable(android.graphics.drawable.Drawable);
-    public abstract void setCollapsible(boolean);
-    public abstract void setCustomView(android.view.View);
-    public abstract void setDefaultNavigationContentDescription(int);
-    public abstract void setDefaultNavigationIcon(android.graphics.drawable.Drawable);
-    public abstract void setDisplayOptions(int);
-    public abstract void setDropdownParams(android.widget.SpinnerAdapter, android.widget.AdapterView$OnItemSelectedListener);
-    public abstract void setDropdownSelectedPosition(int);
-    public abstract void setEmbeddedTabView(com.android.internal.widget.ScrollingTabContainerView);
-    public abstract void setHomeButtonEnabled(boolean);
-    public abstract void setIcon(int);
-    public abstract void setIcon(android.graphics.drawable.Drawable);
-    public abstract void setLogo(int);
-    public abstract void setLogo(android.graphics.drawable.Drawable);
-    public abstract void setMenu(android.view.Menu, com.android.internal.view.menu.MenuPresenter$Callback);
-    public abstract void setMenuCallbacks(com.android.internal.view.menu.MenuPresenter$Callback, com.android.internal.view.menu.MenuBuilder$Callback);
-    public abstract void setMenuPrepared();
-    public abstract void setNavigationContentDescription(java.lang.CharSequence);
-    public abstract void setNavigationContentDescription(int);
-    public abstract void setNavigationIcon(android.graphics.drawable.Drawable);
-    public abstract void setNavigationIcon(int);
-    public abstract void setNavigationMode(int);
-    public abstract void setSplitToolbar(boolean);
-    public abstract void setSplitView(android.view.ViewGroup);
-    public abstract void setSplitWhenNarrow(boolean);
-    public abstract void setSubtitle(java.lang.CharSequence);
-    public abstract void setTitle(java.lang.CharSequence);
-    public abstract void setVisibility(int);
-    public abstract void setWindowCallback(android.view.Window$Callback);
-    public abstract void setWindowTitle(java.lang.CharSequence);
-    public abstract android.animation.Animator setupAnimatorToVisibility(int, long);
-    public abstract boolean showOverflowMenu();
-
-
-}
-
--keep class com.android.internal.widget.ScrollingTabContainerView {
-    <init>(android.content.Context);
-
-    public void addTab(android.app.ActionBar$Tab, boolean);
-    public void addTab(android.app.ActionBar$Tab, int, boolean);
-    public void animateToTab(int);
-    public void animateToVisibility(int);
-    public void onAttachedToWindow();
-    protected void onConfigurationChanged(android.content.res.Configuration);
-    public void onDetachedFromWindow();
-    public void onItemClick(android.widget.AdapterView, android.view.View, int, long);
-    public void onMeasure(int, int);
-    public void removeAllTabs();
-    public void removeTabAt(int);
-    public void setAllowCollapse(boolean);
-    public void setContentHeight(int);
-    public void setTabSelected(int);
-    public void updateTab(int);
-
-
-    protected com.android.internal.widget.ScrollingTabContainerView$VisibilityAnimListener mVisAnimListener;
-    protected android.animation.Animator mVisibilityAnim;
-}
-
--keep class com.android.internal.widget.ScrollingTabContainerView$VisibilityAnimListener {
-    <init>();
-
-    public void onAnimationCancel(android.animation.Animator);
-    public void onAnimationEnd(android.animation.Animator);
-    public void onAnimationRepeat(android.animation.Animator);
-    public void onAnimationStart(android.animation.Animator);
-    public com.android.internal.widget.ScrollingTabContainerView$VisibilityAnimListener withFinalVisibility(int);
-
-
-}
-
--keep class java.io.BufferedWriter {
-    <init>(java.io.Writer);
-    <init>(java.io.Writer, int);
-
-    public void close();
-    public void flush();
-    public void newLine();
-    public void write(int);
-    public void write(char[], int, int);
-    public void write(java.lang.String, int, int);
-
-
-}
-
--keep class java.io.ByteArrayOutputStream {
-    <init>();
-    <init>(int);
-
-    public void close();
-    public synchronized void reset();
-    public synchronized int size();
-    public synchronized byte[] toByteArray();
-    public synchronized java.lang.String toString();
-    public synchronized java.lang.String toString(java.lang.String);
-    public synchronized java.lang.String toString(int);
-    public synchronized void write(int);
-    public synchronized void write(byte[], int, int);
-    public synchronized void writeTo(java.io.OutputStream);
-
-
-    protected byte[] buf;
-    protected int count;
-}
-
--keep class java.io.DataOutputStream {
-    <init>(java.io.OutputStream);
-
-    public void flush();
-    public int size();
-    public synchronized void write(int);
-    public synchronized void write(byte[], int, int);
-    public void writeBoolean(boolean);
-    public void writeByte(int);
-    public void writeBytes(java.lang.String);
-    public void writeChar(int);
-    public void writeChars(java.lang.String);
-    public void writeDouble(double);
-    public void writeFloat(float);
-    public void writeInt(int);
-    public void writeLong(long);
-    public void writeShort(int);
-    public void writeUTF(java.lang.String);
-
-
-    protected int written;
-}
-
--keep class java.io.File {
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.String);
-    <init>(java.io.File, java.lang.String);
-    <init>(java.net.URI);
-
-    public boolean canExecute();
-    public boolean canRead();
-    public boolean canWrite();
-    public int compareTo(java.io.File);
-    public int compareTo(java.lang.Object);
-    public boolean createNewFile();
-    public static java.io.File createTempFile(java.lang.String, java.lang.String, java.io.File);
-    public static java.io.File createTempFile(java.lang.String, java.lang.String);
-    public boolean delete();
-    public void deleteOnExit();
-    public boolean equals(java.lang.Object);
-    public boolean exists();
-    public java.io.File getAbsoluteFile();
-    public java.lang.String getAbsolutePath();
-    public java.io.File getCanonicalFile();
-    public java.lang.String getCanonicalPath();
-    public long getFreeSpace();
-    public java.lang.String getName();
-    public java.lang.String getParent();
-    public java.io.File getParentFile();
-    public java.lang.String getPath();
-    public long getTotalSpace();
-    public long getUsableSpace();
-    public int hashCode();
-    public boolean isAbsolute();
-    public boolean isDirectory();
-    public boolean isFile();
-    public boolean isHidden();
-    public long lastModified();
-    public long length();
-    public java.lang.String[] list();
-    public java.lang.String[] list(java.io.FilenameFilter);
-    public java.io.File[] listFiles();
-    public java.io.File[] listFiles(java.io.FilenameFilter);
-    public java.io.File[] listFiles(java.io.FileFilter);
-    public static java.io.File[] listRoots();
-    public boolean mkdir();
-    public boolean mkdirs();
-    public boolean renameTo(java.io.File);
-    public boolean setExecutable(boolean, boolean);
-    public boolean setExecutable(boolean);
-    public boolean setLastModified(long);
-    public boolean setReadOnly();
-    public boolean setReadable(boolean, boolean);
-    public boolean setReadable(boolean);
-    public boolean setWritable(boolean, boolean);
-    public boolean setWritable(boolean);
-    public java.nio.file.Path toPath();
-    public java.lang.String toString();
-    public java.net.URI toURI();
-    public java.net.URL toURL();
-
-
-    public static java.lang.String pathSeparator;
-    public static char pathSeparatorChar;
-    public static java.lang.String separator;
-    public static char separatorChar;
-}
-
--keep class java.io.FileDescriptor {
-    <init>();
-
-    public int getInt$();
-    public boolean isSocket$();
-    public void setInt$(int);
-    public void sync();
-    public boolean valid();
-
-
-    public static java.io.FileDescriptor err;
-    public static java.io.FileDescriptor in;
-    public static java.io.FileDescriptor out;
-}
-
--keep class java.io.FileFilter {
-
-    public abstract boolean accept(java.io.File);
-
-
-}
-
--keep class java.io.FileInputStream {
-    <init>(java.lang.String);
-    <init>(java.io.File);
-    <init>(java.io.FileDescriptor);
-    <init>(java.io.FileDescriptor, boolean);
-
-    public int available();
-    public void close();
-    protected void finalize();
-    public java.nio.channels.FileChannel getChannel();
-    public java.io.FileDescriptor getFD();
-    public int read();
-    public int read(byte[]);
-    public int read(byte[], int, int);
-    public long skip(long);
-
-
-}
-
--keep class java.io.FileNotFoundException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.io.FileOutputStream {
-    <init>(java.lang.String);
-    <init>(java.lang.String, boolean);
-    <init>(java.io.File);
-    <init>(java.io.File, boolean);
-    <init>(java.io.FileDescriptor);
-    <init>(java.io.FileDescriptor, boolean);
-
-    public void close();
-    protected void finalize();
-    public java.nio.channels.FileChannel getChannel();
-    public java.io.FileDescriptor getFD();
-    public void write(int);
-    public void write(byte[]);
-    public void write(byte[], int, int);
-
-
-}
-
--keep class java.io.FilenameFilter {
-
-    public abstract boolean accept(java.io.File, java.lang.String);
-
-
-}
-
--keep class java.io.FilterOutputStream {
-    <init>(java.io.OutputStream);
-
-    public void close();
-    public void flush();
-    public void write(int);
-    public void write(byte[]);
-    public void write(byte[], int, int);
-
-
-    protected java.io.OutputStream out;
-}
-
--keep class java.io.IOException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.io.InputStream {
-    <init>();
-
-    public int available();
-    public void close();
-    public synchronized void mark(int);
-    public boolean markSupported();
-    public abstract int read();
-    public int read(byte[]);
-    public int read(byte[], int, int);
-    public synchronized void reset();
-    public long skip(long);
-
-
-}
-
--keep class java.io.InvalidObjectException {
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.io.ObjectStreamException {
-    <init>(java.lang.String);
-    <init>();
-
-
-
-}
-
--keep class java.io.OutputStream {
-    <init>();
-
-    public void close();
-    public void flush();
-    public abstract void write(int);
-    public void write(byte[]);
-    public void write(byte[], int, int);
-
-
-}
-
--keep class java.io.PrintStream {
-    <init>(java.io.OutputStream);
-    <init>(java.io.OutputStream, boolean);
-    <init>(java.io.OutputStream, boolean, java.lang.String);
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.String);
-    <init>(java.io.File);
-    <init>(java.io.File, java.lang.String);
-
-    public java.io.PrintStream append(java.lang.CharSequence);
-    public java.io.PrintStream append(java.lang.CharSequence, int, int);
-    public java.io.PrintStream append(char);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public boolean checkError();
-    protected void clearError();
-    public void close();
-    public void flush();
-    public java.io.PrintStream format(java.lang.String, java.lang.Object[]);
-    public java.io.PrintStream format(java.util.Locale, java.lang.String, java.lang.Object[]);
-    public void print(boolean);
-    public void print(char);
-    public void print(int);
-    public void print(long);
-    public void print(float);
-    public void print(double);
-    public void print(char[]);
-    public void print(java.lang.String);
-    public void print(java.lang.Object);
-    public java.io.PrintStream printf(java.lang.String, java.lang.Object[]);
-    public java.io.PrintStream printf(java.util.Locale, java.lang.String, java.lang.Object[]);
-    public void println();
-    public void println(boolean);
-    public void println(char);
-    public void println(int);
-    public void println(long);
-    public void println(float);
-    public void println(double);
-    public void println(char[]);
-    public void println(java.lang.String);
-    public void println(java.lang.Object);
-    protected void setError();
-    public void write(int);
-    public void write(byte[], int, int);
-
-
-}
-
--keep class java.io.PrintWriter {
-    <init>(java.io.Writer);
-    <init>(java.io.Writer, boolean);
-    <init>(java.io.OutputStream);
-    <init>(java.io.OutputStream, boolean);
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.String);
-    <init>(java.io.File);
-    <init>(java.io.File, java.lang.String);
-
-    public java.io.PrintWriter append(java.lang.CharSequence);
-    public java.io.PrintWriter append(java.lang.CharSequence, int, int);
-    public java.io.PrintWriter append(char);
-    public java.io.Writer append(char);
-    public java.io.Writer append(java.lang.CharSequence, int, int);
-    public java.io.Writer append(java.lang.CharSequence);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public boolean checkError();
-    protected void clearError();
-    public void close();
-    public void flush();
-    public java.io.PrintWriter format(java.lang.String, java.lang.Object[]);
-    public java.io.PrintWriter format(java.util.Locale, java.lang.String, java.lang.Object[]);
-    public void print(boolean);
-    public void print(char);
-    public void print(int);
-    public void print(long);
-    public void print(float);
-    public void print(double);
-    public void print(char[]);
-    public void print(java.lang.String);
-    public void print(java.lang.Object);
-    public java.io.PrintWriter printf(java.lang.String, java.lang.Object[]);
-    public java.io.PrintWriter printf(java.util.Locale, java.lang.String, java.lang.Object[]);
-    public void println();
-    public void println(boolean);
-    public void println(char);
-    public void println(int);
-    public void println(long);
-    public void println(float);
-    public void println(double);
-    public void println(char[]);
-    public void println(java.lang.String);
-    public void println(java.lang.Object);
-    protected void setError();
-    public void write(int);
-    public void write(char[], int, int);
-    public void write(char[]);
-    public void write(java.lang.String, int, int);
-    public void write(java.lang.String);
-
-
-    protected java.io.Writer out;
-}
-
--keep class java.io.Reader {
-    <init>();
-    <init>(java.lang.Object);
-
-    public abstract void close();
-    public void mark(int);
-    public boolean markSupported();
-    public int read(java.nio.CharBuffer);
-    public int read();
-    public int read(char[]);
-    public abstract int read(char[], int, int);
-    public boolean ready();
-    public void reset();
-    public long skip(long);
-
-
-    protected java.lang.Object lock;
-}
-
--keep class java.io.Serializable {
-
-
-
-}
-
--keep class java.io.SyncFailedException {
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.io.UnsupportedEncodingException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.io.Writer {
-    <init>();
-    <init>(java.lang.Object);
-
-    public java.io.Writer append(java.lang.CharSequence);
-    public java.io.Writer append(java.lang.CharSequence, int, int);
-    public java.io.Writer append(char);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public abstract void close();
-    public abstract void flush();
-    public void write(int);
-    public void write(char[]);
-    public abstract void write(char[], int, int);
-    public void write(java.lang.String);
-    public void write(java.lang.String, int, int);
-
-
-    protected java.lang.Object lock;
-}
-
--keep class java.lang.AbstractStringBuilder {
-
-    public java.lang.AbstractStringBuilder append(java.lang.Object);
-    public java.lang.AbstractStringBuilder append(java.lang.String);
-    public java.lang.AbstractStringBuilder append(java.lang.StringBuffer);
-    public java.lang.AbstractStringBuilder append(java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder append(java.lang.CharSequence, int, int);
-    public java.lang.AbstractStringBuilder append(char[]);
-    public java.lang.AbstractStringBuilder append(char[], int, int);
-    public java.lang.AbstractStringBuilder append(boolean);
-    public java.lang.AbstractStringBuilder append(char);
-    public java.lang.AbstractStringBuilder append(int);
-    public java.lang.AbstractStringBuilder append(long);
-    public java.lang.AbstractStringBuilder append(float);
-    public java.lang.AbstractStringBuilder append(double);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder appendCodePoint(int);
-    public int capacity();
-    public char charAt(int);
-    public int codePointAt(int);
-    public int codePointBefore(int);
-    public int codePointCount(int, int);
-    public java.lang.AbstractStringBuilder delete(int, int);
-    public java.lang.AbstractStringBuilder deleteCharAt(int);
-    public void ensureCapacity(int);
-    public void getChars(int, int, char[], int);
-    public int indexOf(java.lang.String);
-    public int indexOf(java.lang.String, int);
-    public java.lang.AbstractStringBuilder insert(int, char[], int, int);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.Object);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.String);
-    public java.lang.AbstractStringBuilder insert(int, char[]);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence, int, int);
-    public java.lang.AbstractStringBuilder insert(int, boolean);
-    public java.lang.AbstractStringBuilder insert(int, char);
-    public java.lang.AbstractStringBuilder insert(int, int);
-    public java.lang.AbstractStringBuilder insert(int, long);
-    public java.lang.AbstractStringBuilder insert(int, float);
-    public java.lang.AbstractStringBuilder insert(int, double);
-    public int lastIndexOf(java.lang.String);
-    public int lastIndexOf(java.lang.String, int);
-    public int length();
-    public int offsetByCodePoints(int, int);
-    public java.lang.AbstractStringBuilder replace(int, int, java.lang.String);
-    public java.lang.AbstractStringBuilder reverse();
-    public void setCharAt(int, char);
-    public void setLength(int);
-    public java.lang.CharSequence subSequence(int, int);
-    public java.lang.String substring(int);
-    public java.lang.String substring(int, int);
-    public abstract java.lang.String toString();
-    public void trimToSize();
-
-
-}
-
--keep class java.lang.Appendable {
-
-    public abstract java.lang.Appendable append(java.lang.CharSequence);
-    public abstract java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public abstract java.lang.Appendable append(char);
-
-
-}
-
--keep class java.lang.Boolean {
-    <init>(boolean);
-    <init>(java.lang.String);
-
-    public boolean booleanValue();
-    public static int compare(boolean, boolean);
-    public int compareTo(java.lang.Boolean);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public static boolean getBoolean(java.lang.String);
-    public int hashCode();
-    public static int hashCode(boolean);
-    public static boolean logicalAnd(boolean, boolean);
-    public static boolean logicalOr(boolean, boolean);
-    public static boolean logicalXor(boolean, boolean);
-    public static boolean parseBoolean(java.lang.String);
-    public static java.lang.String toString(boolean);
-    public java.lang.String toString();
-    public static java.lang.Boolean valueOf(boolean);
-    public static java.lang.Boolean valueOf(java.lang.String);
-
-
-    public static java.lang.Boolean FALSE;
-    public static java.lang.Boolean TRUE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.Byte {
-    <init>(byte);
-    <init>(java.lang.String);
-
-    public byte byteValue();
-    public static int compare(byte, byte);
-    public int compareTo(java.lang.Byte);
-    public int compareTo(java.lang.Object);
-    public static java.lang.Byte decode(java.lang.String);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public float floatValue();
-    public int hashCode();
-    public static int hashCode(byte);
-    public int intValue();
-    public long longValue();
-    public static byte parseByte(java.lang.String, int);
-    public static byte parseByte(java.lang.String);
-    public short shortValue();
-    public static java.lang.String toHexString(byte, boolean);
-    public static java.lang.String toString(byte);
-    public java.lang.String toString();
-    public static int toUnsignedInt(byte);
-    public static long toUnsignedLong(byte);
-    public static java.lang.Byte valueOf(byte);
-    public static java.lang.Byte valueOf(java.lang.String, int);
-    public static java.lang.Byte valueOf(java.lang.String);
-
-
-    public static int BYTES;
-    public static byte MAX_VALUE;
-    public static byte MIN_VALUE;
-    public static int SIZE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.CharSequence {
-
-    public abstract char charAt(int);
-    public java.util.stream.IntStream chars();
-    public java.util.stream.IntStream codePoints();
-    public abstract int length();
-    public abstract java.lang.CharSequence subSequence(int, int);
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.lang.Character {
-    <init>(char);
-
-    public static int charCount(int);
-    public char charValue();
-    public static int codePointAt(java.lang.CharSequence, int);
-    public static int codePointAt(char[], int);
-    public static int codePointAt(char[], int, int);
-    public static int codePointBefore(java.lang.CharSequence, int);
-    public static int codePointBefore(char[], int);
-    public static int codePointBefore(char[], int, int);
-    public static int codePointCount(java.lang.CharSequence, int, int);
-    public static int codePointCount(char[], int, int);
-    public static int compare(char, char);
-    public int compareTo(java.lang.Character);
-    public int compareTo(java.lang.Object);
-    public static int digit(char, int);
-    public static int digit(int, int);
-    public boolean equals(java.lang.Object);
-    public static char forDigit(int, int);
-    public static byte getDirectionality(char);
-    public static byte getDirectionality(int);
-    public static java.lang.String getName(int);
-    public static int getNumericValue(char);
-    public static int getNumericValue(int);
-    public static int getType(char);
-    public static int getType(int);
-    public int hashCode();
-    public static int hashCode(char);
-    public static char highSurrogate(int);
-    public static boolean isAlphabetic(int);
-    public static boolean isBmpCodePoint(int);
-    public static boolean isDefined(char);
-    public static boolean isDefined(int);
-    public static boolean isDigit(char);
-    public static boolean isDigit(int);
-    public static boolean isHighSurrogate(char);
-    public static boolean isISOControl(char);
-    public static boolean isISOControl(int);
-    public static boolean isIdentifierIgnorable(char);
-    public static boolean isIdentifierIgnorable(int);
-    public static boolean isIdeographic(int);
-    public static boolean isJavaIdentifierPart(char);
-    public static boolean isJavaIdentifierPart(int);
-    public static boolean isJavaIdentifierStart(char);
-    public static boolean isJavaIdentifierStart(int);
-    public static boolean isJavaLetter(char);
-    public static boolean isJavaLetterOrDigit(char);
-    public static boolean isLetter(char);
-    public static boolean isLetter(int);
-    public static boolean isLetterOrDigit(char);
-    public static boolean isLetterOrDigit(int);
-    public static boolean isLowSurrogate(char);
-    public static boolean isLowerCase(char);
-    public static boolean isLowerCase(int);
-    public static boolean isMirrored(char);
-    public static boolean isMirrored(int);
-    public static boolean isSpace(char);
-    public static boolean isSpaceChar(char);
-    public static boolean isSpaceChar(int);
-    public static boolean isSupplementaryCodePoint(int);
-    public static boolean isSurrogate(char);
-    public static boolean isSurrogatePair(char, char);
-    public static boolean isTitleCase(char);
-    public static boolean isTitleCase(int);
-    public static boolean isUnicodeIdentifierPart(char);
-    public static boolean isUnicodeIdentifierPart(int);
-    public static boolean isUnicodeIdentifierStart(char);
-    public static boolean isUnicodeIdentifierStart(int);
-    public static boolean isUpperCase(char);
-    public static boolean isUpperCase(int);
-    public static boolean isValidCodePoint(int);
-    public static boolean isWhitespace(char);
-    public static boolean isWhitespace(int);
-    public static char lowSurrogate(int);
-    public static int offsetByCodePoints(java.lang.CharSequence, int, int);
-    public static int offsetByCodePoints(char[], int, int, int, int);
-    public static char reverseBytes(char);
-    public static int toChars(int, char[], int);
-    public static char[] toChars(int);
-    public static int toCodePoint(char, char);
-    public static char toLowerCase(char);
-    public static int toLowerCase(int);
-    public java.lang.String toString();
-    public static java.lang.String toString(char);
-    public static char toTitleCase(char);
-    public static int toTitleCase(int);
-    public static char toUpperCase(char);
-    public static int toUpperCase(int);
-    public static java.lang.Character valueOf(char);
-
-
-    public static int BYTES;
-    public static byte COMBINING_SPACING_MARK;
-    public static byte CONNECTOR_PUNCTUATION;
-    public static byte CONTROL;
-    public static byte CURRENCY_SYMBOL;
-    public static byte DASH_PUNCTUATION;
-    public static byte DECIMAL_DIGIT_NUMBER;
-    public static byte DIRECTIONALITY_ARABIC_NUMBER;
-    public static byte DIRECTIONALITY_BOUNDARY_NEUTRAL;
-    public static byte DIRECTIONALITY_COMMON_NUMBER_SEPARATOR;
-    public static byte DIRECTIONALITY_EUROPEAN_NUMBER;
-    public static byte DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR;
-    public static byte DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR;
-    public static byte DIRECTIONALITY_LEFT_TO_RIGHT;
-    public static byte DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING;
-    public static byte DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE;
-    public static byte DIRECTIONALITY_NONSPACING_MARK;
-    public static byte DIRECTIONALITY_OTHER_NEUTRALS;
-    public static byte DIRECTIONALITY_PARAGRAPH_SEPARATOR;
-    public static byte DIRECTIONALITY_POP_DIRECTIONAL_FORMAT;
-    public static byte DIRECTIONALITY_RIGHT_TO_LEFT;
-    public static byte DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC;
-    public static byte DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING;
-    public static byte DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE;
-    public static byte DIRECTIONALITY_SEGMENT_SEPARATOR;
-    public static byte DIRECTIONALITY_UNDEFINED;
-    public static byte DIRECTIONALITY_WHITESPACE;
-    public static byte ENCLOSING_MARK;
-    public static byte END_PUNCTUATION;
-    public static byte FINAL_QUOTE_PUNCTUATION;
-    public static byte FORMAT;
-    public static byte INITIAL_QUOTE_PUNCTUATION;
-    public static byte LETTER_NUMBER;
-    public static byte LINE_SEPARATOR;
-    public static byte LOWERCASE_LETTER;
-    public static byte MATH_SYMBOL;
-    public static int MAX_CODE_POINT;
-    public static char MAX_HIGH_SURROGATE;
-    public static char MAX_LOW_SURROGATE;
-    public static int MAX_RADIX;
-    public static char MAX_SURROGATE;
-    public static char MAX_VALUE;
-    public static int MIN_CODE_POINT;
-    public static char MIN_HIGH_SURROGATE;
-    public static char MIN_LOW_SURROGATE;
-    public static int MIN_RADIX;
-    public static int MIN_SUPPLEMENTARY_CODE_POINT;
-    public static char MIN_SURROGATE;
-    public static char MIN_VALUE;
-    public static byte MODIFIER_LETTER;
-    public static byte MODIFIER_SYMBOL;
-    public static byte NON_SPACING_MARK;
-    public static byte OTHER_LETTER;
-    public static byte OTHER_NUMBER;
-    public static byte OTHER_PUNCTUATION;
-    public static byte OTHER_SYMBOL;
-    public static byte PARAGRAPH_SEPARATOR;
-    public static byte PRIVATE_USE;
-    public static int SIZE;
-    public static byte SPACE_SEPARATOR;
-    public static byte START_PUNCTUATION;
-    public static byte SURROGATE;
-    public static byte TITLECASE_LETTER;
-    public static java.lang.Class TYPE;
-    public static byte UNASSIGNED;
-    public static byte UPPERCASE_LETTER;
-}
-
--keep class java.lang.Class {
-
-    public java.lang.Class asSubclass(java.lang.Class);
-    public java.lang.Object cast(java.lang.Object);
-    public boolean desiredAssertionStatus();
-    public static java.lang.Class forName(java.lang.String);
-    public static java.lang.Class forName(java.lang.String, boolean, java.lang.ClassLoader);
-    public int getAccessFlags();
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getAnnotations();
-    public java.lang.annotation.Annotation[] getAnnotationsByType(java.lang.Class);
-    public java.lang.String getCanonicalName();
-    public java.lang.ClassLoader getClassLoader();
-    public java.lang.Class[] getClasses();
-    public java.lang.Class getComponentType();
-    public java.lang.reflect.Constructor getConstructor(java.lang.Class[]);
-    public java.lang.reflect.Constructor[] getConstructors();
-    public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.Class[] getDeclaredClasses();
-    public java.lang.reflect.Constructor getDeclaredConstructor(java.lang.Class[]);
-    public java.lang.reflect.Constructor[] getDeclaredConstructors();
-    public java.lang.reflect.Field getDeclaredField(java.lang.String);
-    public java.lang.reflect.Field[] getDeclaredFields();
-    public java.lang.reflect.Field[] getDeclaredFieldsUnchecked(boolean);
-    public java.lang.reflect.Method getDeclaredMethod(java.lang.String, java.lang.Class[]);
-    public java.lang.reflect.Method[] getDeclaredMethods();
-    public java.lang.reflect.Method[] getDeclaredMethodsUnchecked(boolean);
-    public java.lang.Class getDeclaringClass();
-    public java.lang.Class getEnclosingClass();
-    public java.lang.reflect.Constructor getEnclosingConstructor();
-    public java.lang.reflect.Method getEnclosingMethod();
-    public java.lang.Object[] getEnumConstants();
-    public java.lang.Object[] getEnumConstantsShared();
-    public java.lang.reflect.Field getField(java.lang.String);
-    public java.lang.reflect.Field[] getFields();
-    public java.lang.reflect.Type[] getGenericInterfaces();
-    public java.lang.reflect.Type getGenericSuperclass();
-    public java.lang.reflect.Method getInstanceMethod(java.lang.String, java.lang.Class[]);
-    public java.lang.Class[] getInterfaces();
-    public java.lang.reflect.Method getMethod(java.lang.String, java.lang.Class[]);
-    public java.lang.reflect.Method[] getMethods();
-    public int getModifiers();
-    public java.lang.String getName();
-    public java.lang.Package getPackage();
-    public java.lang.String getPackageName$();
-    public java.security.ProtectionDomain getProtectionDomain();
-    public java.net.URL getResource(java.lang.String);
-    public java.io.InputStream getResourceAsStream(java.lang.String);
-    public java.lang.Object[] getSigners();
-    public java.lang.String getSimpleName();
-    public java.lang.Class getSuperclass();
-    public java.lang.String getTypeName();
-    public synchronized java.lang.reflect.TypeVariable[] getTypeParameters();
-    public boolean isAnnotation();
-    public boolean isAnnotationPresent(java.lang.Class);
-    public boolean isAnonymousClass();
-    public boolean isArray();
-    public boolean isAssignableFrom(java.lang.Class);
-    public boolean isEnum();
-    public boolean isFinalizable();
-    public boolean isInstance(java.lang.Object);
-    public boolean isInterface();
-    public boolean isLocalClass();
-    public boolean isMemberClass();
-    public boolean isPrimitive();
-    public boolean isProxy();
-    public boolean isSynthetic();
-    public java.lang.Object newInstance();
-    public java.lang.String toGenericString();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.ClassFormatError {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.ClassLoader {
-    <init>(java.lang.ClassLoader);
-    <init>();
-
-    public void clearAssertionStatus();
-    protected java.lang.Class defineClass(byte[], int, int);
-    protected java.lang.Class defineClass(java.lang.String, byte[], int, int);
-    protected java.lang.Class defineClass(java.lang.String, byte[], int, int, java.security.ProtectionDomain);
-    protected java.lang.Class defineClass(java.lang.String, java.nio.ByteBuffer, java.security.ProtectionDomain);
-    protected java.lang.Package definePackage(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.net.URL);
-    protected java.lang.Class findClass(java.lang.String);
-    protected java.lang.String findLibrary(java.lang.String);
-    protected java.lang.Class findLoadedClass(java.lang.String);
-    protected java.net.URL findResource(java.lang.String);
-    protected java.util.Enumeration findResources(java.lang.String);
-    protected java.lang.Class findSystemClass(java.lang.String);
-    protected java.lang.Package getPackage(java.lang.String);
-    protected java.lang.Package[] getPackages();
-    public java.lang.ClassLoader getParent();
-    public java.net.URL getResource(java.lang.String);
-    public java.io.InputStream getResourceAsStream(java.lang.String);
-    public java.util.Enumeration getResources(java.lang.String);
-    public static java.lang.ClassLoader getSystemClassLoader();
-    public static java.net.URL getSystemResource(java.lang.String);
-    public static java.io.InputStream getSystemResourceAsStream(java.lang.String);
-    public static java.util.Enumeration getSystemResources(java.lang.String);
-    public java.lang.Class loadClass(java.lang.String);
-    protected java.lang.Class loadClass(java.lang.String, boolean);
-    protected static boolean registerAsParallelCapable();
-    protected void resolveClass(java.lang.Class);
-    public void setClassAssertionStatus(java.lang.String, boolean);
-    public void setDefaultAssertionStatus(boolean);
-    public void setPackageAssertionStatus(java.lang.String, boolean);
-    protected void setSigners(java.lang.Class, java.lang.Object[]);
-
-
-    public java.util.Map proxyCache;
-}
-
--keep class java.lang.ClassNotFoundException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-
-    public java.lang.Throwable getCause();
-    public java.lang.Throwable getException();
-
-
-}
-
--keep class java.lang.CloneNotSupportedException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.Comparable {
-
-    public abstract int compareTo(java.lang.Object);
-
-
-}
-
--keep class java.lang.Double {
-    <init>(double);
-    <init>(java.lang.String);
-
-    public byte byteValue();
-    public static int compare(double, double);
-    public int compareTo(java.lang.Double);
-    public int compareTo(java.lang.Object);
-    public static long doubleToLongBits(double);
-    public static long doubleToRawLongBits(double);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public float floatValue();
-    public int hashCode();
-    public static int hashCode(double);
-    public int intValue();
-    public static boolean isFinite(double);
-    public static boolean isInfinite(double);
-    public boolean isInfinite();
-    public static boolean isNaN(double);
-    public boolean isNaN();
-    public static double longBitsToDouble(long);
-    public long longValue();
-    public static double max(double, double);
-    public static double min(double, double);
-    public static double parseDouble(java.lang.String);
-    public short shortValue();
-    public static double sum(double, double);
-    public static java.lang.String toHexString(double);
-    public static java.lang.String toString(double);
-    public java.lang.String toString();
-    public static java.lang.Double valueOf(java.lang.String);
-    public static java.lang.Double valueOf(double);
-
-
-    public static int BYTES;
-    public static int MAX_EXPONENT;
-    public static double MAX_VALUE;
-    public static int MIN_EXPONENT;
-    public static double MIN_NORMAL;
-    public static double MIN_VALUE;
-    public static double NEGATIVE_INFINITY;
-    public static double NaN;
-    public static double POSITIVE_INFINITY;
-    public static int SIZE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.Enum {
-    <init>(java.lang.String, int);
-
-    protected java.lang.Object clone();
-    public int compareTo(java.lang.Enum);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    protected void finalize();
-    public java.lang.Class getDeclaringClass();
-    public static java.lang.Enum[] getSharedConstants(java.lang.Class);
-    public int hashCode();
-    public java.lang.String name();
-    public int ordinal();
-    public java.lang.String toString();
-    public static java.lang.Enum valueOf(java.lang.Class, java.lang.String);
-
-
-}
-
--keep class java.lang.Error {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-    <init>(java.lang.String, java.lang.Throwable, boolean, boolean);
-
-
-
-}
-
--keep class java.lang.Exception {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-    <init>(java.lang.String, java.lang.Throwable, boolean, boolean);
-
-
-
-}
-
--keep class java.lang.Float {
-    <init>(float);
-    <init>(double);
-    <init>(java.lang.String);
-
-    public byte byteValue();
-    public static int compare(float, float);
-    public int compareTo(java.lang.Float);
-    public int compareTo(java.lang.Object);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public static int floatToIntBits(float);
-    public static int floatToRawIntBits(float);
-    public float floatValue();
-    public int hashCode();
-    public static int hashCode(float);
-    public static float intBitsToFloat(int);
-    public int intValue();
-    public static boolean isFinite(float);
-    public static boolean isInfinite(float);
-    public boolean isInfinite();
-    public static boolean isNaN(float);
-    public boolean isNaN();
-    public long longValue();
-    public static float max(float, float);
-    public static float min(float, float);
-    public static float parseFloat(java.lang.String);
-    public short shortValue();
-    public static float sum(float, float);
-    public static java.lang.String toHexString(float);
-    public static java.lang.String toString(float);
-    public java.lang.String toString();
-    public static java.lang.Float valueOf(java.lang.String);
-    public static java.lang.Float valueOf(float);
-
-
-    public static int BYTES;
-    public static int MAX_EXPONENT;
-    public static float MAX_VALUE;
-    public static int MIN_EXPONENT;
-    public static float MIN_NORMAL;
-    public static float MIN_VALUE;
-    public static float NEGATIVE_INFINITY;
-    public static float NaN;
-    public static float POSITIVE_INFINITY;
-    public static int SIZE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.IllegalAccessException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.IllegalArgumentException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.lang.IllegalStateException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.lang.InstantiationException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.Integer {
-    <init>(int);
-    <init>(java.lang.String);
-
-    public static int bitCount(int);
-    public byte byteValue();
-    public static int compare(int, int);
-    public int compareTo(java.lang.Integer);
-    public int compareTo(java.lang.Object);
-    public static int compareUnsigned(int, int);
-    public static java.lang.Integer decode(java.lang.String);
-    public static int divideUnsigned(int, int);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public float floatValue();
-    public static java.lang.Integer getInteger(java.lang.String);
-    public static java.lang.Integer getInteger(java.lang.String, int);
-    public static java.lang.Integer getInteger(java.lang.String, java.lang.Integer);
-    public int hashCode();
-    public static int hashCode(int);
-    public static int highestOneBit(int);
-    public int intValue();
-    public long longValue();
-    public static int lowestOneBit(int);
-    public static int max(int, int);
-    public static int min(int, int);
-    public static int numberOfLeadingZeros(int);
-    public static int numberOfTrailingZeros(int);
-    public static int parseInt(java.lang.String, int);
-    public static int parseInt(java.lang.String);
-    public static int parseUnsignedInt(java.lang.String, int);
-    public static int parseUnsignedInt(java.lang.String);
-    public static int remainderUnsigned(int, int);
-    public static int reverse(int);
-    public static int reverseBytes(int);
-    public static int rotateLeft(int, int);
-    public static int rotateRight(int, int);
-    public short shortValue();
-    public static int signum(int);
-    public static int sum(int, int);
-    public static java.lang.String toBinaryString(int);
-    public static java.lang.String toHexString(int);
-    public static java.lang.String toOctalString(int);
-    public static java.lang.String toString(int, int);
-    public static java.lang.String toString(int);
-    public java.lang.String toString();
-    public static long toUnsignedLong(int);
-    public static java.lang.String toUnsignedString(int, int);
-    public static java.lang.String toUnsignedString(int);
-    public static java.lang.Integer valueOf(java.lang.String, int);
-    public static java.lang.Integer valueOf(java.lang.String);
-    public static java.lang.Integer valueOf(int);
-
-
-    public static int BYTES;
-    public static int MAX_VALUE;
-    public static int MIN_VALUE;
-    public static int SIZE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.InterruptedException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.Iterable {
-
-    public void forEach(java.util.function.Consumer);
-    public abstract java.util.Iterator iterator();
-    public java.util.Spliterator spliterator();
-
-
-}
-
--keep class java.lang.LinkageError {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-
-
-
-}
-
--keep class java.lang.Long {
-    <init>(long);
-    <init>(java.lang.String);
-
-    public static int bitCount(long);
-    public byte byteValue();
-    public static int compare(long, long);
-    public int compareTo(java.lang.Long);
-    public int compareTo(java.lang.Object);
-    public static int compareUnsigned(long, long);
-    public static java.lang.Long decode(java.lang.String);
-    public static long divideUnsigned(long, long);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public float floatValue();
-    public static java.lang.Long getLong(java.lang.String);
-    public static java.lang.Long getLong(java.lang.String, long);
-    public static java.lang.Long getLong(java.lang.String, java.lang.Long);
-    public int hashCode();
-    public static int hashCode(long);
-    public static long highestOneBit(long);
-    public int intValue();
-    public long longValue();
-    public static long lowestOneBit(long);
-    public static long max(long, long);
-    public static long min(long, long);
-    public static int numberOfLeadingZeros(long);
-    public static int numberOfTrailingZeros(long);
-    public static long parseLong(java.lang.String, int);
-    public static long parseLong(java.lang.String);
-    public static long parseUnsignedLong(java.lang.String, int);
-    public static long parseUnsignedLong(java.lang.String);
-    public static long remainderUnsigned(long, long);
-    public static long reverse(long);
-    public static long reverseBytes(long);
-    public static long rotateLeft(long, int);
-    public static long rotateRight(long, int);
-    public short shortValue();
-    public static int signum(long);
-    public static long sum(long, long);
-    public static java.lang.String toBinaryString(long);
-    public static java.lang.String toHexString(long);
-    public static java.lang.String toOctalString(long);
-    public static java.lang.String toString(long, int);
-    public static java.lang.String toString(long);
-    public java.lang.String toString();
-    public static java.lang.String toUnsignedString(long, int);
-    public static java.lang.String toUnsignedString(long);
-    public static java.lang.Long valueOf(java.lang.String, int);
-    public static java.lang.Long valueOf(java.lang.String);
-    public static java.lang.Long valueOf(long);
-
-
-    public static int BYTES;
-    public static long MAX_VALUE;
-    public static long MIN_VALUE;
-    public static int SIZE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.NoSuchFieldException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.NoSuchMethodException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.Number {
-    <init>();
-
-    public byte byteValue();
-    public abstract double doubleValue();
-    public abstract float floatValue();
-    public abstract int intValue();
-    public abstract long longValue();
-    public short shortValue();
-
-
-}
-
--keep class java.lang.NumberFormatException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.lang.Object {
-    <init>();
-
-    protected java.lang.Object clone();
-    public boolean equals(java.lang.Object);
-    protected void finalize();
-    public java.lang.Class getClass();
-    public int hashCode();
-    public void notify();
-    public void notifyAll();
-    public java.lang.String toString();
-    public void wait(long);
-    public void wait(long, int);
-    public void wait();
-
-
-}
-
--keep class java.lang.Package {
-
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getAnnotations();
-    public java.lang.annotation.Annotation[] getAnnotationsByType(java.lang.Class);
-    public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.annotation.Annotation[] getDeclaredAnnotationsByType(java.lang.Class);
-    public java.lang.String getImplementationTitle();
-    public java.lang.String getImplementationVendor();
-    public java.lang.String getImplementationVersion();
-    public java.lang.String getName();
-    public static java.lang.Package getPackage(java.lang.String);
-    public static java.lang.Package[] getPackages();
-    public java.lang.String getSpecificationTitle();
-    public java.lang.String getSpecificationVendor();
-    public java.lang.String getSpecificationVersion();
-    public int hashCode();
-    public boolean isAnnotationPresent(java.lang.Class);
-    public boolean isCompatibleWith(java.lang.String);
-    public boolean isSealed();
-    public boolean isSealed(java.net.URL);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.ReflectiveOperationException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.lang.Runnable {
-
-    public abstract void run();
-
-
-}
-
--keep class java.lang.RuntimeException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-    <init>(java.lang.String, java.lang.Throwable, boolean, boolean);
-
-
-
-}
-
--keep class java.lang.SecurityException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.lang.Short {
-    <init>(short);
-    <init>(java.lang.String);
-
-    public byte byteValue();
-    public static int compare(short, short);
-    public int compareTo(java.lang.Short);
-    public int compareTo(java.lang.Object);
-    public static java.lang.Short decode(java.lang.String);
-    public double doubleValue();
-    public boolean equals(java.lang.Object);
-    public float floatValue();
-    public int hashCode();
-    public static int hashCode(short);
-    public int intValue();
-    public long longValue();
-    public static short parseShort(java.lang.String, int);
-    public static short parseShort(java.lang.String);
-    public static short reverseBytes(short);
-    public short shortValue();
-    public static java.lang.String toString(short);
-    public java.lang.String toString();
-    public static int toUnsignedInt(short);
-    public static long toUnsignedLong(short);
-    public static java.lang.Short valueOf(java.lang.String, int);
-    public static java.lang.Short valueOf(java.lang.String);
-    public static java.lang.Short valueOf(short);
-
-
-    public static int BYTES;
-    public static short MAX_VALUE;
-    public static short MIN_VALUE;
-    public static int SIZE;
-    public static java.lang.Class TYPE;
-}
-
--keep class java.lang.StackTraceElement {
-    <init>(java.lang.String, java.lang.String, java.lang.String, int);
-
-    public boolean equals(java.lang.Object);
-    public java.lang.String getClassName();
-    public java.lang.String getFileName();
-    public int getLineNumber();
-    public java.lang.String getMethodName();
-    public int hashCode();
-    public boolean isNativeMethod();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.String {
-    <init>();
-    <init>(java.lang.String);
-    <init>(char[]);
-    <init>(char[], int, int);
-    <init>(int[], int, int);
-    <init>(byte[], int, int, int);
-    <init>(byte[], int);
-    <init>(byte[], int, int, java.lang.String);
-    <init>(byte[], int, int, java.nio.charset.Charset);
-    <init>(byte[], java.lang.String);
-    <init>(byte[], java.nio.charset.Charset);
-    <init>(byte[], int, int);
-    <init>(byte[]);
-    <init>(java.lang.StringBuffer);
-    <init>(java.lang.StringBuilder);
-
-    public char charAt(int);
-    public int codePointAt(int);
-    public int codePointBefore(int);
-    public int codePointCount(int, int);
-    public int compareTo(java.lang.String);
-    public int compareTo(java.lang.Object);
-    public int compareToIgnoreCase(java.lang.String);
-    public java.lang.String concat(java.lang.String);
-    public boolean contains(java.lang.CharSequence);
-    public boolean contentEquals(java.lang.StringBuffer);
-    public boolean contentEquals(java.lang.CharSequence);
-    public static java.lang.String copyValueOf(char[], int, int);
-    public static java.lang.String copyValueOf(char[]);
-    public boolean endsWith(java.lang.String);
-    public boolean equals(java.lang.Object);
-    public boolean equalsIgnoreCase(java.lang.String);
-    public static java.lang.String format(java.lang.String, java.lang.Object[]);
-    public static java.lang.String format(java.util.Locale, java.lang.String, java.lang.Object[]);
-    public void getBytes(int, int, byte[], int);
-    public byte[] getBytes(java.lang.String);
-    public byte[] getBytes(java.nio.charset.Charset);
-    public byte[] getBytes();
-    public void getChars(int, int, char[], int);
-    public int hashCode();
-    public int indexOf(int);
-    public int indexOf(int, int);
-    public int indexOf(java.lang.String);
-    public int indexOf(java.lang.String, int);
-    public java.lang.String intern();
-    public boolean isEmpty();
-    public static java.lang.String join(java.lang.CharSequence, java.lang.CharSequence[]);
-    public static java.lang.String join(java.lang.CharSequence, java.lang.Iterable);
-    public int lastIndexOf(int);
-    public int lastIndexOf(int, int);
-    public int lastIndexOf(java.lang.String);
-    public int lastIndexOf(java.lang.String, int);
-    public int length();
-    public boolean matches(java.lang.String);
-    public int offsetByCodePoints(int, int);
-    public boolean regionMatches(int, java.lang.String, int, int);
-    public boolean regionMatches(boolean, int, java.lang.String, int, int);
-    public java.lang.String replace(char, char);
-    public java.lang.String replace(java.lang.CharSequence, java.lang.CharSequence);
-    public java.lang.String replaceAll(java.lang.String, java.lang.String);
-    public java.lang.String replaceFirst(java.lang.String, java.lang.String);
-    public java.lang.String[] split(java.lang.String, int);
-    public java.lang.String[] split(java.lang.String);
-    public boolean startsWith(java.lang.String, int);
-    public boolean startsWith(java.lang.String);
-    public java.lang.CharSequence subSequence(int, int);
-    public java.lang.String substring(int);
-    public java.lang.String substring(int, int);
-    public char[] toCharArray();
-    public java.lang.String toLowerCase(java.util.Locale);
-    public java.lang.String toLowerCase();
-    public java.lang.String toString();
-    public java.lang.String toUpperCase(java.util.Locale);
-    public java.lang.String toUpperCase();
-    public java.lang.String trim();
-    public static java.lang.String valueOf(java.lang.Object);
-    public static java.lang.String valueOf(char[]);
-    public static java.lang.String valueOf(char[], int, int);
-    public static java.lang.String valueOf(boolean);
-    public static java.lang.String valueOf(char);
-    public static java.lang.String valueOf(int);
-    public static java.lang.String valueOf(long);
-    public static java.lang.String valueOf(float);
-    public static java.lang.String valueOf(double);
-
-
-    public static java.util.Comparator CASE_INSENSITIVE_ORDER;
-}
-
--keep class java.lang.StringBuffer {
-    <init>();
-    <init>(int);
-    <init>(java.lang.String);
-    <init>(java.lang.CharSequence);
-
-    public synchronized java.lang.StringBuffer append(java.lang.Object);
-    public synchronized java.lang.StringBuffer append(java.lang.String);
-    public synchronized java.lang.StringBuffer append(java.lang.StringBuffer);
-    public synchronized java.lang.StringBuffer append(java.lang.CharSequence);
-    public synchronized java.lang.StringBuffer append(java.lang.CharSequence, int, int);
-    public synchronized java.lang.StringBuffer append(char[]);
-    public synchronized java.lang.StringBuffer append(char[], int, int);
-    public synchronized java.lang.StringBuffer append(boolean);
-    public synchronized java.lang.StringBuffer append(char);
-    public synchronized java.lang.StringBuffer append(int);
-    public synchronized java.lang.StringBuffer append(long);
-    public synchronized java.lang.StringBuffer append(float);
-    public synchronized java.lang.StringBuffer append(double);
-    public java.lang.AbstractStringBuilder append(double);
-    public java.lang.AbstractStringBuilder append(float);
-    public java.lang.AbstractStringBuilder append(long);
-    public java.lang.AbstractStringBuilder append(int);
-    public java.lang.AbstractStringBuilder append(char);
-    public java.lang.AbstractStringBuilder append(boolean);
-    public java.lang.AbstractStringBuilder append(char[], int, int);
-    public java.lang.AbstractStringBuilder append(char[]);
-    public java.lang.AbstractStringBuilder append(java.lang.CharSequence, int, int);
-    public java.lang.AbstractStringBuilder append(java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder append(java.lang.StringBuffer);
-    public java.lang.AbstractStringBuilder append(java.lang.String);
-    public java.lang.AbstractStringBuilder append(java.lang.Object);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public synchronized java.lang.StringBuffer appendCodePoint(int);
-    public java.lang.AbstractStringBuilder appendCodePoint(int);
-    public synchronized int capacity();
-    public synchronized char charAt(int);
-    public synchronized int codePointAt(int);
-    public synchronized int codePointBefore(int);
-    public synchronized int codePointCount(int, int);
-    public synchronized java.lang.StringBuffer delete(int, int);
-    public java.lang.AbstractStringBuilder delete(int, int);
-    public synchronized java.lang.StringBuffer deleteCharAt(int);
-    public java.lang.AbstractStringBuilder deleteCharAt(int);
-    public synchronized void ensureCapacity(int);
-    public synchronized void getChars(int, int, char[], int);
-    public int indexOf(java.lang.String);
-    public synchronized int indexOf(java.lang.String, int);
-    public synchronized java.lang.StringBuffer insert(int, char[], int, int);
-    public synchronized java.lang.StringBuffer insert(int, java.lang.Object);
-    public synchronized java.lang.StringBuffer insert(int, java.lang.String);
-    public synchronized java.lang.StringBuffer insert(int, char[]);
-    public java.lang.StringBuffer insert(int, java.lang.CharSequence);
-    public synchronized java.lang.StringBuffer insert(int, java.lang.CharSequence, int, int);
-    public java.lang.StringBuffer insert(int, boolean);
-    public synchronized java.lang.StringBuffer insert(int, char);
-    public java.lang.StringBuffer insert(int, int);
-    public java.lang.StringBuffer insert(int, long);
-    public java.lang.StringBuffer insert(int, float);
-    public java.lang.StringBuffer insert(int, double);
-    public java.lang.AbstractStringBuilder insert(int, double);
-    public java.lang.AbstractStringBuilder insert(int, float);
-    public java.lang.AbstractStringBuilder insert(int, long);
-    public java.lang.AbstractStringBuilder insert(int, int);
-    public java.lang.AbstractStringBuilder insert(int, char);
-    public java.lang.AbstractStringBuilder insert(int, boolean);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence, int, int);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder insert(int, char[]);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.String);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.Object);
-    public java.lang.AbstractStringBuilder insert(int, char[], int, int);
-    public int lastIndexOf(java.lang.String);
-    public synchronized int lastIndexOf(java.lang.String, int);
-    public synchronized int length();
-    public synchronized int offsetByCodePoints(int, int);
-    public synchronized java.lang.StringBuffer replace(int, int, java.lang.String);
-    public java.lang.AbstractStringBuilder replace(int, int, java.lang.String);
-    public synchronized java.lang.StringBuffer reverse();
-    public java.lang.AbstractStringBuilder reverse();
-    public synchronized void setCharAt(int, char);
-    public synchronized void setLength(int);
-    public synchronized java.lang.CharSequence subSequence(int, int);
-    public synchronized java.lang.String substring(int);
-    public synchronized java.lang.String substring(int, int);
-    public synchronized java.lang.String toString();
-    public synchronized void trimToSize();
-
-
-}
-
--keep class java.lang.StringBuilder {
-    <init>();
-    <init>(int);
-    <init>(java.lang.String);
-    <init>(java.lang.CharSequence);
-
-    public java.lang.StringBuilder append(java.lang.Object);
-    public java.lang.StringBuilder append(java.lang.String);
-    public java.lang.StringBuilder append(java.lang.StringBuffer);
-    public java.lang.StringBuilder append(java.lang.CharSequence);
-    public java.lang.StringBuilder append(java.lang.CharSequence, int, int);
-    public java.lang.StringBuilder append(char[]);
-    public java.lang.StringBuilder append(char[], int, int);
-    public java.lang.StringBuilder append(boolean);
-    public java.lang.StringBuilder append(char);
-    public java.lang.StringBuilder append(int);
-    public java.lang.StringBuilder append(long);
-    public java.lang.StringBuilder append(float);
-    public java.lang.StringBuilder append(double);
-    public java.lang.AbstractStringBuilder append(double);
-    public java.lang.AbstractStringBuilder append(float);
-    public java.lang.AbstractStringBuilder append(long);
-    public java.lang.AbstractStringBuilder append(int);
-    public java.lang.AbstractStringBuilder append(char);
-    public java.lang.AbstractStringBuilder append(boolean);
-    public java.lang.AbstractStringBuilder append(char[], int, int);
-    public java.lang.AbstractStringBuilder append(char[]);
-    public java.lang.AbstractStringBuilder append(java.lang.CharSequence, int, int);
-    public java.lang.AbstractStringBuilder append(java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder append(java.lang.StringBuffer);
-    public java.lang.AbstractStringBuilder append(java.lang.String);
-    public java.lang.AbstractStringBuilder append(java.lang.Object);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public java.lang.StringBuilder appendCodePoint(int);
-    public java.lang.AbstractStringBuilder appendCodePoint(int);
-    public int capacity();
-    public char charAt(int);
-    public int codePointAt(int);
-    public int codePointBefore(int);
-    public int codePointCount(int, int);
-    public java.lang.StringBuilder delete(int, int);
-    public java.lang.AbstractStringBuilder delete(int, int);
-    public java.lang.StringBuilder deleteCharAt(int);
-    public java.lang.AbstractStringBuilder deleteCharAt(int);
-    public void ensureCapacity(int);
-    public void getChars(int, int, char[], int);
-    public int indexOf(java.lang.String);
-    public int indexOf(java.lang.String, int);
-    public java.lang.StringBuilder insert(int, char[], int, int);
-    public java.lang.StringBuilder insert(int, java.lang.Object);
-    public java.lang.StringBuilder insert(int, java.lang.String);
-    public java.lang.StringBuilder insert(int, char[]);
-    public java.lang.StringBuilder insert(int, java.lang.CharSequence);
-    public java.lang.StringBuilder insert(int, java.lang.CharSequence, int, int);
-    public java.lang.StringBuilder insert(int, boolean);
-    public java.lang.StringBuilder insert(int, char);
-    public java.lang.StringBuilder insert(int, int);
-    public java.lang.StringBuilder insert(int, long);
-    public java.lang.StringBuilder insert(int, float);
-    public java.lang.StringBuilder insert(int, double);
-    public java.lang.AbstractStringBuilder insert(int, double);
-    public java.lang.AbstractStringBuilder insert(int, float);
-    public java.lang.AbstractStringBuilder insert(int, long);
-    public java.lang.AbstractStringBuilder insert(int, int);
-    public java.lang.AbstractStringBuilder insert(int, char);
-    public java.lang.AbstractStringBuilder insert(int, boolean);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence, int, int);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.CharSequence);
-    public java.lang.AbstractStringBuilder insert(int, char[]);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.String);
-    public java.lang.AbstractStringBuilder insert(int, java.lang.Object);
-    public java.lang.AbstractStringBuilder insert(int, char[], int, int);
-    public int lastIndexOf(java.lang.String);
-    public int lastIndexOf(java.lang.String, int);
-    public int length();
-    public int offsetByCodePoints(int, int);
-    public java.lang.StringBuilder replace(int, int, java.lang.String);
-    public java.lang.AbstractStringBuilder replace(int, int, java.lang.String);
-    public java.lang.StringBuilder reverse();
-    public java.lang.AbstractStringBuilder reverse();
-    public void setCharAt(int, char);
-    public void setLength(int);
-    public java.lang.CharSequence subSequence(int, int);
-    public java.lang.String substring(int, int);
-    public java.lang.String substring(int);
-    public java.lang.String toString();
-    public void trimToSize();
-
-
-}
-
--keep class java.lang.Thread {
-    <init>();
-    <init>(java.lang.Runnable);
-    <init>(java.lang.ThreadGroup, java.lang.Runnable);
-    <init>(java.lang.String);
-    <init>(java.lang.ThreadGroup, java.lang.String);
-    <init>(java.lang.Runnable, java.lang.String);
-    <init>(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String);
-    <init>(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long);
-
-    public static int activeCount();
-    public void blockedOn(sun.nio.ch.Interruptible);
-    public void checkAccess();
-    protected java.lang.Object clone();
-    public int countStackFrames();
-    public static java.lang.Thread currentThread();
-    public void destroy();
-    public void dispatchUncaughtException(java.lang.Throwable);
-    public static void dumpStack();
-    public static int enumerate(java.lang.Thread[]);
-    public static java.util.Map getAllStackTraces();
-    public java.lang.ClassLoader getContextClassLoader();
-    public static java.lang.Thread$UncaughtExceptionHandler getDefaultUncaughtExceptionHandler();
-    public long getId();
-    public java.lang.String getName();
-    public int getPriority();
-    public java.lang.StackTraceElement[] getStackTrace();
-    public java.lang.Thread$State getState();
-    public java.lang.ThreadGroup getThreadGroup();
-    public java.lang.Thread$UncaughtExceptionHandler getUncaughtExceptionHandler();
-    public static java.lang.Thread$UncaughtExceptionHandler getUncaughtExceptionPreHandler();
-    public static boolean holdsLock(java.lang.Object);
-    public void interrupt();
-    public static boolean interrupted();
-    public boolean isAlive();
-    public boolean isDaemon();
-    public boolean isInterrupted();
-    public void join(long);
-    public void join(long, int);
-    public void join();
-    public void parkFor$(long);
-    public void parkUntil$(long);
-    public void resume();
-    public void run();
-    public void setContextClassLoader(java.lang.ClassLoader);
-    public void setDaemon(boolean);
-    public static void setDefaultUncaughtExceptionHandler(java.lang.Thread$UncaughtExceptionHandler);
-    public void setName(java.lang.String);
-    public void setPriority(int);
-    public void setUncaughtExceptionHandler(java.lang.Thread$UncaughtExceptionHandler);
-    public static void setUncaughtExceptionPreHandler(java.lang.Thread$UncaughtExceptionHandler);
-    public static void sleep(long);
-    public static void sleep(long, int);
-    public synchronized void start();
-    public void stop();
-    public void stop(java.lang.Throwable);
-    public void suspend();
-    public java.lang.String toString();
-    public void unpark$();
-    public static void yield();
-
-
-    public static int MAX_PRIORITY;
-    public static int MIN_PRIORITY;
-    public static int NORM_PRIORITY;
-}
-
--keep class java.lang.Thread$State {
-
-    public static java.lang.Thread$State valueOf(java.lang.String);
-    public static java.lang.Thread$State[] values();
-
-    public static java.lang.Thread$State BLOCKED;
-    public static java.lang.Thread$State NEW;
-    public static java.lang.Thread$State RUNNABLE;
-    public static java.lang.Thread$State TERMINATED;
-    public static java.lang.Thread$State TIMED_WAITING;
-    public static java.lang.Thread$State WAITING;
-
-}
-
--keep class java.lang.Thread$UncaughtExceptionHandler {
-
-    public abstract void uncaughtException(java.lang.Thread, java.lang.Throwable);
-
-
-}
-
--keep class java.lang.ThreadGroup {
-    <init>(java.lang.String);
-    <init>(java.lang.ThreadGroup, java.lang.String);
-
-    public int activeCount();
-    public int activeGroupCount();
-    public boolean allowThreadSuspension(boolean);
-    public void checkAccess();
-    public void destroy();
-    public int enumerate(java.lang.Thread[]);
-    public int enumerate(java.lang.Thread[], boolean);
-    public int enumerate(java.lang.ThreadGroup[]);
-    public int enumerate(java.lang.ThreadGroup[], boolean);
-    public int getMaxPriority();
-    public java.lang.String getName();
-    public java.lang.ThreadGroup getParent();
-    public void interrupt();
-    public boolean isDaemon();
-    public synchronized boolean isDestroyed();
-    public void list();
-    public boolean parentOf(java.lang.ThreadGroup);
-    public void resume();
-    public void setDaemon(boolean);
-    public void setMaxPriority(int);
-    public void stop();
-    public void suspend();
-    public java.lang.String toString();
-    public void uncaughtException(java.lang.Thread, java.lang.Throwable);
-
-
-}
-
--keep class java.lang.ThreadLocal {
-    <init>();
-
-    public java.lang.Object get();
-    protected java.lang.Object initialValue();
-    public void remove();
-    public void set(java.lang.Object);
-    public static java.lang.ThreadLocal withInitial(java.util.function.Supplier);
-
-
-}
-
--keep class java.lang.Throwable {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-    <init>(java.lang.String, java.lang.Throwable, boolean, boolean);
-
-    public synchronized void addSuppressed(java.lang.Throwable);
-    public synchronized java.lang.Throwable fillInStackTrace();
-    public synchronized java.lang.Throwable getCause();
-    public java.lang.String getLocalizedMessage();
-    public java.lang.String getMessage();
-    public java.lang.StackTraceElement[] getStackTrace();
-    public synchronized java.lang.Throwable[] getSuppressed();
-    public synchronized java.lang.Throwable initCause(java.lang.Throwable);
-    public void printStackTrace();
-    public void printStackTrace(java.io.PrintStream);
-    public void printStackTrace(java.io.PrintWriter);
-    public void setStackTrace(java.lang.StackTraceElement[]);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.annotation.Annotation {
-
-    public abstract java.lang.Class annotationType();
-    public abstract boolean equals(java.lang.Object);
-    public abstract int hashCode();
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.lang.reflect.AccessibleObject {
-    <init>();
-
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getAnnotations();
-    public java.lang.annotation.Annotation[] getAnnotationsByType(java.lang.Class);
-    public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.annotation.Annotation[] getDeclaredAnnotationsByType(java.lang.Class);
-    public boolean isAccessible();
-    public boolean isAnnotationPresent(java.lang.Class);
-    public static void setAccessible(java.lang.reflect.AccessibleObject[], boolean);
-    public void setAccessible(boolean);
-
-
-}
-
--keep class java.lang.reflect.Constructor {
-
-    public boolean equals(java.lang.Object);
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.Class getDeclaringClass();
-    public java.lang.Class[] getExceptionTypes();
-    public java.lang.reflect.Type[] getGenericExceptionTypes();
-    public java.lang.reflect.Type[] getGenericParameterTypes();
-    public int getModifiers();
-    public java.lang.String getName();
-    public java.lang.annotation.Annotation[][] getParameterAnnotations();
-    public int getParameterCount();
-    public java.lang.Class[] getParameterTypes();
-    public java.lang.reflect.TypeVariable[] getTypeParameters();
-    public int hashCode();
-    public boolean isSynthetic();
-    public boolean isVarArgs();
-    public java.lang.Object newInstance(java.lang.Object[]);
-    public java.lang.reflect.Constructor serializationCopy(java.lang.Class, java.lang.Class);
-    public java.lang.String toGenericString();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.reflect.Executable {
-
-    public int getAccessFlags();
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getAnnotationsByType(java.lang.Class);
-    public long getArtMethod();
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public abstract java.lang.Class getDeclaringClass();
-    public abstract java.lang.Class[] getExceptionTypes();
-    public java.lang.reflect.Type[] getGenericExceptionTypes();
-    public java.lang.reflect.Type[] getGenericParameterTypes();
-    public abstract int getModifiers();
-    public abstract java.lang.String getName();
-    public abstract java.lang.annotation.Annotation[][] getParameterAnnotations();
-    public int getParameterCount();
-    public abstract java.lang.Class[] getParameterTypes();
-    public java.lang.reflect.Parameter[] getParameters();
-    public abstract java.lang.reflect.TypeVariable[] getTypeParameters();
-    public boolean isAnnotationPresent(java.lang.Class);
-    public boolean isSynthetic();
-    public boolean isVarArgs();
-    public abstract java.lang.String toGenericString();
-
-
-}
-
--keep class java.lang.reflect.Field {
-
-    public boolean equals(java.lang.Object);
-    public java.lang.Object get(java.lang.Object);
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getAnnotationsByType(java.lang.Class);
-    public long getArtField();
-    public boolean getBoolean(java.lang.Object);
-    public byte getByte(java.lang.Object);
-    public char getChar(java.lang.Object);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.Class getDeclaringClass();
-    public int getDexFieldIndex();
-    public double getDouble(java.lang.Object);
-    public float getFloat(java.lang.Object);
-    public java.lang.reflect.Type getGenericType();
-    public int getInt(java.lang.Object);
-    public long getLong(java.lang.Object);
-    public int getModifiers();
-    public java.lang.String getName();
-    public int getOffset();
-    public short getShort(java.lang.Object);
-    public java.lang.Class getType();
-    public int hashCode();
-    public boolean isAnnotationPresent(java.lang.Class);
-    public boolean isEnumConstant();
-    public boolean isSynthetic();
-    public void set(java.lang.Object, java.lang.Object);
-    public void setBoolean(java.lang.Object, boolean);
-    public void setByte(java.lang.Object, byte);
-    public void setChar(java.lang.Object, char);
-    public void setDouble(java.lang.Object, double);
-    public void setFloat(java.lang.Object, float);
-    public void setInt(java.lang.Object, int);
-    public void setLong(java.lang.Object, long);
-    public void setShort(java.lang.Object, short);
-    public java.lang.String toGenericString();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.reflect.GenericDeclaration {
-
-    public abstract java.lang.reflect.TypeVariable[] getTypeParameters();
-
-
-}
-
--keep class java.lang.reflect.InvocationTargetException {
-    <init>();
-    <init>(java.lang.Throwable);
-    <init>(java.lang.Throwable, java.lang.String);
-
-    public java.lang.Throwable getCause();
-    public java.lang.Throwable getTargetException();
-
-
-}
-
--keep class java.lang.reflect.Method {
-
-    public boolean equals(java.lang.Object);
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.Class getDeclaringClass();
-    public java.lang.Object getDefaultValue();
-    public java.lang.Class[] getExceptionTypes();
-    public java.lang.reflect.Type[] getGenericExceptionTypes();
-    public java.lang.reflect.Type[] getGenericParameterTypes();
-    public java.lang.reflect.Type getGenericReturnType();
-    public int getModifiers();
-    public java.lang.String getName();
-    public java.lang.annotation.Annotation[][] getParameterAnnotations();
-    public int getParameterCount();
-    public java.lang.Class[] getParameterTypes();
-    public java.lang.Class getReturnType();
-    public java.lang.reflect.TypeVariable[] getTypeParameters();
-    public int hashCode();
-    public java.lang.Object invoke(java.lang.Object, java.lang.Object[]);
-    public boolean isBridge();
-    public boolean isDefault();
-    public boolean isSynthetic();
-    public boolean isVarArgs();
-    public java.lang.String toGenericString();
-    public java.lang.String toString();
-
-
-    public static java.util.Comparator ORDER_BY_SIGNATURE;
-}
-
--keep class java.lang.reflect.Parameter {
-
-    public boolean equals(java.lang.Object);
-    public java.lang.annotation.Annotation getAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getAnnotations();
-    public java.lang.annotation.Annotation[] getAnnotationsByType(java.lang.Class);
-    public java.lang.annotation.Annotation getDeclaredAnnotation(java.lang.Class);
-    public java.lang.annotation.Annotation[] getDeclaredAnnotations();
-    public java.lang.annotation.Annotation[] getDeclaredAnnotationsByType(java.lang.Class);
-    public java.lang.reflect.Executable getDeclaringExecutable();
-    public int getModifiers();
-    public java.lang.String getName();
-    public java.lang.reflect.Type getParameterizedType();
-    public java.lang.Class getType();
-    public int hashCode();
-    public boolean isImplicit();
-    public boolean isNamePresent();
-    public boolean isSynthetic();
-    public boolean isVarArgs();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.lang.reflect.Type {
-
-    public java.lang.String getTypeName();
-
-
-}
-
--keep class java.lang.reflect.TypeVariable {
-
-    public abstract java.lang.reflect.Type[] getBounds();
-    public abstract java.lang.reflect.GenericDeclaration getGenericDeclaration();
-    public abstract java.lang.String getName();
-
-
-}
-
--keep class java.net.ContentHandler {
-    <init>();
-
-    public abstract java.lang.Object getContent(java.net.URLConnection);
-    public java.lang.Object getContent(java.net.URLConnection, java.lang.Class[]);
-
-
-}
-
--keep class java.net.ContentHandlerFactory {
-
-    public abstract java.net.ContentHandler createContentHandler(java.lang.String);
-
-
-}
-
--keep class java.net.DatagramPacket {
-    <init>(byte[], int, int);
-    <init>(byte[], int);
-    <init>(byte[], int, int, java.net.InetAddress, int);
-    <init>(byte[], int, int, java.net.SocketAddress);
-    <init>(byte[], int, java.net.InetAddress, int);
-    <init>(byte[], int, java.net.SocketAddress);
-
-    public synchronized java.net.InetAddress getAddress();
-    public synchronized byte[] getData();
-    public synchronized int getLength();
-    public synchronized int getOffset();
-    public synchronized int getPort();
-    public synchronized java.net.SocketAddress getSocketAddress();
-    public synchronized void setAddress(java.net.InetAddress);
-    public synchronized void setData(byte[], int, int);
-    public synchronized void setData(byte[]);
-    public synchronized void setLength(int);
-    public synchronized void setPort(int);
-    public void setReceivedLength(int);
-    public synchronized void setSocketAddress(java.net.SocketAddress);
-
-
-}
-
--keep class java.net.DatagramSocket {
-    <init>();
-    <init>(java.net.DatagramSocketImpl);
-    <init>(java.net.SocketAddress);
-    <init>(int);
-    <init>(int, java.net.InetAddress);
-
-    public synchronized void bind(java.net.SocketAddress);
-    public void close();
-    public void connect(java.net.InetAddress, int);
-    public void connect(java.net.SocketAddress);
-    public void disconnect();
-    public synchronized boolean getBroadcast();
-    public java.nio.channels.DatagramChannel getChannel();
-    public java.io.FileDescriptor getFileDescriptor$();
-    public java.net.InetAddress getInetAddress();
-    public java.net.InetAddress getLocalAddress();
-    public int getLocalPort();
-    public java.net.SocketAddress getLocalSocketAddress();
-    public int getPort();
-    public synchronized int getReceiveBufferSize();
-    public java.net.SocketAddress getRemoteSocketAddress();
-    public synchronized boolean getReuseAddress();
-    public synchronized int getSendBufferSize();
-    public synchronized int getSoTimeout();
-    public synchronized int getTrafficClass();
-    public boolean isBound();
-    public boolean isClosed();
-    public boolean isConnected();
-    public synchronized void receive(java.net.DatagramPacket);
-    public void send(java.net.DatagramPacket);
-    public synchronized void setBroadcast(boolean);
-    public static synchronized void setDatagramSocketImplFactory(java.net.DatagramSocketImplFactory);
-    public synchronized void setReceiveBufferSize(int);
-    public synchronized void setReuseAddress(boolean);
-    public synchronized void setSendBufferSize(int);
-    public synchronized void setSoTimeout(int);
-    public synchronized void setTrafficClass(int);
-
-
-}
-
--keep class java.net.DatagramSocketImpl {
-    <init>();
-
-    protected abstract void bind(int, java.net.InetAddress);
-    protected abstract void close();
-    protected void connect(java.net.InetAddress, int);
-    protected abstract void create();
-    protected void disconnect();
-    protected java.io.FileDescriptor getFileDescriptor();
-    protected int getLocalPort();
-    protected abstract byte getTTL();
-    protected abstract int getTimeToLive();
-    protected abstract void join(java.net.InetAddress);
-    protected abstract void joinGroup(java.net.SocketAddress, java.net.NetworkInterface);
-    protected abstract void leave(java.net.InetAddress);
-    protected abstract void leaveGroup(java.net.SocketAddress, java.net.NetworkInterface);
-    protected abstract int peek(java.net.InetAddress);
-    protected abstract int peekData(java.net.DatagramPacket);
-    protected abstract void receive(java.net.DatagramPacket);
-    protected abstract void send(java.net.DatagramPacket);
-    protected abstract void setTTL(byte);
-    protected abstract void setTimeToLive(int);
-
-
-    protected java.io.FileDescriptor fd;
-    protected int localPort;
-}
-
--keep class java.net.DatagramSocketImplFactory {
-
-    public abstract java.net.DatagramSocketImpl createDatagramSocketImpl();
-
-
-}
-
--keep class java.net.FileNameMap {
-
-    public abstract java.lang.String getContentTypeFor(java.lang.String);
-
-
-}
-
--keep class java.net.InetAddress {
-
-    public static void clearDnsCache();
-    public boolean equals(java.lang.Object);
-    public byte[] getAddress();
-    public static java.net.InetAddress[] getAllByName(java.lang.String);
-    public static java.net.InetAddress[] getAllByNameOnNet(java.lang.String, int);
-    public static java.net.InetAddress getByAddress(java.lang.String, byte[]);
-    public static java.net.InetAddress getByAddress(byte[]);
-    public static java.net.InetAddress getByName(java.lang.String);
-    public static java.net.InetAddress getByNameOnNet(java.lang.String, int);
-    public java.lang.String getCanonicalHostName();
-    public java.lang.String getHostAddress();
-    public java.lang.String getHostName();
-    public static java.net.InetAddress getLocalHost();
-    public static java.net.InetAddress getLoopbackAddress();
-    public int hashCode();
-    public boolean isAnyLocalAddress();
-    public boolean isLinkLocalAddress();
-    public boolean isLoopbackAddress();
-    public boolean isMCGlobal();
-    public boolean isMCLinkLocal();
-    public boolean isMCNodeLocal();
-    public boolean isMCOrgLocal();
-    public boolean isMCSiteLocal();
-    public boolean isMulticastAddress();
-    public static boolean isNumeric(java.lang.String);
-    public boolean isReachable(int);
-    public boolean isReachable(java.net.NetworkInterface, int, int);
-    public boolean isReachableByICMP(int);
-    public boolean isSiteLocalAddress();
-    public static java.net.InetAddress parseNumericAddress(java.lang.String);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.net.InterfaceAddress {
-
-    public boolean equals(java.lang.Object);
-    public java.net.InetAddress getAddress();
-    public java.net.InetAddress getBroadcast();
-    public short getNetworkPrefixLength();
-    public int hashCode();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.net.MalformedURLException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.net.NetworkInterface {
-
-    public boolean equals(java.lang.Object);
-    public static java.net.NetworkInterface getByIndex(int);
-    public static java.net.NetworkInterface getByInetAddress(java.net.InetAddress);
-    public static java.net.NetworkInterface getByName(java.lang.String);
-    public java.lang.String getDisplayName();
-    public byte[] getHardwareAddress();
-    public int getIndex();
-    public java.util.Enumeration getInetAddresses();
-    public java.util.List getInterfaceAddresses();
-    public int getMTU();
-    public java.lang.String getName();
-    public static java.util.Enumeration getNetworkInterfaces();
-    public java.net.NetworkInterface getParent();
-    public java.util.Enumeration getSubInterfaces();
-    public int hashCode();
-    public boolean isLoopback();
-    public boolean isPointToPoint();
-    public boolean isUp();
-    public boolean isVirtual();
-    public boolean supportsMulticast();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.net.ProtocolFamily {
-
-    public abstract java.lang.String name();
-
-
-}
-
--keep class java.net.Proxy {
-    <init>(java.net.Proxy$Type, java.net.SocketAddress);
-
-    public java.net.SocketAddress address();
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public java.lang.String toString();
-    public java.net.Proxy$Type type();
-
-
-    public static java.net.Proxy NO_PROXY;
-}
-
--keep class java.net.Proxy$Type {
-
-    public static java.net.Proxy$Type valueOf(java.lang.String);
-    public static java.net.Proxy$Type[] values();
-
-    public static java.net.Proxy$Type DIRECT;
-    public static java.net.Proxy$Type HTTP;
-    public static java.net.Proxy$Type SOCKS;
-
-}
-
--keep class java.net.ServerSocket {
-    <init>();
-    <init>(int);
-    <init>(int, int);
-    <init>(int, int, java.net.InetAddress);
-
-    public java.net.Socket accept();
-    public void bind(java.net.SocketAddress);
-    public void bind(java.net.SocketAddress, int);
-    public void close();
-    public java.nio.channels.ServerSocketChannel getChannel();
-    public java.io.FileDescriptor getFileDescriptor$();
-    public java.net.SocketImpl getImpl();
-    public java.net.InetAddress getInetAddress();
-    public int getLocalPort();
-    public java.net.SocketAddress getLocalSocketAddress();
-    public synchronized int getReceiveBufferSize();
-    public boolean getReuseAddress();
-    public synchronized int getSoTimeout();
-    protected void implAccept(java.net.Socket);
-    public boolean isBound();
-    public boolean isClosed();
-    public void setPerformancePreferences(int, int, int);
-    public synchronized void setReceiveBufferSize(int);
-    public void setReuseAddress(boolean);
-    public synchronized void setSoTimeout(int);
-    public static synchronized void setSocketFactory(java.net.SocketImplFactory);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.net.Socket {
-    <init>();
-    <init>(java.net.Proxy);
-    <init>(java.net.SocketImpl);
-    <init>(java.lang.String, int);
-    <init>(java.net.InetAddress, int);
-    <init>(java.lang.String, int, java.net.InetAddress, int);
-    <init>(java.net.InetAddress, int, java.net.InetAddress, int);
-    <init>(java.lang.String, int, boolean);
-    <init>(java.net.InetAddress, int, boolean);
-
-    public void bind(java.net.SocketAddress);
-    public synchronized void close();
-    public void connect(java.net.SocketAddress);
-    public void connect(java.net.SocketAddress, int);
-    public java.nio.channels.SocketChannel getChannel();
-    public java.io.FileDescriptor getFileDescriptor$();
-    public java.net.InetAddress getInetAddress();
-    public java.io.InputStream getInputStream();
-    public boolean getKeepAlive();
-    public java.net.InetAddress getLocalAddress();
-    public int getLocalPort();
-    public java.net.SocketAddress getLocalSocketAddress();
-    public boolean getOOBInline();
-    public java.io.OutputStream getOutputStream();
-    public int getPort();
-    public synchronized int getReceiveBufferSize();
-    public java.net.SocketAddress getRemoteSocketAddress();
-    public boolean getReuseAddress();
-    public synchronized int getSendBufferSize();
-    public int getSoLinger();
-    public synchronized int getSoTimeout();
-    public boolean getTcpNoDelay();
-    public int getTrafficClass();
-    public boolean isBound();
-    public boolean isClosed();
-    public boolean isConnected();
-    public boolean isInputShutdown();
-    public boolean isOutputShutdown();
-    public void sendUrgentData(int);
-    public void setKeepAlive(boolean);
-    public void setOOBInline(boolean);
-    public void setPerformancePreferences(int, int, int);
-    public synchronized void setReceiveBufferSize(int);
-    public void setReuseAddress(boolean);
-    public synchronized void setSendBufferSize(int);
-    public void setSoLinger(boolean, int);
-    public synchronized void setSoTimeout(int);
-    public static synchronized void setSocketImplFactory(java.net.SocketImplFactory);
-    public void setTcpNoDelay(boolean);
-    public void setTrafficClass(int);
-    public void shutdownInput();
-    public void shutdownOutput();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.net.SocketAddress {
-    <init>();
-
-
-
-}
-
--keep class java.net.SocketException {
-    <init>(java.lang.String);
-    <init>();
-    <init>(java.lang.Throwable);
-    <init>(java.lang.String, java.lang.Throwable);
-
-
-
-}
-
--keep class java.net.SocketImpl {
-    <init>();
-
-    protected abstract void accept(java.net.SocketImpl);
-    protected abstract int available();
-    protected abstract void bind(java.net.InetAddress, int);
-    protected abstract void close();
-    protected abstract void connect(java.lang.String, int);
-    protected abstract void connect(java.net.InetAddress, int);
-    protected abstract void connect(java.net.SocketAddress, int);
-    protected abstract void create(boolean);
-    public java.io.FileDescriptor getFD$();
-    protected java.io.FileDescriptor getFileDescriptor();
-    protected java.net.InetAddress getInetAddress();
-    protected abstract java.io.InputStream getInputStream();
-    protected int getLocalPort();
-    protected abstract java.io.OutputStream getOutputStream();
-    protected int getPort();
-    protected abstract void listen(int);
-    protected abstract void sendUrgentData(int);
-    protected void setPerformancePreferences(int, int, int);
-    protected void shutdownInput();
-    protected void shutdownOutput();
-    protected boolean supportsUrgentData();
-    public java.lang.String toString();
-
-
-    protected java.net.InetAddress address;
-    protected java.io.FileDescriptor fd;
-    protected int localport;
-    protected int port;
-}
-
--keep class java.net.SocketImplFactory {
-
-    public abstract java.net.SocketImpl createSocketImpl();
-
-
-}
-
--keep class java.net.SocketOption {
-
-    public abstract java.lang.String name();
-    public abstract java.lang.Class type();
-
-
-}
-
--keep class java.net.URI {
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String);
-    <init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
-    <init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
-    <init>(java.lang.String, java.lang.String, java.lang.String);
-
-    public int compareTo(java.net.URI);
-    public int compareTo(java.lang.Object);
-    public static java.net.URI create(java.lang.String);
-    public boolean equals(java.lang.Object);
-    public java.lang.String getAuthority();
-    public java.lang.String getFragment();
-    public java.lang.String getHost();
-    public java.lang.String getPath();
-    public int getPort();
-    public java.lang.String getQuery();
-    public java.lang.String getRawAuthority();
-    public java.lang.String getRawFragment();
-    public java.lang.String getRawPath();
-    public java.lang.String getRawQuery();
-    public java.lang.String getRawSchemeSpecificPart();
-    public java.lang.String getRawUserInfo();
-    public java.lang.String getScheme();
-    public java.lang.String getSchemeSpecificPart();
-    public java.lang.String getUserInfo();
-    public int hashCode();
-    public boolean isAbsolute();
-    public boolean isOpaque();
-    public java.net.URI normalize();
-    public java.net.URI parseServerAuthority();
-    public java.net.URI relativize(java.net.URI);
-    public java.net.URI resolve(java.net.URI);
-    public java.net.URI resolve(java.lang.String);
-    public java.lang.String toASCIIString();
-    public java.lang.String toString();
-    public java.net.URL toURL();
-
-
-}
-
--keep class java.net.URISyntaxException {
-    <init>(java.lang.String, java.lang.String, int);
-    <init>(java.lang.String, java.lang.String);
-
-    public int getIndex();
-    public java.lang.String getInput();
-    public java.lang.String getMessage();
-    public java.lang.String getReason();
-
-
-}
-
--keep class java.net.URL {
-    <init>(java.lang.String, java.lang.String, int, java.lang.String);
-    <init>(java.lang.String, java.lang.String, java.lang.String);
-    <init>(java.lang.String, java.lang.String, int, java.lang.String, java.net.URLStreamHandler);
-    <init>(java.lang.String);
-    <init>(java.net.URL, java.lang.String);
-    <init>(java.net.URL, java.lang.String, java.net.URLStreamHandler);
-
-    public boolean equals(java.lang.Object);
-    public java.lang.String getAuthority();
-    public java.lang.Object getContent();
-    public java.lang.Object getContent(java.lang.Class[]);
-    public int getDefaultPort();
-    public java.lang.String getFile();
-    public java.lang.String getHost();
-    public java.lang.String getPath();
-    public int getPort();
-    public java.lang.String getProtocol();
-    public java.lang.String getQuery();
-    public java.lang.String getRef();
-    public java.lang.String getUserInfo();
-    public synchronized int hashCode();
-    public java.net.URLConnection openConnection();
-    public java.net.URLConnection openConnection(java.net.Proxy);
-    public java.io.InputStream openStream();
-    public boolean sameFile(java.net.URL);
-    public static void setURLStreamHandlerFactory(java.net.URLStreamHandlerFactory);
-    public java.lang.String toExternalForm();
-    public java.lang.String toString();
-    public java.net.URI toURI();
-
-
-}
-
--keep class java.net.URLConnection {
-    <init>(java.net.URL);
-
-    public void addRequestProperty(java.lang.String, java.lang.String);
-    public abstract void connect();
-    public boolean getAllowUserInteraction();
-    public int getConnectTimeout();
-    public java.lang.Object getContent();
-    public java.lang.Object getContent(java.lang.Class[]);
-    public java.lang.String getContentEncoding();
-    public int getContentLength();
-    public long getContentLengthLong();
-    public java.lang.String getContentType();
-    public long getDate();
-    public static boolean getDefaultAllowUserInteraction();
-    public static java.lang.String getDefaultRequestProperty(java.lang.String);
-    public boolean getDefaultUseCaches();
-    public boolean getDoInput();
-    public boolean getDoOutput();
-    public long getExpiration();
-    public static synchronized java.net.FileNameMap getFileNameMap();
-    public java.lang.String getHeaderField(java.lang.String);
-    public java.lang.String getHeaderField(int);
-    public long getHeaderFieldDate(java.lang.String, long);
-    public int getHeaderFieldInt(java.lang.String, int);
-    public java.lang.String getHeaderFieldKey(int);
-    public long getHeaderFieldLong(java.lang.String, long);
-    public java.util.Map getHeaderFields();
-    public long getIfModifiedSince();
-    public java.io.InputStream getInputStream();
-    public long getLastModified();
-    public java.io.OutputStream getOutputStream();
-    public java.security.Permission getPermission();
-    public int getReadTimeout();
-    public java.util.Map getRequestProperties();
-    public java.lang.String getRequestProperty(java.lang.String);
-    public java.net.URL getURL();
-    public boolean getUseCaches();
-    public static java.lang.String guessContentTypeFromName(java.lang.String);
-    public static java.lang.String guessContentTypeFromStream(java.io.InputStream);
-    public void setAllowUserInteraction(boolean);
-    public void setConnectTimeout(int);
-    public static synchronized void setContentHandlerFactory(java.net.ContentHandlerFactory);
-    public static void setDefaultAllowUserInteraction(boolean);
-    public static void setDefaultRequestProperty(java.lang.String, java.lang.String);
-    public void setDefaultUseCaches(boolean);
-    public void setDoInput(boolean);
-    public void setDoOutput(boolean);
-    public static void setFileNameMap(java.net.FileNameMap);
-    public void setIfModifiedSince(long);
-    public void setReadTimeout(int);
-    public void setRequestProperty(java.lang.String, java.lang.String);
-    public void setUseCaches(boolean);
-    public java.lang.String toString();
-
-
-    protected boolean allowUserInteraction;
-    protected boolean connected;
-    protected boolean doInput;
-    protected boolean doOutput;
-    protected long ifModifiedSince;
-    protected java.net.URL url;
-    protected boolean useCaches;
-}
-
--keep class java.net.URLStreamHandler {
-    <init>();
-
-    protected boolean equals(java.net.URL, java.net.URL);
-    protected int getDefaultPort();
-    protected synchronized java.net.InetAddress getHostAddress(java.net.URL);
-    protected int hashCode(java.net.URL);
-    protected boolean hostsEqual(java.net.URL, java.net.URL);
-    protected abstract java.net.URLConnection openConnection(java.net.URL);
-    protected java.net.URLConnection openConnection(java.net.URL, java.net.Proxy);
-    protected void parseURL(java.net.URL, java.lang.String, int, int);
-    protected boolean sameFile(java.net.URL, java.net.URL);
-    protected void setURL(java.net.URL, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
-    protected void setURL(java.net.URL, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String);
-    protected java.lang.String toExternalForm(java.net.URL);
-
-
-}
-
--keep class java.net.URLStreamHandlerFactory {
-
-    public abstract java.net.URLStreamHandler createURLStreamHandler(java.lang.String);
-
-
-}
-
--keep class java.net.UnknownHostException {
-    <init>(java.lang.String);
-    <init>();
-
-
-
-}
-
--keep class java.nio.Buffer {
-
-    public abstract java.lang.Object array();
-    public abstract int arrayOffset();
-    public int capacity();
-    public java.nio.Buffer clear();
-    public java.nio.Buffer flip();
-    public int getElementSizeShift();
-    public abstract boolean hasArray();
-    public boolean hasRemaining();
-    public abstract boolean isDirect();
-    public abstract boolean isReadOnly();
-    public int limit();
-    public java.nio.Buffer limit(int);
-    public java.nio.Buffer mark();
-    public int position();
-    public java.nio.Buffer position(int);
-    public int remaining();
-    public java.nio.Buffer reset();
-    public java.nio.Buffer rewind();
-
-
-}
-
--keep class java.nio.ByteBuffer {
-
-    public static java.nio.ByteBuffer allocate(int);
-    public static java.nio.ByteBuffer allocateDirect(int);
-    public byte[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.CharBuffer asCharBuffer();
-    public abstract java.nio.DoubleBuffer asDoubleBuffer();
-    public abstract java.nio.FloatBuffer asFloatBuffer();
-    public abstract java.nio.IntBuffer asIntBuffer();
-    public abstract java.nio.LongBuffer asLongBuffer();
-    public abstract java.nio.ByteBuffer asReadOnlyBuffer();
-    public abstract java.nio.ShortBuffer asShortBuffer();
-    public abstract java.nio.ByteBuffer compact();
-    public int compareTo(java.nio.ByteBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.ByteBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract byte get();
-    public abstract byte get(int);
-    public java.nio.ByteBuffer get(byte[], int, int);
-    public java.nio.ByteBuffer get(byte[]);
-    public abstract char getChar();
-    public abstract char getChar(int);
-    public abstract double getDouble();
-    public abstract double getDouble(int);
-    public abstract float getFloat();
-    public abstract float getFloat(int);
-    public abstract int getInt();
-    public abstract int getInt(int);
-    public abstract long getLong();
-    public abstract long getLong(int);
-    public abstract short getShort();
-    public abstract short getShort(int);
-    public boolean hasArray();
-    public int hashCode();
-    public boolean isAccessible();
-    public abstract boolean isDirect();
-    public java.nio.ByteOrder order();
-    public java.nio.ByteBuffer order(java.nio.ByteOrder);
-    public abstract java.nio.ByteBuffer put(byte);
-    public abstract java.nio.ByteBuffer put(int, byte);
-    public java.nio.ByteBuffer put(java.nio.ByteBuffer);
-    public java.nio.ByteBuffer put(byte[], int, int);
-    public java.nio.ByteBuffer put(byte[]);
-    public abstract java.nio.ByteBuffer putChar(char);
-    public abstract java.nio.ByteBuffer putChar(int, char);
-    public abstract java.nio.ByteBuffer putDouble(double);
-    public abstract java.nio.ByteBuffer putDouble(int, double);
-    public abstract java.nio.ByteBuffer putFloat(float);
-    public abstract java.nio.ByteBuffer putFloat(int, float);
-    public abstract java.nio.ByteBuffer putInt(int);
-    public abstract java.nio.ByteBuffer putInt(int, int);
-    public abstract java.nio.ByteBuffer putLong(long);
-    public abstract java.nio.ByteBuffer putLong(int, long);
-    public abstract java.nio.ByteBuffer putShort(short);
-    public abstract java.nio.ByteBuffer putShort(int, short);
-    public void setAccessible(boolean);
-    public abstract java.nio.ByteBuffer slice();
-    public java.lang.String toString();
-    public static java.nio.ByteBuffer wrap(byte[], int, int);
-    public static java.nio.ByteBuffer wrap(byte[]);
-
-
-}
-
--keep class java.nio.ByteOrder {
-
-    public static java.nio.ByteOrder nativeOrder();
-    public java.lang.String toString();
-
-
-    public static java.nio.ByteOrder BIG_ENDIAN;
-    public static java.nio.ByteOrder LITTLE_ENDIAN;
-}
-
--keep class java.nio.CharBuffer {
-
-    public static java.nio.CharBuffer allocate(int);
-    public java.nio.CharBuffer append(java.lang.CharSequence);
-    public java.nio.CharBuffer append(java.lang.CharSequence, int, int);
-    public java.nio.CharBuffer append(char);
-    public java.lang.Appendable append(char);
-    public java.lang.Appendable append(java.lang.CharSequence, int, int);
-    public java.lang.Appendable append(java.lang.CharSequence);
-    public char[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.CharBuffer asReadOnlyBuffer();
-    public char charAt(int);
-    public java.util.stream.IntStream chars();
-    public abstract java.nio.CharBuffer compact();
-    public int compareTo(java.nio.CharBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.CharBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract char get();
-    public abstract char get(int);
-    public java.nio.CharBuffer get(char[], int, int);
-    public java.nio.CharBuffer get(char[]);
-    public boolean hasArray();
-    public int hashCode();
-    public abstract boolean isDirect();
-    public int length();
-    public abstract java.nio.ByteOrder order();
-    public abstract java.nio.CharBuffer put(char);
-    public abstract java.nio.CharBuffer put(int, char);
-    public java.nio.CharBuffer put(java.nio.CharBuffer);
-    public java.nio.CharBuffer put(char[], int, int);
-    public java.nio.CharBuffer put(char[]);
-    public java.nio.CharBuffer put(java.lang.String, int, int);
-    public java.nio.CharBuffer put(java.lang.String);
-    public int read(java.nio.CharBuffer);
-    public abstract java.nio.CharBuffer slice();
-    public abstract java.nio.CharBuffer subSequence(int, int);
-    public java.lang.CharSequence subSequence(int, int);
-    public java.lang.String toString();
-    public static java.nio.CharBuffer wrap(char[], int, int);
-    public static java.nio.CharBuffer wrap(char[]);
-    public static java.nio.CharBuffer wrap(java.lang.CharSequence, int, int);
-    public static java.nio.CharBuffer wrap(java.lang.CharSequence);
-
-
-}
-
--keep class java.nio.DoubleBuffer {
-
-    public static java.nio.DoubleBuffer allocate(int);
-    public double[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.DoubleBuffer asReadOnlyBuffer();
-    public abstract java.nio.DoubleBuffer compact();
-    public int compareTo(java.nio.DoubleBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.DoubleBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract double get();
-    public abstract double get(int);
-    public java.nio.DoubleBuffer get(double[], int, int);
-    public java.nio.DoubleBuffer get(double[]);
-    public boolean hasArray();
-    public int hashCode();
-    public abstract boolean isDirect();
-    public abstract java.nio.ByteOrder order();
-    public abstract java.nio.DoubleBuffer put(double);
-    public abstract java.nio.DoubleBuffer put(int, double);
-    public java.nio.DoubleBuffer put(java.nio.DoubleBuffer);
-    public java.nio.DoubleBuffer put(double[], int, int);
-    public java.nio.DoubleBuffer put(double[]);
-    public abstract java.nio.DoubleBuffer slice();
-    public java.lang.String toString();
-    public static java.nio.DoubleBuffer wrap(double[], int, int);
-    public static java.nio.DoubleBuffer wrap(double[]);
-
-
-}
-
--keep class java.nio.FloatBuffer {
-
-    public static java.nio.FloatBuffer allocate(int);
-    public float[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.FloatBuffer asReadOnlyBuffer();
-    public abstract java.nio.FloatBuffer compact();
-    public int compareTo(java.nio.FloatBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.FloatBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract float get();
-    public abstract float get(int);
-    public java.nio.FloatBuffer get(float[], int, int);
-    public java.nio.FloatBuffer get(float[]);
-    public boolean hasArray();
-    public int hashCode();
-    public abstract boolean isDirect();
-    public abstract java.nio.ByteOrder order();
-    public abstract java.nio.FloatBuffer put(float);
-    public abstract java.nio.FloatBuffer put(int, float);
-    public java.nio.FloatBuffer put(java.nio.FloatBuffer);
-    public java.nio.FloatBuffer put(float[], int, int);
-    public java.nio.FloatBuffer put(float[]);
-    public abstract java.nio.FloatBuffer slice();
-    public java.lang.String toString();
-    public static java.nio.FloatBuffer wrap(float[], int, int);
-    public static java.nio.FloatBuffer wrap(float[]);
-
-
-}
-
--keep class java.nio.IntBuffer {
-
-    public static java.nio.IntBuffer allocate(int);
-    public int[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.IntBuffer asReadOnlyBuffer();
-    public abstract java.nio.IntBuffer compact();
-    public int compareTo(java.nio.IntBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.IntBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract int get();
-    public abstract int get(int);
-    public java.nio.IntBuffer get(int[], int, int);
-    public java.nio.IntBuffer get(int[]);
-    public boolean hasArray();
-    public int hashCode();
-    public abstract boolean isDirect();
-    public abstract java.nio.ByteOrder order();
-    public abstract java.nio.IntBuffer put(int);
-    public abstract java.nio.IntBuffer put(int, int);
-    public java.nio.IntBuffer put(java.nio.IntBuffer);
-    public java.nio.IntBuffer put(int[], int, int);
-    public java.nio.IntBuffer put(int[]);
-    public abstract java.nio.IntBuffer slice();
-    public java.lang.String toString();
-    public static java.nio.IntBuffer wrap(int[], int, int);
-    public static java.nio.IntBuffer wrap(int[]);
-
-
-}
-
--keep class java.nio.LongBuffer {
-
-    public static java.nio.LongBuffer allocate(int);
-    public long[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.LongBuffer asReadOnlyBuffer();
-    public abstract java.nio.LongBuffer compact();
-    public int compareTo(java.nio.LongBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.LongBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract long get();
-    public abstract long get(int);
-    public java.nio.LongBuffer get(long[], int, int);
-    public java.nio.LongBuffer get(long[]);
-    public boolean hasArray();
-    public int hashCode();
-    public abstract boolean isDirect();
-    public abstract java.nio.ByteOrder order();
-    public abstract java.nio.LongBuffer put(long);
-    public abstract java.nio.LongBuffer put(int, long);
-    public java.nio.LongBuffer put(java.nio.LongBuffer);
-    public java.nio.LongBuffer put(long[], int, int);
-    public java.nio.LongBuffer put(long[]);
-    public abstract java.nio.LongBuffer slice();
-    public java.lang.String toString();
-    public static java.nio.LongBuffer wrap(long[], int, int);
-    public static java.nio.LongBuffer wrap(long[]);
-
-
-}
-
--keep class java.nio.MappedByteBuffer {
-
-    public java.nio.MappedByteBuffer force();
-    public boolean isLoaded();
-    public java.nio.MappedByteBuffer load();
-
-
-}
-
--keep class java.nio.ShortBuffer {
-
-    public static java.nio.ShortBuffer allocate(int);
-    public short[] array();
-    public java.lang.Object array();
-    public int arrayOffset();
-    public abstract java.nio.ShortBuffer asReadOnlyBuffer();
-    public abstract java.nio.ShortBuffer compact();
-    public int compareTo(java.nio.ShortBuffer);
-    public int compareTo(java.lang.Object);
-    public abstract java.nio.ShortBuffer duplicate();
-    public boolean equals(java.lang.Object);
-    public abstract short get();
-    public abstract short get(int);
-    public java.nio.ShortBuffer get(short[], int, int);
-    public java.nio.ShortBuffer get(short[]);
-    public boolean hasArray();
-    public int hashCode();
-    public abstract boolean isDirect();
-    public abstract java.nio.ByteOrder order();
-    public abstract java.nio.ShortBuffer put(short);
-    public abstract java.nio.ShortBuffer put(int, short);
-    public java.nio.ShortBuffer put(java.nio.ShortBuffer);
-    public java.nio.ShortBuffer put(short[], int, int);
-    public java.nio.ShortBuffer put(short[]);
-    public abstract java.nio.ShortBuffer slice();
-    public java.lang.String toString();
-    public static java.nio.ShortBuffer wrap(short[], int, int);
-    public static java.nio.ShortBuffer wrap(short[]);
-
-
-}
-
--keep class java.nio.channels.AsynchronousCloseException {
-    <init>();
-
-
-
-}
-
--keep class java.nio.channels.AsynchronousFileChannel {
-    <init>();
-
-    public abstract void force(boolean);
-    public abstract void lock(long, long, boolean, java.lang.Object, java.nio.channels.CompletionHandler);
-    public void lock(java.lang.Object, java.nio.channels.CompletionHandler);
-    public abstract java.util.concurrent.Future lock(long, long, boolean);
-    public java.util.concurrent.Future lock();
-    public static java.nio.channels.AsynchronousFileChannel open(java.nio.file.Path, java.util.Set, java.util.concurrent.ExecutorService, java.nio.file.attribute.FileAttribute[]);
-    public static java.nio.channels.AsynchronousFileChannel open(java.nio.file.Path, java.nio.file.OpenOption[]);
-    public abstract void read(java.nio.ByteBuffer, long, java.lang.Object, java.nio.channels.CompletionHandler);
-    public abstract java.util.concurrent.Future read(java.nio.ByteBuffer, long);
-    public abstract long size();
-    public abstract java.nio.channels.AsynchronousFileChannel truncate(long);
-    public abstract java.nio.channels.FileLock tryLock(long, long, boolean);
-    public java.nio.channels.FileLock tryLock();
-    public abstract void write(java.nio.ByteBuffer, long, java.lang.Object, java.nio.channels.CompletionHandler);
-    public abstract java.util.concurrent.Future write(java.nio.ByteBuffer, long);
-
-
-}
-
--keep class java.nio.channels.Channel {
-
-    public abstract void close();
-    public abstract boolean isOpen();
-
-
-}
-
--keep class java.nio.channels.ClosedChannelException {
-    <init>();
-
-
-
-}
-
--keep class java.nio.channels.CompletionHandler {
-
-    public abstract void completed(java.lang.Object, java.lang.Object);
-    public abstract void failed(java.lang.Throwable, java.lang.Object);
-
-
-}
-
--keep class java.nio.channels.DatagramChannel {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    public abstract java.nio.channels.DatagramChannel bind(java.net.SocketAddress);
-    public java.nio.channels.NetworkChannel bind(java.net.SocketAddress);
-    public abstract java.nio.channels.DatagramChannel connect(java.net.SocketAddress);
-    public abstract java.nio.channels.DatagramChannel disconnect();
-    public abstract java.net.SocketAddress getLocalAddress();
-    public abstract java.net.SocketAddress getRemoteAddress();
-    public abstract boolean isConnected();
-    public static java.nio.channels.DatagramChannel open();
-    public static java.nio.channels.DatagramChannel open(java.net.ProtocolFamily);
-    public abstract int read(java.nio.ByteBuffer);
-    public abstract long read(java.nio.ByteBuffer[], int, int);
-    public long read(java.nio.ByteBuffer[]);
-    public abstract java.net.SocketAddress receive(java.nio.ByteBuffer);
-    public abstract int send(java.nio.ByteBuffer, java.net.SocketAddress);
-    public abstract java.nio.channels.DatagramChannel setOption(java.net.SocketOption, java.lang.Object);
-    public java.nio.channels.NetworkChannel setOption(java.net.SocketOption, java.lang.Object);
-    public abstract java.net.DatagramSocket socket();
-    public int validOps();
-    public abstract int write(java.nio.ByteBuffer);
-    public abstract long write(java.nio.ByteBuffer[], int, int);
-    public long write(java.nio.ByteBuffer[]);
-
-
-}
-
--keep class java.nio.channels.FileChannel {
-    <init>();
-
-    public abstract void force(boolean);
-    public abstract java.nio.channels.FileLock lock(long, long, boolean);
-    public java.nio.channels.FileLock lock();
-    public abstract java.nio.MappedByteBuffer map(java.nio.channels.FileChannel$MapMode, long, long);
-    public static java.nio.channels.FileChannel open(java.nio.file.Path, java.util.Set, java.nio.file.attribute.FileAttribute[]);
-    public static java.nio.channels.FileChannel open(java.nio.file.Path, java.nio.file.OpenOption[]);
-    public abstract long position();
-    public abstract java.nio.channels.FileChannel position(long);
-    public java.nio.channels.SeekableByteChannel position(long);
-    public abstract int read(java.nio.ByteBuffer);
-    public abstract long read(java.nio.ByteBuffer[], int, int);
-    public long read(java.nio.ByteBuffer[]);
-    public abstract int read(java.nio.ByteBuffer, long);
-    public abstract long size();
-    public abstract long transferFrom(java.nio.channels.ReadableByteChannel, long, long);
-    public abstract long transferTo(long, long, java.nio.channels.WritableByteChannel);
-    public abstract java.nio.channels.FileChannel truncate(long);
-    public java.nio.channels.SeekableByteChannel truncate(long);
-    public abstract java.nio.channels.FileLock tryLock(long, long, boolean);
-    public java.nio.channels.FileLock tryLock();
-    public abstract int write(java.nio.ByteBuffer);
-    public abstract long write(java.nio.ByteBuffer[], int, int);
-    public long write(java.nio.ByteBuffer[]);
-    public abstract int write(java.nio.ByteBuffer, long);
-
-
-}
-
--keep class java.nio.channels.FileChannel$MapMode {
-
-    public java.lang.String toString();
-
-
-    public static java.nio.channels.FileChannel$MapMode PRIVATE;
-    public static java.nio.channels.FileChannel$MapMode READ_ONLY;
-    public static java.nio.channels.FileChannel$MapMode READ_WRITE;
-}
-
--keep class java.nio.channels.FileLock {
-    <init>(java.nio.channels.FileChannel, long, long, boolean);
-    <init>(java.nio.channels.AsynchronousFileChannel, long, long, boolean);
-
-    public java.nio.channels.Channel acquiredBy();
-    public java.nio.channels.FileChannel channel();
-    public void close();
-    public boolean isShared();
-    public abstract boolean isValid();
-    public boolean overlaps(long, long);
-    public long position();
-    public abstract void release();
-    public long size();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.nio.channels.NetworkChannel {
-
-    public abstract java.nio.channels.NetworkChannel bind(java.net.SocketAddress);
-    public abstract java.net.SocketAddress getLocalAddress();
-    public abstract java.lang.Object getOption(java.net.SocketOption);
-    public abstract java.nio.channels.NetworkChannel setOption(java.net.SocketOption, java.lang.Object);
-    public abstract java.util.Set supportedOptions();
-
-
-}
-
--keep class java.nio.channels.Pipe {
-    <init>();
-
-    public static java.nio.channels.Pipe open();
-    public abstract java.nio.channels.Pipe$SinkChannel sink();
-    public abstract java.nio.channels.Pipe$SourceChannel source();
-
-
-}
-
--keep class java.nio.channels.Pipe$SinkChannel {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    public int validOps();
-
-
-}
-
--keep class java.nio.channels.Pipe$SourceChannel {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    public int validOps();
-
-
-}
-
--keep class java.nio.channels.ReadableByteChannel {
-
-    public abstract int read(java.nio.ByteBuffer);
-
-
-}
-
--keep class java.nio.channels.SeekableByteChannel {
-
-    public abstract long position();
-    public abstract java.nio.channels.SeekableByteChannel position(long);
-    public abstract int read(java.nio.ByteBuffer);
-    public abstract long size();
-    public abstract java.nio.channels.SeekableByteChannel truncate(long);
-    public abstract int write(java.nio.ByteBuffer);
-
-
-}
-
--keep class java.nio.channels.SelectableChannel {
-    <init>();
-
-    public abstract java.lang.Object blockingLock();
-    public abstract java.nio.channels.SelectableChannel configureBlocking(boolean);
-    public abstract boolean isBlocking();
-    public abstract boolean isRegistered();
-    public abstract java.nio.channels.SelectionKey keyFor(java.nio.channels.Selector);
-    public abstract java.nio.channels.spi.SelectorProvider provider();
-    public abstract java.nio.channels.SelectionKey register(java.nio.channels.Selector, int, java.lang.Object);
-    public java.nio.channels.SelectionKey register(java.nio.channels.Selector, int);
-    public abstract int validOps();
-
-
-}
-
--keep class java.nio.channels.SelectionKey {
-    <init>();
-
-    public java.lang.Object attach(java.lang.Object);
-    public java.lang.Object attachment();
-    public abstract void cancel();
-    public abstract java.nio.channels.SelectableChannel channel();
-    public abstract int interestOps();
-    public abstract java.nio.channels.SelectionKey interestOps(int);
-    public boolean isAcceptable();
-    public boolean isConnectable();
-    public boolean isReadable();
-    public abstract boolean isValid();
-    public boolean isWritable();
-    public abstract int readyOps();
-    public abstract java.nio.channels.Selector selector();
-
-
-    public static int OP_ACCEPT;
-    public static int OP_CONNECT;
-    public static int OP_READ;
-    public static int OP_WRITE;
-}
-
--keep class java.nio.channels.Selector {
-    <init>();
-
-    public abstract void close();
-    public abstract boolean isOpen();
-    public abstract java.util.Set keys();
-    public static java.nio.channels.Selector open();
-    public abstract java.nio.channels.spi.SelectorProvider provider();
-    public abstract int select(long);
-    public abstract int select();
-    public abstract int selectNow();
-    public abstract java.util.Set selectedKeys();
-    public abstract java.nio.channels.Selector wakeup();
-
-
-}
-
--keep class java.nio.channels.ServerSocketChannel {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    public abstract java.nio.channels.SocketChannel accept();
-    public java.nio.channels.ServerSocketChannel bind(java.net.SocketAddress);
-    public abstract java.nio.channels.ServerSocketChannel bind(java.net.SocketAddress, int);
-    public java.nio.channels.NetworkChannel bind(java.net.SocketAddress);
-    public abstract java.net.SocketAddress getLocalAddress();
-    public static java.nio.channels.ServerSocketChannel open();
-    public abstract java.nio.channels.ServerSocketChannel setOption(java.net.SocketOption, java.lang.Object);
-    public java.nio.channels.NetworkChannel setOption(java.net.SocketOption, java.lang.Object);
-    public abstract java.net.ServerSocket socket();
-    public int validOps();
-
-
-}
-
--keep class java.nio.channels.SocketChannel {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    public abstract java.nio.channels.SocketChannel bind(java.net.SocketAddress);
-    public java.nio.channels.NetworkChannel bind(java.net.SocketAddress);
-    public abstract boolean connect(java.net.SocketAddress);
-    public abstract boolean finishConnect();
-    public abstract java.net.SocketAddress getLocalAddress();
-    public abstract java.net.SocketAddress getRemoteAddress();
-    public abstract boolean isConnected();
-    public abstract boolean isConnectionPending();
-    public static java.nio.channels.SocketChannel open();
-    public static java.nio.channels.SocketChannel open(java.net.SocketAddress);
-    public abstract int read(java.nio.ByteBuffer);
-    public abstract long read(java.nio.ByteBuffer[], int, int);
-    public long read(java.nio.ByteBuffer[]);
-    public abstract java.nio.channels.SocketChannel setOption(java.net.SocketOption, java.lang.Object);
-    public java.nio.channels.NetworkChannel setOption(java.net.SocketOption, java.lang.Object);
-    public abstract java.nio.channels.SocketChannel shutdownInput();
-    public abstract java.nio.channels.SocketChannel shutdownOutput();
-    public abstract java.net.Socket socket();
-    public int validOps();
-    public abstract int write(java.nio.ByteBuffer);
-    public abstract long write(java.nio.ByteBuffer[], int, int);
-    public long write(java.nio.ByteBuffer[]);
-
-
-}
-
--keep class java.nio.channels.WritableByteChannel {
-
-    public abstract int write(java.nio.ByteBuffer);
-
-
-}
-
--keep class java.nio.channels.spi.AbstractInterruptibleChannel {
-    <init>();
-
-    protected void begin();
-    public void close();
-    protected void end(boolean);
-    protected abstract void implCloseChannel();
-    public boolean isOpen();
-
-
-}
-
--keep class java.nio.channels.spi.AbstractSelectableChannel {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    public java.lang.Object blockingLock();
-    public java.nio.channels.SelectableChannel configureBlocking(boolean);
-    protected void implCloseChannel();
-    protected abstract void implCloseSelectableChannel();
-    protected abstract void implConfigureBlocking(boolean);
-    public boolean isBlocking();
-    public boolean isRegistered();
-    public java.nio.channels.SelectionKey keyFor(java.nio.channels.Selector);
-    public java.nio.channels.spi.SelectorProvider provider();
-    public java.nio.channels.SelectionKey register(java.nio.channels.Selector, int, java.lang.Object);
-
-
-}
-
--keep class java.nio.channels.spi.AbstractSelectionKey {
-    <init>();
-
-    public void cancel();
-    public boolean isValid();
-
-
-}
-
--keep class java.nio.channels.spi.AbstractSelector {
-    <init>(java.nio.channels.spi.SelectorProvider);
-
-    protected void begin();
-    protected java.util.Set cancelledKeys();
-    public void close();
-    protected void deregister(java.nio.channels.spi.AbstractSelectionKey);
-    protected void end();
-    protected abstract void implCloseSelector();
-    public boolean isOpen();
-    public java.nio.channels.spi.SelectorProvider provider();
-    protected abstract java.nio.channels.SelectionKey register(java.nio.channels.spi.AbstractSelectableChannel, int, java.lang.Object);
-
-
-}
-
--keep class java.nio.channels.spi.SelectorProvider {
-    <init>();
-
-    public java.nio.channels.Channel inheritedChannel();
-    public abstract java.nio.channels.DatagramChannel openDatagramChannel();
-    public abstract java.nio.channels.DatagramChannel openDatagramChannel(java.net.ProtocolFamily);
-    public abstract java.nio.channels.Pipe openPipe();
-    public abstract java.nio.channels.spi.AbstractSelector openSelector();
-    public abstract java.nio.channels.ServerSocketChannel openServerSocketChannel();
-    public abstract java.nio.channels.SocketChannel openSocketChannel();
-    public static java.nio.channels.spi.SelectorProvider provider();
-
-
-}
-
--keep class java.nio.charset.CharacterCodingException {
-    <init>();
-
-
-
-}
-
--keep class java.nio.charset.Charset {
-    <init>(java.lang.String, java.lang.String[]);
-
-    public java.util.Set aliases();
-    public static java.util.SortedMap availableCharsets();
-    public boolean canEncode();
-    public int compareTo(java.nio.charset.Charset);
-    public int compareTo(java.lang.Object);
-    public abstract boolean contains(java.nio.charset.Charset);
-    public java.nio.CharBuffer decode(java.nio.ByteBuffer);
-    public static java.nio.charset.Charset defaultCharset();
-    public java.lang.String displayName();
-    public java.lang.String displayName(java.util.Locale);
-    public java.nio.ByteBuffer encode(java.nio.CharBuffer);
-    public java.nio.ByteBuffer encode(java.lang.String);
-    public boolean equals(java.lang.Object);
-    public static java.nio.charset.Charset forName(java.lang.String);
-    public static java.nio.charset.Charset forNameUEE(java.lang.String);
-    public int hashCode();
-    public boolean isRegistered();
-    public static boolean isSupported(java.lang.String);
-    public java.lang.String name();
-    public abstract java.nio.charset.CharsetDecoder newDecoder();
-    public abstract java.nio.charset.CharsetEncoder newEncoder();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.nio.charset.CharsetDecoder {
-    <init>(java.nio.charset.Charset, float, float);
-
-    public float averageCharsPerByte();
-    public java.nio.charset.Charset charset();
-    public java.nio.charset.CoderResult decode(java.nio.ByteBuffer, java.nio.CharBuffer, boolean);
-    public java.nio.CharBuffer decode(java.nio.ByteBuffer);
-    protected abstract java.nio.charset.CoderResult decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
-    public java.nio.charset.Charset detectedCharset();
-    public java.nio.charset.CoderResult flush(java.nio.CharBuffer);
-    protected java.nio.charset.CoderResult implFlush(java.nio.CharBuffer);
-    protected void implOnMalformedInput(java.nio.charset.CodingErrorAction);
-    protected void implOnUnmappableCharacter(java.nio.charset.CodingErrorAction);
-    protected void implReplaceWith(java.lang.String);
-    protected void implReset();
-    public boolean isAutoDetecting();
-    public boolean isCharsetDetected();
-    public java.nio.charset.CodingErrorAction malformedInputAction();
-    public float maxCharsPerByte();
-    public java.nio.charset.CharsetDecoder onMalformedInput(java.nio.charset.CodingErrorAction);
-    public java.nio.charset.CharsetDecoder onUnmappableCharacter(java.nio.charset.CodingErrorAction);
-    public java.nio.charset.CharsetDecoder replaceWith(java.lang.String);
-    public java.lang.String replacement();
-    public java.nio.charset.CharsetDecoder reset();
-    public java.nio.charset.CodingErrorAction unmappableCharacterAction();
-
-
-}
-
--keep class java.nio.charset.CharsetEncoder {
-    <init>(java.nio.charset.Charset, float, float, byte[]);
-    <init>(java.nio.charset.Charset, float, float);
-
-    public float averageBytesPerChar();
-    public boolean canEncode(char);
-    public boolean canEncode(java.lang.CharSequence);
-    public java.nio.charset.Charset charset();
-    public java.nio.charset.CoderResult encode(java.nio.CharBuffer, java.nio.ByteBuffer, boolean);
-    public java.nio.ByteBuffer encode(java.nio.CharBuffer);
-    protected abstract java.nio.charset.CoderResult encodeLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
-    public java.nio.charset.CoderResult flush(java.nio.ByteBuffer);
-    protected java.nio.charset.CoderResult implFlush(java.nio.ByteBuffer);
-    protected void implOnMalformedInput(java.nio.charset.CodingErrorAction);
-    protected void implOnUnmappableCharacter(java.nio.charset.CodingErrorAction);
-    protected void implReplaceWith(byte[]);
-    protected void implReset();
-    public boolean isLegalReplacement(byte[]);
-    public java.nio.charset.CodingErrorAction malformedInputAction();
-    public float maxBytesPerChar();
-    public java.nio.charset.CharsetEncoder onMalformedInput(java.nio.charset.CodingErrorAction);
-    public java.nio.charset.CharsetEncoder onUnmappableCharacter(java.nio.charset.CodingErrorAction);
-    public java.nio.charset.CharsetEncoder replaceWith(byte[]);
-    public byte[] replacement();
-    public java.nio.charset.CharsetEncoder reset();
-    public java.nio.charset.CodingErrorAction unmappableCharacterAction();
-
-
-}
-
--keep class java.nio.charset.CoderResult {
-
-    public boolean isError();
-    public boolean isMalformed();
-    public boolean isOverflow();
-    public boolean isUnderflow();
-    public boolean isUnmappable();
-    public int length();
-    public static java.nio.charset.CoderResult malformedForLength(int);
-    public void throwException();
-    public java.lang.String toString();
-    public static java.nio.charset.CoderResult unmappableForLength(int);
-
-
-    public static java.nio.charset.CoderResult OVERFLOW;
-    public static java.nio.charset.CoderResult UNDERFLOW;
-}
-
--keep class java.nio.charset.CodingErrorAction {
-
-    public java.lang.String toString();
-
-
-    public static java.nio.charset.CodingErrorAction IGNORE;
-    public static java.nio.charset.CodingErrorAction REPLACE;
-    public static java.nio.charset.CodingErrorAction REPORT;
-}
-
--keep class java.nio.file.AccessMode {
-
-    public static java.nio.file.AccessMode valueOf(java.lang.String);
-    public static java.nio.file.AccessMode[] values();
-
-    public static java.nio.file.AccessMode EXECUTE;
-    public static java.nio.file.AccessMode READ;
-    public static java.nio.file.AccessMode WRITE;
-
-}
-
--keep class java.nio.file.CopyOption {
-
-
-
-}
-
--keep class java.nio.file.DirectoryStream {
-
-    public abstract java.util.Iterator iterator();
-
-
-}
-
--keep class java.nio.file.DirectoryStream$Filter {
-
-    public abstract boolean accept(java.lang.Object);
-
-
-}
-
--keep class java.nio.file.FileStore {
-    <init>();
-
-    public abstract java.lang.Object getAttribute(java.lang.String);
-    public abstract java.nio.file.attribute.FileStoreAttributeView getFileStoreAttributeView(java.lang.Class);
-    public abstract long getTotalSpace();
-    public abstract long getUnallocatedSpace();
-    public abstract long getUsableSpace();
-    public abstract boolean isReadOnly();
-    public abstract java.lang.String name();
-    public abstract boolean supportsFileAttributeView(java.lang.Class);
-    public abstract boolean supportsFileAttributeView(java.lang.String);
-    public abstract java.lang.String type();
-
-
-}
-
--keep class java.nio.file.FileSystem {
-    <init>();
-
-    public abstract void close();
-    public abstract java.lang.Iterable getFileStores();
-    public abstract java.nio.file.Path getPath(java.lang.String, java.lang.String[]);
-    public abstract java.nio.file.PathMatcher getPathMatcher(java.lang.String);
-    public abstract java.lang.Iterable getRootDirectories();
-    public abstract java.lang.String getSeparator();
-    public abstract java.nio.file.attribute.UserPrincipalLookupService getUserPrincipalLookupService();
-    public abstract boolean isOpen();
-    public abstract boolean isReadOnly();
-    public abstract java.nio.file.WatchService newWatchService();
-    public abstract java.nio.file.spi.FileSystemProvider provider();
-    public abstract java.util.Set supportedFileAttributeViews();
-
-
-}
-
--keep class java.nio.file.LinkOption {
-
-    public static java.nio.file.LinkOption valueOf(java.lang.String);
-    public static java.nio.file.LinkOption[] values();
-
-    public static java.nio.file.LinkOption NOFOLLOW_LINKS;
-
-}
-
--keep class java.nio.file.OpenOption {
-
-
-
-}
-
--keep class java.nio.file.Path {
-
-    public abstract int compareTo(java.nio.file.Path);
-    public int compareTo(java.lang.Object);
-    public abstract boolean endsWith(java.nio.file.Path);
-    public abstract boolean endsWith(java.lang.String);
-    public abstract boolean equals(java.lang.Object);
-    public abstract java.nio.file.Path getFileName();
-    public abstract java.nio.file.FileSystem getFileSystem();
-    public abstract java.nio.file.Path getName(int);
-    public abstract int getNameCount();
-    public abstract java.nio.file.Path getParent();
-    public abstract java.nio.file.Path getRoot();
-    public abstract int hashCode();
-    public abstract boolean isAbsolute();
-    public abstract java.util.Iterator iterator();
-    public abstract java.nio.file.Path normalize();
-    public abstract java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent$Kind[], java.nio.file.WatchEvent$Modifier[]);
-    public abstract java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent$Kind[]);
-    public abstract java.nio.file.Path relativize(java.nio.file.Path);
-    public abstract java.nio.file.Path resolve(java.nio.file.Path);
-    public abstract java.nio.file.Path resolve(java.lang.String);
-    public abstract java.nio.file.Path resolveSibling(java.nio.file.Path);
-    public abstract java.nio.file.Path resolveSibling(java.lang.String);
-    public abstract boolean startsWith(java.nio.file.Path);
-    public abstract boolean startsWith(java.lang.String);
-    public abstract java.nio.file.Path subpath(int, int);
-    public abstract java.nio.file.Path toAbsolutePath();
-    public abstract java.io.File toFile();
-    public abstract java.nio.file.Path toRealPath(java.nio.file.LinkOption[]);
-    public abstract java.lang.String toString();
-    public abstract java.net.URI toUri();
-
-
-}
-
--keep class java.nio.file.PathMatcher {
-
-    public abstract boolean matches(java.nio.file.Path);
-
-
-}
-
--keep class java.nio.file.WatchEvent {
-
-    public abstract java.lang.Object context();
-    public abstract int count();
-    public abstract java.nio.file.WatchEvent$Kind kind();
-
-
-}
-
--keep class java.nio.file.WatchEvent$Kind {
-
-    public abstract java.lang.String name();
-    public abstract java.lang.Class type();
-
-
-}
-
--keep class java.nio.file.WatchEvent$Modifier {
-
-    public abstract java.lang.String name();
-
-
-}
-
--keep class java.nio.file.WatchKey {
-
-    public abstract void cancel();
-    public abstract boolean isValid();
-    public abstract java.util.List pollEvents();
-    public abstract boolean reset();
-    public abstract java.nio.file.Watchable watchable();
-
-
-}
-
--keep class java.nio.file.WatchService {
-
-    public abstract void close();
-    public abstract java.nio.file.WatchKey poll();
-    public abstract java.nio.file.WatchKey poll(long, java.util.concurrent.TimeUnit);
-    public abstract java.nio.file.WatchKey take();
-
-
-}
-
--keep class java.nio.file.Watchable {
-
-    public abstract java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent$Kind[], java.nio.file.WatchEvent$Modifier[]);
-    public abstract java.nio.file.WatchKey register(java.nio.file.WatchService, java.nio.file.WatchEvent$Kind[]);
-
-
-}
-
--keep class java.nio.file.attribute.BasicFileAttributes {
-
-    public abstract java.nio.file.attribute.FileTime creationTime();
-    public abstract java.lang.Object fileKey();
-    public abstract boolean isDirectory();
-    public abstract boolean isOther();
-    public abstract boolean isRegularFile();
-    public abstract boolean isSymbolicLink();
-    public abstract java.nio.file.attribute.FileTime lastAccessTime();
-    public abstract java.nio.file.attribute.FileTime lastModifiedTime();
-    public abstract long size();
-
-
-}
-
--keep class java.nio.file.attribute.FileAttribute {
-
-    public abstract java.lang.String name();
-    public abstract java.lang.Object value();
-
-
-}
-
--keep class java.nio.file.attribute.FileAttributeView {
-
-
-
-}
-
--keep class java.nio.file.attribute.FileStoreAttributeView {
-
-
-
-}
-
--keep class java.nio.file.attribute.FileTime {
-
-    public int compareTo(java.nio.file.attribute.FileTime);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public static java.nio.file.attribute.FileTime from(long, java.util.concurrent.TimeUnit);
-    public static java.nio.file.attribute.FileTime from(java.time.Instant);
-    public static java.nio.file.attribute.FileTime fromMillis(long);
-    public int hashCode();
-    public long to(java.util.concurrent.TimeUnit);
-    public java.time.Instant toInstant();
-    public long toMillis();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.nio.file.attribute.GroupPrincipal {
-
-
-
-}
-
--keep class java.nio.file.attribute.UserPrincipal {
-
-
-
-}
-
--keep class java.nio.file.attribute.UserPrincipalLookupService {
-    <init>();
-
-    public abstract java.nio.file.attribute.GroupPrincipal lookupPrincipalByGroupName(java.lang.String);
-    public abstract java.nio.file.attribute.UserPrincipal lookupPrincipalByName(java.lang.String);
-
-
-}
-
--keep class java.nio.file.spi.FileSystemProvider {
-    <init>();
-
-    public abstract void checkAccess(java.nio.file.Path, java.nio.file.AccessMode[]);
-    public abstract void copy(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption[]);
-    public abstract void createDirectory(java.nio.file.Path, java.nio.file.attribute.FileAttribute[]);
-    public void createLink(java.nio.file.Path, java.nio.file.Path);
-    public void createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute[]);
-    public abstract void delete(java.nio.file.Path);
-    public boolean deleteIfExists(java.nio.file.Path);
-    public abstract java.nio.file.attribute.FileAttributeView getFileAttributeView(java.nio.file.Path, java.lang.Class, java.nio.file.LinkOption[]);
-    public abstract java.nio.file.FileStore getFileStore(java.nio.file.Path);
-    public abstract java.nio.file.FileSystem getFileSystem(java.net.URI);
-    public abstract java.nio.file.Path getPath(java.net.URI);
-    public abstract java.lang.String getScheme();
-    public static java.util.List installedProviders();
-    public abstract boolean isHidden(java.nio.file.Path);
-    public abstract boolean isSameFile(java.nio.file.Path, java.nio.file.Path);
-    public abstract void move(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption[]);
-    public java.nio.channels.AsynchronousFileChannel newAsynchronousFileChannel(java.nio.file.Path, java.util.Set, java.util.concurrent.ExecutorService, java.nio.file.attribute.FileAttribute[]);
-    public abstract java.nio.channels.SeekableByteChannel newByteChannel(java.nio.file.Path, java.util.Set, java.nio.file.attribute.FileAttribute[]);
-    public abstract java.nio.file.DirectoryStream newDirectoryStream(java.nio.file.Path, java.nio.file.DirectoryStream$Filter);
-    public java.nio.channels.FileChannel newFileChannel(java.nio.file.Path, java.util.Set, java.nio.file.attribute.FileAttribute[]);
-    public abstract java.nio.file.FileSystem newFileSystem(java.net.URI, java.util.Map);
-    public java.nio.file.FileSystem newFileSystem(java.nio.file.Path, java.util.Map);
-    public java.io.InputStream newInputStream(java.nio.file.Path, java.nio.file.OpenOption[]);
-    public java.io.OutputStream newOutputStream(java.nio.file.Path, java.nio.file.OpenOption[]);
-    public abstract java.nio.file.attribute.BasicFileAttributes readAttributes(java.nio.file.Path, java.lang.Class, java.nio.file.LinkOption[]);
-    public abstract java.util.Map readAttributes(java.nio.file.Path, java.lang.String, java.nio.file.LinkOption[]);
-    public java.nio.file.Path readSymbolicLink(java.nio.file.Path);
-    public abstract void setAttribute(java.nio.file.Path, java.lang.String, java.lang.Object, java.nio.file.LinkOption[]);
-
-
-}
-
--keep class java.security.AccessControlContext {
-    <init>(java.security.ProtectionDomain[]);
-    <init>(java.security.AccessControlContext, java.security.DomainCombiner);
-
-    public void checkPermission(java.security.Permission);
-    public java.security.DomainCombiner getDomainCombiner();
-
-
-}
-
--keep class java.security.AccessControlException {
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.security.Permission);
-
-    public java.security.Permission getPermission();
-
-
-}
-
--keep class java.security.CodeSigner {
-    <init>(java.security.cert.CertPath, java.security.Timestamp);
-
-    public boolean equals(java.lang.Object);
-    public java.security.cert.CertPath getSignerCertPath();
-    public java.security.Timestamp getTimestamp();
-    public int hashCode();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.security.CodeSource {
-    <init>(java.net.URL, java.security.cert.Certificate[]);
-    <init>(java.net.URL, java.security.CodeSigner[]);
-
-    public java.security.cert.Certificate[] getCertificates();
-    public java.security.CodeSigner[] getCodeSigners();
-    public java.net.URL getLocation();
-    public boolean implies(java.security.CodeSource);
-
-
-}
-
--keep class java.security.DomainCombiner {
-
-    public abstract java.security.ProtectionDomain[] combine(java.security.ProtectionDomain[], java.security.ProtectionDomain[]);
-
-
-}
-
--keep class java.security.GeneralSecurityException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.InvalidKeyException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.KeyException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.NoSuchAlgorithmException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.NoSuchProviderException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.security.Permission {
-    <init>(java.lang.String);
-
-    public void checkGuard(java.lang.Object);
-    public abstract java.lang.String getActions();
-    public java.lang.String getName();
-    public abstract boolean implies(java.security.Permission);
-    public java.security.PermissionCollection newPermissionCollection();
-
-
-}
-
--keep class java.security.PermissionCollection {
-    <init>();
-
-    public abstract void add(java.security.Permission);
-    public abstract java.util.Enumeration elements();
-    public abstract boolean implies(java.security.Permission);
-    public boolean isReadOnly();
-    public void setReadOnly();
-
-
-}
-
--keep class java.security.Principal {
-
-    public abstract boolean equals(java.lang.Object);
-    public abstract java.lang.String getName();
-    public abstract int hashCode();
-    public boolean implies(javax.security.auth.Subject);
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.security.PrivilegedAction {
-
-    public abstract java.lang.Object run();
-
-
-}
-
--keep class java.security.PrivilegedActionException {
-    <init>(java.lang.Exception);
-
-    public java.lang.Throwable getCause();
-    public java.lang.Exception getException();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.security.PrivilegedExceptionAction {
-
-    public abstract java.lang.Object run();
-
-
-}
-
--keep class java.security.ProtectionDomain {
-    <init>(java.security.CodeSource, java.security.PermissionCollection);
-    <init>(java.security.CodeSource, java.security.PermissionCollection, java.lang.ClassLoader, java.security.Principal[]);
-
-    public java.lang.ClassLoader getClassLoader();
-    public java.security.CodeSource getCodeSource();
-    public java.security.PermissionCollection getPermissions();
-    public java.security.Principal[] getPrincipals();
-    public boolean implies(java.security.Permission);
-
-
-}
-
--keep class java.security.Provider {
-    <init>(java.lang.String, double, java.lang.String);
-
-    public synchronized void clear();
-    public synchronized java.lang.Object compute(java.lang.Object, java.util.function.BiFunction);
-    public synchronized java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function);
-    public synchronized java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction);
-    public java.util.Enumeration elements();
-    public synchronized java.util.Set entrySet();
-    public synchronized void forEach(java.util.function.BiConsumer);
-    public java.lang.Object get(java.lang.Object);
-    public java.lang.String getInfo();
-    public java.lang.String getName();
-    public synchronized java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
-    public java.lang.String getProperty(java.lang.String);
-    public synchronized java.security.Provider$Service getService(java.lang.String, java.lang.String);
-    public synchronized java.util.Set getServices();
-    public double getVersion();
-    public boolean isRegistered();
-    public java.util.Set keySet();
-    public java.util.Enumeration keys();
-    public synchronized void load(java.io.InputStream);
-    public synchronized java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction);
-    public synchronized java.lang.Object put(java.lang.Object, java.lang.Object);
-    public synchronized void putAll(java.util.Map);
-    public synchronized java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
-    protected synchronized void putService(java.security.Provider$Service);
-    public synchronized java.lang.Object remove(java.lang.Object);
-    public synchronized boolean remove(java.lang.Object, java.lang.Object);
-    protected synchronized void removeService(java.security.Provider$Service);
-    public synchronized boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
-    public synchronized java.lang.Object replace(java.lang.Object, java.lang.Object);
-    public synchronized void replaceAll(java.util.function.BiFunction);
-    public void setRegistered();
-    public void setUnregistered();
-    public java.lang.String toString();
-    public java.util.Collection values();
-    public synchronized void warmUpServiceProvision();
-
-
-}
-
--keep class java.security.Provider$Service {
-    <init>(java.security.Provider, java.lang.String, java.lang.String, java.lang.String, java.util.List, java.util.Map);
-
-    public java.lang.String getAlgorithm();
-    public java.lang.String getAttribute(java.lang.String);
-    public java.lang.String getClassName();
-    public java.security.Provider getProvider();
-    public java.lang.String getType();
-    public java.lang.Object newInstance(java.lang.Object);
-    public boolean supportsParameter(java.lang.Object);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.security.PublicKey {
-
-
-
-    public static long serialVersionUID;
-}
-
--keep class java.security.SignatureException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.Timestamp {
-    <init>(java.util.Date, java.security.cert.CertPath);
-
-    public boolean equals(java.lang.Object);
-    public java.security.cert.CertPath getSignerCertPath();
-    public java.util.Date getTimestamp();
-    public int hashCode();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.security.cert.CRL {
-    <init>(java.lang.String);
-
-    public java.lang.String getType();
-    public abstract boolean isRevoked(java.security.cert.Certificate);
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.security.cert.CRLException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.cert.CertPath {
-    <init>(java.lang.String);
-
-    public boolean equals(java.lang.Object);
-    public abstract java.util.List getCertificates();
-    public abstract byte[] getEncoded();
-    public abstract byte[] getEncoded(java.lang.String);
-    public abstract java.util.Iterator getEncodings();
-    public java.lang.String getType();
-    public int hashCode();
-    public java.lang.String toString();
-    protected java.lang.Object writeReplace();
-
-
-}
-
--keep class java.security.cert.Certificate {
-    <init>(java.lang.String);
-
-    public boolean equals(java.lang.Object);
-    public abstract byte[] getEncoded();
-    public abstract java.security.PublicKey getPublicKey();
-    public java.lang.String getType();
-    public int hashCode();
-    public abstract java.lang.String toString();
-    public abstract void verify(java.security.PublicKey);
-    public abstract void verify(java.security.PublicKey, java.lang.String);
-    public void verify(java.security.PublicKey, java.security.Provider);
-    protected java.lang.Object writeReplace();
-
-
-}
-
--keep class java.security.cert.CertificateEncodingException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.cert.CertificateException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.security.cert.CertificateFactory {
-    <init>(java.security.cert.CertificateFactorySpi, java.security.Provider, java.lang.String);
-
-    public java.security.cert.CRL generateCRL(java.io.InputStream);
-    public java.util.Collection generateCRLs(java.io.InputStream);
-    public java.security.cert.CertPath generateCertPath(java.io.InputStream);
-    public java.security.cert.CertPath generateCertPath(java.io.InputStream, java.lang.String);
-    public java.security.cert.CertPath generateCertPath(java.util.List);
-    public java.security.cert.Certificate generateCertificate(java.io.InputStream);
-    public java.util.Collection generateCertificates(java.io.InputStream);
-    public java.util.Iterator getCertPathEncodings();
-    public static java.security.cert.CertificateFactory getInstance(java.lang.String);
-    public static java.security.cert.CertificateFactory getInstance(java.lang.String, java.lang.String);
-    public static java.security.cert.CertificateFactory getInstance(java.lang.String, java.security.Provider);
-    public java.security.Provider getProvider();
-    public java.lang.String getType();
-
-
-}
-
--keep class java.security.cert.CertificateFactorySpi {
-    <init>();
-
-    public abstract java.security.cert.CRL engineGenerateCRL(java.io.InputStream);
-    public abstract java.util.Collection engineGenerateCRLs(java.io.InputStream);
-    public java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream);
-    public java.security.cert.CertPath engineGenerateCertPath(java.io.InputStream, java.lang.String);
-    public java.security.cert.CertPath engineGenerateCertPath(java.util.List);
-    public abstract java.security.cert.Certificate engineGenerateCertificate(java.io.InputStream);
-    public abstract java.util.Collection engineGenerateCertificates(java.io.InputStream);
-    public java.util.Iterator engineGetCertPathEncodings();
-
-
-}
-
--keep class java.text.AttributedCharacterIterator {
-
-    public abstract java.util.Set getAllAttributeKeys();
-    public abstract java.lang.Object getAttribute(java.text.AttributedCharacterIterator$Attribute);
-    public abstract java.util.Map getAttributes();
-    public abstract int getRunLimit();
-    public abstract int getRunLimit(java.text.AttributedCharacterIterator$Attribute);
-    public abstract int getRunLimit(java.util.Set);
-    public abstract int getRunStart();
-    public abstract int getRunStart(java.text.AttributedCharacterIterator$Attribute);
-    public abstract int getRunStart(java.util.Set);
-
-
-}
-
--keep class java.text.AttributedCharacterIterator$Attribute {
-    <init>(java.lang.String);
-
-    public boolean equals(java.lang.Object);
-    protected java.lang.String getName();
-    public int hashCode();
-    protected java.lang.Object readResolve();
-    public java.lang.String toString();
-
-
-    public static java.text.AttributedCharacterIterator$Attribute INPUT_METHOD_SEGMENT;
-    public static java.text.AttributedCharacterIterator$Attribute LANGUAGE;
-    public static java.text.AttributedCharacterIterator$Attribute READING;
-}
-
--keep class java.text.FieldPosition {
-    <init>(int);
-    <init>(java.text.Format$Field);
-    <init>(java.text.Format$Field, int);
-
-    public boolean equals(java.lang.Object);
-    public int getBeginIndex();
-    public int getEndIndex();
-    public int getField();
-    public java.text.Format$Field getFieldAttribute();
-    public int hashCode();
-    public void setBeginIndex(int);
-    public void setEndIndex(int);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.text.Format {
-    <init>();
-
-    public java.lang.Object clone();
-    public java.lang.String format(java.lang.Object);
-    public abstract java.lang.StringBuffer format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition);
-    public java.text.AttributedCharacterIterator formatToCharacterIterator(java.lang.Object);
-    public abstract java.lang.Object parseObject(java.lang.String, java.text.ParsePosition);
-    public java.lang.Object parseObject(java.lang.String);
-
-
-}
-
--keep class java.text.Format$Field {
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.text.ParseException {
-    <init>(java.lang.String, int);
-
-    public int getErrorOffset();
-
-
-}
-
--keep class java.text.ParsePosition {
-    <init>(int);
-
-    public boolean equals(java.lang.Object);
-    public int getErrorIndex();
-    public int getIndex();
-    public int hashCode();
-    public void setErrorIndex(int);
-    public void setIndex(int);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.time.Clock {
-    <init>();
-
-    public boolean equals(java.lang.Object);
-    public static java.time.Clock fixed(java.time.Instant, java.time.ZoneId);
-    public abstract java.time.ZoneId getZone();
-    public int hashCode();
-    public abstract java.time.Instant instant();
-    public long millis();
-    public static java.time.Clock offset(java.time.Clock, java.time.Duration);
-    public static java.time.Clock system(java.time.ZoneId);
-    public static java.time.Clock systemDefaultZone();
-    public static java.time.Clock systemUTC();
-    public static java.time.Clock tick(java.time.Clock, java.time.Duration);
-    public static java.time.Clock tickMinutes(java.time.ZoneId);
-    public static java.time.Clock tickSeconds(java.time.ZoneId);
-    public abstract java.time.Clock withZone(java.time.ZoneId);
-
-
-}
-
--keep class java.time.DayOfWeek {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public static java.time.DayOfWeek from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public java.lang.String getDisplayName(java.time.format.TextStyle, java.util.Locale);
-    public long getLong(java.time.temporal.TemporalField);
-    public int getValue();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public java.time.DayOfWeek minus(long);
-    public static java.time.DayOfWeek of(int);
-    public java.time.DayOfWeek plus(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public static java.time.DayOfWeek valueOf(java.lang.String);
-    public static java.time.DayOfWeek[] values();
-
-    public static java.time.DayOfWeek FRIDAY;
-    public static java.time.DayOfWeek MONDAY;
-    public static java.time.DayOfWeek SATURDAY;
-    public static java.time.DayOfWeek SUNDAY;
-    public static java.time.DayOfWeek THURSDAY;
-    public static java.time.DayOfWeek TUESDAY;
-    public static java.time.DayOfWeek WEDNESDAY;
-
-}
-
--keep class java.time.Duration {
-
-    public java.time.Duration abs();
-    public java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
-    public static java.time.Duration between(java.time.temporal.Temporal, java.time.temporal.Temporal);
-    public int compareTo(java.time.Duration);
-    public int compareTo(java.lang.Object);
-    public java.time.Duration dividedBy(long);
-    public boolean equals(java.lang.Object);
-    public static java.time.Duration from(java.time.temporal.TemporalAmount);
-    public long get(java.time.temporal.TemporalUnit);
-    public int getNano();
-    public long getSeconds();
-    public java.util.List getUnits();
-    public int hashCode();
-    public boolean isNegative();
-    public boolean isZero();
-    public java.time.Duration minus(java.time.Duration);
-    public java.time.Duration minus(long, java.time.temporal.TemporalUnit);
-    public java.time.Duration minusDays(long);
-    public java.time.Duration minusHours(long);
-    public java.time.Duration minusMillis(long);
-    public java.time.Duration minusMinutes(long);
-    public java.time.Duration minusNanos(long);
-    public java.time.Duration minusSeconds(long);
-    public java.time.Duration multipliedBy(long);
-    public java.time.Duration negated();
-    public static java.time.Duration of(long, java.time.temporal.TemporalUnit);
-    public static java.time.Duration ofDays(long);
-    public static java.time.Duration ofHours(long);
-    public static java.time.Duration ofMillis(long);
-    public static java.time.Duration ofMinutes(long);
-    public static java.time.Duration ofNanos(long);
-    public static java.time.Duration ofSeconds(long);
-    public static java.time.Duration ofSeconds(long, long);
-    public static java.time.Duration parse(java.lang.CharSequence);
-    public java.time.Duration plus(java.time.Duration);
-    public java.time.Duration plus(long, java.time.temporal.TemporalUnit);
-    public java.time.Duration plusDays(long);
-    public java.time.Duration plusHours(long);
-    public java.time.Duration plusMillis(long);
-    public java.time.Duration plusMinutes(long);
-    public java.time.Duration plusNanos(long);
-    public java.time.Duration plusSeconds(long);
-    public java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
-    public long toDays();
-    public long toHours();
-    public long toMillis();
-    public long toMinutes();
-    public long toNanos();
-    public java.lang.String toString();
-    public java.time.Duration withNanos(int);
-    public java.time.Duration withSeconds(long);
-
-
-    public static java.time.Duration ZERO;
-}
-
--keep class java.time.Instant {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.OffsetDateTime atOffset(java.time.ZoneOffset);
-    public java.time.ZonedDateTime atZone(java.time.ZoneId);
-    public int compareTo(java.time.Instant);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public static java.time.Instant from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public long getEpochSecond();
-    public long getLong(java.time.temporal.TemporalField);
-    public int getNano();
-    public int hashCode();
-    public boolean isAfter(java.time.Instant);
-    public boolean isBefore(java.time.Instant);
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.Instant minus(java.time.temporal.TemporalAmount);
-    public java.time.Instant minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.Instant minusMillis(long);
-    public java.time.Instant minusNanos(long);
-    public java.time.Instant minusSeconds(long);
-    public static java.time.Instant now();
-    public static java.time.Instant now(java.time.Clock);
-    public static java.time.Instant ofEpochMilli(long);
-    public static java.time.Instant ofEpochSecond(long);
-    public static java.time.Instant ofEpochSecond(long, long);
-    public static java.time.Instant parse(java.lang.CharSequence);
-    public java.time.Instant plus(java.time.temporal.TemporalAmount);
-    public java.time.Instant plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.Instant plusMillis(long);
-    public java.time.Instant plusNanos(long);
-    public java.time.Instant plusSeconds(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public long toEpochMilli();
-    public java.lang.String toString();
-    public java.time.Instant truncatedTo(java.time.temporal.TemporalUnit);
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.Instant with(java.time.temporal.TemporalAdjuster);
-    public java.time.Instant with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-
-
-    public static java.time.Instant EPOCH;
-    public static java.time.Instant MAX;
-    public static java.time.Instant MIN;
-}
-
--keep class java.time.LocalDate {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.LocalDateTime atStartOfDay();
-    public java.time.ZonedDateTime atStartOfDay(java.time.ZoneId);
-    public java.time.LocalDateTime atTime(java.time.LocalTime);
-    public java.time.LocalDateTime atTime(int, int);
-    public java.time.LocalDateTime atTime(int, int, int);
-    public java.time.LocalDateTime atTime(int, int, int, int);
-    public java.time.OffsetDateTime atTime(java.time.OffsetTime);
-    public java.time.chrono.ChronoLocalDateTime atTime(java.time.LocalTime);
-    public int compareTo(java.time.chrono.ChronoLocalDate);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.LocalDate from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public java.time.chrono.IsoChronology getChronology();
-    public java.time.chrono.Chronology getChronology();
-    public int getDayOfMonth();
-    public java.time.DayOfWeek getDayOfWeek();
-    public int getDayOfYear();
-    public java.time.chrono.Era getEra();
-    public long getLong(java.time.temporal.TemporalField);
-    public java.time.Month getMonth();
-    public int getMonthValue();
-    public int getYear();
-    public int hashCode();
-    public boolean isAfter(java.time.chrono.ChronoLocalDate);
-    public boolean isBefore(java.time.chrono.ChronoLocalDate);
-    public boolean isEqual(java.time.chrono.ChronoLocalDate);
-    public boolean isLeapYear();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public int lengthOfMonth();
-    public int lengthOfYear();
-    public java.time.LocalDate minus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDate minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDate minus(long, java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoLocalDate minus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDate minusDays(long);
-    public java.time.LocalDate minusMonths(long);
-    public java.time.LocalDate minusWeeks(long);
-    public java.time.LocalDate minusYears(long);
-    public static java.time.LocalDate now();
-    public static java.time.LocalDate now(java.time.ZoneId);
-    public static java.time.LocalDate now(java.time.Clock);
-    public static java.time.LocalDate of(int, java.time.Month, int);
-    public static java.time.LocalDate of(int, int, int);
-    public static java.time.LocalDate ofEpochDay(long);
-    public static java.time.LocalDate ofYearDay(int, int);
-    public static java.time.LocalDate parse(java.lang.CharSequence);
-    public static java.time.LocalDate parse(java.lang.CharSequence, java.time.format.DateTimeFormatter);
-    public java.time.LocalDate plus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDate plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDate plus(long, java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoLocalDate plus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDate plusDays(long);
-    public java.time.LocalDate plusMonths(long);
-    public java.time.LocalDate plusWeeks(long);
-    public java.time.LocalDate plusYears(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public long toEpochDay();
-    public java.lang.String toString();
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.Period until(java.time.chrono.ChronoLocalDate);
-    public java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
-    public java.time.LocalDate with(java.time.temporal.TemporalAdjuster);
-    public java.time.LocalDate with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public java.time.chrono.ChronoLocalDate with(java.time.temporal.TemporalField, long);
-    public java.time.chrono.ChronoLocalDate with(java.time.temporal.TemporalAdjuster);
-    public java.time.LocalDate withDayOfMonth(int);
-    public java.time.LocalDate withDayOfYear(int);
-    public java.time.LocalDate withMonth(int);
-    public java.time.LocalDate withYear(int);
-
-
-    public static java.time.LocalDate MAX;
-    public static java.time.LocalDate MIN;
-}
-
--keep class java.time.LocalDateTime {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.OffsetDateTime atOffset(java.time.ZoneOffset);
-    public java.time.ZonedDateTime atZone(java.time.ZoneId);
-    public java.time.chrono.ChronoZonedDateTime atZone(java.time.ZoneId);
-    public int compareTo(java.time.chrono.ChronoLocalDateTime);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.LocalDateTime from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public int getDayOfMonth();
-    public java.time.DayOfWeek getDayOfWeek();
-    public int getDayOfYear();
-    public int getHour();
-    public long getLong(java.time.temporal.TemporalField);
-    public int getMinute();
-    public java.time.Month getMonth();
-    public int getMonthValue();
-    public int getNano();
-    public int getSecond();
-    public int getYear();
-    public int hashCode();
-    public boolean isAfter(java.time.chrono.ChronoLocalDateTime);
-    public boolean isBefore(java.time.chrono.ChronoLocalDateTime);
-    public boolean isEqual(java.time.chrono.ChronoLocalDateTime);
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.LocalDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoLocalDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDateTime minusDays(long);
-    public java.time.LocalDateTime minusHours(long);
-    public java.time.LocalDateTime minusMinutes(long);
-    public java.time.LocalDateTime minusMonths(long);
-    public java.time.LocalDateTime minusNanos(long);
-    public java.time.LocalDateTime minusSeconds(long);
-    public java.time.LocalDateTime minusWeeks(long);
-    public java.time.LocalDateTime minusYears(long);
-    public static java.time.LocalDateTime now();
-    public static java.time.LocalDateTime now(java.time.ZoneId);
-    public static java.time.LocalDateTime now(java.time.Clock);
-    public static java.time.LocalDateTime of(int, java.time.Month, int, int, int);
-    public static java.time.LocalDateTime of(int, java.time.Month, int, int, int, int);
-    public static java.time.LocalDateTime of(int, java.time.Month, int, int, int, int, int);
-    public static java.time.LocalDateTime of(int, int, int, int, int);
-    public static java.time.LocalDateTime of(int, int, int, int, int, int);
-    public static java.time.LocalDateTime of(int, int, int, int, int, int, int);
-    public static java.time.LocalDateTime of(java.time.LocalDate, java.time.LocalTime);
-    public static java.time.LocalDateTime ofEpochSecond(long, int, java.time.ZoneOffset);
-    public static java.time.LocalDateTime ofInstant(java.time.Instant, java.time.ZoneId);
-    public static java.time.LocalDateTime parse(java.lang.CharSequence);
-    public static java.time.LocalDateTime parse(java.lang.CharSequence, java.time.format.DateTimeFormatter);
-    public java.time.LocalDateTime plus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoLocalDateTime plus(java.time.temporal.TemporalAmount);
-    public java.time.LocalDateTime plusDays(long);
-    public java.time.LocalDateTime plusHours(long);
-    public java.time.LocalDateTime plusMinutes(long);
-    public java.time.LocalDateTime plusMonths(long);
-    public java.time.LocalDateTime plusNanos(long);
-    public java.time.LocalDateTime plusSeconds(long);
-    public java.time.LocalDateTime plusWeeks(long);
-    public java.time.LocalDateTime plusYears(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public java.time.LocalDate toLocalDate();
-    public java.time.chrono.ChronoLocalDate toLocalDate();
-    public java.time.LocalTime toLocalTime();
-    public java.lang.String toString();
-    public java.time.LocalDateTime truncatedTo(java.time.temporal.TemporalUnit);
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.LocalDateTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.LocalDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public java.time.chrono.ChronoLocalDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.chrono.ChronoLocalDateTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.LocalDateTime withDayOfMonth(int);
-    public java.time.LocalDateTime withDayOfYear(int);
-    public java.time.LocalDateTime withHour(int);
-    public java.time.LocalDateTime withMinute(int);
-    public java.time.LocalDateTime withMonth(int);
-    public java.time.LocalDateTime withNano(int);
-    public java.time.LocalDateTime withSecond(int);
-    public java.time.LocalDateTime withYear(int);
-
-
-    public static java.time.LocalDateTime MAX;
-    public static java.time.LocalDateTime MIN;
-}
-
--keep class java.time.LocalTime {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.LocalDateTime atDate(java.time.LocalDate);
-    public java.time.OffsetTime atOffset(java.time.ZoneOffset);
-    public int compareTo(java.time.LocalTime);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.LocalTime from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public int getHour();
-    public long getLong(java.time.temporal.TemporalField);
-    public int getMinute();
-    public int getNano();
-    public int getSecond();
-    public int hashCode();
-    public boolean isAfter(java.time.LocalTime);
-    public boolean isBefore(java.time.LocalTime);
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.LocalTime minus(java.time.temporal.TemporalAmount);
-    public java.time.LocalTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.LocalTime minusHours(long);
-    public java.time.LocalTime minusMinutes(long);
-    public java.time.LocalTime minusNanos(long);
-    public java.time.LocalTime minusSeconds(long);
-    public static java.time.LocalTime now();
-    public static java.time.LocalTime now(java.time.ZoneId);
-    public static java.time.LocalTime now(java.time.Clock);
-    public static java.time.LocalTime of(int, int);
-    public static java.time.LocalTime of(int, int, int);
-    public static java.time.LocalTime of(int, int, int, int);
-    public static java.time.LocalTime ofNanoOfDay(long);
-    public static java.time.LocalTime ofSecondOfDay(long);
-    public static java.time.LocalTime parse(java.lang.CharSequence);
-    public static java.time.LocalTime parse(java.lang.CharSequence, java.time.format.DateTimeFormatter);
-    public java.time.LocalTime plus(java.time.temporal.TemporalAmount);
-    public java.time.LocalTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.LocalTime plusHours(long);
-    public java.time.LocalTime plusMinutes(long);
-    public java.time.LocalTime plusNanos(long);
-    public java.time.LocalTime plusSeconds(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public long toNanoOfDay();
-    public int toSecondOfDay();
-    public java.lang.String toString();
-    public java.time.LocalTime truncatedTo(java.time.temporal.TemporalUnit);
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.LocalTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.LocalTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public java.time.LocalTime withHour(int);
-    public java.time.LocalTime withMinute(int);
-    public java.time.LocalTime withNano(int);
-    public java.time.LocalTime withSecond(int);
-
-
-    public static java.time.LocalTime MAX;
-    public static java.time.LocalTime MIDNIGHT;
-    public static java.time.LocalTime MIN;
-    public static java.time.LocalTime NOON;
-}
-
--keep class java.time.Month {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public int firstDayOfYear(boolean);
-    public java.time.Month firstMonthOfQuarter();
-    public static java.time.Month from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public java.lang.String getDisplayName(java.time.format.TextStyle, java.util.Locale);
-    public long getLong(java.time.temporal.TemporalField);
-    public int getValue();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public int length(boolean);
-    public int maxLength();
-    public int minLength();
-    public java.time.Month minus(long);
-    public static java.time.Month of(int);
-    public java.time.Month plus(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public static java.time.Month valueOf(java.lang.String);
-    public static java.time.Month[] values();
-
-    public static java.time.Month APRIL;
-    public static java.time.Month AUGUST;
-    public static java.time.Month DECEMBER;
-    public static java.time.Month FEBRUARY;
-    public static java.time.Month JANUARY;
-    public static java.time.Month JULY;
-    public static java.time.Month JUNE;
-    public static java.time.Month MARCH;
-    public static java.time.Month MAY;
-    public static java.time.Month NOVEMBER;
-    public static java.time.Month OCTOBER;
-    public static java.time.Month SEPTEMBER;
-
-}
-
--keep class java.time.OffsetDateTime {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.ZonedDateTime atZoneSameInstant(java.time.ZoneId);
-    public java.time.ZonedDateTime atZoneSimilarLocal(java.time.ZoneId);
-    public int compareTo(java.time.OffsetDateTime);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.OffsetDateTime from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public int getDayOfMonth();
-    public java.time.DayOfWeek getDayOfWeek();
-    public int getDayOfYear();
-    public int getHour();
-    public long getLong(java.time.temporal.TemporalField);
-    public int getMinute();
-    public java.time.Month getMonth();
-    public int getMonthValue();
-    public int getNano();
-    public java.time.ZoneOffset getOffset();
-    public int getSecond();
-    public int getYear();
-    public int hashCode();
-    public boolean isAfter(java.time.OffsetDateTime);
-    public boolean isBefore(java.time.OffsetDateTime);
-    public boolean isEqual(java.time.OffsetDateTime);
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.OffsetDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetDateTime minusDays(long);
-    public java.time.OffsetDateTime minusHours(long);
-    public java.time.OffsetDateTime minusMinutes(long);
-    public java.time.OffsetDateTime minusMonths(long);
-    public java.time.OffsetDateTime minusNanos(long);
-    public java.time.OffsetDateTime minusSeconds(long);
-    public java.time.OffsetDateTime minusWeeks(long);
-    public java.time.OffsetDateTime minusYears(long);
-    public static java.time.OffsetDateTime now();
-    public static java.time.OffsetDateTime now(java.time.ZoneId);
-    public static java.time.OffsetDateTime now(java.time.Clock);
-    public static java.time.OffsetDateTime of(java.time.LocalDate, java.time.LocalTime, java.time.ZoneOffset);
-    public static java.time.OffsetDateTime of(java.time.LocalDateTime, java.time.ZoneOffset);
-    public static java.time.OffsetDateTime of(int, int, int, int, int, int, int, java.time.ZoneOffset);
-    public static java.time.OffsetDateTime ofInstant(java.time.Instant, java.time.ZoneId);
-    public static java.time.OffsetDateTime parse(java.lang.CharSequence);
-    public static java.time.OffsetDateTime parse(java.lang.CharSequence, java.time.format.DateTimeFormatter);
-    public java.time.OffsetDateTime plus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetDateTime plusDays(long);
-    public java.time.OffsetDateTime plusHours(long);
-    public java.time.OffsetDateTime plusMinutes(long);
-    public java.time.OffsetDateTime plusMonths(long);
-    public java.time.OffsetDateTime plusNanos(long);
-    public java.time.OffsetDateTime plusSeconds(long);
-    public java.time.OffsetDateTime plusWeeks(long);
-    public java.time.OffsetDateTime plusYears(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public static java.util.Comparator timeLineOrder();
-    public long toEpochSecond();
-    public java.time.Instant toInstant();
-    public java.time.LocalDate toLocalDate();
-    public java.time.LocalDateTime toLocalDateTime();
-    public java.time.LocalTime toLocalTime();
-    public java.time.OffsetTime toOffsetTime();
-    public java.lang.String toString();
-    public java.time.ZonedDateTime toZonedDateTime();
-    public java.time.OffsetDateTime truncatedTo(java.time.temporal.TemporalUnit);
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.OffsetDateTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.OffsetDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public java.time.OffsetDateTime withDayOfMonth(int);
-    public java.time.OffsetDateTime withDayOfYear(int);
-    public java.time.OffsetDateTime withHour(int);
-    public java.time.OffsetDateTime withMinute(int);
-    public java.time.OffsetDateTime withMonth(int);
-    public java.time.OffsetDateTime withNano(int);
-    public java.time.OffsetDateTime withOffsetSameInstant(java.time.ZoneOffset);
-    public java.time.OffsetDateTime withOffsetSameLocal(java.time.ZoneOffset);
-    public java.time.OffsetDateTime withSecond(int);
-    public java.time.OffsetDateTime withYear(int);
-
-
-    public static java.time.OffsetDateTime MAX;
-    public static java.time.OffsetDateTime MIN;
-}
-
--keep class java.time.OffsetTime {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.OffsetDateTime atDate(java.time.LocalDate);
-    public int compareTo(java.time.OffsetTime);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.OffsetTime from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public int getHour();
-    public long getLong(java.time.temporal.TemporalField);
-    public int getMinute();
-    public int getNano();
-    public java.time.ZoneOffset getOffset();
-    public int getSecond();
-    public int hashCode();
-    public boolean isAfter(java.time.OffsetTime);
-    public boolean isBefore(java.time.OffsetTime);
-    public boolean isEqual(java.time.OffsetTime);
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.OffsetTime minus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetTime minusHours(long);
-    public java.time.OffsetTime minusMinutes(long);
-    public java.time.OffsetTime minusNanos(long);
-    public java.time.OffsetTime minusSeconds(long);
-    public static java.time.OffsetTime now();
-    public static java.time.OffsetTime now(java.time.ZoneId);
-    public static java.time.OffsetTime now(java.time.Clock);
-    public static java.time.OffsetTime of(java.time.LocalTime, java.time.ZoneOffset);
-    public static java.time.OffsetTime of(int, int, int, int, java.time.ZoneOffset);
-    public static java.time.OffsetTime ofInstant(java.time.Instant, java.time.ZoneId);
-    public static java.time.OffsetTime parse(java.lang.CharSequence);
-    public static java.time.OffsetTime parse(java.lang.CharSequence, java.time.format.DateTimeFormatter);
-    public java.time.OffsetTime plus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.OffsetTime plusHours(long);
-    public java.time.OffsetTime plusMinutes(long);
-    public java.time.OffsetTime plusNanos(long);
-    public java.time.OffsetTime plusSeconds(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public java.time.LocalTime toLocalTime();
-    public java.lang.String toString();
-    public java.time.OffsetTime truncatedTo(java.time.temporal.TemporalUnit);
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.OffsetTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.OffsetTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public java.time.OffsetTime withHour(int);
-    public java.time.OffsetTime withMinute(int);
-    public java.time.OffsetTime withNano(int);
-    public java.time.OffsetTime withOffsetSameInstant(java.time.ZoneOffset);
-    public java.time.OffsetTime withOffsetSameLocal(java.time.ZoneOffset);
-    public java.time.OffsetTime withSecond(int);
-
-
-    public static java.time.OffsetTime MAX;
-    public static java.time.OffsetTime MIN;
-}
-
--keep class java.time.Period {
-
-    public java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
-    public static java.time.Period between(java.time.LocalDate, java.time.LocalDate);
-    public boolean equals(java.lang.Object);
-    public static java.time.Period from(java.time.temporal.TemporalAmount);
-    public long get(java.time.temporal.TemporalUnit);
-    public java.time.chrono.IsoChronology getChronology();
-    public java.time.chrono.Chronology getChronology();
-    public int getDays();
-    public int getMonths();
-    public java.util.List getUnits();
-    public int getYears();
-    public int hashCode();
-    public boolean isNegative();
-    public boolean isZero();
-    public java.time.Period minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoPeriod minus(java.time.temporal.TemporalAmount);
-    public java.time.Period minusDays(long);
-    public java.time.Period minusMonths(long);
-    public java.time.Period minusYears(long);
-    public java.time.Period multipliedBy(int);
-    public java.time.chrono.ChronoPeriod multipliedBy(int);
-    public java.time.Period negated();
-    public java.time.chrono.ChronoPeriod negated();
-    public java.time.Period normalized();
-    public java.time.chrono.ChronoPeriod normalized();
-    public static java.time.Period of(int, int, int);
-    public static java.time.Period ofDays(int);
-    public static java.time.Period ofMonths(int);
-    public static java.time.Period ofWeeks(int);
-    public static java.time.Period ofYears(int);
-    public static java.time.Period parse(java.lang.CharSequence);
-    public java.time.Period plus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoPeriod plus(java.time.temporal.TemporalAmount);
-    public java.time.Period plusDays(long);
-    public java.time.Period plusMonths(long);
-    public java.time.Period plusYears(long);
-    public java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
-    public java.lang.String toString();
-    public long toTotalMonths();
-    public java.time.Period withDays(int);
-    public java.time.Period withMonths(int);
-    public java.time.Period withYears(int);
-
-
-    public static java.time.Period ZERO;
-}
-
--keep class java.time.ZoneId {
-
-    public boolean equals(java.lang.Object);
-    public static java.time.ZoneId from(java.time.temporal.TemporalAccessor);
-    public static java.util.Set getAvailableZoneIds();
-    public java.lang.String getDisplayName(java.time.format.TextStyle, java.util.Locale);
-    public abstract java.lang.String getId();
-    public abstract java.time.zone.ZoneRules getRules();
-    public int hashCode();
-    public java.time.ZoneId normalized();
-    public static java.time.ZoneId of(java.lang.String, java.util.Map);
-    public static java.time.ZoneId of(java.lang.String);
-    public static java.time.ZoneId ofOffset(java.lang.String, java.time.ZoneOffset);
-    public static java.time.ZoneId systemDefault();
-    public java.lang.String toString();
-
-
-    public static java.util.Map SHORT_IDS;
-}
-
--keep class java.time.ZoneOffset {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public int compareTo(java.time.ZoneOffset);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public static java.time.ZoneOffset from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public java.lang.String getId();
-    public long getLong(java.time.temporal.TemporalField);
-    public java.time.zone.ZoneRules getRules();
-    public int getTotalSeconds();
-    public int hashCode();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public static java.time.ZoneOffset of(java.lang.String);
-    public static java.time.ZoneOffset ofHours(int);
-    public static java.time.ZoneOffset ofHoursMinutes(int, int);
-    public static java.time.ZoneOffset ofHoursMinutesSeconds(int, int, int);
-    public static java.time.ZoneOffset ofTotalSeconds(int);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public java.lang.String toString();
-
-
-    public static java.time.ZoneOffset MAX;
-    public static java.time.ZoneOffset MIN;
-    public static java.time.ZoneOffset UTC;
-}
-
--keep class java.time.ZonedDateTime {
-
-    public boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.ZonedDateTime from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public int getDayOfMonth();
-    public java.time.DayOfWeek getDayOfWeek();
-    public int getDayOfYear();
-    public int getHour();
-    public long getLong(java.time.temporal.TemporalField);
-    public int getMinute();
-    public java.time.Month getMonth();
-    public int getMonthValue();
-    public int getNano();
-    public java.time.ZoneOffset getOffset();
-    public int getSecond();
-    public int getYear();
-    public java.time.ZoneId getZone();
-    public int hashCode();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.ZonedDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.ZonedDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoZonedDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoZonedDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.ZonedDateTime minusDays(long);
-    public java.time.ZonedDateTime minusHours(long);
-    public java.time.ZonedDateTime minusMinutes(long);
-    public java.time.ZonedDateTime minusMonths(long);
-    public java.time.ZonedDateTime minusNanos(long);
-    public java.time.ZonedDateTime minusSeconds(long);
-    public java.time.ZonedDateTime minusWeeks(long);
-    public java.time.ZonedDateTime minusYears(long);
-    public static java.time.ZonedDateTime now();
-    public static java.time.ZonedDateTime now(java.time.ZoneId);
-    public static java.time.ZonedDateTime now(java.time.Clock);
-    public static java.time.ZonedDateTime of(java.time.LocalDate, java.time.LocalTime, java.time.ZoneId);
-    public static java.time.ZonedDateTime of(java.time.LocalDateTime, java.time.ZoneId);
-    public static java.time.ZonedDateTime of(int, int, int, int, int, int, int, java.time.ZoneId);
-    public static java.time.ZonedDateTime ofInstant(java.time.Instant, java.time.ZoneId);
-    public static java.time.ZonedDateTime ofInstant(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneId);
-    public static java.time.ZonedDateTime ofLocal(java.time.LocalDateTime, java.time.ZoneId, java.time.ZoneOffset);
-    public static java.time.ZonedDateTime ofStrict(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneId);
-    public static java.time.ZonedDateTime parse(java.lang.CharSequence);
-    public static java.time.ZonedDateTime parse(java.lang.CharSequence, java.time.format.DateTimeFormatter);
-    public java.time.ZonedDateTime plus(java.time.temporal.TemporalAmount);
-    public java.time.ZonedDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoZonedDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoZonedDateTime plus(java.time.temporal.TemporalAmount);
-    public java.time.ZonedDateTime plusDays(long);
-    public java.time.ZonedDateTime plusHours(long);
-    public java.time.ZonedDateTime plusMinutes(long);
-    public java.time.ZonedDateTime plusMonths(long);
-    public java.time.ZonedDateTime plusNanos(long);
-    public java.time.ZonedDateTime plusSeconds(long);
-    public java.time.ZonedDateTime plusWeeks(long);
-    public java.time.ZonedDateTime plusYears(long);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public java.time.LocalDate toLocalDate();
-    public java.time.chrono.ChronoLocalDate toLocalDate();
-    public java.time.LocalDateTime toLocalDateTime();
-    public java.time.chrono.ChronoLocalDateTime toLocalDateTime();
-    public java.time.LocalTime toLocalTime();
-    public java.time.OffsetDateTime toOffsetDateTime();
-    public java.lang.String toString();
-    public java.time.ZonedDateTime truncatedTo(java.time.temporal.TemporalUnit);
-    public long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.ZonedDateTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.ZonedDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public java.time.chrono.ChronoZonedDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.chrono.ChronoZonedDateTime with(java.time.temporal.TemporalAdjuster);
-    public java.time.ZonedDateTime withDayOfMonth(int);
-    public java.time.ZonedDateTime withDayOfYear(int);
-    public java.time.ZonedDateTime withEarlierOffsetAtOverlap();
-    public java.time.chrono.ChronoZonedDateTime withEarlierOffsetAtOverlap();
-    public java.time.ZonedDateTime withFixedOffsetZone();
-    public java.time.ZonedDateTime withHour(int);
-    public java.time.ZonedDateTime withLaterOffsetAtOverlap();
-    public java.time.chrono.ChronoZonedDateTime withLaterOffsetAtOverlap();
-    public java.time.ZonedDateTime withMinute(int);
-    public java.time.ZonedDateTime withMonth(int);
-    public java.time.ZonedDateTime withNano(int);
-    public java.time.ZonedDateTime withSecond(int);
-    public java.time.ZonedDateTime withYear(int);
-    public java.time.ZonedDateTime withZoneSameInstant(java.time.ZoneId);
-    public java.time.chrono.ChronoZonedDateTime withZoneSameInstant(java.time.ZoneId);
-    public java.time.ZonedDateTime withZoneSameLocal(java.time.ZoneId);
-    public java.time.chrono.ChronoZonedDateTime withZoneSameLocal(java.time.ZoneId);
-
-
-}
-
--keep class java.time.chrono.AbstractChronology {
-    <init>();
-
-    public int compareTo(java.time.chrono.Chronology);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public int hashCode();
-    public java.time.chrono.ChronoLocalDate resolveDate(java.util.Map, java.time.format.ResolverStyle);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.time.chrono.ChronoLocalDate {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public java.time.chrono.ChronoLocalDateTime atTime(java.time.LocalTime);
-    public int compareTo(java.time.chrono.ChronoLocalDate);
-    public int compareTo(java.lang.Object);
-    public abstract boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.chrono.ChronoLocalDate from(java.time.temporal.TemporalAccessor);
-    public abstract java.time.chrono.Chronology getChronology();
-    public java.time.chrono.Era getEra();
-    public abstract int hashCode();
-    public boolean isAfter(java.time.chrono.ChronoLocalDate);
-    public boolean isBefore(java.time.chrono.ChronoLocalDate);
-    public boolean isEqual(java.time.chrono.ChronoLocalDate);
-    public boolean isLeapYear();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public abstract int lengthOfMonth();
-    public int lengthOfYear();
-    public java.time.chrono.ChronoLocalDate minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDate minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDate plus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDate plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public static java.util.Comparator timeLineOrder();
-    public long toEpochDay();
-    public abstract java.lang.String toString();
-    public abstract long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public abstract java.time.chrono.ChronoPeriod until(java.time.chrono.ChronoLocalDate);
-    public java.time.chrono.ChronoLocalDate with(java.time.temporal.TemporalAdjuster);
-    public java.time.chrono.ChronoLocalDate with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-
-
-}
-
--keep class java.time.chrono.ChronoLocalDateTime {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public abstract java.time.chrono.ChronoZonedDateTime atZone(java.time.ZoneId);
-    public int compareTo(java.time.chrono.ChronoLocalDateTime);
-    public int compareTo(java.lang.Object);
-    public abstract boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.chrono.ChronoLocalDateTime from(java.time.temporal.TemporalAccessor);
-    public java.time.chrono.Chronology getChronology();
-    public abstract int hashCode();
-    public boolean isAfter(java.time.chrono.ChronoLocalDateTime);
-    public boolean isBefore(java.time.chrono.ChronoLocalDateTime);
-    public boolean isEqual(java.time.chrono.ChronoLocalDateTime);
-    public abstract boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoLocalDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoLocalDateTime plus(java.time.temporal.TemporalAmount);
-    public abstract java.time.chrono.ChronoLocalDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public static java.util.Comparator timeLineOrder();
-    public long toEpochSecond(java.time.ZoneOffset);
-    public java.time.Instant toInstant(java.time.ZoneOffset);
-    public abstract java.time.chrono.ChronoLocalDate toLocalDate();
-    public abstract java.time.LocalTime toLocalTime();
-    public abstract java.lang.String toString();
-    public java.time.chrono.ChronoLocalDateTime with(java.time.temporal.TemporalAdjuster);
-    public abstract java.time.chrono.ChronoLocalDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-
-
-}
-
--keep class java.time.chrono.ChronoPeriod {
-
-    public abstract java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
-    public static java.time.chrono.ChronoPeriod between(java.time.chrono.ChronoLocalDate, java.time.chrono.ChronoLocalDate);
-    public abstract boolean equals(java.lang.Object);
-    public abstract long get(java.time.temporal.TemporalUnit);
-    public abstract java.time.chrono.Chronology getChronology();
-    public abstract java.util.List getUnits();
-    public abstract int hashCode();
-    public boolean isNegative();
-    public boolean isZero();
-    public abstract java.time.chrono.ChronoPeriod minus(java.time.temporal.TemporalAmount);
-    public abstract java.time.chrono.ChronoPeriod multipliedBy(int);
-    public java.time.chrono.ChronoPeriod negated();
-    public abstract java.time.chrono.ChronoPeriod normalized();
-    public abstract java.time.chrono.ChronoPeriod plus(java.time.temporal.TemporalAmount);
-    public abstract java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.time.chrono.ChronoZonedDateTime {
-
-    public int compareTo(java.time.chrono.ChronoZonedDateTime);
-    public int compareTo(java.lang.Object);
-    public abstract boolean equals(java.lang.Object);
-    public java.lang.String format(java.time.format.DateTimeFormatter);
-    public static java.time.chrono.ChronoZonedDateTime from(java.time.temporal.TemporalAccessor);
-    public int get(java.time.temporal.TemporalField);
-    public java.time.chrono.Chronology getChronology();
-    public long getLong(java.time.temporal.TemporalField);
-    public abstract java.time.ZoneOffset getOffset();
-    public abstract java.time.ZoneId getZone();
-    public abstract int hashCode();
-    public boolean isAfter(java.time.chrono.ChronoZonedDateTime);
-    public boolean isBefore(java.time.chrono.ChronoZonedDateTime);
-    public boolean isEqual(java.time.chrono.ChronoZonedDateTime);
-    public abstract boolean isSupported(java.time.temporal.TemporalField);
-    public boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.chrono.ChronoZonedDateTime minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoZonedDateTime minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.chrono.ChronoZonedDateTime plus(java.time.temporal.TemporalAmount);
-    public abstract java.time.chrono.ChronoZonedDateTime plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-    public static java.util.Comparator timeLineOrder();
-    public long toEpochSecond();
-    public java.time.Instant toInstant();
-    public java.time.chrono.ChronoLocalDate toLocalDate();
-    public abstract java.time.chrono.ChronoLocalDateTime toLocalDateTime();
-    public java.time.LocalTime toLocalTime();
-    public abstract java.lang.String toString();
-    public java.time.chrono.ChronoZonedDateTime with(java.time.temporal.TemporalAdjuster);
-    public abstract java.time.chrono.ChronoZonedDateTime with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public abstract java.time.chrono.ChronoZonedDateTime withEarlierOffsetAtOverlap();
-    public abstract java.time.chrono.ChronoZonedDateTime withLaterOffsetAtOverlap();
-    public abstract java.time.chrono.ChronoZonedDateTime withZoneSameInstant(java.time.ZoneId);
-    public abstract java.time.chrono.ChronoZonedDateTime withZoneSameLocal(java.time.ZoneId);
-
-
-}
-
--keep class java.time.chrono.Chronology {
-
-    public abstract int compareTo(java.time.chrono.Chronology);
-    public int compareTo(java.lang.Object);
-    public java.time.chrono.ChronoLocalDate date(java.time.chrono.Era, int, int, int);
-    public abstract java.time.chrono.ChronoLocalDate date(int, int, int);
-    public abstract java.time.chrono.ChronoLocalDate date(java.time.temporal.TemporalAccessor);
-    public abstract java.time.chrono.ChronoLocalDate dateEpochDay(long);
-    public java.time.chrono.ChronoLocalDate dateNow();
-    public java.time.chrono.ChronoLocalDate dateNow(java.time.ZoneId);
-    public java.time.chrono.ChronoLocalDate dateNow(java.time.Clock);
-    public java.time.chrono.ChronoLocalDate dateYearDay(java.time.chrono.Era, int, int);
-    public abstract java.time.chrono.ChronoLocalDate dateYearDay(int, int);
-    public abstract boolean equals(java.lang.Object);
-    public abstract java.time.chrono.Era eraOf(int);
-    public abstract java.util.List eras();
-    public static java.time.chrono.Chronology from(java.time.temporal.TemporalAccessor);
-    public static java.util.Set getAvailableChronologies();
-    public abstract java.lang.String getCalendarType();
-    public java.lang.String getDisplayName(java.time.format.TextStyle, java.util.Locale);
-    public abstract java.lang.String getId();
-    public abstract int hashCode();
-    public abstract boolean isLeapYear(long);
-    public java.time.chrono.ChronoLocalDateTime localDateTime(java.time.temporal.TemporalAccessor);
-    public static java.time.chrono.Chronology of(java.lang.String);
-    public static java.time.chrono.Chronology ofLocale(java.util.Locale);
-    public java.time.chrono.ChronoPeriod period(int, int, int);
-    public abstract int prolepticYear(java.time.chrono.Era, int);
-    public abstract java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
-    public abstract java.time.chrono.ChronoLocalDate resolveDate(java.util.Map, java.time.format.ResolverStyle);
-    public abstract java.lang.String toString();
-    public java.time.chrono.ChronoZonedDateTime zonedDateTime(java.time.temporal.TemporalAccessor);
-    public java.time.chrono.ChronoZonedDateTime zonedDateTime(java.time.Instant, java.time.ZoneId);
-
-
-}
-
--keep class java.time.chrono.Era {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-    public int get(java.time.temporal.TemporalField);
-    public java.lang.String getDisplayName(java.time.format.TextStyle, java.util.Locale);
-    public long getLong(java.time.temporal.TemporalField);
-    public abstract int getValue();
-    public boolean isSupported(java.time.temporal.TemporalField);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-
-
-}
-
--keep class java.time.chrono.IsoChronology {
-
-    public java.time.LocalDate date(java.time.chrono.Era, int, int, int);
-    public java.time.LocalDate date(int, int, int);
-    public java.time.LocalDate date(java.time.temporal.TemporalAccessor);
-    public java.time.chrono.ChronoLocalDate date(java.time.temporal.TemporalAccessor);
-    public java.time.chrono.ChronoLocalDate date(int, int, int);
-    public java.time.chrono.ChronoLocalDate date(java.time.chrono.Era, int, int, int);
-    public java.time.LocalDate dateEpochDay(long);
-    public java.time.chrono.ChronoLocalDate dateEpochDay(long);
-    public java.time.LocalDate dateNow();
-    public java.time.LocalDate dateNow(java.time.ZoneId);
-    public java.time.LocalDate dateNow(java.time.Clock);
-    public java.time.chrono.ChronoLocalDate dateNow(java.time.Clock);
-    public java.time.chrono.ChronoLocalDate dateNow(java.time.ZoneId);
-    public java.time.chrono.ChronoLocalDate dateNow();
-    public java.time.LocalDate dateYearDay(java.time.chrono.Era, int, int);
-    public java.time.LocalDate dateYearDay(int, int);
-    public java.time.chrono.ChronoLocalDate dateYearDay(int, int);
-    public java.time.chrono.ChronoLocalDate dateYearDay(java.time.chrono.Era, int, int);
-    public java.time.chrono.IsoEra eraOf(int);
-    public java.time.chrono.Era eraOf(int);
-    public java.util.List eras();
-    public java.lang.String getCalendarType();
-    public java.lang.String getId();
-    public boolean isLeapYear(long);
-    public java.time.LocalDateTime localDateTime(java.time.temporal.TemporalAccessor);
-    public java.time.chrono.ChronoLocalDateTime localDateTime(java.time.temporal.TemporalAccessor);
-    public java.time.Period period(int, int, int);
-    public java.time.chrono.ChronoPeriod period(int, int, int);
-    public int prolepticYear(java.time.chrono.Era, int);
-    public java.time.temporal.ValueRange range(java.time.temporal.ChronoField);
-    public java.time.LocalDate resolveDate(java.util.Map, java.time.format.ResolverStyle);
-    public java.time.chrono.ChronoLocalDate resolveDate(java.util.Map, java.time.format.ResolverStyle);
-    public java.time.ZonedDateTime zonedDateTime(java.time.temporal.TemporalAccessor);
-    public java.time.ZonedDateTime zonedDateTime(java.time.Instant, java.time.ZoneId);
-    public java.time.chrono.ChronoZonedDateTime zonedDateTime(java.time.Instant, java.time.ZoneId);
-    public java.time.chrono.ChronoZonedDateTime zonedDateTime(java.time.temporal.TemporalAccessor);
-
-
-    public static java.time.chrono.IsoChronology INSTANCE;
-}
-
--keep class java.time.chrono.IsoEra {
-
-    public int getValue();
-    public static java.time.chrono.IsoEra of(int);
-    public static java.time.chrono.IsoEra valueOf(java.lang.String);
-    public static java.time.chrono.IsoEra[] values();
-
-    public static java.time.chrono.IsoEra BCE;
-    public static java.time.chrono.IsoEra CE;
-
-}
-
--keep class java.time.format.DateTimeFormatter {
-
-    public java.lang.String format(java.time.temporal.TemporalAccessor);
-    public void formatTo(java.time.temporal.TemporalAccessor, java.lang.Appendable);
-    public java.time.chrono.Chronology getChronology();
-    public java.time.format.DecimalStyle getDecimalStyle();
-    public java.util.Locale getLocale();
-    public java.util.Set getResolverFields();
-    public java.time.format.ResolverStyle getResolverStyle();
-    public java.time.ZoneId getZone();
-    public static java.time.format.DateTimeFormatter ofLocalizedDate(java.time.format.FormatStyle);
-    public static java.time.format.DateTimeFormatter ofLocalizedDateTime(java.time.format.FormatStyle);
-    public static java.time.format.DateTimeFormatter ofLocalizedDateTime(java.time.format.FormatStyle, java.time.format.FormatStyle);
-    public static java.time.format.DateTimeFormatter ofLocalizedTime(java.time.format.FormatStyle);
-    public static java.time.format.DateTimeFormatter ofPattern(java.lang.String);
-    public static java.time.format.DateTimeFormatter ofPattern(java.lang.String, java.util.Locale);
-    public java.time.temporal.TemporalAccessor parse(java.lang.CharSequence);
-    public java.time.temporal.TemporalAccessor parse(java.lang.CharSequence, java.text.ParsePosition);
-    public java.lang.Object parse(java.lang.CharSequence, java.time.temporal.TemporalQuery);
-    public java.time.temporal.TemporalAccessor parseBest(java.lang.CharSequence, java.time.temporal.TemporalQuery[]);
-    public java.time.temporal.TemporalAccessor parseUnresolved(java.lang.CharSequence, java.text.ParsePosition);
-    public static java.time.temporal.TemporalQuery parsedExcessDays();
-    public static java.time.temporal.TemporalQuery parsedLeapSecond();
-    public java.text.Format toFormat();
-    public java.text.Format toFormat(java.time.temporal.TemporalQuery);
-    public java.lang.String toString();
-    public java.time.format.DateTimeFormatter withChronology(java.time.chrono.Chronology);
-    public java.time.format.DateTimeFormatter withDecimalStyle(java.time.format.DecimalStyle);
-    public java.time.format.DateTimeFormatter withLocale(java.util.Locale);
-    public java.time.format.DateTimeFormatter withResolverFields(java.time.temporal.TemporalField[]);
-    public java.time.format.DateTimeFormatter withResolverFields(java.util.Set);
-    public java.time.format.DateTimeFormatter withResolverStyle(java.time.format.ResolverStyle);
-    public java.time.format.DateTimeFormatter withZone(java.time.ZoneId);
-
-
-    public static java.time.format.DateTimeFormatter BASIC_ISO_DATE;
-    public static java.time.format.DateTimeFormatter ISO_DATE;
-    public static java.time.format.DateTimeFormatter ISO_DATE_TIME;
-    public static java.time.format.DateTimeFormatter ISO_INSTANT;
-    public static java.time.format.DateTimeFormatter ISO_LOCAL_DATE;
-    public static java.time.format.DateTimeFormatter ISO_LOCAL_DATE_TIME;
-    public static java.time.format.DateTimeFormatter ISO_LOCAL_TIME;
-    public static java.time.format.DateTimeFormatter ISO_OFFSET_DATE;
-    public static java.time.format.DateTimeFormatter ISO_OFFSET_DATE_TIME;
-    public static java.time.format.DateTimeFormatter ISO_OFFSET_TIME;
-    public static java.time.format.DateTimeFormatter ISO_ORDINAL_DATE;
-    public static java.time.format.DateTimeFormatter ISO_TIME;
-    public static java.time.format.DateTimeFormatter ISO_WEEK_DATE;
-    public static java.time.format.DateTimeFormatter ISO_ZONED_DATE_TIME;
-    public static java.time.format.DateTimeFormatter RFC_1123_DATE_TIME;
-}
-
--keep class java.time.format.DecimalStyle {
-
-    public boolean equals(java.lang.Object);
-    public static java.util.Set getAvailableLocales();
-    public char getDecimalSeparator();
-    public char getNegativeSign();
-    public char getPositiveSign();
-    public char getZeroDigit();
-    public int hashCode();
-    public static java.time.format.DecimalStyle of(java.util.Locale);
-    public static java.time.format.DecimalStyle ofDefaultLocale();
-    public java.lang.String toString();
-    public java.time.format.DecimalStyle withDecimalSeparator(char);
-    public java.time.format.DecimalStyle withNegativeSign(char);
-    public java.time.format.DecimalStyle withPositiveSign(char);
-    public java.time.format.DecimalStyle withZeroDigit(char);
-
-
-    public static java.time.format.DecimalStyle STANDARD;
-}
-
--keep class java.time.format.FormatStyle {
-
-    public static java.time.format.FormatStyle valueOf(java.lang.String);
-    public static java.time.format.FormatStyle[] values();
-
-    public static java.time.format.FormatStyle FULL;
-    public static java.time.format.FormatStyle LONG;
-    public static java.time.format.FormatStyle MEDIUM;
-    public static java.time.format.FormatStyle SHORT;
-
-}
-
--keep class java.time.format.ResolverStyle {
-
-    public static java.time.format.ResolverStyle valueOf(java.lang.String);
-    public static java.time.format.ResolverStyle[] values();
-
-    public static java.time.format.ResolverStyle LENIENT;
-    public static java.time.format.ResolverStyle SMART;
-    public static java.time.format.ResolverStyle STRICT;
-
-}
-
--keep class java.time.format.TextStyle {
-
-    public java.time.format.TextStyle asNormal();
-    public java.time.format.TextStyle asStandalone();
-    public boolean isStandalone();
-    public static java.time.format.TextStyle valueOf(java.lang.String);
-    public static java.time.format.TextStyle[] values();
-
-    public static java.time.format.TextStyle FULL;
-    public static java.time.format.TextStyle FULL_STANDALONE;
-    public static java.time.format.TextStyle NARROW;
-    public static java.time.format.TextStyle NARROW_STANDALONE;
-    public static java.time.format.TextStyle SHORT;
-    public static java.time.format.TextStyle SHORT_STANDALONE;
-
-}
-
--keep class java.time.temporal.ChronoField {
-
-    public java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal, long);
-    public int checkValidIntValue(long);
-    public long checkValidValue(long);
-    public java.time.temporal.TemporalUnit getBaseUnit();
-    public java.lang.String getDisplayName(java.util.Locale);
-    public long getFrom(java.time.temporal.TemporalAccessor);
-    public java.time.temporal.TemporalUnit getRangeUnit();
-    public boolean isDateBased();
-    public boolean isSupportedBy(java.time.temporal.TemporalAccessor);
-    public boolean isTimeBased();
-    public java.time.temporal.ValueRange range();
-    public java.time.temporal.ValueRange rangeRefinedBy(java.time.temporal.TemporalAccessor);
-    public java.lang.String toString();
-    public static java.time.temporal.ChronoField valueOf(java.lang.String);
-    public static java.time.temporal.ChronoField[] values();
-
-    public static java.time.temporal.ChronoField ALIGNED_DAY_OF_WEEK_IN_MONTH;
-    public static java.time.temporal.ChronoField ALIGNED_DAY_OF_WEEK_IN_YEAR;
-    public static java.time.temporal.ChronoField ALIGNED_WEEK_OF_MONTH;
-    public static java.time.temporal.ChronoField ALIGNED_WEEK_OF_YEAR;
-    public static java.time.temporal.ChronoField AMPM_OF_DAY;
-    public static java.time.temporal.ChronoField CLOCK_HOUR_OF_AMPM;
-    public static java.time.temporal.ChronoField CLOCK_HOUR_OF_DAY;
-    public static java.time.temporal.ChronoField DAY_OF_MONTH;
-    public static java.time.temporal.ChronoField DAY_OF_WEEK;
-    public static java.time.temporal.ChronoField DAY_OF_YEAR;
-    public static java.time.temporal.ChronoField EPOCH_DAY;
-    public static java.time.temporal.ChronoField ERA;
-    public static java.time.temporal.ChronoField HOUR_OF_AMPM;
-    public static java.time.temporal.ChronoField HOUR_OF_DAY;
-    public static java.time.temporal.ChronoField INSTANT_SECONDS;
-    public static java.time.temporal.ChronoField MICRO_OF_DAY;
-    public static java.time.temporal.ChronoField MICRO_OF_SECOND;
-    public static java.time.temporal.ChronoField MILLI_OF_DAY;
-    public static java.time.temporal.ChronoField MILLI_OF_SECOND;
-    public static java.time.temporal.ChronoField MINUTE_OF_DAY;
-    public static java.time.temporal.ChronoField MINUTE_OF_HOUR;
-    public static java.time.temporal.ChronoField MONTH_OF_YEAR;
-    public static java.time.temporal.ChronoField NANO_OF_DAY;
-    public static java.time.temporal.ChronoField NANO_OF_SECOND;
-    public static java.time.temporal.ChronoField OFFSET_SECONDS;
-    public static java.time.temporal.ChronoField PROLEPTIC_MONTH;
-    public static java.time.temporal.ChronoField SECOND_OF_DAY;
-    public static java.time.temporal.ChronoField SECOND_OF_MINUTE;
-    public static java.time.temporal.ChronoField YEAR;
-    public static java.time.temporal.ChronoField YEAR_OF_ERA;
-
-}
-
--keep class java.time.temporal.Temporal {
-
-    public abstract boolean isSupported(java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal minus(java.time.temporal.TemporalAmount);
-    public java.time.temporal.Temporal minus(long, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal plus(java.time.temporal.TemporalAmount);
-    public abstract java.time.temporal.Temporal plus(long, java.time.temporal.TemporalUnit);
-    public abstract long until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit);
-    public java.time.temporal.Temporal with(java.time.temporal.TemporalAdjuster);
-    public abstract java.time.temporal.Temporal with(java.time.temporal.TemporalField, long);
-
-
-}
-
--keep class java.time.temporal.TemporalAccessor {
-
-    public int get(java.time.temporal.TemporalField);
-    public abstract long getLong(java.time.temporal.TemporalField);
-    public abstract boolean isSupported(java.time.temporal.TemporalField);
-    public java.lang.Object query(java.time.temporal.TemporalQuery);
-    public java.time.temporal.ValueRange range(java.time.temporal.TemporalField);
-
-
-}
-
--keep class java.time.temporal.TemporalAdjuster {
-
-    public abstract java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal);
-
-
-}
-
--keep class java.time.temporal.TemporalAmount {
-
-    public abstract java.time.temporal.Temporal addTo(java.time.temporal.Temporal);
-    public abstract long get(java.time.temporal.TemporalUnit);
-    public abstract java.util.List getUnits();
-    public abstract java.time.temporal.Temporal subtractFrom(java.time.temporal.Temporal);
-
-
-}
-
--keep class java.time.temporal.TemporalField {
-
-    public abstract java.time.temporal.Temporal adjustInto(java.time.temporal.Temporal, long);
-    public abstract java.time.temporal.TemporalUnit getBaseUnit();
-    public java.lang.String getDisplayName(java.util.Locale);
-    public abstract long getFrom(java.time.temporal.TemporalAccessor);
-    public abstract java.time.temporal.TemporalUnit getRangeUnit();
-    public abstract boolean isDateBased();
-    public abstract boolean isSupportedBy(java.time.temporal.TemporalAccessor);
-    public abstract boolean isTimeBased();
-    public abstract java.time.temporal.ValueRange range();
-    public abstract java.time.temporal.ValueRange rangeRefinedBy(java.time.temporal.TemporalAccessor);
-    public java.time.temporal.TemporalAccessor resolve(java.util.Map, java.time.temporal.TemporalAccessor, java.time.format.ResolverStyle);
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.time.temporal.TemporalQuery {
-
-    public abstract java.lang.Object queryFrom(java.time.temporal.TemporalAccessor);
-
-
-}
-
--keep class java.time.temporal.TemporalUnit {
-
-    public abstract java.time.temporal.Temporal addTo(java.time.temporal.Temporal, long);
-    public abstract long between(java.time.temporal.Temporal, java.time.temporal.Temporal);
-    public abstract java.time.Duration getDuration();
-    public abstract boolean isDateBased();
-    public abstract boolean isDurationEstimated();
-    public boolean isSupportedBy(java.time.temporal.Temporal);
-    public abstract boolean isTimeBased();
-    public abstract java.lang.String toString();
-
-
-}
-
--keep class java.time.temporal.ValueRange {
-
-    public int checkValidIntValue(long, java.time.temporal.TemporalField);
-    public long checkValidValue(long, java.time.temporal.TemporalField);
-    public boolean equals(java.lang.Object);
-    public long getLargestMinimum();
-    public long getMaximum();
-    public long getMinimum();
-    public long getSmallestMaximum();
-    public int hashCode();
-    public boolean isFixed();
-    public boolean isIntValue();
-    public boolean isValidIntValue(long);
-    public boolean isValidValue(long);
-    public static java.time.temporal.ValueRange of(long, long);
-    public static java.time.temporal.ValueRange of(long, long, long);
-    public static java.time.temporal.ValueRange of(long, long, long, long);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.time.zone.ZoneOffsetTransition {
-
-    public int compareTo(java.time.zone.ZoneOffsetTransition);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public java.time.LocalDateTime getDateTimeAfter();
-    public java.time.LocalDateTime getDateTimeBefore();
-    public java.time.Duration getDuration();
-    public java.time.Instant getInstant();
-    public java.time.ZoneOffset getOffsetAfter();
-    public java.time.ZoneOffset getOffsetBefore();
-    public int hashCode();
-    public boolean isGap();
-    public boolean isOverlap();
-    public boolean isValidOffset(java.time.ZoneOffset);
-    public static java.time.zone.ZoneOffsetTransition of(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneOffset);
-    public long toEpochSecond();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.time.zone.ZoneOffsetTransitionRule {
-
-    public java.time.zone.ZoneOffsetTransition createTransition(int);
-    public boolean equals(java.lang.Object);
-    public int getDayOfMonthIndicator();
-    public java.time.DayOfWeek getDayOfWeek();
-    public java.time.LocalTime getLocalTime();
-    public java.time.Month getMonth();
-    public java.time.ZoneOffset getOffsetAfter();
-    public java.time.ZoneOffset getOffsetBefore();
-    public java.time.ZoneOffset getStandardOffset();
-    public java.time.zone.ZoneOffsetTransitionRule$TimeDefinition getTimeDefinition();
-    public int hashCode();
-    public boolean isMidnightEndOfDay();
-    public static java.time.zone.ZoneOffsetTransitionRule of(java.time.Month, int, java.time.DayOfWeek, java.time.LocalTime, boolean, java.time.zone.ZoneOffsetTransitionRule$TimeDefinition, java.time.ZoneOffset, java.time.ZoneOffset, java.time.ZoneOffset);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.time.zone.ZoneOffsetTransitionRule$TimeDefinition {
-
-    public java.time.LocalDateTime createDateTime(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneOffset);
-    public static java.time.zone.ZoneOffsetTransitionRule$TimeDefinition valueOf(java.lang.String);
-    public static java.time.zone.ZoneOffsetTransitionRule$TimeDefinition[] values();
-
-    public static java.time.zone.ZoneOffsetTransitionRule$TimeDefinition STANDARD;
-    public static java.time.zone.ZoneOffsetTransitionRule$TimeDefinition UTC;
-    public static java.time.zone.ZoneOffsetTransitionRule$TimeDefinition WALL;
-
-}
-
--keep class java.time.zone.ZoneRules {
-
-    public boolean equals(java.lang.Object);
-    public java.time.Duration getDaylightSavings(java.time.Instant);
-    public java.time.ZoneOffset getOffset(java.time.Instant);
-    public java.time.ZoneOffset getOffset(java.time.LocalDateTime);
-    public java.time.ZoneOffset getStandardOffset(java.time.Instant);
-    public java.time.zone.ZoneOffsetTransition getTransition(java.time.LocalDateTime);
-    public java.util.List getTransitionRules();
-    public java.util.List getTransitions();
-    public java.util.List getValidOffsets(java.time.LocalDateTime);
-    public int hashCode();
-    public boolean isDaylightSavings(java.time.Instant);
-    public boolean isFixedOffset();
-    public boolean isValidOffset(java.time.LocalDateTime, java.time.ZoneOffset);
-    public java.time.zone.ZoneOffsetTransition nextTransition(java.time.Instant);
-    public static java.time.zone.ZoneRules of(java.time.ZoneOffset, java.time.ZoneOffset, java.util.List, java.util.List, java.util.List);
-    public static java.time.zone.ZoneRules of(java.time.ZoneOffset);
-    public java.time.zone.ZoneOffsetTransition previousTransition(java.time.Instant);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.AbstractCollection {
-    <init>();
-
-    public boolean add(java.lang.Object);
-    public boolean addAll(java.util.Collection);
-    public void clear();
-    public boolean contains(java.lang.Object);
-    public boolean containsAll(java.util.Collection);
-    public boolean isEmpty();
-    public abstract java.util.Iterator iterator();
-    public boolean remove(java.lang.Object);
-    public boolean removeAll(java.util.Collection);
-    public boolean retainAll(java.util.Collection);
-    public abstract int size();
-    public java.lang.Object[] toArray();
-    public java.lang.Object[] toArray(java.lang.Object[]);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.AbstractList {
-    <init>();
-
-    public boolean add(java.lang.Object);
-    public void add(int, java.lang.Object);
-    public boolean addAll(int, java.util.Collection);
-    public void clear();
-    public boolean equals(java.lang.Object);
-    public abstract java.lang.Object get(int);
-    public int hashCode();
-    public int indexOf(java.lang.Object);
-    public java.util.Iterator iterator();
-    public int lastIndexOf(java.lang.Object);
-    public java.util.ListIterator listIterator();
-    public java.util.ListIterator listIterator(int);
-    public java.lang.Object remove(int);
-    protected void removeRange(int, int);
-    public java.lang.Object set(int, java.lang.Object);
-    public java.util.List subList(int, int);
-
-
-    protected transient int modCount;
-}
-
--keep class java.util.AbstractMap {
-    <init>();
-
-    public void clear();
-    protected java.lang.Object clone();
-    public boolean containsKey(java.lang.Object);
-    public boolean containsValue(java.lang.Object);
-    public abstract java.util.Set entrySet();
-    public boolean equals(java.lang.Object);
-    public java.lang.Object get(java.lang.Object);
-    public int hashCode();
-    public boolean isEmpty();
-    public java.util.Set keySet();
-    public java.lang.Object put(java.lang.Object, java.lang.Object);
-    public void putAll(java.util.Map);
-    public java.lang.Object remove(java.lang.Object);
-    public int size();
-    public java.lang.String toString();
-    public java.util.Collection values();
-
-
-}
-
--keep class java.util.ArrayList {
-    <init>(int);
-    <init>();
-    <init>(java.util.Collection);
-
-    public boolean add(java.lang.Object);
-    public void add(int, java.lang.Object);
-    public boolean addAll(java.util.Collection);
-    public boolean addAll(int, java.util.Collection);
-    public void clear();
-    public java.lang.Object clone();
-    public boolean contains(java.lang.Object);
-    public void ensureCapacity(int);
-    public void forEach(java.util.function.Consumer);
-    public java.lang.Object get(int);
-    public int indexOf(java.lang.Object);
-    public boolean isEmpty();
-    public java.util.Iterator iterator();
-    public int lastIndexOf(java.lang.Object);
-    public java.util.ListIterator listIterator(int);
-    public java.util.ListIterator listIterator();
-    public java.lang.Object remove(int);
-    public boolean remove(java.lang.Object);
-    public boolean removeAll(java.util.Collection);
-    public boolean removeIf(java.util.function.Predicate);
-    protected void removeRange(int, int);
-    public void replaceAll(java.util.function.UnaryOperator);
-    public boolean retainAll(java.util.Collection);
-    public java.lang.Object set(int, java.lang.Object);
-    public int size();
-    public void sort(java.util.Comparator);
-    public java.util.Spliterator spliterator();
-    public java.util.List subList(int, int);
-    public java.lang.Object[] toArray();
-    public java.lang.Object[] toArray(java.lang.Object[]);
-    public void trimToSize();
-
-
-}
-
--keep class java.util.Collection {
-
-    public abstract boolean add(java.lang.Object);
-    public abstract boolean addAll(java.util.Collection);
-    public abstract void clear();
-    public abstract boolean contains(java.lang.Object);
-    public abstract boolean containsAll(java.util.Collection);
-    public abstract boolean equals(java.lang.Object);
-    public abstract int hashCode();
-    public abstract boolean isEmpty();
-    public abstract java.util.Iterator iterator();
-    public java.util.stream.Stream parallelStream();
-    public abstract boolean remove(java.lang.Object);
-    public abstract boolean removeAll(java.util.Collection);
-    public boolean removeIf(java.util.function.Predicate);
-    public abstract boolean retainAll(java.util.Collection);
-    public abstract int size();
-    public java.util.Spliterator spliterator();
-    public java.util.stream.Stream stream();
-    public abstract java.lang.Object[] toArray();
-    public abstract java.lang.Object[] toArray(java.lang.Object[]);
-
-
-}
-
--keep class java.util.Comparator {
-
-    public abstract int compare(java.lang.Object, java.lang.Object);
-    public static java.util.Comparator comparing(java.util.function.Function, java.util.Comparator);
-    public static java.util.Comparator comparing(java.util.function.Function);
-    public static java.util.Comparator comparingDouble(java.util.function.ToDoubleFunction);
-    public static java.util.Comparator comparingInt(java.util.function.ToIntFunction);
-    public static java.util.Comparator comparingLong(java.util.function.ToLongFunction);
-    public abstract boolean equals(java.lang.Object);
-    public static java.util.Comparator naturalOrder();
-    public static java.util.Comparator nullsFirst(java.util.Comparator);
-    public static java.util.Comparator nullsLast(java.util.Comparator);
-    public static java.util.Comparator reverseOrder();
-    public java.util.Comparator reversed();
-    public java.util.Comparator thenComparing(java.util.Comparator);
-    public java.util.Comparator thenComparing(java.util.function.Function, java.util.Comparator);
-    public java.util.Comparator thenComparing(java.util.function.Function);
-    public java.util.Comparator thenComparingDouble(java.util.function.ToDoubleFunction);
-    public java.util.Comparator thenComparingInt(java.util.function.ToIntFunction);
-    public java.util.Comparator thenComparingLong(java.util.function.ToLongFunction);
-
-
-}
-
--keep class java.util.Date {
-    <init>();
-    <init>(long);
-    <init>(int, int, int);
-    <init>(int, int, int, int, int);
-    <init>(int, int, int, int, int, int);
-    <init>(java.lang.String);
-
-    public static long UTC(int, int, int, int, int, int);
-    public boolean after(java.util.Date);
-    public boolean before(java.util.Date);
-    public java.lang.Object clone();
-    public int compareTo(java.util.Date);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public static java.util.Date from(java.time.Instant);
-    public int getDate();
-    public int getDay();
-    public int getHours();
-    public int getMinutes();
-    public int getMonth();
-    public int getSeconds();
-    public long getTime();
-    public int getTimezoneOffset();
-    public int getYear();
-    public int hashCode();
-    public static long parse(java.lang.String);
-    public void setDate(int);
-    public void setHours(int);
-    public void setMinutes(int);
-    public void setMonth(int);
-    public void setSeconds(int);
-    public void setTime(long);
-    public void setYear(int);
-    public java.lang.String toGMTString();
-    public java.time.Instant toInstant();
-    public java.lang.String toLocaleString();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.Dictionary {
-    <init>();
-
-    public abstract java.util.Enumeration elements();
-    public abstract java.lang.Object get(java.lang.Object);
-    public abstract boolean isEmpty();
-    public abstract java.util.Enumeration keys();
-    public abstract java.lang.Object put(java.lang.Object, java.lang.Object);
-    public abstract java.lang.Object remove(java.lang.Object);
-    public abstract int size();
-
-
-}
-
--keep class java.util.DoubleSummaryStatistics {
-    <init>();
-
-    public void accept(double);
-    public void combine(java.util.DoubleSummaryStatistics);
-    public double getAverage();
-    public long getCount();
-    public double getMax();
-    public double getMin();
-    public double getSum();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.Enumeration {
-
-    public abstract boolean hasMoreElements();
-    public abstract java.lang.Object nextElement();
-
-
-}
-
--keep class java.util.HashMap {
-    <init>(int, float);
-    <init>(int);
-    <init>();
-    <init>(java.util.Map);
-
-    public void clear();
-    public java.lang.Object clone();
-    public java.lang.Object compute(java.lang.Object, java.util.function.BiFunction);
-    public java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function);
-    public java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction);
-    public boolean containsKey(java.lang.Object);
-    public boolean containsValue(java.lang.Object);
-    public java.util.Set entrySet();
-    public void forEach(java.util.function.BiConsumer);
-    public java.lang.Object get(java.lang.Object);
-    public java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
-    public boolean isEmpty();
-    public java.util.Set keySet();
-    public java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction);
-    public java.lang.Object put(java.lang.Object, java.lang.Object);
-    public void putAll(java.util.Map);
-    public java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
-    public java.lang.Object remove(java.lang.Object);
-    public boolean remove(java.lang.Object, java.lang.Object);
-    public boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
-    public java.lang.Object replace(java.lang.Object, java.lang.Object);
-    public void replaceAll(java.util.function.BiFunction);
-    public int size();
-    public java.util.Collection values();
-
-
-}
-
--keep class java.util.Hashtable {
-    <init>(int, float);
-    <init>(int);
-    <init>();
-    <init>(java.util.Map);
-
-    public synchronized void clear();
-    public synchronized java.lang.Object clone();
-    public synchronized java.lang.Object compute(java.lang.Object, java.util.function.BiFunction);
-    public synchronized java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function);
-    public synchronized java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction);
-    public synchronized boolean contains(java.lang.Object);
-    public synchronized boolean containsKey(java.lang.Object);
-    public boolean containsValue(java.lang.Object);
-    public synchronized java.util.Enumeration elements();
-    public java.util.Set entrySet();
-    public synchronized boolean equals(java.lang.Object);
-    public synchronized void forEach(java.util.function.BiConsumer);
-    public synchronized java.lang.Object get(java.lang.Object);
-    public synchronized java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
-    public synchronized int hashCode();
-    public synchronized boolean isEmpty();
-    public java.util.Set keySet();
-    public synchronized java.util.Enumeration keys();
-    public synchronized java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction);
-    public synchronized java.lang.Object put(java.lang.Object, java.lang.Object);
-    public synchronized void putAll(java.util.Map);
-    public synchronized java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
-    protected void rehash();
-    public synchronized java.lang.Object remove(java.lang.Object);
-    public synchronized boolean remove(java.lang.Object, java.lang.Object);
-    public synchronized boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
-    public synchronized java.lang.Object replace(java.lang.Object, java.lang.Object);
-    public synchronized void replaceAll(java.util.function.BiFunction);
-    public synchronized int size();
-    public synchronized java.lang.String toString();
-    public java.util.Collection values();
-
-
-}
-
--keep class java.util.IntSummaryStatistics {
-    <init>();
-
-    public void accept(int);
-    public void combine(java.util.IntSummaryStatistics);
-    public double getAverage();
-    public long getCount();
-    public int getMax();
-    public int getMin();
-    public long getSum();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.InvalidPropertiesFormatException {
-    <init>(java.lang.Throwable);
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.util.Iterator {
-
-    public void forEachRemaining(java.util.function.Consumer);
-    public abstract boolean hasNext();
-    public abstract java.lang.Object next();
-    public void remove();
-
-
-}
-
--keep class java.util.List {
-
-    public abstract boolean add(java.lang.Object);
-    public abstract void add(int, java.lang.Object);
-    public abstract boolean addAll(java.util.Collection);
-    public abstract boolean addAll(int, java.util.Collection);
-    public abstract void clear();
-    public abstract boolean contains(java.lang.Object);
-    public abstract boolean containsAll(java.util.Collection);
-    public abstract boolean equals(java.lang.Object);
-    public abstract java.lang.Object get(int);
-    public abstract int hashCode();
-    public abstract int indexOf(java.lang.Object);
-    public abstract boolean isEmpty();
-    public abstract java.util.Iterator iterator();
-    public abstract int lastIndexOf(java.lang.Object);
-    public abstract java.util.ListIterator listIterator();
-    public abstract java.util.ListIterator listIterator(int);
-    public abstract boolean remove(java.lang.Object);
-    public abstract java.lang.Object remove(int);
-    public abstract boolean removeAll(java.util.Collection);
-    public void replaceAll(java.util.function.UnaryOperator);
-    public abstract boolean retainAll(java.util.Collection);
-    public abstract java.lang.Object set(int, java.lang.Object);
-    public abstract int size();
-    public void sort(java.util.Comparator);
-    public java.util.Spliterator spliterator();
-    public abstract java.util.List subList(int, int);
-    public abstract java.lang.Object[] toArray();
-    public abstract java.lang.Object[] toArray(java.lang.Object[]);
-
-
-}
-
--keep class java.util.ListIterator {
-
-    public abstract void add(java.lang.Object);
-    public abstract boolean hasNext();
-    public abstract boolean hasPrevious();
-    public abstract java.lang.Object next();
-    public abstract int nextIndex();
-    public abstract java.lang.Object previous();
-    public abstract int previousIndex();
-    public abstract void remove();
-    public abstract void set(java.lang.Object);
-
-
-}
-
--keep class java.util.Locale {
-    <init>(java.lang.String, java.lang.String, java.lang.String);
-    <init>(java.lang.String, java.lang.String);
-    <init>(java.lang.String);
-
-    public static java.lang.String adjustLanguageCode(java.lang.String);
-    public java.lang.Object clone();
-    public boolean equals(java.lang.Object);
-    public static java.util.List filter(java.util.List, java.util.Collection, java.util.Locale$FilteringMode);
-    public static java.util.List filter(java.util.List, java.util.Collection);
-    public static java.util.List filterTags(java.util.List, java.util.Collection, java.util.Locale$FilteringMode);
-    public static java.util.List filterTags(java.util.List, java.util.Collection);
-    public static java.util.Locale forLanguageTag(java.lang.String);
-    public static java.util.Locale[] getAvailableLocales();
-    public java.lang.String getCountry();
-    public static java.util.Locale getDefault();
-    public static java.util.Locale getDefault(java.util.Locale$Category);
-    public java.lang.String getDisplayCountry();
-    public java.lang.String getDisplayCountry(java.util.Locale);
-    public java.lang.String getDisplayLanguage();
-    public java.lang.String getDisplayLanguage(java.util.Locale);
-    public java.lang.String getDisplayName();
-    public java.lang.String getDisplayName(java.util.Locale);
-    public java.lang.String getDisplayScript();
-    public java.lang.String getDisplayScript(java.util.Locale);
-    public java.lang.String getDisplayVariant();
-    public java.lang.String getDisplayVariant(java.util.Locale);
-    public java.lang.String getExtension(char);
-    public java.util.Set getExtensionKeys();
-    public java.lang.String getISO3Country();
-    public java.lang.String getISO3Language();
-    public static java.lang.String[] getISOCountries();
-    public static java.lang.String[] getISOLanguages();
-    public java.lang.String getLanguage();
-    public java.lang.String getScript();
-    public java.util.Set getUnicodeLocaleAttributes();
-    public java.util.Set getUnicodeLocaleKeys();
-    public java.lang.String getUnicodeLocaleType(java.lang.String);
-    public java.lang.String getVariant();
-    public boolean hasExtensions();
-    public int hashCode();
-    public static java.util.Locale initDefault();
-    public static java.util.Locale lookup(java.util.List, java.util.Collection);
-    public static java.lang.String lookupTag(java.util.List, java.util.Collection);
-    public static synchronized void setDefault(java.util.Locale);
-    public static synchronized void setDefault(java.util.Locale$Category, java.util.Locale);
-    public java.util.Locale stripExtensions();
-    public java.lang.String toLanguageTag();
-    public java.lang.String toString();
-
-
-    public static java.util.Locale CANADA;
-    public static java.util.Locale CANADA_FRENCH;
-    public static java.util.Locale CHINA;
-    public static java.util.Locale CHINESE;
-    public static java.util.Locale ENGLISH;
-    public static java.util.Locale FRANCE;
-    public static java.util.Locale FRENCH;
-    public static java.util.Locale GERMAN;
-    public static java.util.Locale GERMANY;
-    public static java.util.Locale ITALIAN;
-    public static java.util.Locale ITALY;
-    public static java.util.Locale JAPAN;
-    public static java.util.Locale JAPANESE;
-    public static java.util.Locale KOREA;
-    public static java.util.Locale KOREAN;
-    public static java.util.Locale PRC;
-    public static char PRIVATE_USE_EXTENSION;
-    public static java.util.Locale ROOT;
-    public static java.util.Locale SIMPLIFIED_CHINESE;
-    public static java.util.Locale TAIWAN;
-    public static java.util.Locale TRADITIONAL_CHINESE;
-    public static java.util.Locale UK;
-    public static char UNICODE_LOCALE_EXTENSION;
-    public static java.util.Locale US;
-}
-
--keep class java.util.Locale$Category {
-
-    public static java.util.Locale$Category valueOf(java.lang.String);
-    public static java.util.Locale$Category[] values();
-
-    public static java.util.Locale$Category DISPLAY;
-    public static java.util.Locale$Category FORMAT;
-
-}
-
--keep class java.util.Locale$FilteringMode {
-
-    public static java.util.Locale$FilteringMode valueOf(java.lang.String);
-    public static java.util.Locale$FilteringMode[] values();
-
-    public static java.util.Locale$FilteringMode AUTOSELECT_FILTERING;
-    public static java.util.Locale$FilteringMode EXTENDED_FILTERING;
-    public static java.util.Locale$FilteringMode IGNORE_EXTENDED_RANGES;
-    public static java.util.Locale$FilteringMode MAP_EXTENDED_RANGES;
-    public static java.util.Locale$FilteringMode REJECT_EXTENDED_RANGES;
-
-}
-
--keep class java.util.Locale$LanguageRange {
-    <init>(java.lang.String);
-    <init>(java.lang.String, double);
-
-    public boolean equals(java.lang.Object);
-    public java.lang.String getRange();
-    public double getWeight();
-    public int hashCode();
-    public static java.util.List mapEquivalents(java.util.List, java.util.Map);
-    public static java.util.List parse(java.lang.String);
-    public static java.util.List parse(java.lang.String, java.util.Map);
-
-
-    public static double MAX_WEIGHT;
-    public static double MIN_WEIGHT;
-}
-
--keep class java.util.LongSummaryStatistics {
-    <init>();
-
-    public void accept(int);
-    public void accept(long);
-    public void combine(java.util.LongSummaryStatistics);
-    public double getAverage();
-    public long getCount();
-    public long getMax();
-    public long getMin();
-    public long getSum();
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.Map {
-
-    public abstract void clear();
-    public java.lang.Object compute(java.lang.Object, java.util.function.BiFunction);
-    public java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function);
-    public java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction);
-    public abstract boolean containsKey(java.lang.Object);
-    public abstract boolean containsValue(java.lang.Object);
-    public abstract java.util.Set entrySet();
-    public abstract boolean equals(java.lang.Object);
-    public void forEach(java.util.function.BiConsumer);
-    public abstract java.lang.Object get(java.lang.Object);
-    public java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
-    public abstract int hashCode();
-    public abstract boolean isEmpty();
-    public abstract java.util.Set keySet();
-    public java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction);
-    public abstract java.lang.Object put(java.lang.Object, java.lang.Object);
-    public abstract void putAll(java.util.Map);
-    public java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
-    public abstract java.lang.Object remove(java.lang.Object);
-    public boolean remove(java.lang.Object, java.lang.Object);
-    public boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
-    public java.lang.Object replace(java.lang.Object, java.lang.Object);
-    public void replaceAll(java.util.function.BiFunction);
-    public abstract int size();
-    public abstract java.util.Collection values();
-
-
-}
-
--keep class java.util.Map$Entry {
-
-    public static java.util.Comparator comparingByKey();
-    public static java.util.Comparator comparingByKey(java.util.Comparator);
-    public static java.util.Comparator comparingByValue();
-    public static java.util.Comparator comparingByValue(java.util.Comparator);
-    public abstract boolean equals(java.lang.Object);
-    public abstract java.lang.Object getKey();
-    public abstract java.lang.Object getValue();
-    public abstract int hashCode();
-    public abstract java.lang.Object setValue(java.lang.Object);
-
-
-}
-
--keep class java.util.MissingResourceException {
-    <init>(java.lang.String, java.lang.String, java.lang.String);
-
-    public java.lang.String getClassName();
-    public java.lang.String getKey();
-
-
-}
-
--keep class java.util.Optional {
-
-    public static java.util.Optional empty();
-    public boolean equals(java.lang.Object);
-    public java.util.Optional filter(java.util.function.Predicate);
-    public java.util.Optional flatMap(java.util.function.Function);
-    public java.lang.Object get();
-    public int hashCode();
-    public void ifPresent(java.util.function.Consumer);
-    public boolean isPresent();
-    public java.util.Optional map(java.util.function.Function);
-    public static java.util.Optional of(java.lang.Object);
-    public static java.util.Optional ofNullable(java.lang.Object);
-    public java.lang.Object orElse(java.lang.Object);
-    public java.lang.Object orElseGet(java.util.function.Supplier);
-    public java.lang.Object orElseThrow(java.util.function.Supplier);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.OptionalDouble {
-
-    public static java.util.OptionalDouble empty();
-    public boolean equals(java.lang.Object);
-    public double getAsDouble();
-    public int hashCode();
-    public void ifPresent(java.util.function.DoubleConsumer);
-    public boolean isPresent();
-    public static java.util.OptionalDouble of(double);
-    public double orElse(double);
-    public double orElseGet(java.util.function.DoubleSupplier);
-    public double orElseThrow(java.util.function.Supplier);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.OptionalInt {
-
-    public static java.util.OptionalInt empty();
-    public boolean equals(java.lang.Object);
-    public int getAsInt();
-    public int hashCode();
-    public void ifPresent(java.util.function.IntConsumer);
-    public boolean isPresent();
-    public static java.util.OptionalInt of(int);
-    public int orElse(int);
-    public int orElseGet(java.util.function.IntSupplier);
-    public int orElseThrow(java.util.function.Supplier);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.OptionalLong {
-
-    public static java.util.OptionalLong empty();
-    public boolean equals(java.lang.Object);
-    public long getAsLong();
-    public int hashCode();
-    public void ifPresent(java.util.function.LongConsumer);
-    public boolean isPresent();
-    public static java.util.OptionalLong of(long);
-    public long orElse(long);
-    public long orElseGet(java.util.function.LongSupplier);
-    public long orElseThrow(java.util.function.Supplier);
-    public java.lang.String toString();
-
-
-}
-
--keep class java.util.PrimitiveIterator {
-
-    public abstract void forEachRemaining(java.lang.Object);
-
-
-}
-
--keep class java.util.PrimitiveIterator$OfDouble {
-
-    public void forEachRemaining(java.util.function.DoubleConsumer);
-    public void forEachRemaining(java.util.function.Consumer);
-    public void forEachRemaining(java.lang.Object);
-    public java.lang.Double next();
-    public java.lang.Object next();
-    public abstract double nextDouble();
-
-
-}
-
--keep class java.util.PrimitiveIterator$OfInt {
-
-    public void forEachRemaining(java.util.function.IntConsumer);
-    public void forEachRemaining(java.util.function.Consumer);
-    public void forEachRemaining(java.lang.Object);
-    public java.lang.Integer next();
-    public java.lang.Object next();
-    public abstract int nextInt();
-
-
-}
-
--keep class java.util.PrimitiveIterator$OfLong {
-
-    public void forEachRemaining(java.util.function.LongConsumer);
-    public void forEachRemaining(java.util.function.Consumer);
-    public void forEachRemaining(java.lang.Object);
-    public java.lang.Long next();
-    public java.lang.Object next();
-    public abstract long nextLong();
-
-
-}
-
--keep class java.util.Properties {
-    <init>();
-    <init>(java.util.Properties);
-
-    public java.lang.String getProperty(java.lang.String);
-    public java.lang.String getProperty(java.lang.String, java.lang.String);
-    public void list(java.io.PrintStream);
-    public void list(java.io.PrintWriter);
-    public synchronized void load(java.io.Reader);
-    public synchronized void load(java.io.InputStream);
-    public synchronized void loadFromXML(java.io.InputStream);
-    public java.util.Enumeration propertyNames();
-    public void save(java.io.OutputStream, java.lang.String);
-    public synchronized java.lang.Object setProperty(java.lang.String, java.lang.String);
-    public void store(java.io.Writer, java.lang.String);
-    public void store(java.io.OutputStream, java.lang.String);
-    public void storeToXML(java.io.OutputStream, java.lang.String);
-    public void storeToXML(java.io.OutputStream, java.lang.String, java.lang.String);
-    public java.util.Set stringPropertyNames();
-
-
-    protected java.util.Properties defaults;
-}
-
--keep class java.util.Random {
-    <init>();
-    <init>(long);
-
-    public java.util.stream.DoubleStream doubles(long);
-    public java.util.stream.DoubleStream doubles();
-    public java.util.stream.DoubleStream doubles(long, double, double);
-    public java.util.stream.DoubleStream doubles(double, double);
-    public java.util.stream.IntStream ints(long);
-    public java.util.stream.IntStream ints();
-    public java.util.stream.IntStream ints(long, int, int);
-    public java.util.stream.IntStream ints(int, int);
-    public java.util.stream.LongStream longs(long);
-    public java.util.stream.LongStream longs();
-    public java.util.stream.LongStream longs(long, long, long);
-    public java.util.stream.LongStream longs(long, long);
-    protected int next(int);
-    public boolean nextBoolean();
-    public void nextBytes(byte[]);
-    public double nextDouble();
-    public float nextFloat();
-    public synchronized double nextGaussian();
-    public int nextInt();
-    public int nextInt(int);
-    public long nextLong();
-    public synchronized void setSeed(long);
-
-
-}
-
--keep class java.util.Set {
-
-    public abstract boolean add(java.lang.Object);
-    public abstract boolean addAll(java.util.Collection);
-    public abstract void clear();
-    public abstract boolean contains(java.lang.Object);
-    public abstract boolean containsAll(java.util.Collection);
-    public abstract boolean equals(java.lang.Object);
-    public abstract int hashCode();
-    public abstract boolean isEmpty();
-    public abstract java.util.Iterator iterator();
-    public abstract boolean remove(java.lang.Object);
-    public abstract boolean removeAll(java.util.Collection);
-    public abstract boolean retainAll(java.util.Collection);
-    public abstract int size();
-    public java.util.Spliterator spliterator();
-    public abstract java.lang.Object[] toArray();
-    public abstract java.lang.Object[] toArray(java.lang.Object[]);
-
-
-}
-
--keep class java.util.SortedMap {
-
-    public abstract java.util.Comparator comparator();
-    public abstract java.util.Set entrySet();
-    public abstract java.lang.Object firstKey();
-    public abstract java.util.SortedMap headMap(java.lang.Object);
-    public abstract java.util.Set keySet();
-    public abstract java.lang.Object lastKey();
-    public abstract java.util.SortedMap subMap(java.lang.Object, java.lang.Object);
-    public abstract java.util.SortedMap tailMap(java.lang.Object);
-    public abstract java.util.Collection values();
-
-
-}
-
--keep class java.util.Spliterator {
-
-    public abstract int characteristics();
-    public abstract long estimateSize();
-    public void forEachRemaining(java.util.function.Consumer);
-    public java.util.Comparator getComparator();
-    public long getExactSizeIfKnown();
-    public boolean hasCharacteristics(int);
-    public abstract boolean tryAdvance(java.util.function.Consumer);
-    public abstract java.util.Spliterator trySplit();
-
-
-    public static int CONCURRENT;
-    public static int DISTINCT;
-    public static int IMMUTABLE;
-    public static int NONNULL;
-    public static int ORDERED;
-    public static int SIZED;
-    public static int SORTED;
-    public static int SUBSIZED;
-}
-
--keep class java.util.Spliterator$OfDouble {
-
-    public void forEachRemaining(java.util.function.DoubleConsumer);
-    public void forEachRemaining(java.util.function.Consumer);
-    public void forEachRemaining(java.lang.Object);
-    public abstract boolean tryAdvance(java.util.function.DoubleConsumer);
-    public boolean tryAdvance(java.util.function.Consumer);
-    public boolean tryAdvance(java.lang.Object);
-    public abstract java.util.Spliterator$OfDouble trySplit();
-    public java.util.Spliterator$OfPrimitive trySplit();
-    public java.util.Spliterator trySplit();
-
-
-}
-
--keep class java.util.Spliterator$OfInt {
-
-    public void forEachRemaining(java.util.function.IntConsumer);
-    public void forEachRemaining(java.util.function.Consumer);
-    public void forEachRemaining(java.lang.Object);
-    public abstract boolean tryAdvance(java.util.function.IntConsumer);
-    public boolean tryAdvance(java.util.function.Consumer);
-    public boolean tryAdvance(java.lang.Object);
-    public abstract java.util.Spliterator$OfInt trySplit();
-    public java.util.Spliterator$OfPrimitive trySplit();
-    public java.util.Spliterator trySplit();
-
-
-}
-
--keep class java.util.Spliterator$OfLong {
-
-    public void forEachRemaining(java.util.function.LongConsumer);
-    public void forEachRemaining(java.util.function.Consumer);
-    public void forEachRemaining(java.lang.Object);
-    public abstract boolean tryAdvance(java.util.function.LongConsumer);
-    public boolean tryAdvance(java.util.function.Consumer);
-    public boolean tryAdvance(java.lang.Object);
-    public abstract java.util.Spliterator$OfLong trySplit();
-    public java.util.Spliterator$OfPrimitive trySplit();
-    public java.util.Spliterator trySplit();
-
-
-}
-
--keep class java.util.Spliterator$OfPrimitive {
-
-    public void forEachRemaining(java.lang.Object);
-    public abstract boolean tryAdvance(java.lang.Object);
-    public abstract java.util.Spliterator$OfPrimitive trySplit();
-    public java.util.Spliterator trySplit();
-
-
-}
-
--keep class java.util.UUID {
-    <init>(long, long);
-
-    public int clockSequence();
-    public int compareTo(java.util.UUID);
-    public int compareTo(java.lang.Object);
-    public boolean equals(java.lang.Object);
-    public static java.util.UUID fromString(java.lang.String);
-    public long getLeastSignificantBits();
-    public long getMostSignificantBits();
-    public int hashCode();
-    public static java.util.UUID nameUUIDFromBytes(byte[]);
-    public long node();
-    public static java.util.UUID randomUUID();
-    public long timestamp();
-    public java.lang.String toString();
-    public int variant();
-    public int version();
-
-
-}
-
--keep class java.util.concurrent.Callable {
-
-    public abstract java.lang.Object call();
-
-
-}
-
--keep class java.util.concurrent.ExecutionException {
-    <init>();
-    <init>(java.lang.String);
-    <init>(java.lang.String, java.lang.Throwable);
-    <init>(java.lang.Throwable);
-
-
-
-}
-
--keep class java.util.concurrent.Executor {
-
-    public abstract void execute(java.lang.Runnable);
-
-
-}
-
--keep class java.util.concurrent.ExecutorService {
-
-    public abstract boolean awaitTermination(long, java.util.concurrent.TimeUnit);
-    public abstract java.util.List invokeAll(java.util.Collection);
-    public abstract java.util.List invokeAll(java.util.Collection, long, java.util.concurrent.TimeUnit);
-    public abstract java.lang.Object invokeAny(java.util.Collection);
-    public abstract java.lang.Object invokeAny(java.util.Collection, long, java.util.concurrent.TimeUnit);
-    public abstract boolean isShutdown();
-    public abstract boolean isTerminated();
-    public abstract void shutdown();
-    public abstract java.util.List shutdownNow();
-    public abstract java.util.concurrent.Future submit(java.util.concurrent.Callable);
-    public abstract java.util.concurrent.Future submit(java.lang.Runnable, java.lang.Object);
-    public abstract java.util.concurrent.Future submit(java.lang.Runnable);
-
-
-}
-
--keep class java.util.concurrent.Future {
-
-    public abstract boolean cancel(boolean);
-    public abstract java.lang.Object get();
-    public abstract java.lang.Object get(long, java.util.concurrent.TimeUnit);
-    public abstract boolean isCancelled();
-    public abstract boolean isDone();
-
-
-}
-
--keep class java.util.concurrent.TimeUnit {
-
-    public long convert(long, java.util.concurrent.TimeUnit);
-    public void sleep(long);
-    public void timedJoin(java.lang.Thread, long);
-    public void timedWait(java.lang.Object, long);
-    public long toDays(long);
-    public long toHours(long);
-    public long toMicros(long);
-    public long toMillis(long);
-    public long toMinutes(long);
-    public long toNanos(long);
-    public long toSeconds(long);
-    public static java.util.concurrent.TimeUnit valueOf(java.lang.String);
-    public static java.util.concurrent.TimeUnit[] values();
-
-    public static java.util.concurrent.TimeUnit DAYS;
-    public static java.util.concurrent.TimeUnit HOURS;
-    public static java.util.concurrent.TimeUnit MICROSECONDS;
-    public static java.util.concurrent.TimeUnit MILLISECONDS;
-    public static java.util.concurrent.TimeUnit MINUTES;
-    public static java.util.concurrent.TimeUnit NANOSECONDS;
-    public static java.util.concurrent.TimeUnit SECONDS;
-
-}
-
--keep class java.util.concurrent.TimeoutException {
-    <init>();
-    <init>(java.lang.String);
-
-
-
-}
-
--keep class java.util.concurrent.atomic.AtomicInteger {
-    <init>(int);
-    <init>();
-
-    public int accumulateAndGet(int, java.util.function.IntBinaryOperator);
-    public int addAndGet(int);
-    public boolean compareAndSet(int, int);
-    public int decrementAndGet();
-    public double doubleValue();
-    public float floatValue();
-    public int get();
-    public int getAndAccumulate(int, java.util.function.IntBinaryOperator);
-    public int getAndAdd(int);
-    public int getAndDecrement();
-    public int getAndIncrement();
-    public int getAndSet(int);
-    public int getAndUpdate(java.util.function.IntUnaryOperator);
-    public int incrementAndGet();
-    public int intValue();
-    public void lazySet(int);
-    public long longValue();
-    public void set(int);
-    public java.lang.String toString();
-    public int updateAndGet(java.util.function.IntUnaryOperator);
-    public boolean weakCompareAndSet(int, int);
-
-
-}
-
--keep class java.util.function.BiConsumer {
-
-    public abstract void accept(java.lang.Object, java.lang.Object);
-    public java.util.function.BiConsumer andThen(java.util.function.BiConsumer);
-
-
-}
-
--keep class java.util.function.BiFunction {
-
-    public java.util.function.BiFunction andThen(java.util.function.Function);
-    public abstract java.lang.Object apply(java.lang.Object, java.lang.Object);
-
-
-}
-
--keep class java.util.function.BinaryOperator {
-
-    public static java.util.function.BinaryOperator maxBy(java.util.Comparator);
-    public static java.util.function.BinaryOperator minBy(java.util.Comparator);
-
-
-}
-
--keep class java.util.function.Consumer {
-
-    public abstract void accept(java.lang.Object);
-    public java.util.function.Consumer andThen(java.util.function.Consumer);
-
-
-}
-
--keep class java.util.function.DoubleBinaryOperator {
-
-    public abstract double applyAsDouble(double, double);
-
-
-}
-
--keep class java.util.function.DoubleConsumer {
-
-    public abstract void accept(double);
-    public java.util.function.DoubleConsumer andThen(java.util.function.DoubleConsumer);
-
-
-}
-
--keep class java.util.function.DoubleFunction {
-
-    public abstract java.lang.Object apply(double);
-
-
-}
-
--keep class java.util.function.DoublePredicate {
-
-    public java.util.function.DoublePredicate and(java.util.function.DoublePredicate);
-    public java.util.function.DoublePredicate negate();
-    public java.util.function.DoublePredicate or(java.util.function.DoublePredicate);
-    public abstract boolean test(double);
-
-
-}
-
--keep class java.util.function.DoubleSupplier {
-
-    public abstract double getAsDouble();
-
-
-}
-
--keep class java.util.function.DoubleToIntFunction {
-
-    public abstract int applyAsInt(double);
-
-
-}
-
--keep class java.util.function.DoubleToLongFunction {
-
-    public abstract long applyAsLong(double);
-
-
-}
-
--keep class java.util.function.DoubleUnaryOperator {
-
-    public java.util.function.DoubleUnaryOperator andThen(java.util.function.DoubleUnaryOperator);
-    public abstract double applyAsDouble(double);
-    public java.util.function.DoubleUnaryOperator compose(java.util.function.DoubleUnaryOperator);
-    public static java.util.function.DoubleUnaryOperator identity();
-
-
-}
-
--keep class java.util.function.Function {
-
-    public java.util.function.Function andThen(java.util.function.Function);
-    public abstract java.lang.Object apply(java.lang.Object);
-    public java.util.function.Function compose(java.util.function.Function);
-    public static java.util.function.Function identity();
-
-
-}
-
--keep class java.util.function.IntBinaryOperator {
-
-    public abstract int applyAsInt(int, int);
-
-
-}
-
--keep class java.util.function.IntConsumer {
-
-    public abstract void accept(int);
-    public java.util.function.IntConsumer andThen(java.util.function.IntConsumer);
-
-
-}
-
--keep class java.util.function.IntFunction {
-
-    public abstract java.lang.Object apply(int);
-
-
-}
-
--keep class java.util.function.IntPredicate {
-
-    public java.util.function.IntPredicate and(java.util.function.IntPredicate);
-    public java.util.function.IntPredicate negate();
-    public java.util.function.IntPredicate or(java.util.function.IntPredicate);
-    public abstract boolean test(int);
-
-
-}
-
--keep class java.util.function.IntSupplier {
-
-    public abstract int getAsInt();
-
-
-}
-
--keep class java.util.function.IntToDoubleFunction {
-
-    public abstract double applyAsDouble(int);
-
-
-}
-
--keep class java.util.function.IntToLongFunction {
-
-    public abstract long applyAsLong(int);
-
-
-}
-
--keep class java.util.function.IntUnaryOperator {
-
-    public java.util.function.IntUnaryOperator andThen(java.util.function.IntUnaryOperator);
-    public abstract int applyAsInt(int);
-    public java.util.function.IntUnaryOperator compose(java.util.function.IntUnaryOperator);
-    public static java.util.function.IntUnaryOperator identity();
-
-
-}
-
--keep class java.util.function.LongBinaryOperator {
-
-    public abstract long applyAsLong(long, long);
-
-
-}
-
--keep class java.util.function.LongConsumer {
-
-    public abstract void accept(long);
-    public java.util.function.LongConsumer andThen(java.util.function.LongConsumer);
-
-
-}
-
--keep class java.util.function.LongFunction {
-
-    public abstract java.lang.Object apply(long);
-
-
-}
-
--keep class java.util.function.LongPredicate {
-
-    public java.util.function.LongPredicate and(java.util.function.LongPredicate);
-    public java.util.function.LongPredicate negate();
-    public java.util.function.LongPredicate or(java.util.function.LongPredicate);
-    public abstract boolean test(long);
-
-
-}
-
--keep class java.util.function.LongSupplier {
-
-    public abstract long getAsLong();
-
-
-}
-
--keep class java.util.function.LongToDoubleFunction {
-
-    public abstract double applyAsDouble(long);
-
-
-}
-
--keep class java.util.function.LongToIntFunction {
-
-    public abstract int applyAsInt(long);
-
-
-}
-
--keep class java.util.function.LongUnaryOperator {
-
-    public java.util.function.LongUnaryOperator andThen(java.util.function.LongUnaryOperator);
-    public abstract long applyAsLong(long);
-    public java.util.function.LongUnaryOperator compose(java.util.function.LongUnaryOperator);
-    public static java.util.function.LongUnaryOperator identity();
-
-
-}
-
--keep class java.util.function.ObjDoubleConsumer {
-
-    public abstract void accept(java.lang.Object, double);
-
-
-}
-
--keep class java.util.function.ObjIntConsumer {
-
-    public abstract void accept(java.lang.Object, int);
-
-
-}
-
--keep class java.util.function.ObjLongConsumer {
-
-    public abstract void accept(java.lang.Object, long);
-
-
-}
-
--keep class java.util.function.Predicate {
-
-    public java.util.function.Predicate and(java.util.function.Predicate);
-    public static java.util.function.Predicate isEqual(java.lang.Object);
-    public java.util.function.Predicate negate();
-    public java.util.function.Predicate or(java.util.function.Predicate);
-    public abstract boolean test(java.lang.Object);
-
-
-}
-
--keep class java.util.function.Supplier {
-
-    public abstract java.lang.Object get();
-
-
-}
-
--keep class java.util.function.ToDoubleFunction {
-
-    public abstract double applyAsDouble(java.lang.Object);
-
-
-}
-
--keep class java.util.function.ToIntFunction {
-
-    public abstract int applyAsInt(java.lang.Object);
-
-
-}
-
--keep class java.util.function.ToLongFunction {
-
-    public abstract long applyAsLong(java.lang.Object);
-
-
-}
-
--keep class java.util.function.UnaryOperator {
-
-    public static java.util.function.UnaryOperator identity();
-
-
-}
-
--keep class java.util.stream.BaseStream {
-
-    public abstract void close();
-    public abstract boolean isParallel();
-    public abstract java.util.Iterator iterator();
-    public abstract java.util.stream.BaseStream onClose(java.lang.Runnable);
-    public abstract java.util.stream.BaseStream parallel();
-    public abstract java.util.stream.BaseStream sequential();
-    public abstract java.util.Spliterator spliterator();
-    public abstract java.util.stream.BaseStream unordered();
-
-
-}
-
--keep class java.util.stream.Collector {
-
-    public abstract java.util.function.BiConsumer accumulator();
-    public abstract java.util.Set characteristics();
-    public abstract java.util.function.BinaryOperator combiner();
-    public abstract java.util.function.Function finisher();
-    public static java.util.stream.Collector of(java.util.function.Supplier, java.util.function.BiConsumer, java.util.function.BinaryOperator, java.util.stream.Collector$Characteristics[]);
-    public static java.util.stream.Collector of(java.util.function.Supplier, java.util.function.BiConsumer, java.util.function.BinaryOperator, java.util.function.Function, java.util.stream.Collector$Characteristics[]);
-    public abstract java.util.function.Supplier supplier();
-
-
-}
-
--keep class java.util.stream.Collector$Characteristics {
-
-    public static java.util.stream.Collector$Characteristics valueOf(java.lang.String);
-    public static java.util.stream.Collector$Characteristics[] values();
-
-    public static java.util.stream.Collector$Characteristics CONCURRENT;
-    public static java.util.stream.Collector$Characteristics IDENTITY_FINISH;
-    public static java.util.stream.Collector$Characteristics UNORDERED;
-
-}
-
--keep class java.util.stream.DoubleStream {
-
-    public abstract boolean allMatch(java.util.function.DoublePredicate);
-    public abstract boolean anyMatch(java.util.function.DoublePredicate);
-    public abstract java.util.OptionalDouble average();
-    public abstract java.util.stream.Stream boxed();
-    public static java.util.stream.DoubleStream$Builder builder();
-    public abstract java.lang.Object collect(java.util.function.Supplier, java.util.function.ObjDoubleConsumer, java.util.function.BiConsumer);
-    public static java.util.stream.DoubleStream concat(java.util.stream.DoubleStream, java.util.stream.DoubleStream);
-    public abstract long count();
-    public abstract java.util.stream.DoubleStream distinct();
-    public static java.util.stream.DoubleStream empty();
-    public abstract java.util.stream.DoubleStream filter(java.util.function.DoublePredicate);
-    public abstract java.util.OptionalDouble findAny();
-    public abstract java.util.OptionalDouble findFirst();
-    public abstract java.util.stream.DoubleStream flatMap(java.util.function.DoubleFunction);
-    public abstract void forEach(java.util.function.DoubleConsumer);
-    public abstract void forEachOrdered(java.util.function.DoubleConsumer);
-    public static java.util.stream.DoubleStream generate(java.util.function.DoubleSupplier);
-    public static java.util.stream.DoubleStream iterate(double, java.util.function.DoubleUnaryOperator);
-    public abstract java.util.PrimitiveIterator$OfDouble iterator();
-    public java.util.Iterator iterator();
-    public abstract java.util.stream.DoubleStream limit(long);
-    public abstract java.util.stream.DoubleStream map(java.util.function.DoubleUnaryOperator);
-    public abstract java.util.stream.IntStream mapToInt(java.util.function.DoubleToIntFunction);
-    public abstract java.util.stream.LongStream mapToLong(java.util.function.DoubleToLongFunction);
-    public abstract java.util.stream.Stream mapToObj(java.util.function.DoubleFunction);
-    public abstract java.util.OptionalDouble max();
-    public abstract java.util.OptionalDouble min();
-    public abstract boolean noneMatch(java.util.function.DoublePredicate);
-    public static java.util.stream.DoubleStream of(double);
-    public static java.util.stream.DoubleStream of(double[]);
-    public abstract java.util.stream.DoubleStream parallel();
-    public java.util.stream.BaseStream parallel();
-    public abstract java.util.stream.DoubleStream peek(java.util.function.DoubleConsumer);
-    public abstract double reduce(double, java.util.function.DoubleBinaryOperator);
-    public abstract java.util.OptionalDouble reduce(java.util.function.DoubleBinaryOperator);
-    public abstract java.util.stream.DoubleStream sequential();
-    public java.util.stream.BaseStream sequential();
-    public abstract java.util.stream.DoubleStream skip(long);
-    public abstract java.util.stream.DoubleStream sorted();
-    public abstract java.util.Spliterator$OfDouble spliterator();
-    public java.util.Spliterator spliterator();
-    public abstract double sum();
-    public abstract java.util.DoubleSummaryStatistics summaryStatistics();
-    public abstract double[] toArray();
-
-
-}
-
--keep class java.util.stream.DoubleStream$Builder {
-
-    public abstract void accept(double);
-    public java.util.stream.DoubleStream$Builder add(double);
-    public abstract java.util.stream.DoubleStream build();
-
-
-}
-
--keep class java.util.stream.IntStream {
-
-    public abstract boolean allMatch(java.util.function.IntPredicate);
-    public abstract boolean anyMatch(java.util.function.IntPredicate);
-    public abstract java.util.stream.DoubleStream asDoubleStream();
-    public abstract java.util.stream.LongStream asLongStream();
-    public abstract java.util.OptionalDouble average();
-    public abstract java.util.stream.Stream boxed();
-    public static java.util.stream.IntStream$Builder builder();
-    public abstract java.lang.Object collect(java.util.function.Supplier, java.util.function.ObjIntConsumer, java.util.function.BiConsumer);
-    public static java.util.stream.IntStream concat(java.util.stream.IntStream, java.util.stream.IntStream);
-    public abstract long count();
-    public abstract java.util.stream.IntStream distinct();
-    public static java.util.stream.IntStream empty();
-    public abstract java.util.stream.IntStream filter(java.util.function.IntPredicate);
-    public abstract java.util.OptionalInt findAny();
-    public abstract java.util.OptionalInt findFirst();
-    public abstract java.util.stream.IntStream flatMap(java.util.function.IntFunction);
-    public abstract void forEach(java.util.function.IntConsumer);
-    public abstract void forEachOrdered(java.util.function.IntConsumer);
-    public static java.util.stream.IntStream generate(java.util.function.IntSupplier);
-    public static java.util.stream.IntStream iterate(int, java.util.function.IntUnaryOperator);
-    public abstract java.util.PrimitiveIterator$OfInt iterator();
-    public java.util.Iterator iterator();
-    public abstract java.util.stream.IntStream limit(long);
-    public abstract java.util.stream.IntStream map(java.util.function.IntUnaryOperator);
-    public abstract java.util.stream.DoubleStream mapToDouble(java.util.function.IntToDoubleFunction);
-    public abstract java.util.stream.LongStream mapToLong(java.util.function.IntToLongFunction);
-    public abstract java.util.stream.Stream mapToObj(java.util.function.IntFunction);
-    public abstract java.util.OptionalInt max();
-    public abstract java.util.OptionalInt min();
-    public abstract boolean noneMatch(java.util.function.IntPredicate);
-    public static java.util.stream.IntStream of(int);
-    public static java.util.stream.IntStream of(int[]);
-    public abstract java.util.stream.IntStream parallel();
-    public java.util.stream.BaseStream parallel();
-    public abstract java.util.stream.IntStream peek(java.util.function.IntConsumer);
-    public static java.util.stream.IntStream range(int, int);
-    public static java.util.stream.IntStream rangeClosed(int, int);
-    public abstract int reduce(int, java.util.function.IntBinaryOperator);
-    public abstract java.util.OptionalInt reduce(java.util.function.IntBinaryOperator);
-    public abstract java.util.stream.IntStream sequential();
-    public java.util.stream.BaseStream sequential();
-    public abstract java.util.stream.IntStream skip(long);
-    public abstract java.util.stream.IntStream sorted();
-    public abstract java.util.Spliterator$OfInt spliterator();
-    public java.util.Spliterator spliterator();
-    public abstract int sum();
-    public abstract java.util.IntSummaryStatistics summaryStatistics();
-    public abstract int[] toArray();
-
-
-}
-
--keep class java.util.stream.IntStream$Builder {
-
-    public abstract void accept(int);
-    public java.util.stream.IntStream$Builder add(int);
-    public abstract java.util.stream.IntStream build();
-
-
-}
-
--keep class java.util.stream.LongStream {
-
-    public abstract boolean allMatch(java.util.function.LongPredicate);
-    public abstract boolean anyMatch(java.util.function.LongPredicate);
-    public abstract java.util.stream.DoubleStream asDoubleStream();
-    public abstract java.util.OptionalDouble average();
-    public abstract java.util.stream.Stream boxed();
-    public static java.util.stream.LongStream$Builder builder();
-    public abstract java.lang.Object collect(java.util.function.Supplier, java.util.function.ObjLongConsumer, java.util.function.BiConsumer);
-    public static java.util.stream.LongStream concat(java.util.stream.LongStream, java.util.stream.LongStream);
-    public abstract long count();
-    public abstract java.util.stream.LongStream distinct();
-    public static java.util.stream.LongStream empty();
-    public abstract java.util.stream.LongStream filter(java.util.function.LongPredicate);
-    public abstract java.util.OptionalLong findAny();
-    public abstract java.util.OptionalLong findFirst();
-    public abstract java.util.stream.LongStream flatMap(java.util.function.LongFunction);
-    public abstract void forEach(java.util.function.LongConsumer);
-    public abstract void forEachOrdered(java.util.function.LongConsumer);
-    public static java.util.stream.LongStream generate(java.util.function.LongSupplier);
-    public static java.util.stream.LongStream iterate(long, java.util.function.LongUnaryOperator);
-    public abstract java.util.PrimitiveIterator$OfLong iterator();
-    public java.util.Iterator iterator();
-    public abstract java.util.stream.LongStream limit(long);
-    public abstract java.util.stream.LongStream map(java.util.function.LongUnaryOperator);
-    public abstract java.util.stream.DoubleStream mapToDouble(java.util.function.LongToDoubleFunction);
-    public abstract java.util.stream.IntStream mapToInt(java.util.function.LongToIntFunction);
-    public abstract java.util.stream.Stream mapToObj(java.util.function.LongFunction);
-    public abstract java.util.OptionalLong max();
-    public abstract java.util.OptionalLong min();
-    public abstract boolean noneMatch(java.util.function.LongPredicate);
-    public static java.util.stream.LongStream of(long);
-    public static java.util.stream.LongStream of(long[]);
-    public abstract java.util.stream.LongStream parallel();
-    public java.util.stream.BaseStream parallel();
-    public abstract java.util.stream.LongStream peek(java.util.function.LongConsumer);
-    public static java.util.stream.LongStream range(long, long);
-    public static java.util.stream.LongStream rangeClosed(long, long);
-    public abstract long reduce(long, java.util.function.LongBinaryOperator);
-    public abstract java.util.OptionalLong reduce(java.util.function.LongBinaryOperator);
-    public abstract java.util.stream.LongStream sequential();
-    public java.util.stream.BaseStream sequential();
-    public abstract java.util.stream.LongStream skip(long);
-    public abstract java.util.stream.LongStream sorted();
-    public abstract java.util.Spliterator$OfLong spliterator();
-    public java.util.Spliterator spliterator();
-    public abstract long sum();
-    public abstract java.util.LongSummaryStatistics summaryStatistics();
-    public abstract long[] toArray();
-
-
-}
-
--keep class java.util.stream.LongStream$Builder {
-
-    public abstract void accept(long);
-    public java.util.stream.LongStream$Builder add(long);
-    public abstract java.util.stream.LongStream build();
-
-
-}
-
--keep class java.util.stream.Stream {
-
-    public abstract boolean allMatch(java.util.function.Predicate);
-    public abstract boolean anyMatch(java.util.function.Predicate);
-    public static java.util.stream.Stream$Builder builder();
-    public abstract java.lang.Object collect(java.util.function.Supplier, java.util.function.BiConsumer, java.util.function.BiConsumer);
-    public abstract java.lang.Object collect(java.util.stream.Collector);
-    public static java.util.stream.Stream concat(java.util.stream.Stream, java.util.stream.Stream);
-    public abstract long count();
-    public abstract java.util.stream.Stream distinct();
-    public static java.util.stream.Stream empty();
-    public abstract java.util.stream.Stream filter(java.util.function.Predicate);
-    public abstract java.util.Optional findAny();
-    public abstract java.util.Optional findFirst();
-    public abstract java.util.stream.Stream flatMap(java.util.function.Function);
-    public abstract java.util.stream.DoubleStream flatMapToDouble(java.util.function.Function);
-    public abstract java.util.stream.IntStream flatMapToInt(java.util.function.Function);
-    public abstract java.util.stream.LongStream flatMapToLong(java.util.function.Function);
-    public abstract void forEach(java.util.function.Consumer);
-    public abstract void forEachOrdered(java.util.function.Consumer);
-    public static java.util.stream.Stream generate(java.util.function.Supplier);
-    public static java.util.stream.Stream iterate(java.lang.Object, java.util.function.UnaryOperator);
-    public abstract java.util.stream.Stream limit(long);
-    public abstract java.util.stream.Stream map(java.util.function.Function);
-    public abstract java.util.stream.DoubleStream mapToDouble(java.util.function.ToDoubleFunction);
-    public abstract java.util.stream.IntStream mapToInt(java.util.function.ToIntFunction);
-    public abstract java.util.stream.LongStream mapToLong(java.util.function.ToLongFunction);
-    public abstract java.util.Optional max(java.util.Comparator);
-    public abstract java.util.Optional min(java.util.Comparator);
-    public abstract boolean noneMatch(java.util.function.Predicate);
-    public static java.util.stream.Stream of(java.lang.Object);
-    public static java.util.stream.Stream of(java.lang.Object[]);
-    public abstract java.util.stream.Stream peek(java.util.function.Consumer);
-    public abstract java.lang.Object reduce(java.lang.Object, java.util.function.BinaryOperator);
-    public abstract java.util.Optional reduce(java.util.function.BinaryOperator);
-    public abstract java.lang.Object reduce(java.lang.Object, java.util.function.BiFunction, java.util.function.BinaryOperator);
-    public abstract java.util.stream.Stream skip(long);
-    public abstract java.util.stream.Stream sorted();
-    public abstract java.util.stream.Stream sorted(java.util.Comparator);
-    public abstract java.lang.Object[] toArray();
-    public abstract java.lang.Object[] toArray(java.util.function.IntFunction);
-
-
-}
-
--keep class java.util.stream.Stream$Builder {
-
-    public abstract void accept(java.lang.Object);
-    public java.util.stream.Stream$Builder add(java.lang.Object);
-    public abstract java.util.stream.Stream build();
-
-
-}
-
--keep class javax.microedition.khronos.opengles.GL {
-
-
-
-}
-
--keep class javax.security.auth.Subject {
-    <init>();
-    <init>(boolean, java.util.Set, java.util.Set, java.util.Set);
-
-    public static java.lang.Object doAs(javax.security.auth.Subject, java.security.PrivilegedAction);
-    public static java.lang.Object doAs(javax.security.auth.Subject, java.security.PrivilegedExceptionAction);
-    public static java.lang.Object doAsPrivileged(javax.security.auth.Subject, java.security.PrivilegedAction, java.security.AccessControlContext);
-    public static java.lang.Object doAsPrivileged(javax.security.auth.Subject, java.security.PrivilegedExceptionAction, java.security.AccessControlContext);
-    public boolean equals(java.lang.Object);
-    public java.util.Set getPrincipals();
-    public java.util.Set getPrincipals(java.lang.Class);
-    public java.util.Set getPrivateCredentials();
-    public java.util.Set getPrivateCredentials(java.lang.Class);
-    public java.util.Set getPublicCredentials();
-    public java.util.Set getPublicCredentials(java.lang.Class);
-    public static javax.security.auth.Subject getSubject(java.security.AccessControlContext);
-    public int hashCode();
-    public boolean isReadOnly();
-    public void setReadOnly();
-    public java.lang.String toString();
-
-
-}
-
--keep class libcore.util.NativeAllocationRegistry {
-    <init>(java.lang.ClassLoader, long, long);
-
-    public static void applyFreeFunction(long, long);
-    public java.lang.Runnable registerNativeAllocation(java.lang.Object, long);
-    public java.lang.Runnable registerNativeAllocation(java.lang.Object, libcore.util.NativeAllocationRegistry$Allocator);
-
-
-}
-
--keep class libcore.util.NativeAllocationRegistry$Allocator {
-
-    public abstract long allocate();
-
-
-}
-
--keep class org.xmlpull.v1.XmlPullParser {
-
-    public abstract void defineEntityReplacementText(java.lang.String, java.lang.String);
-    public abstract int getAttributeCount();
-    public abstract java.lang.String getAttributeName(int);
-    public abstract java.lang.String getAttributeNamespace(int);
-    public abstract java.lang.String getAttributePrefix(int);
-    public abstract java.lang.String getAttributeType(int);
-    public abstract java.lang.String getAttributeValue(int);
-    public abstract java.lang.String getAttributeValue(java.lang.String, java.lang.String);
-    public abstract int getColumnNumber();
-    public abstract int getDepth();
-    public abstract int getEventType();
-    public abstract boolean getFeature(java.lang.String);
-    public abstract java.lang.String getInputEncoding();
-    public abstract int getLineNumber();
-    public abstract java.lang.String getName();
-    public abstract java.lang.String getNamespace(java.lang.String);
-    public abstract java.lang.String getNamespace();
-    public abstract int getNamespaceCount(int);
-    public abstract java.lang.String getNamespacePrefix(int);
-    public abstract java.lang.String getNamespaceUri(int);
-    public abstract java.lang.String getPositionDescription();
-    public abstract java.lang.String getPrefix();
-    public abstract java.lang.Object getProperty(java.lang.String);
-    public abstract java.lang.String getText();
-    public abstract char[] getTextCharacters(int[]);
-    public abstract boolean isAttributeDefault(int);
-    public abstract boolean isEmptyElementTag();
-    public abstract boolean isWhitespace();
-    public abstract int next();
-    public abstract int nextTag();
-    public abstract java.lang.String nextText();
-    public abstract int nextToken();
-    public abstract void require(int, java.lang.String, java.lang.String);
-    public abstract void setFeature(java.lang.String, boolean);
-    public abstract void setInput(java.io.Reader);
-    public abstract void setInput(java.io.InputStream, java.lang.String);
-    public abstract void setProperty(java.lang.String, java.lang.Object);
-
-
-    public static int CDSECT;
-    public static int COMMENT;
-    public static int DOCDECL;
-    public static int END_DOCUMENT;
-    public static int END_TAG;
-    public static int ENTITY_REF;
-    public static java.lang.String FEATURE_PROCESS_DOCDECL;
-    public static java.lang.String FEATURE_PROCESS_NAMESPACES;
-    public static java.lang.String FEATURE_REPORT_NAMESPACE_ATTRIBUTES;
-    public static java.lang.String FEATURE_VALIDATION;
-    public static int IGNORABLE_WHITESPACE;
-    public static java.lang.String NO_NAMESPACE;
-    public static int PROCESSING_INSTRUCTION;
-    public static int START_DOCUMENT;
-    public static int START_TAG;
-    public static int TEXT;
-    public static java.lang.String[] TYPES;
-}
-
--keep class org.xmlpull.v1.XmlPullParserException {
-    <init>(java.lang.String);
-    <init>(java.lang.String, org.xmlpull.v1.XmlPullParser, java.lang.Throwable);
-
-    public int getColumnNumber();
-    public java.lang.Throwable getDetail();
-    public int getLineNumber();
-    public void printStackTrace();
-
-
-    protected int column;
-    protected java.lang.Throwable detail;
-    protected int row;
-}
-
--keep class org.xmlpull.v1.XmlSerializer {
-
-    public abstract org.xmlpull.v1.XmlSerializer attribute(java.lang.String, java.lang.String, java.lang.String);
-    public abstract void cdsect(java.lang.String);
-    public abstract void comment(java.lang.String);
-    public abstract void docdecl(java.lang.String);
-    public abstract void endDocument();
-    public abstract org.xmlpull.v1.XmlSerializer endTag(java.lang.String, java.lang.String);
-    public abstract void entityRef(java.lang.String);
-    public abstract void flush();
-    public abstract int getDepth();
-    public abstract boolean getFeature(java.lang.String);
-    public abstract java.lang.String getName();
-    public abstract java.lang.String getNamespace();
-    public abstract java.lang.String getPrefix(java.lang.String, boolean);
-    public abstract java.lang.Object getProperty(java.lang.String);
-    public abstract void ignorableWhitespace(java.lang.String);
-    public abstract void processingInstruction(java.lang.String);
-    public abstract void setFeature(java.lang.String, boolean);
-    public abstract void setOutput(java.io.OutputStream, java.lang.String);
-    public abstract void setOutput(java.io.Writer);
-    public abstract void setPrefix(java.lang.String, java.lang.String);
-    public abstract void setProperty(java.lang.String, java.lang.Object);
-    public abstract void startDocument(java.lang.String, java.lang.Boolean);
-    public abstract org.xmlpull.v1.XmlSerializer startTag(java.lang.String, java.lang.String);
-    public abstract org.xmlpull.v1.XmlSerializer text(java.lang.String);
-    public abstract org.xmlpull.v1.XmlSerializer text(char[], int, int);
-
-
-}
-
--keep class sun.nio.ch.Interruptible {
-
-    public abstract void interrupt(java.lang.Thread);
-
-
-}
-
diff --git a/car-support-lib/res/values/strings.xml b/car-support-lib/res/values/strings.xml
deleted file mode 100644
index ab697e1..0000000
--- a/car-support-lib/res/values/strings.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<resources>
-	<string name="resource_warning">Please do not check in any ui resources here.</string>
-</resources>
diff --git a/car-support-lib/src/android/support/car/Car.java b/car-support-lib/src/android/support/car/Car.java
deleted file mode 100644
index c12b13c..0000000
--- a/car-support-lib/src/android/support/car/Car.java
+++ /dev/null
@@ -1,475 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-import android.content.Context;
-import android.os.Handler;
-import android.os.Looper;
-import android.support.car.content.pm.CarPackageManager;
-import android.support.car.hardware.CarSensorManager;
-import android.support.car.media.CarAudioManager;
-import android.support.car.navigation.CarNavigationStatusManager;
-import android.util.Log;
-
-import androidx.annotation.IntDef;
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * Top-level car API that provides access to all car services and data available in the platform.
- * <p/>
- * Use one of the createCar methods to create a new instance of the Car api.  The
- * {@link CarConnectionCallback} will respond with an {@link CarConnectionCallback#onConnected(Car)}
- * or {@link CarConnectionCallback#onDisconnected(Car)} message.  Nothing can be done with the
- * car until onConnected is called.  When the car disconnects then reconnects you may still use
- * the Car object but any manages retrieved from it should be considered invalid and will need to
- * be retried. Also, you must call {@link #disconnect} before an instance of Car goes out of scope
- * to avoid leaking resources.
- *
- * <p/>
- * Once connected, {@link #getCarManager(String)} or {@link #getCarManager(Class)} can be used to
- * retrieve a manager.  This is patterned after how one would retrieve a service from
- * {@link Context#getSystemService(String)} or {@link Context#getSystemService(Class)}.  Once
- * again if the car is disconnected you'll want to get new versions of these managers.
- */
-public class Car {
-
-    private static final String TAG = "CAR.SUPPORT.LIB.CAR";
-    /**
-     * Service name for {@link CarSensorManager}, to be used in {@link #getCarManager(String)}.
-     */
-    public static final String SENSOR_SERVICE = "sensor";
-
-    /**
-     * Service name for {@link CarInfoManager}, to be used in {@link #getCarManager(String)}.
-     */
-    public static final String INFO_SERVICE = "info";
-
-    /**
-     * Service name for {@link CarAppFocusManager}.
-     */
-    public static final String APP_FOCUS_SERVICE = "app_focus";
-
-    /**
-     * Service name for {@link CarPackageManager}.
-     * @hide
-     */
-    public static final String PACKAGE_SERVICE = "package";
-
-    /**
-     * Service name for {@link CarAudioManager}.
-     */
-    public static final String AUDIO_SERVICE = "audio";
-    /**
-     * Service name for {@link CarNavigationStatusManager}.
-     * @hide
-     */
-    public static final String CAR_NAVIGATION_SERVICE = "car_navigation_service";
-    /**
-     * Service name for {@link CarNavigationStatusManager}.
-     */
-    public static final String NAVIGATION_STATUS_SERVICE = "car_navigation_service";
-
-    // TODO(jthol) move into a more robust registry implementation
-    private static final Map<Class, String> CLASS_TO_SERVICE_NAME;
-    static{
-        Map<Class, String> mapping = new HashMap<>();
-        mapping.put(CarSensorManager.class, SENSOR_SERVICE);
-        mapping.put(CarInfoManager.class, INFO_SERVICE);
-        mapping.put(CarAppFocusManager.class, APP_FOCUS_SERVICE);
-        mapping.put(CarPackageManager.class, PACKAGE_SERVICE);
-        mapping.put(CarAudioManager.class, AUDIO_SERVICE);
-        mapping.put(CarNavigationStatusManager.class, NAVIGATION_STATUS_SERVICE);
-
-        CLASS_TO_SERVICE_NAME = Collections.unmodifiableMap(mapping);
-    }
-
-
-    /**
-     * Type of car connection: car emulator, no physical connection.
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_EMULATOR = 0;
-    /**
-     * Type of car connection: connected to a car via USB.
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_USB = 1;
-    /**
-     * Type of car connection: connected to a car via Wi-Fi.
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_WIFI = 2;
-    /**
-     * Type of car connection: on-device car emulator, for development (such as Local Head Unit).
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_ON_DEVICE_EMULATOR = 3;
-    /**
-     * Type of car connection: car emulator, connected over ADB (such as Desktop Head Unit).
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_ADB_EMULATOR = 4;
-    /**
-     * Type of car connection: platform runs directly in car.
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_EMBEDDED = 5;
-
-    /**
-     * Unknown type (the support lib is likely out-of-date).
-     * @hide
-     */
-    public static final int CONNECTION_TYPE_UNKNOWN = -1;
-
-    private static final Set<Integer> CONNECTION_TYPES = new HashSet<>();
-    static {
-        CONNECTION_TYPES.add(CONNECTION_TYPE_ADB_EMULATOR);
-        CONNECTION_TYPES.add(CONNECTION_TYPE_USB);
-        CONNECTION_TYPES.add(CONNECTION_TYPE_WIFI);
-        CONNECTION_TYPES.add(CONNECTION_TYPE_ON_DEVICE_EMULATOR);
-        CONNECTION_TYPES.add(CONNECTION_TYPE_ADB_EMULATOR);
-        CONNECTION_TYPES.add(CONNECTION_TYPE_EMBEDDED);
-    }
-
-    /** @hide */
-    @IntDef({CONNECTION_TYPE_EMULATOR, CONNECTION_TYPE_USB, CONNECTION_TYPE_WIFI,
-            CONNECTION_TYPE_ON_DEVICE_EMULATOR, CONNECTION_TYPE_ADB_EMULATOR,
-            CONNECTION_TYPE_EMBEDDED, CONNECTION_TYPE_UNKNOWN})
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface ConnectionType {
-    }
-
-    /**
-     * Permission necessary to access car mileage information.
-     * @hide
-     */
-    public static final String PERMISSION_MILEAGE = "android.car.permission.CAR_MILEAGE";
-    /**
-     * Permission necessary to access car's energy information.
-     * @hide
-     */
-    public static final String PERMISSION_ENERGY = "android.car.permission.CAR_ENERGY";
-    /**
-     * Permission necessary to access car speed.
-     * @hide
-     */
-    public static final String PERMISSION_SPEED = "android.car.permission.CAR_SPEED";
-    /**
-     * Permission necessary to access car dynamics state.
-     * @hide
-     */
-    public static final String PERMISSION_VEHICLE_DYNAMICS_STATE =
-            "android.car.permission.VEHICLE_DYNAMICS_STATE";
-    /**
-     * Permission necessary to access a car-specific communication channel.
-     */
-    public static final String PERMISSION_VENDOR_EXTENSION =
-            "android.car.permission.CAR_VENDOR_EXTENSION";
-    /**
-     * Permission necessary to use {@link android.car.navigation.CarNavigationStatusManager}.
-     */
-    public static final String PERMISSION_CAR_NAVIGATION_MANAGER =
-            "android.car.permission.PERMISSION_CAR_NAVIGATION_MANAGER";
-
-
-    /**
-     * PackageManager.FEATURE_AUTOMOTIVE from M. But redefine here to support L.
-     */
-    private static final String FEATURE_AUTOMOTIVE = "android.hardware.type.automotive";
-
-    /**
-     * {@link CarServiceLoader} implementation for projected mode. Available only when the
-     * projected client library is linked.
-     */
-    private static final String PROJECTED_CAR_SERVICE_LOADER =
-            "com.google.android.apps.auto.sdk.service.CarServiceLoaderGms";
-    /**
-     * Permission necessary to change car audio volume through {@link CarAudioManager}.
-     * @hide
-     */
-    public static final String PERMISSION_CAR_CONTROL_AUDIO_VOLUME =
-            "android.car.permission.CAR_CONTROL_AUDIO_VOLUME";
-
-    private final Context mContext;
-    private final Handler mEventHandler;
-    private static final int STATE_DISCONNECTED = 0;
-    private static final int STATE_CONNECTING = 1;
-    private static final int STATE_CONNECTED = 2;
-    // @GuardedBy("this")
-    private int mConnectionState;
-
-    private final CarServiceLoader.CarConnectionCallbackProxy mCarConnectionCallbackProxy =
-            new CarServiceLoader.CarConnectionCallbackProxy() {
-                @Override
-                public void onConnected() {
-                    synchronized (Car.this) {
-                        mConnectionState = STATE_CONNECTED;
-                    }
-                    mCarConnectionCallback.onConnected(Car.this);
-                }
-
-                @Override
-                public void onDisconnected() {
-                    synchronized (Car.this) {
-                        if (mConnectionState == STATE_DISCONNECTED) {
-                            return;
-                        }
-                        tearDownCarManagers();
-                        mConnectionState = STATE_DISCONNECTED;
-                    }
-                    mCarConnectionCallback.onDisconnected(Car.this);
-                }
-            };
-
-    private final CarConnectionCallback mCarConnectionCallback;
-    private final Object mCarManagerLock = new Object();
-    //@GuardedBy("mCarManagerLock")
-    private final HashMap<String, CarManagerBase> mServiceMap = new HashMap<>();
-    private final CarServiceLoader mCarServiceLoader;
-
-
-    /**
-     * A factory method that creates a Car instance with the given {@code Looper}.
-     *
-     * @param context The current app context.
-     * @param carConnectionCallback Receives information when the Car Service is started and
-     * stopped.
-     * @param handler The handler on which the callback should execute, or null to execute on the
-     * service's main thread. Note the service connection listener is always on the main
-     * thread regardless of the handler given.
-     * @return Car instance if system is in car environment; returns {@code null} otherwise.
-     */
-    public static Car createCar(Context context,
-            CarConnectionCallback carConnectionCallback, @Nullable Handler handler) {
-        try {
-            return new Car(context, carConnectionCallback, handler);
-        } catch (IllegalArgumentException e) {
-            // Expected when Car Service loader is not available.
-            Log.w(TAG, "Car failed to be created", e);
-        }
-        return null;
-    }
-
-    /**
-     * A factory method that creates Car instance using the main thread {@link Handler}.
-     *
-     * @see #createCar(Context, CarConnectionCallback, Handler)
-     */
-    public static Car createCar(Context context,
-            CarConnectionCallback carConnectionCallback) {
-        return createCar(context, carConnectionCallback, null);
-    }
-
-    private Car(Context context, CarConnectionCallback carConnectionCallback,
-            @Nullable Handler handler) {
-        mContext = context;
-        mCarConnectionCallback = carConnectionCallback;
-        if (handler == null) {
-            Looper looper = Looper.getMainLooper();
-            handler = new Handler(looper);
-        }
-        mEventHandler = handler;
-
-        if (mContext.getPackageManager().hasSystemFeature(FEATURE_AUTOMOTIVE)) {
-            mCarServiceLoader =
-                    new CarServiceLoaderEmbedded(context, mCarConnectionCallbackProxy,
-                            mEventHandler);
-        } else {
-            mCarServiceLoader = loadCarServiceLoader(PROJECTED_CAR_SERVICE_LOADER, context,
-                    mCarConnectionCallbackProxy, mEventHandler);
-        }
-    }
-
-    private CarServiceLoader loadCarServiceLoader(String carServiceLoaderClassName, Context context,
-            CarServiceLoader.CarConnectionCallbackProxy carConnectionCallbackProxy,
-            Handler eventHandler) throws IllegalArgumentException {
-        Class<? extends CarServiceLoader> carServiceLoaderClass = null;
-        try {
-            carServiceLoaderClass =
-                    Class.forName(carServiceLoaderClassName).asSubclass(CarServiceLoader.class);
-        } catch (ClassNotFoundException e) {
-            throw new IllegalArgumentException(
-                    "Cannot find CarServiceLoader implementation:" + carServiceLoaderClassName, e);
-        }
-        Constructor<? extends CarServiceLoader> ctor;
-        try {
-            ctor = carServiceLoaderClass.getDeclaredConstructor(Context.class,
-                    CarServiceLoader.CarConnectionCallbackProxy.class, Handler.class);
-        } catch (NoSuchMethodException e) {
-            throw new IllegalArgumentException("Cannot construct CarServiceLoader, no constructor: "
-                    + carServiceLoaderClassName, e);
-        }
-        try {
-            return ctor.newInstance(context, carConnectionCallbackProxy, eventHandler);
-        } catch (InstantiationException | IllegalAccessException | IllegalArgumentException
-                | InvocationTargetException e) {
-            throw new IllegalArgumentException(
-                    "Cannot construct CarServiceLoader, constructor failed for "
-                            + carServiceLoaderClass.getName(), e);
-        }
-    }
-
-    /**
-     * Car constructor when CarServiceLoader is already available.
-     *
-     * @param serviceLoader must be non-null and connected or {@link CarNotConnectedException} will
-     * be thrown.
-     * @hide
-     */
-    public Car(@NonNull CarServiceLoader serviceLoader) throws CarNotConnectedException {
-        if (!serviceLoader.isConnected()) {
-            throw new CarNotConnectedException();
-        }
-        mCarServiceLoader = serviceLoader;
-        mEventHandler = serviceLoader.getEventHandler();
-        mContext = serviceLoader.getContext();
-
-        mConnectionState = STATE_CONNECTED;
-        mCarConnectionCallback = null;
-    }
-
-    /**
-     * Connect to Car Service. Can be called while disconnected.
-     *
-     * @throws IllegalStateException if the car is connected or still trying to connect
-     * from previous calls.
-     */
-    public void connect() throws IllegalStateException {
-        synchronized (this) {
-            if (mConnectionState != STATE_DISCONNECTED) {
-                throw new IllegalStateException("already connected or connecting");
-            }
-            mConnectionState = STATE_CONNECTING;
-            mCarServiceLoader.connect();
-        }
-    }
-
-    /**
-     * Disconnect from Car Service. Can be called while disconnected. After disconnect is
-     * called, all Car*Managers from this instance become invalid, and {@link
-     * Car#getCarManager(String)} returns a different instance if connected again.
-     */
-    public void disconnect() {
-        synchronized (this) {
-            tearDownCarManagers();
-            mConnectionState = STATE_DISCONNECTED;
-            mCarServiceLoader.disconnect();
-        }
-    }
-
-    /**
-     * @return Returns {@code true} if this object is connected to the service; {@code false}
-     * otherwise.
-     */
-    public boolean isConnected() {
-        synchronized (this) {
-            return mConnectionState == STATE_CONNECTED;
-        }
-    }
-
-    /**
-     * @return Returns {@code true} if this object is still connecting to the service.
-     */
-    public boolean isConnecting() {
-        synchronized (this) {
-            return mConnectionState == STATE_CONNECTING;
-        }
-    }
-
-    /**
-     * Get a car-specific manager. This is modeled after {@link Context#getSystemService(String)}.
-     * The returned {@link Object} should be type cast to the desired manager. For example,
-     * to get the sensor service, use the following:
-     * <pre>{@code CarSensorManager sensorManager =
-     *     (CarSensorManager) car.getCarManager(Car.SENSOR_SERVICE);}</pre>
-     *
-     * @param serviceName Name of service to create, for example {@link #SENSOR_SERVICE}.
-     * @return The requested service manager or null if the service is not available.
-     */
-    public Object getCarManager(String serviceName)
-            throws CarNotConnectedException {
-        Object manager = null;
-        synchronized (mCarManagerLock) {
-            manager = mServiceMap.get(serviceName);
-            if (manager == null) {
-                manager = mCarServiceLoader.getCarManager(serviceName);
-            }
-            // do not store if it is not CarManagerBase. This can happen when system version
-            // is retrieved from this call.
-            if (manager != null && manager instanceof CarManagerBase) {
-                mServiceMap.put(serviceName, (CarManagerBase) manager);
-            }
-        }
-        return manager;
-    }
-
-    /**
-     * Get a car-specific manager. This is modeled after {@link Context#getSystemService(Class)}.
-     * The returned service will be type cast to the desired manager. For example,
-     * to get the sensor service, use the following:
-     * <pre>{@code CarSensorManager sensorManager = car.getCarManager(CarSensorManager.class);
-     * }</pre>
-     *
-     * @param serviceClass Class: The class of the desired service. For
-     * example {@link CarSensorManager}.
-     * @return The service or null if the class is not a supported car service.
-     */
-    public <T> T getCarManager(Class<T> serviceClass) throws CarNotConnectedException {
-        // TODO(jthol) port to a more robust registry implementation
-        String serviceName = CLASS_TO_SERVICE_NAME.get(serviceClass);
-        return (serviceName == null) ? null : (T) getCarManager(serviceName);
-    }
-
-    /**
-     * Return the type of currently connected car. This should only be used for testing scenarios
-     *
-     * @return One of {@link #CONNECTION_TYPE_USB}, {@link #CONNECTION_TYPE_WIFI},
-     * {@link #CONNECTION_TYPE_EMBEDDED}, {@link #CONNECTION_TYPE_ON_DEVICE_EMULATOR},
-     * {@link #CONNECTION_TYPE_ADB_EMULATOR},
-     * {@link #CONNECTION_TYPE_UNKNOWN}.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     * @hide
-     */
-    @ConnectionType
-    public int getCarConnectionType() throws CarNotConnectedException {
-        int carConnectionType = mCarServiceLoader.getCarConnectionType();
-        if (!CONNECTION_TYPES.contains(carConnectionType)){
-            return CONNECTION_TYPE_UNKNOWN;
-        }
-        return carConnectionType;
-    }
-
-    private void tearDownCarManagers() {
-        synchronized (mCarManagerLock) {
-            for (CarManagerBase manager : mServiceMap.values()) {
-                manager.onCarDisconnected();
-            }
-            mServiceMap.clear();
-        }
-    }
-}
diff --git a/car-support-lib/src/android/support/car/CarAppFocusManager.java b/car-support-lib/src/android/support/car/CarAppFocusManager.java
deleted file mode 100644
index 395ff61..0000000
--- a/car-support-lib/src/android/support/car/CarAppFocusManager.java
+++ /dev/null
@@ -1,198 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-import androidx.annotation.IntDef;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * Enables applications to set and listen for the current application focus (such as active
- * navigation). Typically, only one such application should be running at a time. When another
- * application gets ownership of a given APP_FOCUS_TYPE_*, the old app should stop using the
- * feature represented by the focus type.
- */
-public abstract class CarAppFocusManager implements CarManagerBase {
-    /**
-     * Receives notifications when app focus changes.
-     */
-    public interface OnAppFocusChangedListener {
-        /**
-         * Indicates the application focus has changed. The {@link CarAppFocusManager} instance
-         * causing the change does not get this notification.
-         * @param manager the {@link CarAppFocusManager} this listener is attached to.  Useful if
-         * the app wished to unregister the listener.
-         * @param appType application type for which status changed
-         * @param active returns {@code true} if active
-         */
-        void onAppFocusChanged(CarAppFocusManager manager, @AppFocusType int appType,
-                boolean active);
-    }
-
-    /**
-     * Receives notifications when the application focus ownership changes.
-     */
-    public interface OnAppFocusOwnershipCallback {
-        /**
-         * Lost ownership for the focus, which occurs when another app has set the focus.
-         * The app losing focus should stop the action associated with the focus.
-         * For example, a navigation app running active navigation should stop navigation
-         * upon getting this for {@link CarAppFocusManager#APP_FOCUS_TYPE_NAVIGATION}.
-         * @param manager the {@link CarAppFocusManager} this callback is attached to.  Useful if
-         * the app wishes to unregister the callback.
-         * @param appType
-         */
-        void onAppFocusOwnershipLost(CarAppFocusManager manager, @AppFocusType int appType);
-
-        /**
-         * Granted ownership for the focus, which happens after app has requested the focus.
-         * The app getting focus can start the action associated with the focus.
-         * For example, navigation app can start navigation
-         * upon getting this for {@link CarAppFocusManager#APP_FOCUS_TYPE_NAVIGATION}.
-         * @param manager the {@link CarAppFocusManager} this callback is attached to.  Useful if
-         * the app wishes to unregister the callback.
-         * @param appType
-         */
-        void onAppFocusOwnershipGranted(CarAppFocusManager manager, @AppFocusType int appType);
-    }
-
-    /**
-     * Represents navigation focus.
-     * <p/>
-     * When a program loses navigation focus they should no longer send navigation data to the
-     * instrument cluster via the
-     * {@link android.support.car.navigation.CarNavigationStatusManager}.  Furthermore they
-     * should stop sending audio updates and any notifications regarding navigation.
-     * Essentially, these apps should stop all navigation activities as this means another app is
-     * navigating.
-     */
-    public static final int APP_FOCUS_TYPE_NAVIGATION = 1;
-    /**
-     * Represents voice command focus.
-     * @hide
-     */
-    public static final int APP_FOCUS_TYPE_VOICE_COMMAND = 2;
-    /**
-     * Update this after adding a new app type.
-     * @hide
-     */
-    public static final int APP_FOCUS_TYPE_MAX = 2;
-
-    /** @hide */
-    @IntDef({
-        APP_FOCUS_TYPE_NAVIGATION,
-        APP_FOCUS_TYPE_VOICE_COMMAND
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface AppFocusType {}
-
-    /**
-     * A failed focus change request.
-     */
-    public static final int APP_FOCUS_REQUEST_FAILED = 0;
-    /**
-     * A successful focus change request.
-     */
-    public static final int APP_FOCUS_REQUEST_SUCCEEDED = 1;
-
-    /** @hide */
-    @IntDef({
-        APP_FOCUS_REQUEST_FAILED,
-        APP_FOCUS_REQUEST_SUCCEEDED
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface AppFocusRequestResult {}
-
-    /**
-     * Register listener to monitor app focus changes.
-     * Multiple listeners can be registered for a single focus and the same listener can be used
-     * for multiple focuses.
-     * @param listener Listener to register for focus events.
-     * @param appType Application type to get notification for.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract void addFocusListener(OnAppFocusChangedListener listener,
-            @AppFocusType int appType) throws CarNotConnectedException;
-
-    /**
-     * Unregister listener for app type and stop listening to focus change events.
-     * @param listener Listener to unregister from focus events.
-     * @param appType Application type to get notification for.
-     */
-    public abstract void removeFocusListener(OnAppFocusChangedListener listener,
-            @AppFocusType int appType);
-
-    /**
-     * Unregister listener for all app types and stop listening to focus change events.
-     * @param listener Listener to unregister from focus events.
-     */
-    public abstract void removeFocusListener(OnAppFocusChangedListener listener);
-
-    /**
-     * Check if the current process owns the given focus.
-     * @param appType Application type.
-     * @param callback Callback that was used to request ownership.
-     * @return Returns {@code true} if current callback owns focus for application type.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract boolean isOwningFocus(@AppFocusType int appType,
-            OnAppFocusOwnershipCallback callback) throws CarNotConnectedException;
-
-    /**
-     * Request application focus.
-     * <p>
-     * By requesting this, the app gains the focus for this appType
-     * <p>
-     * This call is asynchronous, focus may not be granted immediately.
-     * {@link OnAppFocusOwnershipCallback#onAppFocusOwnershipGranted(CarAppFocusManager, int)} will
-     * be sent to the app when focus is granted.
-     * <p>
-     * {@link OnAppFocusOwnershipCallback#onAppFocusOwnershipLost(CarAppFocusManager, int)}
-     * will be sent to the app that currently holds focus.
-     * The foreground app will have higher priority; other apps cannot
-     * set the same focus while owner is in foreground.
-     * <p>
-     * The callback provided here is the identifier for the focus.  Apps need to pass it into
-     * other app focus methods such as {@link #isOwningFocus(int, OnAppFocusOwnershipCallback)}
-     * or {@link #abandonAppFocus(OnAppFocusOwnershipCallback)}.
-     *
-     * @param appType Application type to request focus for.
-     * @param ownershipCallback Ownership callback to request app focus for. Cannot be null.
-     *
-     * @return {@link #APP_FOCUS_REQUEST_FAILED} or {@link #APP_FOCUS_REQUEST_SUCCEEDED}
-     * @throws SecurityException if owner cannot be changed.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract int requestAppFocus(int appType,
-            OnAppFocusOwnershipCallback ownershipCallback)
-            throws SecurityException, CarNotConnectedException;
-
-    /**
-     * Abandon the given focus (mark it as inactive).
-     * @param ownershipCallback Ownership callback to abandon app focus for. Cannot be null.
-     * @param appType Application type to abandon focus for.
-     */
-    public abstract void abandonAppFocus(OnAppFocusOwnershipCallback ownershipCallback,
-            @AppFocusType int appType);
-
-    /**
-     * Abandon all focuses (mark them as inactive).
-     * @param ownershipCallback Ownership callback to abandon focus for. Cannot be null.
-     */
-    public abstract void abandonAppFocus(OnAppFocusOwnershipCallback ownershipCallback);
-}
diff --git a/car-support-lib/src/android/support/car/CarAppFocusManagerEmbedded.java b/car-support-lib/src/android/support/car/CarAppFocusManagerEmbedded.java
deleted file mode 100644
index e866f4b..0000000
--- a/car-support-lib/src/android/support/car/CarAppFocusManagerEmbedded.java
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * Implementation of {@link CarAppFocusManager} for embedded.
- * @hide
- */
-public class CarAppFocusManagerEmbedded extends CarAppFocusManager {
-
-    private final android.car.CarAppFocusManager mManager;
-
-    private final Map<OnAppFocusChangedListener, OnAppFocusChangedListenerProxy>
-            mChangeListeners = new HashMap<>();
-    private final Map<OnAppFocusOwnershipCallback, OnAppFocusOwnershipCallbackProxy>
-            mOwnershipCallbacks = new HashMap<>();
-
-    /**
-     * @hide
-     */
-    CarAppFocusManagerEmbedded(Object manager) {
-        mManager = (android.car.CarAppFocusManager) manager;
-    }
-
-    @Override
-    public void addFocusListener(OnAppFocusChangedListener listener, int appType)
-            throws CarNotConnectedException {
-        if (listener == null) {
-            throw new IllegalArgumentException("null listener");
-        }
-        OnAppFocusChangedListenerProxy proxy;
-        synchronized (this) {
-            proxy = mChangeListeners.get(listener);
-            if (proxy == null) {
-                proxy = new OnAppFocusChangedListenerProxy(this, listener);
-                mChangeListeners.put(listener, proxy);
-            }
-        }
-        try {
-            mManager.addFocusListener(proxy, appType);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void removeFocusListener(OnAppFocusChangedListener listener, int appType) {
-        OnAppFocusChangedListenerProxy proxy;
-        synchronized (this) {
-            proxy = mChangeListeners.get(listener);
-            if (proxy == null) {
-                return;
-            }
-        }
-        mManager.removeFocusListener(proxy, appType);
-    }
-
-    @Override
-    public void removeFocusListener(OnAppFocusChangedListener listener) {
-        OnAppFocusChangedListenerProxy proxy;
-        synchronized (this) {
-            proxy = mChangeListeners.remove(listener);
-            if (proxy == null) {
-                return;
-            }
-        }
-        mManager.removeFocusListener(proxy);
-    }
-
-    @Override
-    public boolean isOwningFocus(int appType, OnAppFocusOwnershipCallback listener)
-            throws CarNotConnectedException {
-        OnAppFocusOwnershipCallbackProxy proxy;
-        synchronized (this) {
-            proxy = mOwnershipCallbacks.get(listener);
-            if (proxy == null) {
-                return false;
-            }
-        }
-        try {
-            return mManager.isOwningFocus(proxy, appType);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public int requestAppFocus(int appType, OnAppFocusOwnershipCallback ownershipCallback)
-            throws IllegalStateException, SecurityException, CarNotConnectedException {
-        if (ownershipCallback == null) {
-            throw new IllegalArgumentException("null listener");
-        }
-        OnAppFocusOwnershipCallbackProxy proxy;
-        synchronized (this) {
-            proxy = mOwnershipCallbacks.get(ownershipCallback);
-            if (proxy == null) {
-                proxy = new OnAppFocusOwnershipCallbackProxy(this, ownershipCallback);
-                mOwnershipCallbacks.put(ownershipCallback, proxy);
-            }
-        }
-        try {
-            return mManager.requestAppFocus(appType, proxy);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void abandonAppFocus(OnAppFocusOwnershipCallback ownershipCallback, int appType) {
-        if (ownershipCallback == null) {
-            throw new IllegalArgumentException("null listener");
-        }
-        OnAppFocusOwnershipCallbackProxy proxy;
-        synchronized (this) {
-            proxy = mOwnershipCallbacks.get(ownershipCallback);
-            if (proxy == null) {
-                return;
-            }
-        }
-        mManager.abandonAppFocus(proxy, appType);
-    }
-
-    @Override
-    public void abandonAppFocus(OnAppFocusOwnershipCallback ownershipCallback) {
-        if (ownershipCallback == null) {
-            throw new IllegalArgumentException("null listener");
-        }
-        OnAppFocusOwnershipCallbackProxy proxy;
-        synchronized (this) {
-            proxy = mOwnershipCallbacks.get(ownershipCallback);
-            if (proxy == null) {
-                return;
-            }
-        }
-        mManager.abandonAppFocus(proxy);
-    }
-
-    @Override
-    public void onCarDisconnected() {
-        // nothing to do
-    }
-
-    private static class OnAppFocusChangedListenerProxy
-            implements android.car.CarAppFocusManager.OnAppFocusChangedListener {
-
-        private final OnAppFocusChangedListener mListener;
-        private final CarAppFocusManager mManager;
-
-        OnAppFocusChangedListenerProxy(CarAppFocusManager manager,
-                OnAppFocusChangedListener listener) {
-            mManager = manager;
-            mListener = listener;
-        }
-
-        @Override
-        public void onAppFocusChanged(int appType, boolean active) {
-            mListener.onAppFocusChanged(mManager, appType, active);
-        }
-    }
-
-    private static class OnAppFocusOwnershipCallbackProxy
-            implements android.car.CarAppFocusManager.OnAppFocusOwnershipCallback {
-
-        private final OnAppFocusOwnershipCallback mListener;
-        private final CarAppFocusManager mManager;
-
-
-        OnAppFocusOwnershipCallbackProxy(CarAppFocusManager manager,
-                OnAppFocusOwnershipCallback listener) {
-            mListener = listener;
-            mManager = manager;
-        }
-
-        @Override
-        public void onAppFocusOwnershipLost(int focusType) {
-            mListener.onAppFocusOwnershipLost(mManager, focusType);
-        }
-
-        @Override
-        public void onAppFocusOwnershipGranted(int focusType) {
-            mListener.onAppFocusOwnershipGranted(mManager, focusType);
-        }
-    }
-}
diff --git a/car-support-lib/src/android/support/car/CarConnectionCallback.java b/car-support-lib/src/android/support/car/CarConnectionCallback.java
deleted file mode 100644
index f32f735..0000000
--- a/car-support-lib/src/android/support/car/CarConnectionCallback.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-/**
- * Listener for monitoring car connection status.
- * Callbacks are called from the looper specified when constructing {@link Car}.
- */
-public abstract class CarConnectionCallback {
-    /**
-     * Called when the Car has been connected. Does not guarantee the car is still connected
-     * while this callback is running, so {@link CarNotConnectedException}s may still be
-     * thrown from {@link Car} method calls.
-     * @param car the car with which this callback is registered.
-     */
-    public abstract void onConnected(Car car);
-    /**
-     * Called when the Car has been disconnected.
-     * @param car the car with which this callback is registered.
-     */
-    public abstract void onDisconnected(Car car);
-}
diff --git a/car-support-lib/src/android/support/car/CarInfoManager.java b/car-support-lib/src/android/support/car/CarInfoManager.java
deleted file mode 100644
index 7a29339..0000000
--- a/car-support-lib/src/android/support/car/CarInfoManager.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-import androidx.annotation.IntDef;
-import androidx.annotation.Nullable;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * Utility to retrieve various static information from car.
- */
-public abstract class CarInfoManager implements CarManagerBase {
-
-    /** Location of the driver is unknown. */
-    public static final int DRIVER_SIDE_UNKNOWN = 0;
-    /** Location of the driver: left. */
-    public static final int DRIVER_SIDE_LEFT   = 1;
-    /** Location of the driver: right. */
-    public static final int DRIVER_SIDE_RIGHT  = 2;
-    /** Location of the driver: center. */
-    public static final int DRIVER_SIDE_CENTER = 3;
-
-    /** @hide */
-    @IntDef({
-        DRIVER_SIDE_UNKNOWN,
-        DRIVER_SIDE_LEFT,
-        DRIVER_SIDE_RIGHT,
-        DRIVER_SIDE_CENTER
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface DriverSide {}
-
-    /**
-     * Return manufacturer of the car.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getManufacturer() throws CarNotConnectedException;
-
-    /**
-     * Return model name of the car. This information may not necessarily allow distinguishing
-     * different car models as the same name may be used for different cars depending on
-     * manufacturers.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getModel() throws CarNotConnectedException;
-
-    /**
-     * Return model year of the car in AC.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getModelYear() throws CarNotConnectedException;
-
-    /**
-     * Return unique identifier for the car. This is not VIN, and id is persistent until user
-     * resets it.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getVehicleId() throws CarNotConnectedException;
-
-    /**
-     * Return manufacturer of the head unit.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getHeadunitManufacturer() throws CarNotConnectedException;
-
-    /**
-     * Return model of the headunit.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getHeadunitModel() throws CarNotConnectedException;
-
-    /**
-     * Return S/W build of the headunit.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getHeadunitSoftwareBuild() throws CarNotConnectedException;
-
-    /**
-     * Return S/W version of the headunit.
-     * @return null if information is not available.
-     */
-    public abstract @Nullable String getHeadunitSoftwareVersion() throws CarNotConnectedException;
-
-    /**
-     * Return driver side of the car.
-     * @return {@link #DRIVER_SIDE_UNKNOWN} if information is not available.
-     */
-    public abstract @DriverSide int getDriverPosition() throws CarNotConnectedException;
-
-    /**
-     * Return fuel capacity of the car in milliliters.
-     * @return 0 if car doesn't run on fuel.
-     */
-    public abstract float getFuelCapacity() throws CarNotConnectedException;
-
-    /**
-     * Return array of fuel types available in the car, defined in
-     * android.hardware.automotive.vehicle.V2_0.FuelType
-     * @return empty array if no fuel types available.
-     */
-    public abstract int[] getFuelTypes() throws CarNotConnectedException;
-
-    /**
-     * Return battery capacity of the car in WH.
-     * @return 0 if car doesn't run on battery.
-     */
-    public abstract float getEvBatteryCapacity() throws CarNotConnectedException;
-
-    /**
-     * Return array of EV connector types available in the car, defined in
-     * android.hardware.automotive.vehicle.V2_0.EvConnectorType
-     * @return empty array if no connector types available.
-     */
-    public abstract int[] getEvConnectorTypes() throws CarNotConnectedException;
-}
diff --git a/car-support-lib/src/android/support/car/CarInfoManagerEmbedded.java b/car-support-lib/src/android/support/car/CarInfoManagerEmbedded.java
deleted file mode 100644
index 0d41053..0000000
--- a/car-support-lib/src/android/support/car/CarInfoManagerEmbedded.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-
-/** @hide */
-public class CarInfoManagerEmbedded extends CarInfoManager {
-
-    private final android.car.CarInfoManager mManager;
-
-    /** @hide */
-    CarInfoManagerEmbedded(Object manager) {
-        mManager = (android.car.CarInfoManager) manager;
-    }
-
-    @Override
-    public String getManufacturer() throws CarNotConnectedException {
-        try {
-            return mManager.getManufacturer();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public String getModel() throws CarNotConnectedException {
-        try {
-            return mManager.getModel();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public String getModelYear() throws CarNotConnectedException {
-        try {
-            return mManager.getModelYear();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public String getVehicleId() throws CarNotConnectedException {
-        try {
-            return mManager.getVehicleId();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public String getHeadunitManufacturer() throws CarNotConnectedException {
-        return null;
-    }
-
-    @Override
-    public String getHeadunitModel() throws CarNotConnectedException {
-        return null; // N/A
-    }
-
-    @Override
-    public String getHeadunitSoftwareBuild() throws CarNotConnectedException {
-        return null; // N/A
-    }
-
-    @Override
-    public String getHeadunitSoftwareVersion() throws CarNotConnectedException {
-        return null; // N/A
-    }
-
-    @Override
-    public int getDriverPosition() throws CarNotConnectedException {
-        return CarInfoManager.DRIVER_SIDE_UNKNOWN; // N/A
-    }
-
-    @Override
-    public float getFuelCapacity() throws CarNotConnectedException {
-        try {
-            return mManager.getFuelCapacity();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public int[] getFuelTypes() throws CarNotConnectedException {
-        try {
-            return mManager.getFuelTypes();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public float getEvBatteryCapacity() throws CarNotConnectedException {
-        try {
-            return mManager.getEvBatteryCapacity();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public int[] getEvConnectorTypes() throws CarNotConnectedException {
-        try {
-            return mManager.getEvConnectorTypes();
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    /** @hide */
-    @Override
-    public void onCarDisconnected() {
-        //nothing to do
-    }
-}
diff --git a/car-support-lib/src/android/support/car/CarLibLog.java b/car-support-lib/src/android/support/car/CarLibLog.java
deleted file mode 100644
index c470937..0000000
--- a/car-support-lib/src/android/support/car/CarLibLog.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-/** @hide */
-public class CarLibLog {
-    public static final String TAG_CAR = "CAR.L";
-    public static final String TAG_SENSOR = TAG_CAR + ".SENSOR";
-    public static final String TAG_NAV = TAG_CAR + ".NAV";
-}
diff --git a/car-support-lib/src/android/support/car/CarManagerBase.java b/car-support-lib/src/android/support/car/CarManagerBase.java
deleted file mode 100644
index 79a28f8..0000000
--- a/car-support-lib/src/android/support/car/CarManagerBase.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-/**
- * Common interface for Car*Manager
- * @hide
- */
-public interface CarManagerBase {
-    void onCarDisconnected();
-}
diff --git a/car-support-lib/src/android/support/car/CarNotConnectedException.java b/car-support-lib/src/android/support/car/CarNotConnectedException.java
deleted file mode 100644
index aa0cfcd..0000000
--- a/car-support-lib/src/android/support/car/CarNotConnectedException.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-
-/**
- * Exception thrown when an API that requires a car connection is called while disconnected from a
- * car.  This may have happened because the car and phone have become disconnected, the system is
- * undergoing an upgrade, or some other event.
- */
-public class CarNotConnectedException extends Exception {
-    private static final long serialVersionUID = -5629175439268813047L;
-
-    public CarNotConnectedException() {
-    }
-
-    public CarNotConnectedException(String name) {
-        super(name);
-    }
-
-    public CarNotConnectedException(String name, Throwable cause) {
-        super(name, cause);
-    }
-
-    public CarNotConnectedException(Exception cause) {
-        super(cause);
-    }
-}
diff --git a/car-support-lib/src/android/support/car/CarServiceLoader.java b/car-support-lib/src/android/support/car/CarServiceLoader.java
deleted file mode 100644
index 8a334b7..0000000
--- a/car-support-lib/src/android/support/car/CarServiceLoader.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-import android.content.Context;
-import android.os.Handler;
-
-/**
- * CarServiceLoader is the abstraction for loading different types of car service.
- * @hide
- */
-public abstract class CarServiceLoader {
-
-    private final Context mContext;
-    private final CarConnectionCallbackProxy mCallback;
-    private final Handler mEventHandler;
-
-    public CarServiceLoader(Context context, CarConnectionCallbackProxy callback, Handler handler) {
-        mContext = context;
-        mCallback = callback;
-        mEventHandler = handler;
-    }
-
-    public abstract void connect() throws IllegalStateException;
-    public abstract void disconnect();
-    public abstract boolean isConnected();
-
-    @Car.ConnectionType
-    public abstract int getCarConnectionType() throws CarNotConnectedException;
-
-    /**
-     * Retrieves a manager object for a specified Car*Manager.
-     * @param serviceName One of the android.car.Car#*_SERVICE constants.
-     * @return An instance of the request manager.  Null if the manager is not supported on the
-     * current vehicle.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract Object getCarManager(String serviceName) throws CarNotConnectedException;
-
-    protected Context getContext() {
-        return mContext;
-    }
-
-    protected CarConnectionCallbackProxy getConnectionCallback() {
-        return mCallback;
-    }
-
-    protected Handler getEventHandler() {
-        return mEventHandler;
-    }
-
-    /**
-     * Wrapper for CarConnectionCallback which does not return a {@link android.support.car.Car}
-     * object.
-     */
-    public abstract static class CarConnectionCallbackProxy {
-
-        /**
-         * Called when the Car has been connected. Does not guarantee the car is still connected
-         * while this callback is running, so {@link CarNotConnectedException}s may still be
-         * thrown from {@link Car} method calls.
-         */
-        public abstract void onConnected();
-        /**
-         * Called when the Car has been disconnected.
-         */
-        public abstract void onDisconnected();
-    }
-}
diff --git a/car-support-lib/src/android/support/car/CarServiceLoaderEmbedded.java b/car-support-lib/src/android/support/car/CarServiceLoaderEmbedded.java
deleted file mode 100644
index cfd598a..0000000
--- a/car-support-lib/src/android/support/car/CarServiceLoaderEmbedded.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car;
-
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.ServiceConnection;
-import android.os.Handler;
-import android.os.IBinder;
-import android.support.car.content.pm.CarPackageManagerEmbedded;
-import android.support.car.media.CarAudioManagerEmbedded;
-import android.support.car.navigation.CarNavigationStatusManagerEmbedded;
-
-/**
- * Default CarServiceLoader for system with built-in car service (=embedded).
- * @hide
- */
-public class CarServiceLoaderEmbedded extends CarServiceLoader {
-
-    private final ServiceConnection mServiceConnection = new ServiceConnection() {
-
-        @Override
-        public void onServiceConnected(ComponentName name, IBinder service) {
-            getConnectionCallback().onConnected();
-        }
-
-        @Override
-        public void onServiceDisconnected(ComponentName name) {
-            getConnectionCallback().onDisconnected();
-        }
-    };
-
-    private final android.car.Car mEmbeddedCar;
-
-    /** @hide */
-    CarServiceLoaderEmbedded(Context context, CarConnectionCallbackProxy carConnectionCallback,
-            Handler handler) {
-        super(context, carConnectionCallback, handler);
-        mEmbeddedCar = android.car.Car.createCar(context, mServiceConnection, handler);
-    }
-
-    @Override
-    public void connect() throws IllegalStateException {
-        mEmbeddedCar.connect();
-    }
-
-    @Override
-    public void disconnect() {
-        mEmbeddedCar.disconnect();
-    }
-
-    @Override
-    public boolean isConnected() {
-        return mEmbeddedCar.isConnected();
-    }
-
-    @Override
-    public int getCarConnectionType() throws CarNotConnectedException {
-        @android.support.car.Car.ConnectionType
-        int carConnectionType = mEmbeddedCar.getCarConnectionType();
-        return carConnectionType;
-    }
-
-    @Override
-    public Object getCarManager(String serviceName) throws CarNotConnectedException {
-        Object manager;
-        try {
-            manager = mEmbeddedCar.getCarManager(serviceName);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-
-        if (manager == null) {
-            return null;
-        }
-        // For publicly available versions, return wrapper version.
-        switch (serviceName) {
-            case Car.AUDIO_SERVICE:
-                return new CarAudioManagerEmbedded(manager);
-            case Car.INFO_SERVICE:
-                return new CarInfoManagerEmbedded(manager);
-            case Car.APP_FOCUS_SERVICE:
-                return new CarAppFocusManagerEmbedded(manager);
-            case Car.PACKAGE_SERVICE:
-                return new CarPackageManagerEmbedded(manager);
-            case Car.CAR_NAVIGATION_SERVICE:
-                return new CarNavigationStatusManagerEmbedded(manager);
-            default:
-                return manager;
-        }
-    }
-}
diff --git a/car-support-lib/src/android/support/car/annotation/ValueTypeDef.java b/car-support-lib/src/android/support/car/annotation/ValueTypeDef.java
deleted file mode 100644
index 6de4320..0000000
--- a/car-support-lib/src/android/support/car/annotation/ValueTypeDef.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.annotation;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * Annotation for specifying a value type for a key/value pair.
- * Key definitions use this annotation to specify what kind of value is expected from the key.
- */
-@Target(ElementType.FIELD)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface ValueTypeDef {
-    Class<?> type() default Object.class;
-}
diff --git a/car-support-lib/src/android/support/car/annotation/VersionDef.java b/car-support-lib/src/android/support/car/annotation/VersionDef.java
deleted file mode 100644
index d299a81..0000000
--- a/car-support-lib/src/android/support/car/annotation/VersionDef.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.annotation;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * Annotation for specifying supported version of a member for a Parcelable.
- * Version defaults to 1 if @VersionDef is used without specifying a version.
- */
-@Target(ElementType.FIELD)
-@Retention(RetentionPolicy.SOURCE)
-public @interface VersionDef {
-    int version() default 1;
-}
diff --git a/car-support-lib/src/android/support/car/content/pm/CarPackageManager.java b/car-support-lib/src/android/support/car/content/pm/CarPackageManager.java
deleted file mode 100644
index bd97de7..0000000
--- a/car-support-lib/src/android/support/car/content/pm/CarPackageManager.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.content.pm;
-
-import android.support.car.CarManagerBase;
-import android.support.car.CarNotConnectedException;
-
-/**
- * Provides car specific API related to package management.
- * @hide
- */
-public abstract class CarPackageManager implements CarManagerBase {
-
-    /**
-     * Check if given activity is allowed while driving.
-     */
-    public abstract boolean isActivityAllowedWhileDriving(String packageName, String className)
-            throws CarNotConnectedException;
-
-    /**
-     * Check if given service is allowed while driving.
-     */
-    public abstract boolean isServiceAllowedWhileDriving(String packageName, String className)
-            throws CarNotConnectedException;
-}
diff --git a/car-support-lib/src/android/support/car/content/pm/CarPackageManagerEmbedded.java b/car-support-lib/src/android/support/car/content/pm/CarPackageManagerEmbedded.java
deleted file mode 100644
index e6f1b67..0000000
--- a/car-support-lib/src/android/support/car/content/pm/CarPackageManagerEmbedded.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.content.pm;
-
-import android.support.car.CarNotConnectedException;
-
-/**
- * @hide
- */
-public class CarPackageManagerEmbedded extends CarPackageManager {
-
-    private final android.car.content.pm.CarPackageManager mManager;
-
-    public CarPackageManagerEmbedded(Object manager) {
-        mManager = (android.car.content.pm.CarPackageManager) manager;
-    }
-
-    /** @hide */
-    public android.car.content.pm.CarPackageManager getManager() {
-        return mManager;
-    }
-
-    @Override
-    public boolean isActivityAllowedWhileDriving(String packageName, String className)
-            throws CarNotConnectedException {
-        try {
-            return mManager.isActivityDistractionOptimized(packageName, className);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public boolean isServiceAllowedWhileDriving(String packageName, String className)
-            throws CarNotConnectedException {
-        try {
-            return mManager.isServiceDistractionOptimized(packageName, className);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void onCarDisconnected() {
-        // nothing to do
-    }
-}
diff --git a/car-support-lib/src/android/support/car/hardware/CarSensorConfig.java b/car-support-lib/src/android/support/car/hardware/CarSensorConfig.java
deleted file mode 100644
index b39d205..0000000
--- a/car-support-lib/src/android/support/car/hardware/CarSensorConfig.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.hardware;
-
-import static androidx.annotation.RestrictTo.Scope.GROUP_ID;
-
-import android.os.Bundle;
-
-import androidx.annotation.RestrictTo;
-
-/**
- * A CarSensorConfig object corresponds to a single sensor type coming from the car.
- * @hide
- */
-public class CarSensorConfig {
-    /** List of property specific mapped elements in bundle for WHEEL_TICK_DISTANCE sensor*/
-    /** @hide */
-    public final static String WHEEL_TICK_DISTANCE_SUPPORTED_WHEELS =
-        "android.car.wheelTickDistanceSupportedWheels";
-    /** @hide */
-    public final static String WHEEL_TICK_DISTANCE_FRONT_LEFT_UM_PER_TICK =
-        "android.car.wheelTickDistanceFrontLeftUmPerTick";
-    /** @hide */
-    public final static String WHEEL_TICK_DISTANCE_FRONT_RIGHT_UM_PER_TICK =
-        "android.car.wheelTickDistanceFrontRightUmPerTick";
-    /** @hide */
-    public final static String WHEEL_TICK_DISTANCE_REAR_RIGHT_UM_PER_TICK =
-        "android.car.wheelTickDistanceRearRightUmPerTick";
-    /** @hide */
-    public final static String WHEEL_TICK_DISTANCE_REAR_LEFT_UM_PER_TICK =
-        "android.car.wheelTickDistanceRearLeftUmPerTick";
-
-    /** Config data stored in Bundle */
-    private final Bundle mConfig;
-    private final int mType;
-
-    private final static int RAW_BUNDLE_SIZE = 4;
-    private final static int WHEEL_TICK_DISTANCE_BUNDLE_SIZE = 6;
-
-    /**
-     * Constructs a {@link CarSensorConfig}. Handled by CarSensorManager implementations.
-     * App developers need not worry about constructing these objects.
-     * @hide
-     */
-    @RestrictTo(GROUP_ID)
-    public CarSensorConfig(int type, Bundle in) {
-        mType = type;
-        mConfig = in.deepCopy();
-    }
-
-    private void checkType(int type) {
-        if (mType == type) {
-            return;
-        }
-        throw new UnsupportedOperationException(String.format(
-            "Invalid sensor type: expected %d, got %d", type, mType));
-    }
-
-    /** @hide */
-    public int getInt(String key) {
-        if (mConfig.containsKey(key)) {
-            return mConfig.getInt(key);
-        } else {
-            throw new IllegalArgumentException("SensorType " + mType +
-                " does not contain key: " + key);
-        }
-    }
-
-    /** @hide */
-    public int getType() {
-        return mType;
-    }
-
-    /** @hide */
-    @Override
-    public String toString() {
-        StringBuilder sb = new StringBuilder();
-        sb.append(getClass().getName() + "[");
-        sb.append("mConfig: " + mConfig.toString());
-        sb.append("mType: " + mType);
-        sb.append("]");
-        return sb.toString();
-    }
-}
diff --git a/car-support-lib/src/android/support/car/hardware/CarSensorEvent.java b/car-support-lib/src/android/support/car/hardware/CarSensorEvent.java
deleted file mode 100644
index 7b1bf1a..0000000
--- a/car-support-lib/src/android/support/car/hardware/CarSensorEvent.java
+++ /dev/null
@@ -1,1207 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.hardware;
-
-import static androidx.annotation.RestrictTo.Scope.GROUP_ID;
-
-import android.car.VehicleOilLevel;
-import android.location.GpsSatellite;
-import android.location.Location;
-import android.os.SystemClock;
-
-import androidx.annotation.RestrictTo;
-
-/**
- * A CarSensorEvent object corresponds to a single sensor event coming from the car. Sensor
- * data is stored in a sensor type-specific format in the object's float and byte arrays.
- * </p>
- * To aid in unmarshalling the object's data arrays, this class provides static nested classes and
- * conversion methods (such as {@link DrivingStatusData} and {@link #getDrivingStatusData}).
- * Additionally, calling a conversion method on a CarSensorEvent object with an inappropriate type
- * results in an {@code UnsupportedOperationException} being thrown.
- */
-public class CarSensorEvent {
-
-
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: No restrictions.
-     */
-    public static final int DRIVE_STATUS_UNRESTRICTED = 0;
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: No video playback allowed.
-     * See {@link #getDrivingStatusData()}.
-     */
-    public static final int DRIVE_STATUS_NO_VIDEO = 0x1;
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: No keyboard or rotary
-     * controller input allowed. See {@link #getDrivingStatusData()}.
-     */
-    public static final int DRIVE_STATUS_NO_KEYBOARD_INPUT = 0x2;
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: No voice input allowed.
-     * See {@link #getDrivingStatusData()}.
-     */
-    public static final int DRIVE_STATUS_NO_VOICE_INPUT = 0x4;
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: No setup/configuration
-     * allowed. See {@link #getDrivingStatusData()}.
-     */
-    public static final int DRIVE_STATUS_NO_CONFIG = 0x8;
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: Limit displayed message
-     * length. See {@link #getDrivingStatusData()}.
-     */
-    public static final int DRIVE_STATUS_LIMIT_MESSAGE_LEN = 0x10;
-    /**
-     * Status for {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}: All driving restrictions
-     * enabled. See {@link #getDrivingStatusData()}.
-     */
-    public static final int DRIVE_STATUS_FULLY_RESTRICTED = DRIVE_STATUS_NO_VIDEO |
-            DRIVE_STATUS_NO_KEYBOARD_INPUT | DRIVE_STATUS_NO_VOICE_INPUT | DRIVE_STATUS_NO_CONFIG |
-            DRIVE_STATUS_LIMIT_MESSAGE_LEN;
-    /**
-     * Indices for {@link CarSensorManager#SENSOR_TYPE_COMPASS} in floatValues.
-     * Angles are in degrees. Can be NaN if not available. See {@link #getCompassData()}.
-     */
-    public static final int INDEX_COMPASS_BEARING = 0;
-    /**
-     * Indices for {@link CarSensorManager#SENSOR_TYPE_COMPASS} in floatValues.
-     * Angles are in degrees. Can be NaN if not available. See {@link #getCompassData()}.
-     */
-    public static final int INDEX_COMPASS_PITCH   = 1;
-    /**
-     * Indices for {@link CarSensorManager#SENSOR_TYPE_COMPASS} in floatValues.
-     * Angles are in degrees. Can be NaN if not available. See {@link #getCompassData()}.
-     */
-    public static final int INDEX_COMPASS_ROLL    = 2;
-
-
-    /**
-     * Index for {@link CarSensorManager#SENSOR_TYPE_WHEEL_TICK_DISTANCE} in longValues.
-     */
-    public static final int INDEX_WHEEL_DISTANCE_RESET_COUNT = 0;
-    public static final int INDEX_WHEEL_DISTANCE_FRONT_LEFT = 1;
-    public static final int INDEX_WHEEL_DISTANCE_FRONT_RIGHT = 2;
-    public static final int INDEX_WHEEL_DISTANCE_REAR_RIGHT = 3;
-    public static final int INDEX_WHEEL_DISTANCE_REAR_LEFT = 4;
-
-    private static final long MILLI_IN_NANOS = 1000000L;
-
-    /** Sensor type for this event, such as {@link CarSensorManager#SENSOR_TYPE_COMPASS}. */
-    public final int sensorType;
-
-    /**
-     * When this data was acquired in car or received from car. It is the elapsed time of data
-     * reception from the car in nanoseconds since system boot.
-     */
-    public final long timestamp;
-    /**
-     * Array holding float type of sensor data. If the sensor has single value, only floatValues[0]
-     * should be used. */
-    public final float[] floatValues;
-    /** Array holding int type of sensor data. */
-    public final int[] intValues;
-    /** array holding long int type of sensor data */
-    public final long[] longValues;
-
-    private static final float[] EMPTY_FLOAT_ARRAY = {};
-    private static final int[] EMPTY_INT_ARRAY = {};
-    private static final long[] EMPTY_LONG_ARRAY = {};
-
-    /**
-     * Constructs a {@link CarSensorEvent} from integer values. Handled by
-     * CarSensorManager implementations. App developers need not worry about constructing these
-     * objects.
-     * @hide
-     */
-    @RestrictTo(GROUP_ID)
-    public CarSensorEvent(int sensorType, long timestamp, int floatValueSize, int intValueSize,
-                          int longValueSize) {
-        this.sensorType = sensorType;
-        this.timestamp = timestamp;
-        floatValues = new float[floatValueSize];
-        intValues = new int[intValueSize];
-        longValues = new long[longValueSize];
-    }
-
-    /**
-     * Constructor
-     * @param sensorType one of the {@link CarSensorManager}'s SENSOR_TYPE_* constants
-     * @param timestamp time since system start in nanoseconds
-     * @param floatValues {@code null} will be converted to an empty array
-     * @param intValues {@code null} will be converted to an empty array
-     * @param longValues {@code null} will be converted to an empty array
-     * @hide
-     */
-    @RestrictTo(GROUP_ID)
-    public CarSensorEvent(int sensorType, long timestamp, float[] floatValues, int[] intValues,
-                          long[] longValues) {
-        this.sensorType = sensorType;
-        this.timestamp = timestamp;
-        this.floatValues = (floatValues == null) ? EMPTY_FLOAT_ARRAY : floatValues;
-        this.intValues = (intValues == null) ? EMPTY_INT_ARRAY : intValues;
-        this.longValues = (longValues == null) ? EMPTY_LONG_ARRAY : longValues;
-    }
-
-    /**
-     * Constructor
-     * @param sensorType one of the {@link CarSensorManager}'s SENSOR_TYPE_* constants
-     * @param timestamp time since system start in nanoseconds
-     * @param floatValues {@code null} will be converted to an empty array
-     * @param byteValues bytes will be converted into the intValues array. {@code null} will be
-     * converted to an empty array.
-     * @param longValues {@code null} will be converted to an empty array
-     * @hide
-     */
-    @RestrictTo(GROUP_ID)
-    public CarSensorEvent(int sensorType, long timestamp, float[] floatValues, byte[] byteValues,
-                          long[] longValues) {
-        this.sensorType = sensorType;
-        this.timestamp = timestamp;
-        this.floatValues = (floatValues == null) ? EMPTY_FLOAT_ARRAY : floatValues;
-        if (byteValues == null) {
-            this.intValues = EMPTY_INT_ARRAY;
-        } else {
-            this.intValues = new int[byteValues.length];
-            for (int i = 0; i < byteValues.length; i++) {
-                this.intValues[i] = byteValues[i];
-            }
-        }
-        this.longValues = (longValues == null) ? EMPTY_LONG_ARRAY : longValues;
-    }
-
-    private void checkType(int type) {
-        if (sensorType == type) {
-            return;
-        }
-        throw new UnsupportedOperationException(String.format(
-                "Invalid sensor type: expected %d, got %d", type, sensorType));
-    }
-
-    /**
-     * Holds data about the car's compass readings. See {@link #getCompassData()}.
-     */
-    public static class CompassData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** The bearing in degrees. If unsupported by the car, this value is NaN. */
-        public final float bearing;
-        /**
-         * The pitch in degrees. Nose down is positive. If unsupported by the car, this value is
-         * NaN.
-         */
-        public final float pitch;
-        /**
-         * The roll in degrees. Right door down is positive. If unsupported by the car, this value
-         * is NaN.
-         */
-        public final float roll;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CompassData(long timestamp, float bearing, float pitch, float roll) {
-            this.timestamp = timestamp;
-            this.bearing = bearing;
-            this.pitch = pitch;
-            this.roll = roll;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CompassData} object from a CarSensorEvent object
-     * with type {@link CarSensorManager#SENSOR_TYPE_COMPASS}.
-     *
-     * @return A CompassData object corresponding to the data contained in the CarSensorEvent.
-     */
-    public CompassData getCompassData() {
-        checkType(CarSensorManager.SENSOR_TYPE_COMPASS);
-        return new CompassData(0, floatValues[INDEX_COMPASS_BEARING],
-                floatValues[INDEX_COMPASS_PITCH], floatValues[INDEX_COMPASS_ROLL]);
-    }
-
-    /**
-     * Indicates the state of the parking brake (engaged or not). See
-     * {@link #getParkingBrakeData()}.
-     */
-    public static class ParkingBrakeData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** Returns {@code true} if the parking brake is engaged. */
-        public final boolean isEngaged;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public ParkingBrakeData(long timestamp, boolean isEngaged) {
-            this.timestamp = timestamp;
-            this.isEngaged = isEngaged;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link ParkingBrakeData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_PARKING_BRAKE}. See
-     * {@link #getParkingBrakeData()}.
-     *
-     * @return A ParkingBreakData object corresponding to the data contained in the CarSensorEvent.
-     */
-    public ParkingBrakeData getParkingBrakeData() {
-        checkType(CarSensorManager.SENSOR_TYPE_PARKING_BRAKE);
-        return new ParkingBrakeData(timestamp, (intValues[0] == 1));
-    }
-
-    /**
-     * Indicates if the system is in night mode (a state in which the screen is
-     * darkened or displays a darker color palette). See {@link #getNightData()}.
-     */
-    public static class NightData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** Returns {@code true} if the system is in night mode. */
-        public final boolean isNightMode;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public NightData(long timestamp, boolean isNightMode) {
-            this.timestamp = timestamp;
-            this.isNightMode = isNightMode;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link NightData} object from a CarSensorEvent object
-     * with type {@link CarSensorManager#SENSOR_TYPE_NIGHT}.
-     *
-     * @return A NightData object corresponding to the data contained in the CarSensorEvent.
-     */
-    public NightData getNightData() {
-        checkType(CarSensorManager.SENSOR_TYPE_NIGHT);
-        return new NightData(timestamp, (intValues[0] == 1));
-    }
-
-    /**
-     * Indicates the restrictions in effect based on the status of the vehicle. See
-     * {@link #getDrivingStatusData()}.
-     */
-    public static class DrivingStatusData {
-        /**
-         * The time in nanoseconds since system boot.
-         */
-        public final long timestamp;
-        /**
-         * A bitmask with the following field values: {@link #DRIVE_STATUS_NO_VIDEO},
-         * {@link #DRIVE_STATUS_NO_KEYBOARD_INPUT}, {@link #DRIVE_STATUS_NO_VOICE_INPUT},
-         * {@link #DRIVE_STATUS_NO_CONFIG}, {@link #DRIVE_STATUS_LIMIT_MESSAGE_LEN}. You may read
-         * this or use the convenience methods.
-         */
-        public final int status;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public DrivingStatusData(long timestamp, int status) {
-            this.timestamp = timestamp;
-            this.status = status;
-        }
-
-        /**
-         * @return Returns {@code true} if the keyboard is not allowed at this time.
-         */
-        public boolean isKeyboardRestricted() {
-            return DRIVE_STATUS_NO_KEYBOARD_INPUT == (status & DRIVE_STATUS_NO_KEYBOARD_INPUT);
-        }
-
-        /**
-         * @return Returns {@code true} if voice commands are not allowed at this time.
-         */
-        public boolean isVoiceRestricted() {
-            return DRIVE_STATUS_NO_VOICE_INPUT == (status & DRIVE_STATUS_NO_VOICE_INPUT);
-        }
-
-        /**
-         * @return Returns {@code true} if video is not allowed at this time.
-         */
-        public boolean isVideoRestricted() {
-            return DRIVE_STATUS_NO_VIDEO == (status & DRIVE_STATUS_NO_VIDEO);
-        }
-
-        /**
-         * @return Returns {@code true} if configuration should not be performed at this time.
-         */
-        public boolean isConfigurationRestricted() {
-            return DRIVE_STATUS_NO_CONFIG == (status & DRIVE_STATUS_NO_CONFIG);
-        }
-
-        /**
-         * @return Returns {@code true} if message length should be limited at this time.
-         */
-        public boolean isMessageLengthRestricted() {
-            return DRIVE_STATUS_LIMIT_MESSAGE_LEN == (status & DRIVE_STATUS_LIMIT_MESSAGE_LEN);
-        }
-
-        /**
-         * @return Returns {@code true} if all restrictions are in place at this time.
-         */
-        public boolean isFullyRestricted() {
-            return DRIVE_STATUS_FULLY_RESTRICTED == (status & DRIVE_STATUS_FULLY_RESTRICTED);
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link DrivingStatusData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_DRIVING_STATUS}.
-     *
-     * @return A DrivingStatusData object corresponding to the data contained in the
-     * CarSensorEvent.
-     */
-    public DrivingStatusData getDrivingStatusData() {
-        checkType(CarSensorManager.SENSOR_TYPE_DRIVING_STATUS);
-        return new DrivingStatusData(timestamp, intValues[0]);
-    }
-
-
-    /*things that are currently hidden*/
-
-
-    /**
-     *  GEAR_* represents meaning of intValues[0] for {@link CarSensorManager#SENSOR_TYPE_GEAR}
-     *  sensor type.
-     *  GEAR_NEUTRAL means transmission gear is in neutral state, and the car may be moving.
-     * @hide
-     */
-    public static final int GEAR_NEUTRAL    = 0;
-    /**
-     * intValues[0] from 1 to 99 represents transmission gear number for moving forward.
-     * GEAR_FIRST is for gear number 1.
-     * @hide
-     */
-    public static final int GEAR_FIRST      = 1;
-    /** Gear number 2. @hide */
-    public static final int GEAR_SECOND     = 2;
-    /** Gear number 3. @hide */
-    public static final int GEAR_THIRD      = 3;
-    /** Gear number 4. @hide */
-    public static final int GEAR_FOURTH     = 4;
-    /** Gear number 5. @hide */
-    public static final int GEAR_FIFTH      = 5;
-    /** Gear number 6. @hide */
-    public static final int GEAR_SIXTH      = 6;
-    /** Gear number 7. @hide */
-    public static final int GEAR_SEVENTH    = 7;
-    /** Gear number 8. @hide */
-    public static final int GEAR_EIGHTH     = 8;
-    /** Gear number 9. @hide */
-    public static final int GEAR_NINTH      = 9;
-    /** Gear number 10. @hide */
-    public static final int GEAR_TENTH      = 10;
-    /**
-     * This is for transmission without specific gear number for moving forward like CVT. It tells
-     * that car is in a transmission state to move it forward.
-     * @hide
-     */
-    public static final int GEAR_DRIVE      = 100;
-    /** Gear in parking state @hide */
-    public static final int GEAR_PARK       = 101;
-    /** Gear in reverse @hide */
-    public static final int GEAR_REVERSE    = 102;
-
-    /**
-     * Indices for {@link CarSensorManager#SENSOR_TYPE_GYROSCOPE} in floatValues.
-     * Rotation speed is in rad/s. Any component can be NaN if it is not available.
-     */
-    /**@hide*/
-    public static final int INDEX_GYROSCOPE_X = 0;
-    /**@hide*/
-    public static final int INDEX_GYROSCOPE_Y = 1;
-    /**@hide*/
-    public static final int INDEX_GYROSCOPE_Z = 2;
-
-    /**
-     * Indices for {@link CarSensorManager#SENSOR_TYPE_GPS_SATELLITE}.
-     * Both byte values and float values are used.
-     * Two first bytes encode number of satellites in-use/in-view (or 0xFF if unavailable).
-     * Then optionally with INDEX_GPS_SATELLITE_ARRAY_BYTE_OFFSET offset and interval
-     * INDEX_GPS_SATELLITE_ARRAY_BYTE_INTERVAL between elements are encoded boolean flags of
-     * whether particular satellite from in-view participate in in-use subset.
-     * Float values with INDEX_GPS_SATELLITE_ARRAY_FLOAT_OFFSET offset and interval
-     * INDEX_GPS_SATELLITE_ARRAY_FLOAT_INTERVAL between elements can optionally contain
-     * per-satellite values of signal strength and other values or NaN if unavailable.
-     */
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_NUMBER_IN_USE = 0;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_NUMBER_IN_VIEW = 1;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_ARRAY_INT_OFFSET = 2;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_ARRAY_INT_INTERVAL = 1;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_ARRAY_FLOAT_OFFSET = 0;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_ARRAY_FLOAT_INTERVAL = 4;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_PRN_OFFSET = 0;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_SNR_OFFSET = 1;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_AZIMUTH_OFFSET = 2;
-    /**@hide*/
-    public static final int INDEX_GPS_SATELLITE_ELEVATION_OFFSET = 3;
-
-
-    /**
-     * Index for {@link CarSensorManager#SENSOR_TYPE_LOCATION} in floatValues.
-     * Each bit intValues[0] represents whether the corresponding data is present.
-     */
-    /**@hide*/
-    public static final int INDEX_LOCATION_LATITUDE  = 0;
-    /**@hide*/
-    public static final int INDEX_LOCATION_LONGITUDE = 1;
-    /**@hide*/
-    public static final int INDEX_LOCATION_ACCURACY  = 2;
-    /**@hide*/
-    public static final int INDEX_LOCATION_ALTITUDE  = 3;
-    /**@hide*/
-    public static final int INDEX_LOCATION_SPEED     = 4;
-    /**@hide*/
-    public static final int INDEX_LOCATION_BEARING   = 5;
-    /**@hide*/
-    public static final int INDEX_LOCATION_MAX = INDEX_LOCATION_BEARING;
-    /**@hide*/
-    public static final int INDEX_LOCATION_LATITUDE_INTS = 1;
-    /**@hide*/
-    public static final int INDEX_LOCATION_LONGITUDE_INTS = 2;
-
-
-    /**
-     * Index for {@link CarSensorManager#SENSOR_TYPE_ENVIRONMENT} in floatValues.
-     * Temperature in Celsius degrees.
-     * @hide
-     */
-    public static final int INDEX_ENVIRONMENT_TEMPERATURE = 0;
-    /**
-     * Index for {@link CarSensorManager#SENSOR_TYPE_ENVIRONMENT} in floatValues.
-     * Pressure in kPa.
-     * @hide
-     */
-    public static final int INDEX_ENVIRONMENT_PRESSURE = 1;
-
-
-    /**
-     * Indices for {@link CarSensorManager#SENSOR_TYPE_ACCELEROMETER} in floatValues.
-     * Acceleration (gravity) is in m/s^2. Any component can be NaN if it is not available.
-     */
-    /**@hide*/
-    public static final int INDEX_ACCELEROMETER_X = 0;
-    /**@hide*/
-    public static final int INDEX_ACCELEROMETER_Y = 1;
-    /**@hide*/
-    public static final int INDEX_ACCELEROMETER_Z = 2;
-
-    /** @hide */
-    public static class EnvironmentData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** If unsupported by the car, this value is NaN. */
-        public final float temperature;
-        /** If unsupported by the car, this value is NaN. */
-        public final float pressure;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public EnvironmentData(long timestamp, float temperature, float pressure) {
-            this.timestamp = timestamp;
-            this.temperature = temperature;
-            this.pressure = pressure;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining an {@link EnvironmentData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_ENVIRONMENT}.
-     *
-     * @return an EnvironmentData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public EnvironmentData getEnvironmentData() {
-        checkType(CarSensorManager.SENSOR_TYPE_ENVIRONMENT);
-
-        float temperature = floatValues[INDEX_ENVIRONMENT_TEMPERATURE];
-        float pressure = floatValues[INDEX_ENVIRONMENT_PRESSURE];
-        return new EnvironmentData(timestamp, temperature, pressure);
-    }
-
-    /** @hide */
-    public static class GearData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        public final int gear;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public GearData(long timestamp, int gear) {
-            this.timestamp = timestamp;
-            this.gear = gear;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link GearData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_GEAR}.
-     *
-     * @return a GearData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public GearData getGearData() {
-        checkType(CarSensorManager.SENSOR_TYPE_GEAR);
-        return new GearData(timestamp, intValues[0]);
-    }
-
-    /** @hide */
-    public static class FuelLevelData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** Fuel level in milliliters. If unsupported by the car, this value is -1. */
-        public final float level;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public FuelLevelData(long timestamp, float level) {
-            this.timestamp = timestamp;
-            this.level = level;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link FuelLevelData} object from a CarSensorEvent object
-     * with type {@link CarSensorManager#SENSOR_TYPE_FUEL_LEVEL}.
-     *
-     * @return A FuelLevel object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public FuelLevelData getFuelLevelData() {
-        checkType(CarSensorManager.SENSOR_TYPE_FUEL_LEVEL);
-        float level = -1.0f;
-        if (floatValues != null) {
-            if (floatValues[0] >= 0) {
-                level = floatValues[0];
-            }
-        }
-        return new FuelLevelData(timestamp, level);
-    }
-
-    /** @hide */
-    public static class OdometerData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        public final float kms;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public OdometerData(long timestamp, float kms) {
-            this.timestamp = timestamp;
-            this.kms = kms;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining an {@link OdometerData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_ODOMETER}.
-     *
-     * @return an OdometerData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public OdometerData getOdometerData() {
-        checkType(CarSensorManager.SENSOR_TYPE_ODOMETER);
-            return new OdometerData(timestamp, floatValues[0]);
-    }
-
-    /** @hide */
-    public static class RpmData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        public final float rpm;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public RpmData(long timestamp, float rpm) {
-            this.timestamp = timestamp;
-            this.rpm = rpm;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link RpmData} object from a CarSensorEvent object with
-     * type {@link CarSensorManager#SENSOR_TYPE_RPM}.
-     *
-     * @return An RpmData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public RpmData getRpmData() {
-        checkType(CarSensorManager.SENSOR_TYPE_RPM);
-        return new RpmData(timestamp, floatValues[0]);
-    }
-
-    /** @hide */
-    public static class CarSpeedData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        public final float carSpeed;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarSpeedData(long timestamp, float carSpeed) {
-            this.timestamp = timestamp;
-            this.carSpeed = carSpeed;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarSpeedData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_CAR_SPEED}.
-     *
-     * @return a CarSpeedData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public CarSpeedData getCarSpeedData() {
-        checkType(CarSensorManager.SENSOR_TYPE_CAR_SPEED);
-        return new CarSpeedData(timestamp, floatValues[0]);
-    }
-
-    /**
-     * Convenience method for obtaining a {@link Location} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_LOCATION}.
-     *
-     * @param location an optional output parameter which, if non-null, will be used by this method
-     *     instead of a newly created object.
-     * @return a Location object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public Location getLocation(Location location) {
-        checkType(CarSensorManager.SENSOR_TYPE_LOCATION);
-        if (location == null) {
-            location = new Location("Car-GPS");
-        }
-        // intValues[0]: bit flags for the presence of other values following.
-        int presense = intValues[0];
-        if ((presense & (0x1 << INDEX_LOCATION_LATITUDE)) != 0) {
-            int latE7 = intValues[INDEX_LOCATION_LATITUDE_INTS];
-            location.setLatitude(latE7 * 1e-7);
-        }
-        if ((presense & (0x1 << INDEX_LOCATION_LONGITUDE)) != 0) {
-            int longE7 = intValues[INDEX_LOCATION_LONGITUDE_INTS];
-            location.setLongitude(longE7 * 1e-7);
-        }
-        if ((presense & (0x1 << INDEX_LOCATION_ACCURACY)) != 0) {
-            location.setAccuracy(floatValues[INDEX_LOCATION_ACCURACY]);
-        }
-        if ((presense & (0x1 << INDEX_LOCATION_ALTITUDE)) != 0) {
-            location.setAltitude(floatValues[INDEX_LOCATION_ALTITUDE]);
-        }
-        if ((presense & (0x1 << INDEX_LOCATION_SPEED)) != 0) {
-            location.setSpeed(floatValues[INDEX_LOCATION_SPEED]);
-        }
-        if ((presense & (0x1 << INDEX_LOCATION_BEARING)) != 0) {
-            location.setBearing(floatValues[INDEX_LOCATION_BEARING]);
-        }
-        location.setElapsedRealtimeNanos(timestamp);
-        // There is a risk of scheduler delaying 2nd elapsedRealtimeNs value.
-        // But will not try to fix it assuming that is acceptable as UTC time's accuracy is not
-        // guaranteed in Location data.
-        long currentTimeMs = System.currentTimeMillis();
-        long elapsedRealtimeNs = SystemClock.elapsedRealtimeNanos();
-        location.setTime(
-                currentTimeMs - (elapsedRealtimeNs - timestamp) / MILLI_IN_NANOS);
-        return location;
-    }
-
-    /** @hide */
-    public static class AccelerometerData  {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** If unsupported by the car, this value is NaN. */
-        public final float x;
-        /** If unsupported by the car, this value is NaN. */
-        public final float y;
-        /** If unsupported by the car, this value is NaN. */
-        public final float z;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public AccelerometerData(long timestamp, float x, float y, float z) {
-            this.timestamp = timestamp;
-            this.x = x;
-            this.y = y;
-            this.z = z;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining an {@link AccelerometerData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_ACCELEROMETER}.
-     *
-     * @return An AccelerometerData object corresponding to the data contained in the
-     * CarSensorEvent.
-     * @hide
-     */
-    public AccelerometerData getAccelerometerData() {
-        checkType(CarSensorManager.SENSOR_TYPE_ACCELEROMETER);
-        float x = floatValues[INDEX_ACCELEROMETER_X];
-        float y = floatValues[INDEX_ACCELEROMETER_Y];
-        float z = floatValues[INDEX_ACCELEROMETER_Z];
-        return new AccelerometerData(timestamp, x, y, z);
-    }
-
-    /** @hide */
-    public static class GyroscopeData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /** If unsupported by the car, this value is NaN. */
-        public final float x;
-        /** If unsupported by the car, this value is NaN. */
-        public final float y;
-        /** If unsupported by the car, this value is NaN. */
-        public final float z;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public GyroscopeData(long timestamp, float x, float y, float z) {
-            this.timestamp = timestamp;
-            this.x = x;
-            this.y = y;
-            this.z = z;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link GyroscopeData} object from a CarSensorEvent object
-     * with type {@link CarSensorManager#SENSOR_TYPE_GYROSCOPE}.
-     *
-     * @return A GyroscopeData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public GyroscopeData getGyroscopeData() {
-        checkType(CarSensorManager.SENSOR_TYPE_GYROSCOPE);
-        float x = floatValues[INDEX_GYROSCOPE_X];
-        float y = floatValues[INDEX_GYROSCOPE_Y];
-        float z = floatValues[INDEX_GYROSCOPE_Z];
-        return new GyroscopeData(timestamp, x, y, z);
-    }
-
-    // android.location.GpsSatellite doesn't have a public constructor, so that can't be used.
-    /**
-     * Class that contains GPS satellite status. For more info on meaning of these fields refer
-     * to the documentation to the {@link GpsSatellite} class.
-     * @hide
-     */
-    public static class GpsSatelliteData {
-        /** The time in nanoseconds since system boot. */
-        public final long timestamp;
-        /**
-         * Number of satellites used in GPS fix or -1 of unavailable.
-         */
-        public final int numberInUse;
-        /**
-         * Number of satellites in view or -1 of unavailable.
-         */
-        public final int numberInView;
-        /**
-         * Per-satellite flag if this satellite was used for GPS fix.
-         * Can be null if per-satellite data is unavailable.
-         */
-        public final boolean[] usedInFix;
-        /**
-         * Per-satellite pseudo-random id.
-         * Can be null if per-satellite data is unavailable.
-         */
-        public final int[] prn;
-        /**
-         * Per-satellite signal to noise ratio.
-         * Can be null if per-satellite data is unavailable.
-         */
-        public final float[] snr;
-        /**
-         * Per-satellite azimuth.
-         * Can be null if per-satellite data is unavailable.
-         */
-        public final float[] azimuth;
-        /**
-         * Per-satellite elevation.
-         * Can be null if per-satellite data is unavailable.
-         */
-        public final float[] elevation;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public GpsSatelliteData(long timestamp, int numberInUse, int numberInView,
-                boolean[] usedInFix, int[] prn, float[] snr, float[] azimuth, float[] elevation) {
-            this.timestamp = timestamp;
-            this.numberInUse = numberInUse;
-            this.numberInView = numberInView;
-            this.usedInFix = usedInFix;
-            this.prn = prn;
-            this.snr = snr;
-            this.azimuth = azimuth;
-            this.elevation = elevation;
-        }
-    }
-
-    private final int intOffset = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_INT_OFFSET;
-    private final int intInterval = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_INT_INTERVAL;
-    private final int floatOffset = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_FLOAT_OFFSET;
-    private final int floatInterval = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_FLOAT_INTERVAL;
-
-    /**
-     * Convenience method for obtaining a {@link GpsSatelliteData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_GPS_SATELLITE} with optional
-     * per-satellite info.
-     *
-     * @param withPerSatellite whether to include per-satellite data.
-     * @return a GpsSatelliteData object corresponding to the data contained in the CarSensorEvent.
-     * @hide
-     */
-    public GpsSatelliteData getGpsSatelliteData(boolean withPerSatellite) {
-        checkType(CarSensorManager.SENSOR_TYPE_GPS_SATELLITE);
-
-        //init all vars
-        int numberInUse = intValues[CarSensorEvent.INDEX_GPS_SATELLITE_NUMBER_IN_USE];
-        int numberInView = intValues[CarSensorEvent.INDEX_GPS_SATELLITE_NUMBER_IN_VIEW];
-        boolean[] usedInFix = null;
-        int[] prn = null;
-        float[] snr = null;
-        float[] azimuth = null;
-        float[] elevation = null;
-
-        if (withPerSatellite && numberInView >= 0) {
-            final int numberOfSats = (floatValues.length - floatOffset) / floatInterval;
-            usedInFix = new boolean[numberOfSats];
-            prn = new int[numberOfSats];
-            snr = new float[numberOfSats];
-            azimuth = new float[numberOfSats];
-            elevation = new float[numberOfSats];
-
-            for (int i = 0; i < numberOfSats; ++i) {
-                int iInt = intOffset + intInterval * i;
-                int iFloat = floatOffset + floatInterval * i;
-                usedInFix[i] = intValues[iInt] != 0;
-                prn[i] = Math.round(
-                        floatValues[iFloat + CarSensorEvent.INDEX_GPS_SATELLITE_PRN_OFFSET]);
-                snr[i] =
-                        floatValues[iFloat + CarSensorEvent.INDEX_GPS_SATELLITE_SNR_OFFSET];
-                azimuth[i] = floatValues[iFloat
-                        + CarSensorEvent.INDEX_GPS_SATELLITE_AZIMUTH_OFFSET];
-                elevation[i] = floatValues[iFloat
-                        + CarSensorEvent.INDEX_GPS_SATELLITE_ELEVATION_OFFSET];
-            }
-        }
-        return new GpsSatelliteData(timestamp, numberInUse, numberInView, usedInFix, prn, snr,
-                azimuth, elevation);
-    }
-
-    /** @hide */
-    public static class CarWheelTickDistanceData {
-        public final long timestamp;
-        public final long sensorResetCount;
-        public final long frontLeftWheelDistanceMm;
-        public final long frontRightWheelDistanceMm;
-        public final long rearRightWheelDistanceMm;
-        public final long rearLeftWheelDistanceMm;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarWheelTickDistanceData(long timestamp, long sensorResetCount,
-                                    long frontLeftWheelDistanceMm, long frontRightWheelDistanceMm,
-                                    long rearRightWheelDistanceMm, long rearLeftWheelDistanceMm) {
-            this.timestamp = timestamp;
-            this.sensorResetCount = sensorResetCount;
-            this.frontLeftWheelDistanceMm = frontLeftWheelDistanceMm;
-            this.frontRightWheelDistanceMm = frontRightWheelDistanceMm;
-            this.rearRightWheelDistanceMm = rearRightWheelDistanceMm;
-            this.rearLeftWheelDistanceMm = rearLeftWheelDistanceMm;
-        }
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarWheelTickDistanceData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_WHEEL_TICK_DISTANCE}.
-     *
-     * @return CarWheelTickDistanceData object corresponding to data contained in the CarSensorEvent
-     * @hide
-     */
-    public CarWheelTickDistanceData getCarWheelTickDistanceData() {
-        checkType(CarSensorManager.SENSOR_TYPE_WHEEL_TICK_DISTANCE);
-        long sensorResetCount = longValues[INDEX_WHEEL_DISTANCE_RESET_COUNT];
-        long frontLeftWheelDistanceMm = longValues[INDEX_WHEEL_DISTANCE_FRONT_LEFT];
-        long frontRightWheelDistanceMm = longValues[INDEX_WHEEL_DISTANCE_FRONT_RIGHT];
-        long rearRightWheelDistanceMm = longValues[INDEX_WHEEL_DISTANCE_REAR_RIGHT];
-        long rearLeftWheelDistanceMm = longValues[INDEX_WHEEL_DISTANCE_REAR_LEFT];
-        return new CarWheelTickDistanceData(timestamp, sensorResetCount, frontLeftWheelDistanceMm,
-            frontRightWheelDistanceMm, rearRightWheelDistanceMm, rearLeftWheelDistanceMm);
-    }
-
-    /** @hide */
-    public static class CarAbsActiveData {
-        public final long timestamp;
-        public final boolean absIsActive;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarAbsActiveData(long timestamp, boolean absIsActive) {
-            this.timestamp = timestamp;
-            this.absIsActive = absIsActive;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarAbsActiveData} object from a CarSensorEvent
-     * object with type {@link CarSensorManager#SENSOR_TYPE_ABS_ACTIVE}.
-     *
-     * @return a CarAbsActiveData object corresponding to data contained in the CarSensorEvent.
-     * @hide
-     */
-    public CarAbsActiveData getCarAbsActiveData() {
-        checkType(CarSensorManager.SENSOR_TYPE_ABS_ACTIVE);
-        boolean absIsActive = intValues[0] == 1;
-        return new CarAbsActiveData(timestamp, absIsActive);
-    }
-
-    /** @hide */
-    public static class CarTractionControlActiveData {
-        public final long timestamp;
-        public final boolean tractionControlIsActive;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarTractionControlActiveData(long timestamp, boolean tractionControlIsActive) {
-            this.timestamp = timestamp;
-            this.tractionControlIsActive = tractionControlIsActive;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarTractionControlActiveData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_TRACTION_CONTROL_ACTIVE}.
-     *
-     * @return a CarTractionControlActiveData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarTractionControlActiveData getCarTractionControlActiveData() {
-        checkType(CarSensorManager.SENSOR_TYPE_TRACTION_CONTROL_ACTIVE);
-        boolean tractionControlIsActive = intValues[0] == 1;
-        return new CarTractionControlActiveData(timestamp, tractionControlIsActive);
-    }
-
-    /** @hide */
-    public static class CarFuelDoorOpenData {
-        public final long timestamp;
-        public final boolean fuelDoorIsOpen;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarFuelDoorOpenData(long timestamp, boolean fuelDoorIsOpen) {
-            this.timestamp = timestamp;
-            this.fuelDoorIsOpen = fuelDoorIsOpen;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarFuelDoorOpenData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_FUEL_DOOR_OPEN}.
-     *
-     * @return a CarFuelDoorOpenData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarFuelDoorOpenData getCarFuelDoorOpenData() {
-        checkType(CarSensorManager.SENSOR_TYPE_FUEL_DOOR_OPEN);
-        boolean fuelDoorIsOpen = intValues[0] == 1;
-        return new CarFuelDoorOpenData(timestamp, fuelDoorIsOpen);
-    }
-
-    /** @hide */
-    public static class CarEvBatteryLevelData {
-        public final long timestamp;
-        public final float evBatteryLevel;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarEvBatteryLevelData(long timestamp, float evBatteryLevel) {
-            this.timestamp = timestamp;
-            this.evBatteryLevel = evBatteryLevel;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarEvBatteryLevelData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_EV_BATTERY_LEVEL}.
-     *
-     * @return a CarEvBatteryLevelData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarEvBatteryLevelData getCarEvBatteryLevelData() {
-        checkType(CarSensorManager.SENSOR_TYPE_EV_BATTERY_LEVEL);
-        float evBatteryLevel = -1.0f;
-        if (floatValues != null) {
-            if (floatValues[0] >= 0) {
-                evBatteryLevel = floatValues[0];
-            }
-        }
-        return new CarEvBatteryLevelData(timestamp, evBatteryLevel);
-    }
-
-    /** @hide */
-    public static class CarEvChargePortOpenData {
-        public final long timestamp;
-        public final boolean evChargePortIsOpen;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarEvChargePortOpenData(long timestamp, boolean evChargePortIsOpen) {
-            this.timestamp = timestamp;
-            this.evChargePortIsOpen = evChargePortIsOpen;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarEvChargePortOpenData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_EV_CHARGE_PORT_OPEN}.
-     *
-     * @return a CarEvChargePortOpenData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarEvChargePortOpenData getCarEvChargePortOpenData() {
-        checkType(CarSensorManager.SENSOR_TYPE_EV_CHARGE_PORT_OPEN);
-        boolean evChargePortIsOpen = intValues[0] == 1;
-        return new CarEvChargePortOpenData(timestamp, evChargePortIsOpen);
-    }
-
-    /** @hide */
-    public static class CarEvChargePortConnectedData {
-        public final long timestamp;
-        public final boolean evChargePortIsConnected;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarEvChargePortConnectedData(long timestamp, boolean evChargePortIsConnected) {
-            this.timestamp = timestamp;
-            this.evChargePortIsConnected = evChargePortIsConnected;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarEvChargePortConnectedData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_EV_CHARGE_PORT_CONNECTED}.
-     *
-     * @return a CarEvChargePortConnectedData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarEvChargePortConnectedData getCarEvChargePortConnectedData() {
-        checkType(CarSensorManager.SENSOR_TYPE_EV_CHARGE_PORT_CONNECTED);
-        boolean evChargePortIsConnected = intValues[0] == 1;
-        return new CarEvChargePortConnectedData(timestamp, evChargePortIsConnected);
-    }
-
-    /** @hide */
-    public static class CarEvBatteryChargeRateData {
-        public final long timestamp;
-        public final float evChargeRate;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarEvBatteryChargeRateData(long timestamp, float evChargeRate) {
-            this.timestamp = timestamp;
-            this.evChargeRate = evChargeRate;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarEvBatteryChargeRateData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_EV_BATTERY_CHARGE_RATE}.
-     *
-     * @return a CarEvBatteryChargeRateData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarEvBatteryChargeRateData getCarEvBatteryChargeRateData() {
-        checkType(CarSensorManager.SENSOR_TYPE_EV_BATTERY_CHARGE_RATE);
-        float evChargeRate = 0;
-        if (floatValues != null) {
-            evChargeRate = floatValues[0];
-        }
-        return new CarEvBatteryChargeRateData(timestamp, evChargeRate);
-    }
-
-    /** @hide */
-    public static class CarEngineOilLevelData {
-        public final long timestamp;
-        public final int engineOilLevel;
-
-        /** @hide */
-        @RestrictTo(GROUP_ID)
-        public CarEngineOilLevelData(long timestamp, int engineOilLevel) {
-            this.timestamp = timestamp;
-            this.engineOilLevel = engineOilLevel;
-        };
-    }
-
-    /**
-     * Convenience method for obtaining a {@link CarEngineOilLevelData} object from a
-     * CarSensorEvent object with type {@link CarSensorManager#SENSOR_TYPE_ENGINE_OIL_LEVEL}.
-     *
-     * @return a CarEngineOilLevelData object corresponding to data contained in the
-     *     CarSensorEvent.
-     * @hide
-     */
-    public CarEngineOilLevelData getCarEngineOilLevelData() {
-        checkType(CarSensorManager.SENSOR_TYPE_ENGINE_OIL_LEVEL);
-        int engineOilLevel = VehicleOilLevel.ERROR;
-        if (intValues != null) {
-            engineOilLevel = intValues[0];
-        }
-        return new CarEngineOilLevelData(timestamp, engineOilLevel);
-    }
-
-    /** @hide */
-    @Override
-    public String toString() {
-        StringBuilder sb = new StringBuilder();
-        sb.append(getClass().getName() + "[");
-        sb.append("type:" + Integer.toHexString(sensorType));
-        if (floatValues != null && floatValues.length > 0) {
-            sb.append(" float values:");
-            for (float v: floatValues) {
-                sb.append(" " + v);
-            }
-        }
-        if (intValues != null && intValues.length > 0) {
-            sb.append(" int values:");
-            for (int v: intValues) {
-                sb.append(" " + v);
-            }
-        }
-        if (longValues != null && longValues.length > 0) {
-            sb.append(" long values:");
-            for (long v: longValues) {
-                sb.append(" " + v);
-            }
-        }
-        sb.append("]");
-        return sb.toString();
-    }
-}
diff --git a/car-support-lib/src/android/support/car/hardware/CarSensorManager.java b/car-support-lib/src/android/support/car/hardware/CarSensorManager.java
deleted file mode 100644
index 29d6f40..0000000
--- a/car-support-lib/src/android/support/car/hardware/CarSensorManager.java
+++ /dev/null
@@ -1,328 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.hardware;
-
-import android.Manifest;
-import android.support.car.Car;
-import android.support.car.CarManagerBase;
-import android.support.car.CarNotConnectedException;
-
-import androidx.annotation.IntDef;
-import androidx.annotation.RequiresPermission;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- *  Enables applications to monitor car sensor data. Applications register listeners to this
- *  manager to subscribe to individual sensor streams using the SENSOR_TYPE_* constants as the
- *  keys. Data points are returned as {@link CarSensorEvent} objects that have translations for
- *  many built-in data types. For vendor extension streams, interpret data based on
- *  vendor-provided documentation.
- */
-public abstract class CarSensorManager implements CarManagerBase {
-    /**
-     * Represent the direction of the car as an angle in degrees measured clockwise with 0 degree
-     * pointing North. Sensor data in {@link CarSensorEvent} is a float (floatValues[0]).
-     */
-    public static final int SENSOR_TYPE_COMPASS = 1;
-    /**
-     * Represent vehicle speed in meters per second (m/s). Sensor data in
-     * {@link CarSensorEvent} is a float >= 0. Requires {@link Car#PERMISSION_SPEED} permission.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_CAR_SPEED = 2;
-    /**
-     * Represent the engine RPM of the car. Sensor data in {@link CarSensorEvent} is a float.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_RPM = 3;
-    /**
-     * Represent the total travel distance of the car in kilometers. Sensor data is a float.
-     * Requires {@link Car#PERMISSION_MILEAGE} permission.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_ODOMETER = 4;
-    /**
-     * Represent the fuel level of the car. In {@link CarSensorEvent},  represents fuel level in
-     * milliliters.  Requires {@link Car#PERMISSION_ENERGY} permission.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_FUEL_LEVEL = 5;
-    /**
-     * Represent the current status of parking brake. Sensor data in {@link CarSensorEvent} is in
-     * intValues[0]. A value of 1 indicates the parking brake is engaged; a value of 0 indicates
-     * the parking brake is not engaged.
-     * For this sensor, rate in {@link #addListener(OnSensorChangedListener, int, int)} is
-     * ignored and all changes are notified.
-     */
-    public static final int SENSOR_TYPE_PARKING_BRAKE = 6;
-    /**
-     * Represent the current position of transmission gear. Sensor data in {@link
-     * CarSensorEvent} is in intValues[0]. For the meaning of the value, check {@link
-     * CarSensorEvent#GEAR_NEUTRAL} and other GEAR_*.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_GEAR = 7;
-
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED8 = 8;
-
-    /**
-     * Represent the current status of the day/night sensor. Sensor data is in intValues[0].
-     */
-    public static final int SENSOR_TYPE_NIGHT = 9;
-    /**
-     * Represent the location. Sensor data is floatValues.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_LOCATION = 10;
-    /**
-     * Represent the current driving status of car. Different user interactions should be used
-     * depending on the current driving status. Driving status is in intValues[0].
-     */
-    public static final int SENSOR_TYPE_DRIVING_STATUS = 11;
-    /**
-     * Environment (such as temperature and pressure).
-     * @hide
-     */
-    public static final int SENSOR_TYPE_ENVIRONMENT = 12;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED13 = 13;
-    /** @hide */
-    public static final int SENSOR_TYPE_ACCELEROMETER = 14;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED15 = 15;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED16 = 16;
-    /** @hide */
-    public static final int SENSOR_TYPE_GPS_SATELLITE = 17;
-    /** @hide */
-    public static final int SENSOR_TYPE_GYROSCOPE = 18;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED19 = 19;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED20 = 20;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED21 = 21;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED22 = 22;
-    /**
-     * Represents wheel distance in millimeters.  Some cars may not have individual sensors on each
-     * wheel.  If a value is not available, -1 will be reported.  The wheel distance accumulates
-     * over time.
-     * Requires {@link Car#PERMISSION_MILEAGE} permission.
-     */
-    public static final int SENSOR_TYPE_WHEEL_TICK_DISTANCE         = 23;
-    /**
-     * Set to true when ABS is active.  This sensor is event driven.
-     * Requires {@link Car#PERMISSION_VEHICLE_DYNAMICS_STATE} permission.
-     */
-    public static final int SENSOR_TYPE_ABS_ACTIVE                  = 24;
-    /**
-     * Set to true when traction control is active.  This sensor is event driven.
-     * Requires {@link Car#PERMISSION_VEHICLE_DYNAMICS_STATE} permission.
-     */
-    public static final int SENSOR_TYPE_TRACTION_CONTROL_ACTIVE     = 25;
-    /** @hide */
-    public static final int SENSOR_TYPE_RESERVED26                  = 26;
-    /**
-     * Set to true if the fuel door is open.
-     */
-    public static final int SENSOR_TYPE_FUEL_DOOR_OPEN              = 27;
-
-    /**
-     * Indicates battery level of the car.
-     * In {@link CarSensorEvent}, represents battery level in WH.
-     * This requires {@link Car#PERMISSION_ENERGY} permission.
-     */
-    public static final int SENSOR_TYPE_EV_BATTERY_LEVEL            = 28;
-    /**
-     * Set to true if EV charging port is open.
-     */
-    public static final int SENSOR_TYPE_EV_CHARGE_PORT_OPEN         = 29;
-    /**
-     * Set to true if EV charging port is connected.
-     */
-    public static final int SENSOR_TYPE_EV_CHARGE_PORT_CONNECTED    = 30;
-    /**
-     *  Indicates the instantaneous battery charging rate in mW.
-     *  This requires {@link Car#PERMISSION_ENERGY} permission.
-     */
-    public static final int SENSOR_TYPE_EV_BATTERY_CHARGE_RATE      = 31;
-    /**
-     * Oil level sensor.
-     * @hide
-     */
-    public static final int SENSOR_TYPE_ENGINE_OIL_LEVEL            = 32;
-
-    /**
-     * Sensors defined in this range [{@link #SENSOR_TYPE_VENDOR_EXTENSION_START},
-     * {@link #SENSOR_TYPE_VENDOR_EXTENSION_END}] are for vendors and should be used only
-     * by the system app to access sensors not defined as standard types.
-     * Sensors supported in this range can vary depending on car models/manufacturers.
-     * Third-party apps should not use sensors in this range as they are not compatible across
-     * all cars; third-party apps that attempt to access a sensor in this range trigger a
-     * security exception (as access is restricted to system apps).
-     *
-     * @hide
-     */
-    public static final int SENSOR_TYPE_VENDOR_EXTENSION_START = 0x60000000;
-    /** @hide */
-    public static final int SENSOR_TYPE_VENDOR_EXTENSION_END   = 0x6fffffff;
-
-    /** @hide */
-    @IntDef({
-        SENSOR_TYPE_COMPASS,
-        SENSOR_TYPE_CAR_SPEED,
-        SENSOR_TYPE_RPM,
-        SENSOR_TYPE_ODOMETER,
-        SENSOR_TYPE_FUEL_LEVEL,
-        SENSOR_TYPE_PARKING_BRAKE,
-        SENSOR_TYPE_GEAR,
-        SENSOR_TYPE_NIGHT,
-        SENSOR_TYPE_LOCATION,
-        SENSOR_TYPE_DRIVING_STATUS,
-        SENSOR_TYPE_ENVIRONMENT,
-        SENSOR_TYPE_ACCELEROMETER,
-        SENSOR_TYPE_GPS_SATELLITE,
-        SENSOR_TYPE_GYROSCOPE,
-        SENSOR_TYPE_WHEEL_TICK_DISTANCE,
-        SENSOR_TYPE_ABS_ACTIVE,
-        SENSOR_TYPE_TRACTION_CONTROL_ACTIVE,
-        SENSOR_TYPE_FUEL_DOOR_OPEN,
-        SENSOR_TYPE_EV_BATTERY_LEVEL,
-        SENSOR_TYPE_EV_CHARGE_PORT_OPEN,
-        SENSOR_TYPE_EV_CHARGE_PORT_CONNECTED,
-        SENSOR_TYPE_EV_BATTERY_CHARGE_RATE,
-        SENSOR_TYPE_ENGINE_OIL_LEVEL,
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface SensorType {}
-
-    /** Read sensor at the default normal rate set for each sensors. This is default rate. */
-    public static final int SENSOR_RATE_NORMAL  = 1;
-    /**@hide*/
-    public static final int SENSOR_RATE_UI = 5;
-    /**@hide*/
-    public static final int SENSOR_RATE_FAST = 10;
-    /** Read sensor at the maximum rate. Actual rate will be different depending on the sensor. */
-    public static final int SENSOR_RATE_FASTEST = 100;
-
-    /** @hide */
-    @IntDef({
-        SENSOR_RATE_NORMAL,
-        SENSOR_RATE_UI,
-        SENSOR_RATE_FAST,
-        SENSOR_RATE_FASTEST
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface SensorRate {}
-
-    /**
-     * Listener for car sensor data change.
-     * Callbacks are called in the Looper context.
-     */
-    public interface OnSensorChangedListener {
-        /**
-         * Called when there is new sensor data from car.
-         * @param manager The manager the listener is attached to.  Useful if the app wished to
-         * unregister.
-         * @param event Incoming sensor event for the given sensor type.
-         */
-        void onSensorChanged(final CarSensorManager manager, final CarSensorEvent event);
-    }
-
-    /**
-     * Get the list of CarSensors available in the connected car.
-     * @return Array of all sensor types supported.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract int[] getSupportedSensors() throws CarNotConnectedException;
-
-    /**
-     * Indicate support for a given sensor.
-     * @param sensorType
-     * @return Returns {@code true} if the sensor is supported.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract boolean isSensorSupported(@SensorType int sensorType)
-            throws CarNotConnectedException;
-
-    /**
-     * Register {@link OnSensorChangedListener} to get repeated sensor updates. Can register
-     * multiple listeners for a single sensor or use the same listener for different
-     * sensors. If the same listener is registered again for the same sensor, it is ignored or
-     * updated (depending on the rate).
-     * <p>
-     * The {@link OnSensorChangedListener} is the identifier for the request and the same
-     * instance must be passed into {@link #removeListener(OnSensorChangedListener)}.
-     * <p>
-     *
-     * @param sensorType Sensor type to subscribe.
-     * @param rate How fast sensor events are delivered. Should be one of
-     *        {@link #SENSOR_RATE_FASTEST} or {@link #SENSOR_RATE_NORMAL}. Rate may not be
-     *        respected, especially when the same sensor is registered with a different listener
-     *        and with different rates.
-     * @return Returns {@code true} if the sensor was successfully enabled.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     * @throws IllegalArgumentException if wrong argument (such as wrong rate).
-     * @throws SecurityException if missing the appropriate permission.
-     */
-    @RequiresPermission(anyOf={Manifest.permission.ACCESS_FINE_LOCATION, Car.PERMISSION_SPEED,
-            Car.PERMISSION_MILEAGE, Car.PERMISSION_ENERGY, Car.PERMISSION_VEHICLE_DYNAMICS_STATE},
-            conditional=true)
-    public abstract boolean addListener(OnSensorChangedListener listener,
-            @SensorType int sensorType, @SensorRate int rate)
-                    throws CarNotConnectedException, IllegalArgumentException;
-
-    /**
-     * Stop getting sensor updates for the given listener. If there are multiple registrations for
-     * this listener, all listening is stopped.
-     * @param listener The listener to remove.
-     */
-    public abstract  void removeListener(OnSensorChangedListener listener);
-
-    /**
-     * Stop getting sensor updates for the given listener and sensor. If the same listener is used
-     * for other sensors, those subscriptions are not affected.
-     * @param listener The listener to remove.
-     * @param sensorType The type to stop receiving notifications for.
-     */
-    public abstract  void removeListener(OnSensorChangedListener listener,
-            @SensorType int sensorType);
-
-    /**
-     * Get the most recent CarSensorEvent for the given type.
-     * @param type A sensor to request.
-     * @return null if no sensor update since connection to the car.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract CarSensorEvent getLatestSensorEvent(@SensorType int type)
-            throws CarNotConnectedException;
-
-    /**
-     * Get the config data for the given type.
-     * @param sensor type to request
-     * @return CarSensorConfig object
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     * @hide
-     */
-    public abstract CarSensorConfig getSensorConfig(@SensorType int type)
-            throws CarNotConnectedException;
-
-}
diff --git a/car-support-lib/src/android/support/car/hardware/CarSensorManagerEmbedded.java b/car-support-lib/src/android/support/car/hardware/CarSensorManagerEmbedded.java
deleted file mode 100644
index a8d8d28..0000000
--- a/car-support-lib/src/android/support/car/hardware/CarSensorManagerEmbedded.java
+++ /dev/null
@@ -1,218 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.hardware;
-
-import static androidx.annotation.RestrictTo.Scope.GROUP_ID;
-
-import android.content.Context;
-import android.support.car.CarNotConnectedException;
-
-import androidx.annotation.RestrictTo;
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.Set;
-
-/**
- *  @hide
- */
-@RestrictTo(GROUP_ID)
-public class CarSensorManagerEmbedded extends CarSensorManager {
-    private static final String TAG = "CarSensorsProxy";
-
-    private final android.car.hardware.CarSensorManager mManager;
-    private final CarSensorsProxy mCarSensorsProxy;
-    private final LinkedList<OnSensorChangedListenerProxy> mListeners = new LinkedList<>();
-
-    public CarSensorManagerEmbedded(Object manager, Context context) {
-        mManager = (android.car.hardware.CarSensorManager) manager;
-        mCarSensorsProxy = new CarSensorsProxy(this, context);
-    }
-
-    @Override
-    public int[] getSupportedSensors() throws CarNotConnectedException {
-        try {
-            Set<Integer> sensorsSet = new HashSet<Integer>();
-            for (Integer sensor : mManager.getSupportedSensors()) {
-                sensorsSet.add(sensor);
-            }
-            for (Integer proxySensor : mCarSensorsProxy.getSupportedSensors()) {
-                sensorsSet.add(proxySensor);
-            }
-            return toIntArray(sensorsSet);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    private static int[] toIntArray(Collection<Integer> collection) {
-        int len = collection.size();
-        int[] arr = new int[len];
-        int arrIndex = 0;
-        for (Integer item : collection) {
-            arr[arrIndex] = item;
-            arrIndex++;
-        }
-        return arr;
-    }
-
-    @Override
-    public boolean isSensorSupported(int sensorType) throws CarNotConnectedException {
-        try {
-            return mManager.isSensorSupported(sensorType)
-                    || mCarSensorsProxy.isSensorSupported(sensorType);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    private boolean isSensorProxied(int sensorType) throws CarNotConnectedException {
-        try {
-            return !mManager.isSensorSupported(sensorType)
-                    && mCarSensorsProxy.isSensorSupported(sensorType);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public boolean addListener(OnSensorChangedListener listener, int sensorType,
-            int rate) throws CarNotConnectedException, IllegalArgumentException {
-        if (isSensorProxied(sensorType)) {
-            return mCarSensorsProxy.registerSensorListener(listener, sensorType, rate);
-        }
-        OnSensorChangedListenerProxy proxy = null;
-        synchronized (this) {
-            proxy = findListenerLocked(listener);
-            if (proxy == null) {
-                proxy = new OnSensorChangedListenerProxy(listener, sensorType, this);
-                mListeners.add(proxy);
-            } else {
-                proxy.sensors.add(sensorType);
-            }
-        }
-        try {
-            return mManager.registerListener(proxy, sensorType, rate);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void removeListener(OnSensorChangedListener listener) {
-        mCarSensorsProxy.unregisterSensorListener(listener);
-        OnSensorChangedListenerProxy proxy = null;
-        synchronized (this) {
-            proxy = findListenerLocked(listener);
-            if (proxy == null) {
-                return;
-            }
-            mListeners.remove(proxy);
-        }
-        mManager.unregisterListener(proxy);
-    }
-
-    @Override
-    public void removeListener(OnSensorChangedListener listener, int sensorType) {
-        mCarSensorsProxy.unregisterSensorListener(listener, sensorType);
-        OnSensorChangedListenerProxy proxy = null;
-        synchronized (this) {
-            proxy = findListenerLocked(listener);
-            if (proxy == null) {
-                return;
-            }
-            proxy.sensors.remove(sensorType);
-            if (proxy.sensors.isEmpty()) {
-                mListeners.remove(proxy);
-            }
-        }
-        mManager.unregisterListener(proxy, sensorType);
-    }
-
-    @Override
-    public CarSensorEvent getLatestSensorEvent(int type) throws CarNotConnectedException {
-        if (isSensorProxied(type)) {
-            return mCarSensorsProxy.getLatestSensorEvent(type);
-        }
-        try {
-            return convert(mManager.getLatestSensorEvent(type));
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public CarSensorConfig getSensorConfig(@SensorType int type)
-        throws CarNotConnectedException {
-        try {
-            return convert(mManager.getSensorConfig(type));
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void onCarDisconnected() {
-        //nothing to do
-    }
-
-    private OnSensorChangedListenerProxy findListenerLocked(OnSensorChangedListener listener) {
-        for (OnSensorChangedListenerProxy proxy : mListeners) {
-            if (proxy.listener == listener) {
-                return proxy;
-            }
-        }
-        return null;
-    }
-
-    private static CarSensorEvent convert(android.car.hardware.CarSensorEvent event) {
-        if (event == null) {
-            return null;
-        }
-        return new CarSensorEvent(event.sensorType, event.timestamp, event.floatValues,
-                event.intValues, event.longValues);
-    }
-
-    private static CarSensorConfig convert(android.car.hardware.CarSensorConfig cfg) {
-        if (cfg == null) {
-            return null;
-        }
-        return new CarSensorConfig(cfg.getType(), cfg.getBundle());
-    }
-
-    private static class OnSensorChangedListenerProxy
-            implements android.car.hardware.CarSensorManager.OnSensorChangedListener {
-
-        public final OnSensorChangedListener listener;
-        public final Set<Integer> sensors = new HashSet<>();
-        public final CarSensorManager manager;
-
-        OnSensorChangedListenerProxy(OnSensorChangedListener listener, int sensor,
-                CarSensorManager manager) {
-            this.listener = listener;
-            this.sensors.add(sensor);
-            this.manager = manager;
-        }
-
-        @Override
-        public void onSensorChanged(android.car.hardware.CarSensorEvent event) {
-            CarSensorEvent newEvent = convert(event);
-            listener.onSensorChanged(manager, newEvent);
-        }
-    }
-}
diff --git a/car-support-lib/src/android/support/car/hardware/CarSensorsProxy.java b/car-support-lib/src/android/support/car/hardware/CarSensorsProxy.java
deleted file mode 100644
index 69feb84..0000000
--- a/car-support-lib/src/android/support/car/hardware/CarSensorsProxy.java
+++ /dev/null
@@ -1,498 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.support.car.hardware;
-
-import android.content.Context;
-import android.content.pm.PackageManager;
-import android.hardware.Sensor;
-import android.hardware.SensorEvent;
-import android.hardware.SensorEventListener;
-import android.hardware.SensorManager;
-import android.location.GpsSatellite;
-import android.location.GpsStatus;
-import android.location.Location;
-import android.location.LocationListener;
-import android.location.LocationManager;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.util.Log;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * CarSensorsProxy adds car sensors implementation for sensors that are not provided by vehicle HAL.
- * @hide
- */
-class CarSensorsProxy {
-    private static final String TAG = "CarSensorsProxy";
-    private static final int MSG_SENSORT_EVENT = 1;
-
-    // @GuardedBy("this")
-    private final Map<Integer, Set<CarSensorManager.OnSensorChangedListener>> mListenersMultiMap;
-    private final LocationManager mLocationManager;
-    private final SensorManager mSensorManager;
-    private final Sensor mAccelerometerSensor;
-    private final Sensor mMagneticFieldSensor;
-    private final Sensor mGyroscopeSensor;
-    private final int[] mSupportedSensors;
-
-    // returned with the onSensorChanged messages.
-    private final CarSensorManager mCarSensorManager;
-
-    // @GuardedBy("this")
-    private Location mLastLocation;
-    // @GuardedBy("this")
-    private GpsStatus mLastGpsStatus;
-    // @GuardedBy("this")
-    private float[] mLastAccelerometerData = new float[3];
-    // @GuardedBy("this")
-    private float[] mLastMagneticFieldData = new float[3];
-    // @GuardedBy("this")
-    private float[] mLastGyroscopeData = new float[3];
-    // @GuardedBy("this")
-    private float[] mR = new float[16];
-    // @GuardedBy("this")
-    private float[] mI = new float[16];
-    // @GuardedBy("this")
-    private float[] mOrientation = new float[3];
-    // @GuardedBy("this")
-    private long mLastLocationTime;
-    // @GuardedBy("this")
-    private long mLastGpsStatusTime;
-    // @GuardedBy("this")
-    private long mLastAccelerometerDataTime;
-    // @GuardedBy("this")
-    private long mLastMagneticFieldDataTime;
-    // @GuardedBy("this")
-    private long mLastGyroscopeDataTime;
-
-    private final GpsStatus.Listener mGpsStatusListener = new GpsStatus.Listener() {
-            @Override
-            public void onGpsStatusChanged(int event) {
-                if (event == GpsStatus.GPS_EVENT_SATELLITE_STATUS) {
-                    synchronized (CarSensorsProxy.this) {
-                        mLastGpsStatus = mLocationManager.getGpsStatus(mLastGpsStatus);
-                        mLastGpsStatusTime = System.nanoTime();
-                    }
-                    pushSensorChanges(CarSensorManager.SENSOR_TYPE_GPS_SATELLITE);
-                }
-            }
-        };
-
-    private final LocationListener mLocationListener = new LocationListener() {
-            @Override
-            public void onLocationChanged(Location location) {
-                synchronized (CarSensorsProxy.this) {
-                    mLastLocation = location;
-                    mLastLocationTime = System.nanoTime();
-                }
-                pushSensorChanges(CarSensorManager.SENSOR_TYPE_LOCATION);
-            }
-
-            @Override
-            public void onProviderEnabled(String provider) {
-            }
-
-            @Override
-            public void onProviderDisabled(String provider) {
-            }
-
-            @Override
-            public void onStatusChanged(String provider, int status, Bundle extras) {
-            }
-        };
-
-    private final SensorEventListener mSensorListener = new SensorEventListener() {
-            @Override
-            public void onSensorChanged(SensorEvent event) {
-                int type = event.sensor.getType();
-                synchronized (CarSensorsProxy.this) {
-                    switch (type) {
-                        case Sensor.TYPE_GYROSCOPE:
-                            System.arraycopy((Object) event.values, 0, (Object) mLastGyroscopeData, 0, 3);
-                            mLastGyroscopeDataTime = System.nanoTime();
-                            pushSensorChanges(CarSensorManager.SENSOR_TYPE_GYROSCOPE);
-                            break;
-                        case Sensor.TYPE_MAGNETIC_FIELD:
-                            System.arraycopy((Object) event.values, 0, (Object) mLastMagneticFieldData, 0, 3);
-                            mLastMagneticFieldDataTime = System.nanoTime();
-                            pushSensorChanges(CarSensorManager.SENSOR_TYPE_COMPASS);
-                            break;
-                        case Sensor.TYPE_ACCELEROMETER:
-                            System.arraycopy((Object) event.values, 0, (Object) mLastAccelerometerData, 0, 3);
-                            mLastAccelerometerDataTime = System.nanoTime();
-                            pushSensorChanges(CarSensorManager.SENSOR_TYPE_ACCELEROMETER);
-                            pushSensorChanges(CarSensorManager.SENSOR_TYPE_COMPASS);
-                            break;
-                        default:
-                            Log.w(TAG, "Unexpected sensor event type: " + type);
-                            // Should never happen.
-                            return;
-                    }
-                }
-            }
-
-            @Override
-            public void onAccuracyChanged(Sensor sensor, int accuracy) {}
-        };
-
-    private final Handler mHandler = new Handler() {
-            @Override
-            public void handleMessage(Message msg) {
-                switch (msg.what) {
-                    case MSG_SENSORT_EVENT:
-                        int sensorType = msg.arg1;
-                        Collection<CarSensorManager.OnSensorChangedListener> listenersCollection;
-                        synchronized (CarSensorsProxy.this) {
-                            listenersCollection = mListenersMultiMap.get(sensorType);
-                        }
-                        CarSensorEvent event = (CarSensorEvent) msg.obj;
-                        if (event != null) {
-                            for (CarSensorManager.OnSensorChangedListener listener :
-                                         listenersCollection) {
-                                listener.onSensorChanged(mCarSensorManager, event);
-                            }
-                        }
-                        break;
-                    default:
-                        Log.w(TAG, "Unexpected msg dispatched. msg: " + msg);
-                        super.handleMessage(msg);
-                }
-            }
-        };
-
-    CarSensorsProxy(CarSensorManager carSensorManager, Context context) {
-        mLocationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
-        mSensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
-        mAccelerometerSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
-        mMagneticFieldSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD);
-        mGyroscopeSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE);
-        mListenersMultiMap = new HashMap<Integer, Set<CarSensorManager.OnSensorChangedListener>>();
-        mSupportedSensors = initSupportedSensors(context);
-        mCarSensorManager = carSensorManager;
-    }
-
-    private int[] initSupportedSensors(Context context) {
-        Set<Integer> features = new HashSet<>();
-        PackageManager packageManager = context.getPackageManager();
-        if (packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_COMPASS)
-                && packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_ACCELEROMETER)) {
-            features.add(CarSensorManager.SENSOR_TYPE_COMPASS);
-        }
-        if (packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_ACCELEROMETER)) {
-            features.add(CarSensorManager.SENSOR_TYPE_ACCELEROMETER);
-        }
-        if (packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_GYROSCOPE)) {
-            features.add(CarSensorManager.SENSOR_TYPE_GYROSCOPE);
-        }
-        if (packageManager.hasSystemFeature(PackageManager.FEATURE_LOCATION)) {
-            features.add(CarSensorManager.SENSOR_TYPE_LOCATION);
-            features.add(CarSensorManager.SENSOR_TYPE_GPS_SATELLITE);
-        }
-        return toIntArray(features);
-    }
-
-    private static int[] toIntArray(Collection<Integer> collection) {
-        int len = collection.size();
-        int[] arr = new int[len];
-        int arrIndex = 0;
-        for (Integer item : collection) {
-            arr[arrIndex] = item;
-            arrIndex++;
-        }
-        return arr;
-    }
-
-
-    public boolean isSensorSupported(int sensorType) {
-        for (int sensor : mSupportedSensors) {
-            if (sensor == sensorType) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    public int[] getSupportedSensors() {
-        return mSupportedSensors;
-    }
-
-    public boolean registerSensorListener(CarSensorManager.OnSensorChangedListener listener,
-            int sensorType, int rate) {
-        // current implementation ignores rate.
-        boolean sensorSetChanged = false;
-        synchronized (this) {
-            if (mListenersMultiMap.get(sensorType) == null) {
-                mListenersMultiMap.put(sensorType,
-                                       new HashSet<CarSensorManager.OnSensorChangedListener>());
-                sensorSetChanged = true;
-            }
-            mListenersMultiMap.get(sensorType).add(listener);
-        }
-
-        pushSensorChanges(sensorType);
-
-        if (sensorSetChanged) {
-            updateSensorListeners();
-        }
-        return true;
-    }
-
-    public void unregisterSensorListener(CarSensorManager.OnSensorChangedListener listener,
-            int sensorType) {
-        if (listener == null) {
-            return;
-        }
-        boolean sensorSetChanged = false;
-        synchronized (this) {
-            Set<CarSensorManager.OnSensorChangedListener> sensorTypeListeneres =
-                    mListenersMultiMap.get(sensorType);
-            if (sensorTypeListeneres != null) {
-                sensorTypeListeneres.remove(listener);
-                if (sensorTypeListeneres.isEmpty()) {
-                    mListenersMultiMap.remove(sensorType);
-                    sensorSetChanged = true;
-                }
-            }
-        }
-        if (sensorSetChanged) {
-            updateSensorListeners();
-        };
-    }
-
-    public void unregisterSensorListener(CarSensorManager.OnSensorChangedListener listener) {
-        if (listener == null) {
-            return;
-        }
-        Set<Integer> sensorsToRemove = new HashSet<>();
-        synchronized (this) {
-            for (Map.Entry<Integer, Set<CarSensorManager.OnSensorChangedListener>> entry :
-                         mListenersMultiMap.entrySet()) {
-                if (entry.getValue().contains(listener)) {
-                    entry.getValue().remove(listener);
-                }
-                if (entry.getValue().isEmpty()) {
-                    sensorsToRemove.add(entry.getKey());
-                }
-            }
-        }
-        if (!sensorsToRemove.isEmpty()) {
-            for (Integer s : sensorsToRemove) {
-                mListenersMultiMap.remove(s);
-            }
-            updateSensorListeners();
-        };
-    }
-
-    public CarSensorEvent getLatestSensorEvent(int type) {
-        return getSensorEvent(type);
-    }
-
-    private void pushSensorChanges(int sensorType) {
-        CarSensorEvent event = getSensorEvent(sensorType);
-        if (event == null) {
-            return;
-        }
-        Message msg = mHandler.obtainMessage(MSG_SENSORT_EVENT, sensorType, 0, event);
-        mHandler.sendMessage(msg);
-    }
-
-    private CarSensorEvent getSensorEvent(int sensorType) {
-        CarSensorEvent event = null;
-        synchronized (this) {
-            switch (sensorType) {
-                case CarSensorManager.SENSOR_TYPE_COMPASS:
-                    if (mLastMagneticFieldDataTime != 0 && mLastAccelerometerDataTime != 0) {
-                        event = new CarSensorEvent(sensorType, Math.max(mLastMagneticFieldDataTime,
-                                mLastAccelerometerDataTime), 3, 0, 0);
-                        SensorManager.getRotationMatrix(mR, mI, mLastAccelerometerData,
-                                mLastMagneticFieldData);
-                        SensorManager.getOrientation(mR, mOrientation);
-                        event.floatValues[CarSensorEvent.INDEX_COMPASS_BEARING] =
-                                (float) Math.toDegrees(mOrientation[0]);
-                        event.floatValues[CarSensorEvent.INDEX_COMPASS_PITCH] =
-                                (float) Math.toDegrees(mOrientation[1]);
-                        event.floatValues[CarSensorEvent.INDEX_COMPASS_ROLL] =
-                                (float) Math.toDegrees(mOrientation[2]);
-                    }
-                    break;
-                case CarSensorManager.SENSOR_TYPE_LOCATION:
-                    if (mLastLocationTime != 0) {
-                        event = new CarSensorEvent(sensorType, mLastLocationTime, 6, 3, 0);
-                        populateLocationCarSensorEvent(event, mLastLocation);
-                    }
-                    break;
-                case CarSensorManager.SENSOR_TYPE_ACCELEROMETER:
-                    if (mLastAccelerometerDataTime != 0) {
-                        event = new CarSensorEvent(sensorType, mLastAccelerometerDataTime, 3, 0, 0);
-                        event.floatValues[CarSensorEvent.INDEX_ACCELEROMETER_X] =
-                                mLastAccelerometerData[0];
-                        event.floatValues[CarSensorEvent.INDEX_ACCELEROMETER_Y] =
-                                mLastAccelerometerData[1];
-                        event.floatValues[CarSensorEvent.INDEX_ACCELEROMETER_Z] =
-                                mLastAccelerometerData[2];
-                    }
-                    break;
-                case CarSensorManager.SENSOR_TYPE_GPS_SATELLITE:
-                    if (mLastGpsStatusTime != 0) {
-                        event = createGpsStatusCarSensorEvent(mLastGpsStatus);
-                    }
-                    break;
-                case CarSensorManager.SENSOR_TYPE_GYROSCOPE:
-                    if (mLastGyroscopeDataTime != 0) {
-                        event = new CarSensorEvent(sensorType, mLastGyroscopeDataTime, 3, 0, 0);
-                        event.floatValues[CarSensorEvent.INDEX_GYROSCOPE_X] = mLastGyroscopeData[0];
-                        event.floatValues[CarSensorEvent.INDEX_GYROSCOPE_Y] = mLastGyroscopeData[1];
-                        event.floatValues[CarSensorEvent.INDEX_GYROSCOPE_Z] = mLastGyroscopeData[2];
-                    }
-                    break;
-                default:
-                    // Should not happen.
-                    Log.w(TAG, "[getSensorEvent]: Unsupported sensor type:" + sensorType);
-                    return null;
-            }
-        }
-        return event;
-    }
-
-    private void populateLocationCarSensorEvent(CarSensorEvent event, Location location) {
-        if (location == null) {
-            return;
-        }
-        int present = 0;
-        present |= (0x1 << CarSensorEvent.INDEX_LOCATION_LONGITUDE);
-        event.intValues[CarSensorEvent.INDEX_LOCATION_LONGITUDE_INTS] =
-                (int) (location.getLongitude() * 1E7);
-
-        present |= (0x1 << CarSensorEvent.INDEX_LOCATION_LATITUDE);
-        event.intValues[CarSensorEvent.INDEX_LOCATION_LATITUDE_INTS] =
-                (int) (location.getLatitude() * 1E7);
-
-        if (location.hasAccuracy()) {
-            present |= (0x1 << CarSensorEvent.INDEX_LOCATION_ACCURACY);
-            event.floatValues[CarSensorEvent.INDEX_LOCATION_ACCURACY] = location.getAccuracy();
-        }
-
-        if (location.hasAltitude()) {
-            present |= (0x1 << CarSensorEvent.INDEX_LOCATION_ALTITUDE);
-            event.floatValues[CarSensorEvent.INDEX_LOCATION_ALTITUDE] =
-                    (float) location.getAltitude();
-        }
-
-        if (location.hasSpeed()) {
-            present |= (0x1 << CarSensorEvent.INDEX_LOCATION_SPEED);
-            event.floatValues[CarSensorEvent.INDEX_LOCATION_SPEED] = location.getSpeed();
-        }
-
-        if (location.hasBearing()) {
-            present |= (0x1 << CarSensorEvent.INDEX_LOCATION_BEARING);
-            event.floatValues[CarSensorEvent.INDEX_LOCATION_BEARING] = location.getBearing();
-        }
-
-        event.intValues[0] = present;
-    }
-
-    private CarSensorEvent createGpsStatusCarSensorEvent(GpsStatus gpsStatus) {
-        CarSensorEvent event = null;
-
-        if (gpsStatus == null) {
-            return event;
-        }
-
-        int numberInView = 0;
-        int numberInUse = 0;
-        for (GpsSatellite satellite : gpsStatus.getSatellites()) {
-            ++numberInView;
-            if (satellite.usedInFix()) {
-                ++numberInUse;
-            }
-        }
-        int floatValuesSize = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_FLOAT_INTERVAL * numberInView
-                + CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_FLOAT_OFFSET;
-        int intValuesSize = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_INT_INTERVAL * numberInView
-                + CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_INT_OFFSET;
-        event = new CarSensorEvent(CarSensorManager.SENSOR_TYPE_GPS_SATELLITE, mLastGpsStatusTime,
-                floatValuesSize, intValuesSize, 0);
-        event.intValues[CarSensorEvent.INDEX_GPS_SATELLITE_NUMBER_IN_USE] = numberInUse;
-        event.intValues[CarSensorEvent.INDEX_GPS_SATELLITE_NUMBER_IN_VIEW] = numberInView;
-        int i = 0;
-        for (GpsSatellite satellite : gpsStatus.getSatellites()) {
-            int iInt = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_INT_OFFSET
-                    + CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_INT_INTERVAL * i;
-            int iFloat = CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_FLOAT_OFFSET
-                    + CarSensorEvent.INDEX_GPS_SATELLITE_ARRAY_FLOAT_INTERVAL * i;
-            event.floatValues[iFloat + CarSensorEvent.INDEX_GPS_SATELLITE_PRN_OFFSET] =
-                    satellite.getPrn();
-            event.floatValues[iFloat + CarSensorEvent.INDEX_GPS_SATELLITE_SNR_OFFSET] =
-                    satellite.getSnr();
-            event.floatValues[iFloat + CarSensorEvent.INDEX_GPS_SATELLITE_AZIMUTH_OFFSET] =
-                    satellite.getAzimuth();
-            event.floatValues[iFloat + CarSensorEvent.INDEX_GPS_SATELLITE_ELEVATION_OFFSET] =
-                    satellite.getElevation();
-            event.intValues[iInt] = satellite.usedInFix() ? 1 : 0;
-            i++;
-        }
-        return event;
-    }
-
-    private void updateSensorListeners() {
-        Set<Integer> activeSensors;
-        synchronized (this) {
-            activeSensors = mListenersMultiMap.keySet();
-        }
-
-        if (activeSensors.contains(CarSensorManager.SENSOR_TYPE_LOCATION)
-            && mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
-            mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,
-                    mLocationListener);
-        } else {
-            mLocationManager.removeUpdates(mLocationListener);
-        }
-
-        if (activeSensors.contains(CarSensorManager.SENSOR_TYPE_GPS_SATELLITE)) {
-            mLocationManager.addGpsStatusListener(mGpsStatusListener);
-        } else {
-            mLocationManager.removeGpsStatusListener(mGpsStatusListener);
-        }
-
-        if (activeSensors.contains(CarSensorManager.SENSOR_TYPE_ACCELEROMETER)
-                || activeSensors.contains(CarSensorManager.SENSOR_TYPE_COMPASS)) {
-            mSensorManager.registerListener(mSensorListener, mAccelerometerSensor,
-                    SensorManager.SENSOR_DELAY_FASTEST);
-        } else {
-            mSensorManager.unregisterListener(mSensorListener, mAccelerometerSensor);
-        }
-
-        if (activeSensors.contains(CarSensorManager.SENSOR_TYPE_COMPASS)) {
-            mSensorManager.registerListener(mSensorListener, mMagneticFieldSensor,
-                    SensorManager.SENSOR_DELAY_FASTEST);
-        } else {
-            mSensorManager.unregisterListener(mSensorListener, mMagneticFieldSensor);
-        }
-
-        if (activeSensors.contains(CarSensorManager.SENSOR_TYPE_GYROSCOPE)) {
-            mSensorManager.registerListener(mSensorListener, mGyroscopeSensor,
-                    SensorManager.SENSOR_DELAY_FASTEST);
-        } else {
-            mSensorManager.unregisterListener(mSensorListener, mGyroscopeSensor);
-        }
-    }
-}
diff --git a/car-support-lib/src/android/support/car/input/CarEditable.java b/car-support-lib/src/android/support/car/input/CarEditable.java
deleted file mode 100644
index dfa7571..0000000
--- a/car-support-lib/src/android/support/car/input/CarEditable.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.input;
-
-import android.view.inputmethod.EditorInfo;
-import android.view.inputmethod.InputConnection;
-
-/**
- * Views that implement this interface are editable by the Car IME system.
- * @hide
- */
-public interface CarEditable {
-    InputConnection onCreateInputConnection(EditorInfo outAttrs);
-    void setCarEditableListener(CarEditableListener listener);
-    void setInputEnabled(boolean enabled);
-}
diff --git a/car-support-lib/src/android/support/car/input/CarEditableListener.java b/car-support-lib/src/android/support/car/input/CarEditableListener.java
deleted file mode 100644
index bca02cb..0000000
--- a/car-support-lib/src/android/support/car/input/CarEditableListener.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.input;
-
-/**
- * Callbacks from the {@link CarEditable} to the Car IME. These methods should be called on
- * the main thread.
- * @hide
- */
-public interface CarEditableListener {
-    /**
-     * Callback to indicate that the selection has changed on the current {@link CarEditable}. Note
-     * that selection changes include cursor movements.
-     * @param oldSelStart the old selection starting index
-     * @param oldSelEnd the old selection ending index
-     * @param newSelStart the new selection starting index
-     * @param newSelEnd the new selection ending index
-     */
-    void onUpdateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd);
-}
\ No newline at end of file
diff --git a/car-support-lib/src/android/support/car/input/CarInputManager.java b/car-support-lib/src/android/support/car/input/CarInputManager.java
deleted file mode 100644
index 0704a54..0000000
--- a/car-support-lib/src/android/support/car/input/CarInputManager.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.input;
-
-import android.widget.EditText;
-
-/**
- *  Manages use of the in-car IME. All methods should only be called on the main thread.
- *  Instances should be obtained by calling
- *  {@link android.support.car.app.CarActivity#getInputManager()}.
- *  @hide
- */
-public abstract class CarInputManager {
-    /**
-     * Starts input on the requested {@link android.widget.EditText}, showing the IME.
-     * If IME input is already occurring for another view, this call stops input on the previous
-     * view and starts input on the new view.
-     *
-     * This method must only be called from the UI thread. Calling this method from a stopped
-     * activity is an illegal operation.
-     */
-    abstract public void startInput(EditText view);
-
-    /**
-     * Stops input, hiding the IME. This method fails silently if the calling application didn't
-     * request input and isn't the active IME.
-     *
-     * This function must only be called from the UI thread.
-     */
-    abstract public void stopInput();
-
-    /**
-     * Returns {@code true} while the InputManager is valid. The InputManager is valid as long as
-     * the {@link android.support.car.app.CarActivity} from which it was obtained has
-     * been created and not destroyed.
-     */
-    abstract public boolean isValid();
-
-    /**
-     * Returns {@code true} if this InputManager is valid and the IME is active.
-     */
-    abstract public boolean isInputActive();
-
-    /**
-     * Returns {@code true} if IME is active on the given {@link android.widget.EditText}.
-     */
-    abstract public boolean isCurrentCarEditable(EditText view);
-
-}
diff --git a/car-support-lib/src/android/support/car/input/CarRestrictedEditText.java b/car-support-lib/src/android/support/car/input/CarRestrictedEditText.java
deleted file mode 100644
index a19dff1..0000000
--- a/car-support-lib/src/android/support/car/input/CarRestrictedEditText.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.input;
-
-import android.content.Context;
-import android.text.InputType;
-import android.util.AttributeSet;
-import android.view.ActionMode;
-import android.view.KeyEvent;
-import android.view.inputmethod.EditorInfo;
-import android.view.inputmethod.InputConnection;
-import android.view.inputmethod.InputConnectionWrapper;
-import android.widget.EditText;
-import android.widget.TextView;
-
-/**
- * A special EditText for use in-car. This EditText:
- * <ul>
- *     <li>Disables selection</li>
- *     <li>Disables Cut/Copy/Paste</li>
- *     <li>Force-disables suggestions</li>
- * </ul>
- * @hide
- */
-public class CarRestrictedEditText extends EditText implements CarEditable {
-
-    private static final boolean SELECTION_CLAMPING_ENABLED = false;
-
-    private int mLastSelEnd = 0;
-    private int mLastSelStart = 0;
-    private boolean mCursorClamped;
-
-    private CarEditableListener mCarEditableListener;
-    private KeyListener mListener;
-
-    public interface KeyListener {
-        void onKeyDown(int keyCode);
-        void onKeyUp(int keyCode);
-        void onCommitText(String input);
-        void onCloseKeyboard();
-        void onDelete();
-    }
-
-    public CarRestrictedEditText(Context context, AttributeSet attrs) {
-        super(context, attrs);
-        setInputType(getInputType() | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
-        setTextIsSelectable(false);
-        setSelection(getText().length());
-        mCursorClamped = true;
-        setOnEditorActionListener(new OnEditorActionListener() {
-            @Override
-            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
-                if (mListener != null && actionId == EditorInfo.IME_ACTION_DONE) {
-                    mListener.onCloseKeyboard();
-                }
-                // Return false because we don't want to hijack the default behavior.
-                return false;
-            }
-        });
-    }
-
-    public void setKeyListener(KeyListener listener) {
-        mListener = listener;
-    }
-
-    @SuppressWarnings("unused")
-    @Override
-    protected void onSelectionChanged(int selStart, int selEnd) {
-        if (mCursorClamped && SELECTION_CLAMPING_ENABLED) {
-            setSelection(mLastSelStart, mLastSelEnd);
-            return;
-        }
-        if (mCarEditableListener != null) {
-            mCarEditableListener.onUpdateSelection(mLastSelStart, mLastSelEnd, selStart, selEnd);
-        }
-        mLastSelStart = selStart;
-        mLastSelEnd = selEnd;
-    }
-
-    @Override
-    public ActionMode startActionMode(ActionMode.Callback callback) {
-        return null;
-    }
-
-    @Override
-    public void setCarEditableListener(CarEditableListener listener) {
-        mCarEditableListener = listener;
-    }
-
-    @Override
-    public void setInputEnabled(boolean enabled) {
-        mCursorClamped = !enabled;
-    }
-
-    @Override
-    public InputConnection onCreateInputConnection(EditorInfo outAttrs) {
-        InputConnection inputConnection = super.onCreateInputConnection(outAttrs);
-        return new InputConnectionWrapper(inputConnection, false) {
-            @Override
-            public boolean sendKeyEvent(android.view.KeyEvent event) {
-                if (mListener != null) {
-                    if (event.getAction() == KeyEvent.ACTION_DOWN) {
-                        mListener.onKeyDown(event.getKeyCode());
-                    } else if (event.getAction() == KeyEvent.ACTION_UP) {
-                        mListener.onKeyUp(event.getKeyCode());
-
-                        // InputMethodService#sendKeyChar doesn't call
-                        // InputConnection#commitText for digit chars.
-                        // TODO: fix projected IME to be in coherence with system IME.
-                        char unicodeChar = (char) event.getUnicodeChar();
-                        if (Character.isDigit(unicodeChar)) {
-                            commitText(String.valueOf(unicodeChar), 1);
-                        }
-                    }
-                    return true;
-                } else {
-                    return super.sendKeyEvent(event);
-                }
-            }
-
-            @Override
-            public boolean commitText(java.lang.CharSequence charSequence, int i) {
-                if (mListener != null) {
-                    mListener.onCommitText(charSequence.toString());
-                    return true;
-                }
-                return super.commitText(charSequence, i);
-            }
-
-            @Override
-            public boolean deleteSurroundingText(int i, int i1) {
-                if (mListener != null) {
-                    mListener.onDelete();
-                    return true;
-                }
-                return super.deleteSurroundingText(i, i1);
-            }
-        };
-    }
-}
diff --git a/car-support-lib/src/android/support/car/media/CarAudioManager.java b/car-support-lib/src/android/support/car/media/CarAudioManager.java
deleted file mode 100644
index e3b783a..0000000
--- a/car-support-lib/src/android/support/car/media/CarAudioManager.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.media;
-
-import android.Manifest;
-import android.media.AudioFormat;
-import android.media.AudioManager;
-import android.support.car.CarManagerBase;
-import android.support.car.CarNotConnectedException;
-
-import androidx.annotation.RequiresPermission;
-
-/**
- * APIs for handling car-specific audio use cases. Provides a set of CAR_AUDIO_USAGE_* constants
- * that can be used to route audio by use case to the car. Important beyond the normal
- * {@link AudioManager} class methods because it handles multi channel audio. Includes use cases
- * such as routing call audio only to the driver and not through all speakers.
- */
-public abstract class CarAudioManager implements CarManagerBase {
-
-    /**
-     * Get {@link AudioFormat} for audio record.
-     * @return {@link AudioFormat} for audio record.
-     */
-    public abstract AudioFormat getAudioRecordAudioFormat() throws CarNotConnectedException;
-
-    public abstract boolean isAudioRecordSupported() throws CarNotConnectedException;
-
-    /**
-     * Get minimum buffer size for {@link CarAudioRecord}.
-     *
-     * @return Buffer size in bytes.
-     */
-    public abstract int getAudioRecordMinBufferSize()
-            throws CarNotConnectedException;
-
-    /**
-     * Get maximum buffer size for {@link CarAudioRecord}.
-     *
-     * @return Buffer size in bytes.
-     */
-    public abstract int getAudioRecordMaxBufferSize()
-            throws CarNotConnectedException;
-
-    /**
-     * Create a {@link CarAudioRecord} for the current {@link CarAudioManager}. There can be
-     * multiple instances of {@link CarAudioRecord}. Requires {@link
-     * android.Manifest.permission#RECORD_AUDIO} permission.
-     *
-     * @param bufferSize Should be a multiple of minimum buffer size acquired from {@link
-     * #getAudioRecordMinBufferSize()}. Cannot exceed {@link #getAudioRecordMaxBufferSize()}.
-     *
-     * @return {@link CarAudioRecord} instance for the given stream.
-     * @throws IllegalArgumentException if passed parameter (such as bufferSize) is wrong.
-     * @throws SecurityException if client does not have
-     * {@link android.Manifest.permission#RECORD_AUDIO} permission.
-     */
-    @RequiresPermission(Manifest.permission.RECORD_AUDIO)
-    public abstract CarAudioRecord createCarAudioRecord(int bufferSize)
-            throws SecurityException, CarNotConnectedException;
-}
diff --git a/car-support-lib/src/android/support/car/media/CarAudioManagerEmbedded.java b/car-support-lib/src/android/support/car/media/CarAudioManagerEmbedded.java
deleted file mode 100644
index 518058a..0000000
--- a/car-support-lib/src/android/support/car/media/CarAudioManagerEmbedded.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.media;
-
-import static androidx.annotation.RestrictTo.Scope.GROUP_ID;
-
-import android.media.AudioFormat;
-import android.media.AudioRecord;
-import android.support.car.CarNotConnectedException;
-
-import androidx.annotation.RestrictTo;
-
-/**
- * @hide
- */
-@RestrictTo(GROUP_ID)
-public class CarAudioManagerEmbedded extends CarAudioManager {
-
-    private static final int MAX_BUFFER_SIZE_BYTE = 512 * 1024;
-    private static final int SAMPLING_RATE = 16000;
-    private static final AudioFormat AUDIO_RECORD_FORMAT = new AudioFormat.Builder()
-            .setEncoding(AudioFormat.ENCODING_PCM_16BIT)
-            .setChannelMask(AudioFormat.CHANNEL_IN_MONO)
-            .setSampleRate(SAMPLING_RATE)
-            .build();
-
-    private final android.car.media.CarAudioManager mManager;
-
-    public CarAudioManagerEmbedded(Object manager) {
-        mManager = (android.car.media.CarAudioManager) manager;
-    }
-
-    @Override
-    public boolean isAudioRecordSupported() throws CarNotConnectedException {
-        //always true in embedded
-        return true;
-    }
-
-    @Override
-    public AudioFormat getAudioRecordAudioFormat() throws CarNotConnectedException {
-        return AUDIO_RECORD_FORMAT;
-    }
-
-    @Override
-    public int getAudioRecordMinBufferSize() throws CarNotConnectedException {
-        return AudioRecord.getMinBufferSize(SAMPLING_RATE, AUDIO_RECORD_FORMAT.getChannelMask(),
-                AUDIO_RECORD_FORMAT.getEncoding());
-    }
-
-    @Override
-    public int getAudioRecordMaxBufferSize() throws CarNotConnectedException {
-        return Math.max(getAudioRecordMinBufferSize(), MAX_BUFFER_SIZE_BYTE);
-    }
-
-    @Override
-    public CarAudioRecord createCarAudioRecord(int bufferSize)
-            throws CarNotConnectedException, SecurityException {
-        if (bufferSize < getAudioRecordMinBufferSize() ||
-            bufferSize > getAudioRecordMaxBufferSize()) {
-            throw new IllegalArgumentException("Bad bufferSize value");
-        }
-        return new CarAudioRecordEmbedded(AUDIO_RECORD_FORMAT, bufferSize);
-    }
-
-    @Override
-    public void onCarDisconnected() {
-        //nothing to do
-    }
-}
diff --git a/car-support-lib/src/android/support/car/media/CarAudioRecord.java b/car-support-lib/src/android/support/car/media/CarAudioRecord.java
deleted file mode 100644
index c3f09ca..0000000
--- a/car-support-lib/src/android/support/car/media/CarAudioRecord.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.media;
-
-import android.media.AudioRecord;
-import android.support.car.CarNotConnectedException;
-
-/**
- * Enables applications to use the microphone.
- */
-public abstract class CarAudioRecord {
-    /**
-     * Get the buffer size specified in {@link CarAudioManager#createCarAudioRecord(int)}.
-     * @return Buffer size in bytes.
-     */
-    public abstract int getBufferSize() throws CarNotConnectedException;
-
-    /**
-     * Start audio recording.
-     */
-    public abstract void startRecording() throws CarNotConnectedException;
-
-    /**
-     * Stop audio recording. Calling stop multiple times is a safe operation.
-     */
-    public abstract void stop();
-
-    /**
-     * Release native resource allocated for this instance. {@link CarAudioRecord} can no longer
-     * be used after release is called.
-     */
-    public abstract void release();
-
-    /** See {@link AudioRecord#getRecordingState() }. */
-    public abstract int getRecordingState() throws CarNotConnectedException;
-
-    /** See {@link AudioRecord#getState() }. */
-    public abstract int getState() throws CarNotConnectedException;
-
-    /** See {@link AudioRecord#getAudioSessionId() }. */
-    public abstract int getAudioSessionId() throws CarNotConnectedException;
-
-    /**
-     * Read recorded audio. Be sure to start audio recording with {@link #startRecording()}
-     * before this.
-     * @param audioData
-     * @param offsetInBytes
-     * @param sizeInBytes
-     * @return Number of bytes read. Returns {@link android.media.AudioRecord#ERROR} on error.
-     * @throws IllegalStateException if audio recording was not started.
-     */
-    public abstract int read(byte[] audioData, int offsetInBytes, int sizeInBytes)
-            throws IllegalStateException, CarNotConnectedException;
-}
diff --git a/car-support-lib/src/android/support/car/media/CarAudioRecordEmbedded.java b/car-support-lib/src/android/support/car/media/CarAudioRecordEmbedded.java
deleted file mode 100644
index 7a614cc..0000000
--- a/car-support-lib/src/android/support/car/media/CarAudioRecordEmbedded.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.media;
-
-import static androidx.annotation.RestrictTo.Scope.GROUP_ID;
-
-import android.media.AudioFormat;
-import android.media.AudioRecord;
-import android.support.car.CarNotConnectedException;
-
-import androidx.annotation.RestrictTo;
-
-/**
- * CarAudioRecordEmbedded allows apps to use microphone.
- * @hide
- */
-@RestrictTo(GROUP_ID)
-public class CarAudioRecordEmbedded extends CarAudioRecord {
-
-    private final AudioFormat mFormat;
-    private final int mBufferSize;
-    private final AudioRecord mAudioRecord;
-
-
-    CarAudioRecordEmbedded(AudioFormat format, int bufferSize) {
-        mFormat = format;
-        mBufferSize = bufferSize;
-        mAudioRecord = new AudioRecord.Builder()
-                .setAudioFormat(mFormat)
-                .setBufferSizeInBytes(mBufferSize)
-                .build();
-    }
-
-    @Override
-    public int getBufferSize() throws CarNotConnectedException {
-        return mBufferSize;
-    }
-
-    @Override
-    public void startRecording() throws CarNotConnectedException {
-        mAudioRecord.startRecording();
-    }
-
-    @Override
-    public void stop() {
-        mAudioRecord.stop();
-    }
-
-    @Override
-    public void release() {
-        mAudioRecord.release();
-    }
-
-    @Override
-    public int getRecordingState() throws CarNotConnectedException {
-        return mAudioRecord.getRecordingState();
-    }
-
-    @Override
-    public int getState() throws CarNotConnectedException {
-        return mAudioRecord.getState();
-    }
-
-    @Override
-    public int getAudioSessionId() throws CarNotConnectedException {
-        return mAudioRecord.getAudioSessionId();
-    }
-
-    @Override
-    public int read(byte[] audioData, int offsetInBytes, int sizeInBytes)
-            throws CarNotConnectedException, IllegalStateException {
-        return mAudioRecord.read(audioData, offsetInBytes, sizeInBytes);
-    }
-}
diff --git a/car-support-lib/src/android/support/car/navigation/CarNavigationInstrumentCluster.java b/car-support-lib/src/android/support/car/navigation/CarNavigationInstrumentCluster.java
deleted file mode 100644
index 9f70ef0..0000000
--- a/car-support-lib/src/android/support/car/navigation/CarNavigationInstrumentCluster.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.navigation;
-
-import static androidx.annotation.RestrictTo.Scope.GROUP_ID;
-
-import android.os.Bundle;
-
-import androidx.annotation.IntDef;
-import androidx.annotation.Nullable;
-import androidx.annotation.RestrictTo;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * Holds options related to navigation for the car's instrument cluster.
- */
-public class CarNavigationInstrumentCluster {
-
-    /** Navigation Next Turn messages contain an image, as well as an enum. */
-    public static final int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED = 1;
-    /** Navigation Next Turn messages contain only an enum. */
-    public static final int CLUSTER_TYPE_IMAGE_CODES_ONLY = 2;
-
-    /** @hide */
-    @Retention(RetentionPolicy.SOURCE)
-    @IntDef({
-        CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED,
-        CLUSTER_TYPE_IMAGE_CODES_ONLY
-    })
-    public @interface ClusterType {}
-
-    private int mMinIntervalMillis;
-
-    @ClusterType
-    private final int mType;
-
-    private final int mImageWidth;
-
-    private final int mImageHeight;
-
-    private final int mImageColorDepthBits;
-
-    private final Bundle mExtra;
-
-    /** @hide */
-    @RestrictTo(GROUP_ID)
-    public static CarNavigationInstrumentCluster createCluster(int minIntervalMillis) {
-        return new CarNavigationInstrumentCluster(minIntervalMillis, CLUSTER_TYPE_IMAGE_CODES_ONLY,
-                0, 0, 0);
-    }
-
-    /** @hide */
-    @RestrictTo(GROUP_ID)
-    public static CarNavigationInstrumentCluster createCustomImageCluster(int minIntervalMs,
-            int imageWidth, int imageHeight, int imageColorDepthBits) {
-        return new CarNavigationInstrumentCluster(minIntervalMs,
-                CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED,
-                imageWidth, imageHeight, imageColorDepthBits);
-    }
-
-    /** Minimum time between instrument cluster updates in milliseconds.*/
-    public int getMinIntervalMillis() {
-        return mMinIntervalMillis;
-    }
-
-    /**
-     * Type of instrument cluster, can be {@link #CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED} or
-     * {@link #CLUSTER_TYPE_IMAGE_CODES_ONLY}.
-     */
-    @ClusterType
-    public int getType() {
-        return mType;
-    }
-
-    /**
-     * If instrument cluster is image, width of instrument cluster in pixels.
-     * @return the width of the image in pixels, 0 otherwise.
-     */
-    public int getImageWidth() {
-        return mImageWidth;
-    }
-
-    /**
-     * If instrument cluster is image, height of instrument cluster in pixels.
-     * @return the width of the image in pixels, 0 otherwise.
-     */
-    public int getImageHeight() {
-        return mImageHeight;
-    }
-
-    /**
-     * Contains extra information about instrument cluster.
-     * @hide
-     */
-    public Bundle getExtra() { return mExtra; }
-
-    /**
-     * @return If instrument cluster is image, number of bits of colour depth it supports (8, 16,
-     * or  32), 0 otherwise.
-     */
-    public int getImageColorDepthBits() {
-        return mImageColorDepthBits;
-    }
-
-    /** @hide */
-    @RestrictTo(GROUP_ID)
-    public CarNavigationInstrumentCluster(CarNavigationInstrumentCluster that) {
-      this(that.mMinIntervalMillis,
-          that.mType,
-          that.mImageWidth,
-          that.mImageHeight,
-          that.mImageColorDepthBits);
-    }
-
-    /**
-     * Whether cluster support custom images or not.  If not generally the cluster will provide
-     * its own images.
-     * @return True if supported, false otherwise.
-     */
-    public boolean supportsCustomImages() {
-      return mType == CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED;
-    }
-
-    /** @hide */
-    @RestrictTo(GROUP_ID)
-    CarNavigationInstrumentCluster(
-            int minIntervalMillis,
-            @ClusterType int type,
-            int imageWidth,
-            int imageHeight,
-            int imageColorDepthBits) {
-        this(minIntervalMillis, type, imageWidth, imageHeight, imageColorDepthBits, null);
-    }
-
-    /** @hide */
-    @RestrictTo(GROUP_ID)
-    CarNavigationInstrumentCluster(
-            int minIntervalMillis,
-            @ClusterType int type,
-            int imageWidth,
-            int imageHeight,
-            int imageColorDepthBits,
-            @Nullable Bundle extra) {
-        mMinIntervalMillis = minIntervalMillis;
-        mType = type;
-        mImageWidth = imageWidth;
-        mImageHeight = imageHeight;
-        mImageColorDepthBits = imageColorDepthBits;
-        mExtra = extra == null ? new Bundle() : new Bundle(extra);
-    }
-
-
-    /** Converts to string for debug purpose. */
-    @Override
-    public String toString() {
-        return CarNavigationInstrumentCluster.class.getSimpleName() + "{ " +
-                "minIntervalMillis: " + mMinIntervalMillis + ", " +
-                "type: " + mType + ", " +
-                "imageWidth: " + mImageWidth + ", " +
-                "imageHeight: " + mImageHeight + ", " +
-                "imageColourDepthBits: " + mImageColorDepthBits + ", " +
-                "extra: " + mExtra + " }";
-    }
-}
diff --git a/car-support-lib/src/android/support/car/navigation/CarNavigationStatusManager.java b/car-support-lib/src/android/support/car/navigation/CarNavigationStatusManager.java
deleted file mode 100644
index 3583827..0000000
--- a/car-support-lib/src/android/support/car/navigation/CarNavigationStatusManager.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.navigation;
-
-import android.annotation.IntDef;
-import android.graphics.Bitmap;
-import android.os.Bundle;
-import android.support.car.CarManagerBase;
-import android.support.car.CarNotConnectedException;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * APIs for providing navigation status to the instrument cluster. For cars that have a navigation
- * display built into the instrument cluster, a navigation application should also provide
- * turn-by-turn information to the cluster through this manager.
- * <p/>
- * Navigation applications should first call
- * {@link android.support.car.CarAppFocusManager#requestAppFocus(int,
- * android.support.car.CarAppFocusManager.OnAppFocusOwnershipCallback)} and request
- * {@link android.support.car.CarAppFocusManager#APP_FOCUS_TYPE_NAVIGATION}.
- * <p/>
- * After navigation focus is granted, applications should call {@code
- * sendNavigationStatus(STATUS_ACTIVE);} to initialize the cluster and let it know the app will be
- * sending turn events. Then, for each turn of the turn-by-turn guidance, the app calls {@link
- * #sendNavigationTurnEvent(int, CharSequence, int, int, int)}; this sends image data to the cluster
- * (and is why that data is not sent in subsequent turn distance events). To update the distance
- * and time to the next turn, the app should make periodic calls to {@link
- * #sendNavigationTurnDistanceEvent(int, int, int, int)}.
- * <p/>
- * Calling {@code sendNavigationStatus(STATUS_INACTIVE);} when the route is completed allows the
- * car to use the cluster panel for other data (such as media, weather, etc.) and is what a well
- * behaved app is expected to do.
- */
-public abstract class CarNavigationStatusManager implements CarManagerBase {
-
-    /**
-     * Listener for navigation related events. Callbacks are called in the Looper context.
-     */
-    public interface CarNavigationCallback {
-        /**
-         * Instrument Cluster started in navigation mode.
-         * @param manager The manager the callback is attached to.  Useful if the app wishes to
-         * unregister.
-         * @param instrumentCluster An object describing the configuration and state of the car's
-         * navigation instrument cluster.
-         */
-        void onInstrumentClusterStarted(CarNavigationStatusManager manager,
-                CarNavigationInstrumentCluster instrumentCluster);
-
-        /**
-         * Instrument cluster ended.
-         * @param manager The manager the callback is attached to.  Useful if the app wished to
-         * unregister.
-         */
-        void onInstrumentClusterStopped(CarNavigationStatusManager manager);
-    }
-
-    /* Navigation statuses */
-    /** @hide */
-    public static final int STATUS_UNAVAILABLE = 0;
-    /** @hide */
-    public static final int STATUS_ACTIVE = 1;
-    /** @hide */
-    public static final int STATUS_INACTIVE = 2;
-
-    /** @hide */
-    @IntDef({
-            STATUS_UNAVAILABLE,
-            STATUS_ACTIVE,
-            STATUS_INACTIVE
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface Status {}
-
-    /* Turn Types */
-    /** @hide */
-    public static final int TURN_UNKNOWN = 0;
-    /** @hide */
-    public static final int TURN_DEPART = 1;
-    /** @hide */
-    public static final int TURN_NAME_CHANGE = 2;
-    /** @hide */
-    public static final int TURN_SLIGHT_TURN = 3;
-    /** @hide */
-    public static final int TURN_TURN = 4;
-    /** @hide */
-    public static final int TURN_SHARP_TURN = 5;
-    /** @hide */
-    public static final int TURN_U_TURN = 6;
-    /** @hide */
-    public static final int TURN_ON_RAMP = 7;
-    /** @hide */
-    public static final int TURN_OFF_RAMP = 8;
-    /** @hide */
-    public static final int TURN_FORK = 9;
-    /** @hide */
-    public static final int TURN_MERGE = 10;
-    /** @hide */
-    public static final int TURN_ROUNDABOUT_ENTER = 11;
-    /** @hide */
-    public static final int TURN_ROUNDABOUT_EXIT = 12;
-    /** @hide */
-    public static final int TURN_ROUNDABOUT_ENTER_AND_EXIT = 13;
-    /** @hide */
-    public static final int TURN_STRAIGHT = 14;
-    /** @hide */
-    public static final int TURN_FERRY_BOAT = 16;
-    /** @hide */
-    public static final int TURN_FERRY_TRAIN = 17;
-    /** @hide */
-    public static final int TURN_DESTINATION = 19;
-
-    /** @hide */
-    @IntDef({
-            TURN_UNKNOWN,
-            TURN_DEPART,
-            TURN_NAME_CHANGE,
-            TURN_SLIGHT_TURN,
-            TURN_TURN,
-            TURN_SHARP_TURN,
-            TURN_U_TURN,
-            TURN_ON_RAMP,
-            TURN_OFF_RAMP,
-            TURN_FORK,
-            TURN_MERGE,
-            TURN_ROUNDABOUT_ENTER,
-            TURN_ROUNDABOUT_EXIT,
-            TURN_ROUNDABOUT_ENTER_AND_EXIT,
-            TURN_STRAIGHT,
-            TURN_FERRY_BOAT,
-            TURN_FERRY_TRAIN,
-            TURN_DESTINATION
-    })
-    @Retention(RetentionPolicy.SOURCE)
-    public @interface TurnEvent {}
-
-    /** @hide */
-    public static final int TURN_SIDE_LEFT = 1;
-    /** @hide */
-    public static final int TURN_SIDE_RIGHT = 2;
-    /** @hide */
-    public static final int TURN_SIDE_UNSPECIFIED = 3;
-
-    /** @hide */
-    @IntDef({
-            TURN_SIDE_LEFT,
-            TURN_SIDE_RIGHT,
-            TURN_SIDE_UNSPECIFIED
-    })
-    public @interface TurnSide {}
-
-    /** @hide */
-    public static final int DISTANCE_METERS = 1;
-    /** @hide */
-    public static final int DISTANCE_KILOMETERS = 2;
-    /** @hide */
-    public static final int DISTANCE_MILES = 3;
-    /** @hide */
-    public static final int DISTANCE_FEET = 4;
-    /** @hide */
-    public static final int DISTANCE_YARDS = 5;
-
-    /** @hide */
-    @IntDef({
-            DISTANCE_METERS,
-            DISTANCE_KILOMETERS,
-            DISTANCE_MILES,
-            DISTANCE_FEET,
-            DISTANCE_YARDS
-    })
-    public @interface DistanceUnit {}
-
-    /**
-     * Event type that holds information about next maneuver.
-     * @hide
-     */
-    public static final int EVENT_TYPE_NEXT_MANEUVER_INFO = 1;
-    /**
-     * Event type that holds information regarding distance/time to the next maneuver.
-     * @hide
-     */
-    public static final int EVENT_TYPE_NEXT_MANEUVER_COUNTDOWN = 2;
-    /**
-     * All custom (vendor-specific) event types should be equal or greater than this constant.
-     * @hide
-     */
-    public static final int EVENT_TYPE_VENDOR_FIRST = 1024;
-
-    /**
-     * Inform the instrument cluster if navigation is active or not.
-     * @param status New instrument cluster navigation status, one of the STATUS_* constants in
-     * this class.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     *
-     * @deprecated Use {@link #sendEvent(int, Bundle)} instead.
-     * @hide
-     */
-    @Deprecated
-    public abstract void sendNavigationStatus(@Status int status) throws CarNotConnectedException;
-
-    /**
-     * Send a Navigation Next Step event to the car.
-     * <p/>
-     * Roundabout Example: In a roundabout with four, evenly spaced exits, the
-     * first exit is turnNumber=1, turnAngle=90; the second exit is turnNumber=2,
-     * turnAngle=180; the third exit is turnNumber=3, turnAngle=270. turnNumber and turnAngle are
-     * counted in the direction of travel around the roundabout (clockwise for roads where the car
-     * drives on the left side of the road, such as Australia; counter-clockwise for roads
-     * where the car drives on the right side of the road, such as the USA).
-     *
-     * @param turnEvent Turn event type ({@link #TURN_TURN}, {@link #TURN_U_TURN}, {@link
-     * #TURN_ROUNDABOUT_ENTER_AND_EXIT}, etc).
-     * @param eventName Name of the turn event like road name to turn. For example "Charleston road"
-     *        in "Turn right to Charleston road"
-     * @param turnAngle Turn angle in degrees between the roundabout entry and exit (0..359). Used
-     * only for event type {@link #TURN_ROUNDABOUT_ENTER_AND_EXIT}. -1 if unused.
-     * @param turnNumber Turn number, counting from the roundabout entry to the exit. Used only
-     * for event type {@link #TURN_ROUNDABOUT_ENTER_AND_EXIT}. -1 if unused.
-     * @param turnSide Turn side ({@link #TURN_SIDE_LEFT}, {@link #TURN_SIDE_RIGHT} or {@link
-     * #TURN_SIDE_UNSPECIFIED}).
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     *
-     * @deprecated Use {@link #sendEvent(int, Bundle)} instead.
-     * @hide
-     */
-    @Deprecated
-    public abstract void sendNavigationTurnEvent(@TurnEvent int turnEvent, CharSequence eventName,
-            int turnAngle, int turnNumber, @TurnSide int turnSide) throws CarNotConnectedException;
-
-    /**
-     * Same as the public version ({@link #sendNavigationTurnEvent(int, CharSequence, int, int,
-     * Bitmap, int)}) except a custom image can be sent to the cluster. See documentation for that
-     * method.
-     *
-     * @param image image to be shown in the instrument cluster. Null if instrument cluster type is
-     * {@link CarNavigationInstrumentCluster.ClusterType#CLUSTER_TYPE_IMAGE_CODES_ONLY}, or if
-     * the image parameters are malformed (length or width non-positive, or illegal
-     * imageColorDepthBits) in the initial NavigationStatusService call.
-     *
-     * @hide only first party applications may send a custom image to the cluster.
-     * @deprecated Use {@link #sendEvent(int, Bundle)} instead.
-     */
-    @Deprecated
-    public abstract void sendNavigationTurnEvent(@TurnEvent int turnEvent, CharSequence eventName,
-            int turnAngle, int turnNumber, Bitmap image, @TurnSide int turnSide)
-            throws CarNotConnectedException;
-
-    /**
-     * Send a Navigation Next Step Distance event to the car.
-     *
-     * @param distanceMeters Distance to next event in meters.
-     * @param timeSeconds Time to next event in seconds.
-     * @param displayDistanceMillis Distance to the next event formatted as it will be displayed by
-     * the calling app, in milli-units. For example, 1.25 should be supplied as 1250.
-     * @param displayDistanceUnit Unit type to use on of the DISTANCE_* types defined in this
-     * file.
-     * @returns {@code true} if successful.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     *
-     * @deprecated Use {@link #sendEvent(int, Bundle)} instead.
-     * @hide
-     */
-    @Deprecated
-    public abstract void sendNavigationTurnDistanceEvent(int distanceMeters, int timeSeconds,
-            int displayDistanceMillis, int displayDistanceUnit) throws CarNotConnectedException;
-
-    /**
-     * Sends events from navigation app to instrument cluster.
-     *
-     * @param eventType event type, the value could be either
-     * {@link #EVENT_TYPE_NEXT_MANEUVER_INFO}, {@link #EVENT_TYPE_NEXT_MANEUVER_COUNTDOWN}, or
-     * vendor-specific code.
-     *
-     * @param bundle object that holds data about the event
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract void sendEvent(int eventType, Bundle bundle)
-            throws CarNotConnectedException;
-
-    /**
-     * @param callback {@link CarNavigationCallback} to be registered, replacing any existing
-     * listeners.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    public abstract void addListener(CarNavigationCallback callback)
-            throws CarNotConnectedException;
-
-    /**
-     * Unregister the {@link CarNavigationCallback} associated with this instance.
-     */
-    public abstract void removeListener();
-}
diff --git a/car-support-lib/src/android/support/car/navigation/CarNavigationStatusManagerEmbedded.java b/car-support-lib/src/android/support/car/navigation/CarNavigationStatusManagerEmbedded.java
deleted file mode 100644
index 4ab5ec6..0000000
--- a/car-support-lib/src/android/support/car/navigation/CarNavigationStatusManagerEmbedded.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package android.support.car.navigation;
-
-import android.graphics.Bitmap;
-import android.os.Bundle;
-import android.support.car.CarNotConnectedException;
-
-/**
- * @hide
- */
-public class CarNavigationStatusManagerEmbedded extends CarNavigationStatusManager {
-
-    private final android.car.navigation.CarNavigationStatusManager mManager;
-
-    public CarNavigationStatusManagerEmbedded(Object manager) {
-        mManager = (android.car.navigation.CarNavigationStatusManager) manager;
-    }
-
-    /**
-     * @param status new instrument cluster navigation status.
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    @Override
-    public void sendNavigationStatus(int status) throws CarNotConnectedException {
-        // Not implemented in embedded.
-    }
-
-    @Override
-    public void sendNavigationTurnEvent(int event, CharSequence eventName, int turnAngle,
-            int turnNumber, int turnSide) throws CarNotConnectedException {
-        // Not implemented in embedded.
-    }
-
-    @Override
-    public void sendNavigationTurnEvent(int event, CharSequence eventName, int turnAngle,
-            int turnNumber, Bitmap image, int turnSide) throws CarNotConnectedException {
-        // Not implemented in embedded.
-    }
-
-    @Override
-    public void sendNavigationTurnDistanceEvent(int distanceMeters, int timeSeconds,
-            int displayDistanceMillis, int displayDistanceUnit) throws CarNotConnectedException {
-        // Not implemented in embedded.
-    }
-
-    @Override
-    public void sendEvent(int eventType, Bundle bundle) throws CarNotConnectedException {
-        try {
-            mManager.sendEvent(eventType, bundle);
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void onCarDisconnected() {
-        //nothing to do
-    }
-
-    /**
-     * In this implementation we just immediately call {@code listener#onInstrumentClusterStarted}
-     * as we expect instrument cluster to be working all the time.
-     *
-     * @throws CarNotConnectedException if the connection to the car service has been lost.
-     */
-    @Override
-    public void addListener(CarNavigationCallback callback)
-            throws CarNotConnectedException {
-
-        try {
-            callback.onInstrumentClusterStarted(this, convert(mManager.getInstrumentClusterInfo()));
-        } catch (android.car.CarNotConnectedException e) {
-            throw new CarNotConnectedException(e);
-        }
-    }
-
-    @Override
-    public void removeListener() {
-        // Nothing to do.
-    }
-
-    private static CarNavigationInstrumentCluster convert(
-            android.car.navigation.CarNavigationInstrumentCluster ic) {
-        if (ic == null) {
-            return null;
-        }
-        return new CarNavigationInstrumentCluster(ic.getMinIntervalMillis(), ic.getType(),
-                ic.getImageWidth(), ic.getImageHeight(), ic.getImageColorDepthBits(),
-                ic.getExtra());
-    }
-}
diff --git a/tests/android_support_car_api_test/Android.mk b/tests/android_support_car_api_test/Android.mk
deleted file mode 100644
index 90aa767..0000000
--- a/tests/android_support_car_api_test/Android.mk
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright (C) 2015 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-LOCAL_PATH:= $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-
-LOCAL_PACKAGE_NAME := AndroidSupportCarApiTest
-LOCAL_PRIVATE_PLATFORM_APIS := true
-
-# for system|privileged permission.
-LOCAL_CERTIFICATE := platform
-
-LOCAL_MODULE_TAGS := tests
-
-# When built explicitly put it in the data partition
-LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_APPS)
-
-LOCAL_PROGUARD_ENABLED := disabled
-
-LOCAL_STATIC_JAVA_LIBRARIES := junit
-LOCAL_STATIC_JAVA_LIBRARIES += android.support.car android-support-test
-
-LOCAL_JAVA_LIBRARIES := android.car android.test.runner android.test.base
-
-include $(BUILD_PACKAGE)
diff --git a/tests/android_support_car_api_test/AndroidManifest.xml b/tests/android_support_car_api_test/AndroidManifest.xml
deleted file mode 100644
index ba4a53e..0000000
--- a/tests/android_support_car_api_test/AndroidManifest.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
-        package="com.android.support.car.apitest"
-        android:sharedUserId="android.uid.system" >
-
-    <uses-sdk android:minSdkVersion="23" android:targetSdkVersion="23" />
-    <instrumentation android:name="android.test.InstrumentationTestRunner"
-            android:targetPackage="com.android.support.car.apitest"
-            android:label="Tests for Car APIs"/>
-
-    <application android:label="CarApiTest">
-        <uses-library android:name="android.test.runner" />
-        <activity android:name=".TestCarProxyActivity">
-            <intent-filter>
-                <action android:name="android.intent.action.MAIN" />
-            </intent-filter>
-        </activity>
-    </application>
-</manifest>
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarApiTestBase.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarApiTestBase.java
deleted file mode 100644
index 981de14..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarApiTestBase.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.support.car.apitest;
-
-import android.os.Looper;
-import android.support.car.Car;
-import android.support.car.CarConnectionCallback;
-import android.test.AndroidTestCase;
-
-import java.util.concurrent.Semaphore;
-import java.util.concurrent.TimeUnit;
-
-public class CarApiTestBase extends AndroidTestCase {
-    protected static final long DEFAULT_WAIT_TIMEOUT_MS = 1000;
-
-    private Car mCar;
-
-    private final DefaultCarConnectionCallback mConnectionCallbacks =
-            new DefaultCarConnectionCallback();
-
-    protected void assertMainThread() {
-        assertTrue(Looper.getMainLooper().isCurrentThread());
-    }
-
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mCar = Car.createCar(getContext(), mConnectionCallbacks);
-        mCar.connect();
-        mConnectionCallbacks.waitForConnection(DEFAULT_WAIT_TIMEOUT_MS);
-    }
-
-    @Override
-    protected void tearDown() throws Exception {
-        super.tearDown();
-        mCar.disconnect();
-    }
-
-    protected synchronized Car getCar() {
-        return mCar;
-    }
-
-    protected class DefaultCarConnectionCallback extends CarConnectionCallback {
-        private final Semaphore mConnectionWait = new Semaphore(0);
-
-        public void waitForConnection(long timeoutMs) throws InterruptedException {
-            mConnectionWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS);
-        }
-        @Override
-        public void onDisconnected(Car car) {
-            assertMainThread();
-        }
-
-        @Override
-        public void onConnected(Car car) {
-            assertMainThread();
-            mConnectionWait.release();
-        }
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarAppFocusManagerTest.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarAppFocusManagerTest.java
deleted file mode 100644
index 2d58e56..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarAppFocusManagerTest.java
+++ /dev/null
@@ -1,353 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.support.car.apitest;
-
-import android.support.car.Car;
-import android.support.car.CarAppFocusManager;
-import android.test.suitebuilder.annotation.MediumTest;
-import android.util.Log;
-
-import java.util.concurrent.Semaphore;
-import java.util.concurrent.TimeUnit;
-
-@MediumTest
-public class CarAppFocusManagerTest extends CarApiTestBase {
-    private static final String TAG = CarAppFocusManagerTest.class.getSimpleName();
-    private CarAppFocusManager mManager;
-
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mManager = (CarAppFocusManager) getCar().getCarManager(Car.APP_FOCUS_SERVICE);
-        assertNotNull(mManager);
-
-        // Request all application focuses and abandon them to ensure no active context is present
-        // when test starts.
-        int[] activeTypes =  {CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND};
-        FocusOwnershipCallback owner = new FocusOwnershipCallback();
-        for (int i = 0; i < activeTypes.length; i++) {
-            mManager.requestAppFocus(activeTypes[i], owner);
-            owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS, activeTypes[i]);
-            mManager.abandonAppFocus(owner, activeTypes[i]);
-            owner.waitForOwnershipLossAndAssert(
-                    DEFAULT_WAIT_TIMEOUT_MS, activeTypes[i]);
-        }
-    }
-
-    public void testSetActiveNullListener() throws Exception {
-        try {
-            mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, null);
-            fail();
-        } catch (IllegalArgumentException e) {
-            // expected
-        }
-    }
-
-    public void testRegisterNull() throws Exception {
-        try {
-            mManager.addFocusListener(null, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-            fail();
-        } catch (IllegalArgumentException e) {
-            // expected
-        }
-    }
-
-    public void testRegisterUnregister() throws Exception {
-        FocusChangedListener listener = new FocusChangedListener();
-        FocusChangedListener listener2 = new FocusChangedListener();
-        mManager.addFocusListener(listener, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        mManager.addFocusListener(listener2, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        mManager.removeFocusListener(listener);
-        mManager.removeFocusListener(listener2);
-    }
-
-    public void testFocusChange() throws Exception {
-        DefaultCarConnectionCallback connectionCallbacks =
-                new DefaultCarConnectionCallback();
-        Car car2 = Car.createCar(getContext(), connectionCallbacks, null);
-        car2.connect();
-        connectionCallbacks.waitForConnection(DEFAULT_WAIT_TIMEOUT_MS);
-        CarAppFocusManager manager2 = (CarAppFocusManager)
-                car2.getCarManager(Car.APP_FOCUS_SERVICE);
-        assertNotNull(manager2);
-        final int[] emptyFocus = new int[0];
-
-        FocusChangedListener change = new FocusChangedListener();
-        FocusChangedListener change2 = new FocusChangedListener();
-        FocusOwnershipCallback owner = new FocusOwnershipCallback();
-        FocusOwnershipCallback owner2 = new FocusOwnershipCallback();
-        mManager.addFocusListener(change, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        mManager.addFocusListener(change, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        manager2.addFocusListener(change2, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        manager2.addFocusListener(change2, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION));
-
-        assertTrue(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner));
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner2));
-
-        assertTrue(change2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-        assertTrue(change.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND));
-        assertTrue(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner));
-        assertTrue(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND,
-                owner2));
-        assertTrue(change2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, true));
-        assertTrue(change.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, true));
-
-        // this should be no-op
-        change.reset();
-        change2.reset();
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION));
-
-        assertFalse(change2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-        assertFalse(change.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-
-        manager2.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2);
-        assertTrue(owner2.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION));
-
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner));
-        assertTrue(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner));
-        assertTrue(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner2));
-        assertTrue(owner.waitForOwnershipLossAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION));
-
-        // no-op as it is not owning it
-        change.reset();
-        change2.reset();
-        mManager.abandonAppFocus(owner, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner));
-        assertTrue(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner));
-        assertTrue(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner2));
-
-        change.reset();
-        change2.reset();
-        mManager.abandonAppFocus(owner, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner));
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner));
-        assertTrue(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner2));
-        assertTrue(change2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, false));
-        assertTrue(change.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, false));
-
-        change.reset();
-        change2.reset();
-        manager2.abandonAppFocus(owner2, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner));
-        assertFalse(mManager.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner2));
-        assertFalse(manager2.isOwningFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner2));
-        assertTrue(change.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, false));
-        mManager.removeFocusListener(change);
-        manager2.removeFocusListener(change2);
-    }
-
-    public void testFilter() throws Exception {
-        DefaultCarConnectionCallback connectionCallbacks =
-                new DefaultCarConnectionCallback();
-        Car car2 = Car.createCar(getContext(), connectionCallbacks);
-        car2.connect();
-        connectionCallbacks.waitForConnection(DEFAULT_WAIT_TIMEOUT_MS);
-        CarAppFocusManager manager2 = (CarAppFocusManager)
-                car2.getCarManager(Car.APP_FOCUS_SERVICE);
-        assertNotNull(manager2);
-
-        FocusChangedListener listener = new FocusChangedListener();
-        FocusChangedListener listener2 = new FocusChangedListener();
-        FocusOwnershipCallback owner = new FocusOwnershipCallback();
-        mManager.addFocusListener(listener, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        mManager.addFocusListener(listener, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        manager2.addFocusListener(listener2, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION));
-
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                 CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-        assertTrue(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                 CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-
-        listener.reset();
-        listener2.reset();
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND));
-
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, true));
-        assertFalse(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, true));
-
-        listener.reset();
-        listener2.reset();
-        mManager.abandonAppFocus(owner, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, false));
-        assertFalse(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, false));
-
-        listener.reset();
-        listener2.reset();
-        mManager.abandonAppFocus(owner, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, false));
-        assertTrue(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, false));
-    }
-
-    public void testMultipleChangeListenersPerManager() throws Exception {
-        FocusChangedListener listener = new FocusChangedListener();
-        FocusChangedListener listener2 = new FocusChangedListener();
-        FocusOwnershipCallback owner = new FocusOwnershipCallback();
-        mManager.addFocusListener(listener, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        mManager.addFocusListener(listener, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        mManager.addFocusListener(listener2, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION));
-
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                 CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-        assertTrue(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                 CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, true));
-
-        listener.reset();
-        listener2.reset();
-        mManager.requestAppFocus(CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, owner);
-        assertTrue(owner.waitForOwnershipGrantAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND));
-
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, true));
-        assertFalse(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, true));
-
-        listener.reset();
-        listener2.reset();
-        mManager.abandonAppFocus(owner, CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND);
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, false));
-        assertFalse(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_VOICE_COMMAND, false));
-
-        listener.reset();
-        listener2.reset();
-        mManager.abandonAppFocus(owner, CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION);
-        assertTrue(listener.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, false));
-        assertTrue(listener2.waitForFocusChangeAndAssert(DEFAULT_WAIT_TIMEOUT_MS,
-                CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION, false));
-    }
-
-    private class FocusChangedListener implements CarAppFocusManager.OnAppFocusChangedListener {
-        private int mLastChangeAppType;
-        private boolean mLastChangeAppActive;
-        private final Semaphore mChangeWait = new Semaphore(0);
-
-        public boolean waitForFocusChangeAndAssert(long timeoutMs, int expectedAppType,
-                boolean expectedAppActive) throws Exception {
-            if (!mChangeWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS)) {
-                return false;
-            }
-            assertEquals(expectedAppType, mLastChangeAppType);
-            assertEquals(expectedAppActive, mLastChangeAppActive);
-            return true;
-        }
-
-        public void reset() {
-            mLastChangeAppType = 0;
-            mLastChangeAppActive = false;
-        }
-
-        @Override
-        public void onAppFocusChanged(CarAppFocusManager manager, int appType, boolean active) {
-            Log.i(TAG, "onAppFocusChanged appType=" + appType + " active=" + active);
-            assertMainThread();
-            mLastChangeAppType = appType;
-            mLastChangeAppActive = active;
-            mChangeWait.release();
-        }
-    }
-
-    private class FocusOwnershipCallback
-            implements CarAppFocusManager.OnAppFocusOwnershipCallback {
-        private int mLastLossEvent;
-        private final Semaphore mLossEventWait = new Semaphore(0);
-
-        private int mLastGrantEvent;
-        private final Semaphore mGrantEventWait = new Semaphore(0);
-
-        public boolean waitForOwnershipLossAndAssert(long timeoutMs, int expectedAppType)
-                throws Exception {
-            if (!mLossEventWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS)) {
-                return false;
-            }
-            assertEquals(expectedAppType, mLastLossEvent);
-            return true;
-        }
-
-        public boolean waitForOwnershipGrantAndAssert(long timeoutMs, int expectedAppType)
-                throws Exception {
-            if (!mGrantEventWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS)) {
-                return false;
-            }
-            assertEquals(expectedAppType, mLastGrantEvent);
-            return true;
-        }
-
-        @Override
-        public void onAppFocusOwnershipLost(CarAppFocusManager manager, int appType) {
-            Log.i(TAG, "onAppFocusOwnershipLost " + appType);
-            assertMainThread();
-            mLastLossEvent = appType;
-            mLossEventWait.release();
-        }
-
-        @Override
-        public void onAppFocusOwnershipGranted(CarAppFocusManager manager, int appType) {
-            Log.i(TAG, "onAppFocusOwnershipGranted " + appType);
-            assertMainThread();
-            mLastGrantEvent = appType;
-            mGrantEventWait.release();
-        }
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarNavigationStatusManagerTest.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarNavigationStatusManagerTest.java
deleted file mode 100644
index d57d9ee..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarNavigationStatusManagerTest.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.support.car.apitest;
-
-import static android.support.car.CarAppFocusManager.APP_FOCUS_TYPE_NAVIGATION;
-
-import android.os.Bundle;
-import android.support.car.Car;
-import android.support.car.CarAppFocusManager;
-import android.support.car.CarAppFocusManager.OnAppFocusChangedListener;
-import android.support.car.CarAppFocusManager.OnAppFocusOwnershipCallback;
-import android.support.car.navigation.CarNavigationInstrumentCluster;
-import android.support.car.navigation.CarNavigationStatusManager;
-import android.test.suitebuilder.annotation.MediumTest;
-
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-/**
- * Unit tests for {@link android.support.car.navigation.CarNavigationStatusManager}
- */
-@MediumTest
-public class CarNavigationStatusManagerTest extends CarApiTestBase {
-
-    private CarNavigationStatusManager mCarNavigationStatusManager;
-    private CarAppFocusManager mCarAppFocusManager;
-
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mCarNavigationStatusManager =
-                (CarNavigationStatusManager) getCar().getCarManager(Car.CAR_NAVIGATION_SERVICE);
-        assertNotNull(mCarNavigationStatusManager);
-        mCarAppFocusManager =
-                (CarAppFocusManager) getCar().getCarManager(Car.APP_FOCUS_SERVICE);
-        assertNotNull(mCarAppFocusManager);
-    }
-
-    public void testStart() throws Exception {
-        final CountDownLatch onStartLatch = new CountDownLatch(1);
-
-        mCarNavigationStatusManager.addListener(
-                new CarNavigationStatusManager.CarNavigationCallback() {
-            @Override
-            public void onInstrumentClusterStarted(CarNavigationStatusManager manager,
-                    CarNavigationInstrumentCluster instrumentCluster) {
-                // return type cannot be asserted.
-                instrumentCluster.supportsCustomImages();
-                instrumentCluster.getMinIntervalMillis();
-                onStartLatch.countDown();
-            }
-
-            @Override
-            public void onInstrumentClusterStopped(CarNavigationStatusManager manager) {
-              // TODO
-            }
-        });
-
-        assertTrue(onStartLatch.await(DEFAULT_WAIT_TIMEOUT_MS, TimeUnit.MILLISECONDS));
-
-        try {
-            mCarNavigationStatusManager.sendEvent(1, new Bundle());
-            fail();
-        } catch (IllegalStateException expected) {
-            // Expected. Client should acquire focus ownership for APP_FOCUS_TYPE_NAVIGATION.
-        }
-
-        mCarAppFocusManager
-                .addFocusListener(new OnAppFocusChangedListener() {
-                    @Override
-                    public void onAppFocusChanged(CarAppFocusManager manager, int appType,
-                            boolean active) {
-                        // Nothing to do here.
-                    }
-                }, APP_FOCUS_TYPE_NAVIGATION);
-        CarAppFocusManager.OnAppFocusOwnershipCallback
-                ownershipCallback = new OnAppFocusOwnershipCallback() {
-            @Override
-            public void onAppFocusOwnershipLost(CarAppFocusManager manager, int focusType) {
-                // Nothing to do here.
-            }
-
-            @Override
-            public void onAppFocusOwnershipGranted(CarAppFocusManager manager, int focusType) {
-                // Nothing to do here.
-            }
-        };
-        mCarAppFocusManager.requestAppFocus(APP_FOCUS_TYPE_NAVIGATION, ownershipCallback);
-        assertTrue(mCarAppFocusManager.isOwningFocus(APP_FOCUS_TYPE_NAVIGATION, ownershipCallback));
-
-        // TODO: we should use mocked HAL to be able to verify this, right now just make sure that
-        // it is not crashing and logcat has appropriate traces.
-        mCarNavigationStatusManager.sendEvent(1, new Bundle());
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarPackageManagerTest.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarPackageManagerTest.java
deleted file mode 100644
index c42a8cb..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarPackageManagerTest.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.support.car.apitest;
-
-import android.os.Looper;
-import android.support.car.Car;
-import android.support.car.CarConnectionCallback;
-import android.support.car.content.pm.CarPackageManager;
-import android.test.AndroidTestCase;
-import android.test.suitebuilder.annotation.MediumTest;
-
-import java.util.concurrent.Semaphore;
-import java.util.concurrent.TimeUnit;
-
-@MediumTest
-public class CarPackageManagerTest extends AndroidTestCase {
-    private static final long DEFAULT_WAIT_TIMEOUT_MS = 3000;
-
-    private final Semaphore mConnectionWait = new Semaphore(0);
-
-    private Car mCar;
-    private CarPackageManager mCarPackageManager;
-
-    private final CarConnectionCallback mConnectionCallbacks =
-            new CarConnectionCallback() {
-        @Override
-        public void onDisconnected(Car car) {
-            assertMainThread();
-        }
-
-
-        @Override
-        public void onConnected(Car car) {
-            assertMainThread();
-            mConnectionWait.release();
-        }
-    };
-
-    private void assertMainThread() {
-        assertTrue(Looper.getMainLooper().isCurrentThread());
-    }
-
-    private void waitForConnection(long timeoutMs) throws InterruptedException {
-        mConnectionWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS);
-    }
-
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mCar = Car.createCar(getContext(), mConnectionCallbacks);
-        mCar.connect();
-        waitForConnection(DEFAULT_WAIT_TIMEOUT_MS);
-        mCarPackageManager = (CarPackageManager) mCar.getCarManager(Car.PACKAGE_SERVICE);
-        assertNotNull(mCarPackageManager);
-    }
-
-    @Override
-    protected void tearDown() throws Exception {
-        super.tearDown();
-        mCar.disconnect();
-    }
-
-    public void testCreate() throws Exception {
-        //nothing to do for now
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarSensorManagerTest.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarSensorManagerTest.java
deleted file mode 100644
index bc97d67..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarSensorManagerTest.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.support.car.apitest;
-
-import static android.content.pm.PackageManager.FEATURE_AUTOMOTIVE;
-
-import android.os.Looper;
-import android.support.car.Car;
-import android.support.car.CarConnectionCallback;
-import android.support.car.hardware.CarSensorEvent;
-import android.support.car.hardware.CarSensorManager;
-import android.test.AndroidTestCase;
-import android.test.suitebuilder.annotation.MediumTest;
-
-import java.lang.reflect.Field;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.Semaphore;
-import java.util.concurrent.TimeUnit;
-
-@MediumTest
-public class CarSensorManagerTest extends AndroidTestCase {
-    private static final long DEFAULT_WAIT_TIMEOUT_MS = 3000;
-
-    private final Semaphore mConnectionWait = new Semaphore(0);
-
-    private Car mCar;
-    private CarSensorManager mCarSensorManager;
-
-    private final CarConnectionCallback mConnectionCallbacks =
-            new CarConnectionCallback() {
-        @Override
-        public void onDisconnected(Car car) {
-            assertMainThread();
-        }
-
-        @Override
-        public void onConnected(Car car) {
-            assertMainThread();
-            mConnectionWait.release();
-        }
-    };
-
-    private void assertMainThread() {
-        assertTrue(Looper.getMainLooper().isCurrentThread());
-    }
-    private void waitForConnection(long timeoutMs) throws InterruptedException {
-        mConnectionWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS);
-    }
-
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
-        mCar = Car.createCar(getContext(), mConnectionCallbacks);
-        mCar.connect();
-        waitForConnection(DEFAULT_WAIT_TIMEOUT_MS);
-        mCarSensorManager =
-                (CarSensorManager) mCar.getCarManager(Car.SENSOR_SERVICE);
-    }
-
-    @Override
-    protected void tearDown() throws Exception {
-        super.tearDown();
-        mCar.disconnect();
-    }
-
-    public void testDrivingPolicy() throws Exception {
-        // Embedded does not support SENSOR_TYPE_DRIVING_STATUS.  Hence this test is not run in
-        // Android Auto Embedded.
-        if (getContext().getPackageManager().hasSystemFeature(FEATURE_AUTOMOTIVE)) {
-            return;
-        }
-
-        int[] supportedSensors = mCarSensorManager.getSupportedSensors();
-        assertNotNull(supportedSensors);
-        boolean found = false;
-        for (int sensor: supportedSensors) {
-            if (sensor == CarSensorManager.SENSOR_TYPE_DRIVING_STATUS) {
-                found = true;
-                break;
-            }
-        }
-        assertTrue(found);
-        assertTrue(mCarSensorManager.isSensorSupported(
-                CarSensorManager.SENSOR_TYPE_DRIVING_STATUS));
-        CarSensorEvent lastEvent = mCarSensorManager.getLatestSensorEvent(
-                CarSensorManager.SENSOR_TYPE_DRIVING_STATUS);
-        assertNotNull(lastEvent);
-    }
-
-    public void testSensorType() throws Exception {
-        List<Field> androidCarAllIntMembers = TestUtil.getAllPublicStaticFinalMembers(
-                android.car.hardware.CarSensorManager.class, int.class);
-        List<Field> supportCarAllIntMembers = TestUtil.getAllPublicStaticFinalMembers(
-                android.support.car.hardware.CarSensorManager.class, int.class);
-        List<Field> androidCarSensorTypes = filterSensorTypes(androidCarAllIntMembers);
-        List<Field> supportCarSensorTypes = filterSensorTypes(supportCarAllIntMembers);
-        Map<Integer, Field> androidCarSensorTypeToField = new HashMap<>();
-        for (Field androidCarSensorType : androidCarSensorTypes) {
-            androidCarSensorTypeToField.put(androidCarSensorType.getInt(null),
-                    androidCarSensorType);
-        }
-        StringBuilder builder = new StringBuilder();
-        boolean failed = false;
-        for (Field supportCarSensorType : supportCarSensorTypes) {
-            Field androidCarSensorType = androidCarSensorTypeToField.get(
-                    supportCarSensorType.getInt(null));
-            assertNotNull("Sensor type:" + supportCarSensorType.getName() +
-                    " not defined in android.car", androidCarSensorType);
-            if (supportCarSensorType.getName().equals(androidCarSensorType.getName())) {
-                // match ok
-            } else if (androidCarSensorType.getName().startsWith("SENSOR_TYPE_RESERVED")) {
-                // not used in android.car, ok
-            } else if (supportCarSensorType.getName().startsWith("SENSOR_TYPE_RESERVED")) {
-                // used in android.car but reserved in support.car
-            } else {
-                failed = true;
-                builder.append("android.support sensor has name:" + supportCarSensorType.getName() +
-                        " while android.car sensor has name:" + androidCarSensorType.getName() +
-                        "\n");
-            }
-            androidCarSensorTypeToField.remove(supportCarSensorType.getInt(null));
-        }
-        assertFalse(builder.toString(), failed);
-        assertTrue("android Car sensor has additional types defined:" + androidCarSensorTypeToField,
-                androidCarSensorTypeToField.size() == 0);
-    }
-
-    public void testSensorRate() throws Exception {
-        List<Field> androidCarAllIntMembers = TestUtil.getAllPublicStaticFinalMembers(
-                android.car.hardware.CarSensorManager.class, int.class);
-        List<Field> supportCarAllIntMembers = TestUtil.getAllPublicStaticFinalMembers(
-                android.support.car.hardware.CarSensorManager.class, int.class);
-        List<Field> androidCarSensorRates = filterSensorRates(androidCarAllIntMembers);
-        List<Field> supportCarSensorRates = filterSensorRates(supportCarAllIntMembers);
-        Map<Integer, Field> androidCarSensorRateToField = new HashMap<>();
-        for (Field androidCarSensorRate : androidCarSensorRates) {
-            androidCarSensorRateToField.put(androidCarSensorRate.getInt(null),
-                    androidCarSensorRate);
-        }
-        StringBuilder builder = new StringBuilder();
-        boolean failed = false;
-        for (Field supprotCarSensorRate : supportCarSensorRates) {
-            Field androidCarSensorRate = androidCarSensorRateToField.get(
-                    supprotCarSensorRate.getInt(null));
-            assertNotNull("Sensor rate:" + supprotCarSensorRate.getName() +
-                    " not defined in android.car", androidCarSensorRate);
-            if (supprotCarSensorRate.getName().equals(androidCarSensorRate.getName())) {
-                // match ok
-            } else {
-                failed = true;
-                builder.append("android.support sensor rate has name:" +
-                        supprotCarSensorRate.getName() +
-                        " while android.car sensor rate has name:" +
-                        androidCarSensorRate.getName());
-            }
-            androidCarSensorRateToField.remove(supprotCarSensorRate.getInt(null));
-        }
-        assertFalse(builder.toString(), failed);
-        assertTrue("android Car sensor has additional rates defined:" + androidCarSensorRateToField,
-                androidCarSensorRateToField.size() == 0);
-    }
-
-    private List<Field> filterSensorTypes(List<Field> fields) {
-        return filterFields(fields, "SENSOR_TYPE_");
-    }
-
-    private List<Field> filterSensorRates(List<Field> fields) {
-        return filterFields(fields, "SENSOR_RATE_");
-    }
-
-    private List<Field> filterFields(List<Field> fields, String prefix) {
-        List<Field> result = new LinkedList<>();
-        for (Field f : fields) {
-            if (f.getName().startsWith(prefix)) {
-                result.add(f);
-            }
-        }
-        return result;
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarTest.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarTest.java
deleted file mode 100644
index d707253..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/CarTest.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.support.car.apitest;
-
-import android.os.Looper;
-import android.support.car.Car;
-import android.support.car.CarConnectionCallback;
-import android.support.car.hardware.CarSensorManager;
-import android.test.AndroidTestCase;
-import android.test.suitebuilder.annotation.MediumTest;
-
-import java.util.concurrent.Semaphore;
-import java.util.concurrent.TimeUnit;
-
-@MediumTest
-public class CarTest extends AndroidTestCase {
-    private static final long DEFAULT_WAIT_TIMEOUT_MS = 3000;
-
-    private final Semaphore mConnectionWait = new Semaphore(0);
-
-    private final CarConnectionCallback mConnectionCallbacks =
-            new CarConnectionCallback() {
-
-        @Override
-        public void onDisconnected(Car car) {
-            assertMainThread();
-        }
-
-        @Override
-        public void onConnected(Car car) {
-            assertMainThread();
-            mConnectionWait.release();
-        }
-    };
-
-    private void assertMainThread() {
-        assertTrue(Looper.getMainLooper().isCurrentThread());
-    }
-
-    private void waitForConnection(long timeoutMs) throws InterruptedException {
-        mConnectionWait.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS);
-    }
-
-    public void testCarConnection() throws Exception {
-        Car car = Car.createCar(getContext(), mConnectionCallbacks);
-        assertFalse(car.isConnected());
-        assertFalse(car.isConnecting());
-        car.connect();
-        //TODO fix race here
-        assertTrue(car.isConnecting());
-        waitForConnection(DEFAULT_WAIT_TIMEOUT_MS);
-        assertTrue(car.isConnected());
-        assertFalse(car.isConnecting());
-        CarSensorManager carSensorManager =
-                (CarSensorManager) car.getCarManager(Car.SENSOR_SERVICE);
-        assertNotNull(carSensorManager);
-        CarSensorManager carSensorManager2 =
-                (CarSensorManager) car.getCarManager(Car.SENSOR_SERVICE);
-        assertEquals(carSensorManager, carSensorManager2);
-        Object noSuchService = car.getCarManager("No such service");
-        assertNull(noSuchService);
-        // double disconnect should be safe.
-        car.disconnect();
-        car.disconnect();
-        assertFalse(car.isConnected());
-        assertFalse(car.isConnecting());
-    }
-
-    public void testDoubleConnect() throws Exception {
-        Car car = Car.createCar(getContext(), mConnectionCallbacks);
-        assertFalse(car.isConnected());
-        assertFalse(car.isConnecting());
-        car.connect();
-        try {
-            car.connect();
-            fail("double connect should throw an exception");
-        } catch (IllegalStateException e) {
-            // expected
-        }
-        car.disconnect();
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/TestAction.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/TestAction.java
deleted file mode 100644
index 472b825..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/TestAction.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.support.car.apitest;
-
-import android.util.Log;
-
-import java.util.concurrent.Semaphore;
-import java.util.concurrent.TimeUnit;
-
-import junit.framework.Assert;
-
-/**
- * A generic test action, whose run method will be called with a parameter.
- */
-public abstract class TestAction<T> {
-    /** for passing additional test specific parameters */
-    public volatile Object arg0;
-    public volatile Object arg1;
-    private static final String TAG = "CAR.TEST";
-    private Throwable mLastThrowable;
-    private Semaphore mWaitSemaphore = new Semaphore(0);
-
-    abstract public void run(T param);
-
-    public void doRun(T param) {
-        Log.i(TAG, "TestAction doRun " + this + " param:" + param);
-        try {
-            run(param);
-        } catch (Throwable t) {
-            Log.i(TAG, "TestAction doRun get exception", t);
-            mLastThrowable = t;
-        }
-        mWaitSemaphore.release();
-    }
-
-    public void assertTestRun(long timeoutMs) throws Throwable {
-        if (!mWaitSemaphore.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS)) {
-            Assert.fail("timeout");
-        }
-        if (mLastThrowable != null) {
-            throw mLastThrowable;
-        }
-    }
-
-    public void assertNotRun(long waitMs) throws Throwable {
-        if (!mWaitSemaphore.tryAcquire(waitMs, TimeUnit.MILLISECONDS)) {
-            return;
-        }
-        if (mLastThrowable != null) {
-            Log.e(TAG, "Action was run, but failed");
-            throw mLastThrowable;
-        }
-        Assert.fail("Action was run");
-    }
-
-    public boolean waitForTest(long timeoutMs) throws Throwable {
-        if (mWaitSemaphore.tryAcquire(timeoutMs, TimeUnit.MILLISECONDS)) {
-            if (mLastThrowable != null) {
-                throw mLastThrowable;
-            }
-            return true;
-        }
-        return false;
-    }
-
-    public void resetRunState() {
-        mWaitSemaphore.drainPermits();
-    }
-
-    public static <U> TestAction<U> buildEmptyAction() {
-        return new TestAction<U>() {
-            @Override
-            public void run(U param) {
-            }
-        };
-    }
-}
diff --git a/tests/android_support_car_api_test/src/com/android/support/car/apitest/TestUtil.java b/tests/android_support_car_api_test/src/com/android/support/car/apitest/TestUtil.java
deleted file mode 100644
index 71213ad..0000000
--- a/tests/android_support_car_api_test/src/com/android/support/car/apitest/TestUtil.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.support.car.apitest;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
-import java.util.LinkedList;
-import java.util.List;
-
-public class TestUtil {
-
-    public static List<Field> getAllPublicStaticFinalMembers(Class cls, Class typeClass) {
-        List<Field> result = new LinkedList<>();
-        for (Field f : cls.getDeclaredFields()) {
-            int mod = f.getModifiers();
-            if (Modifier.isPublic(mod) && Modifier.isStatic(mod) && Modifier.isFinal(mod)) {
-                result.add(f);
-            }
-        }
-        return result;
-    }
-}