# The proguard configuration file for the following section is /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/app/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-7.4.0
# This is a configuration file for ProGuard.
# http://proguard.sourceforge.net/index.html#manual/usage.html
#
# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
# will be ignored by new version of the Android plugin for Gradle.

# Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file
# instead of this one, which turns off the optimization flags.
# Adding optimization introduces certain risks, since for example not all optimizations performed by
# ProGuard works on all versions of Dalvik.  The following flags turn off various optimizations
# known to have issues, but the list may not be complete or up to date. (The "arithmetic"
# optimization can be used if you are only targeting Android 2.0 or later.)  Make sure you test
# thoroughly if you go this route.
-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
-optimizationpasses 5
-allowaccessmodification

-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-verbose

# Preserve some attributes that may be required for reflection.
-keepattributes AnnotationDefault,
                EnclosingMethod,
                InnerClasses,
                RuntimeVisibleAnnotations,
                RuntimeVisibleParameterAnnotations,
                RuntimeVisibleTypeAnnotations,
                Signature

-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
-keep public class com.google.android.vending.licensing.ILicensingService
-dontnote com.android.vending.licensing.ILicensingService
-dontnote com.google.vending.licensing.ILicensingService
-dontnote com.google.android.vending.licensing.ILicensingService

# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
-keepclasseswithmembernames,includedescriptorclasses class * {
    native <methods>;
}

# Keep setters in Views so that animations can still work.
-keepclassmembers public class * extends android.view.View {
    void set*(***);
    *** get*();
}

# We want to keep methods in Activity that could be used in the XML attribute onClick.
-keepclassmembers class * extends android.app.Activity {
    public void *(android.view.View);
}

# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keepclassmembers class * implements android.os.Parcelable {
    public static final ** CREATOR;
}

# Preserve annotated Javascript interface methods.
-keepclassmembers class * {
    @android.webkit.JavascriptInterface <methods>;
}

# The support libraries contains references to newer platform versions.
# Don't warn about those in case this app is linking against an older
# platform version. We know about them, and they are safe.
-dontnote android.support.**
-dontnote androidx.**
-dontwarn android.support.**
-dontwarn androidx.**

# This class is deprecated, but remains for backward compatibility.
-dontwarn android.util.FloatMath

# Understand the @Keep support annotation.
-keep class android.support.annotation.Keep
-keep class androidx.annotation.Keep

-keep @android.support.annotation.Keep class * {*;}
-keep @androidx.annotation.Keep class * {*;}

-keepclasseswithmembers class * {
    @android.support.annotation.Keep <methods>;
}

-keepclasseswithmembers class * {
    @androidx.annotation.Keep <methods>;
}

-keepclasseswithmembers class * {
    @android.support.annotation.Keep <fields>;
}

-keepclasseswithmembers class * {
    @androidx.annotation.Keep <fields>;
}

-keepclasseswithmembers class * {
    @android.support.annotation.Keep <init>(...);
}

-keepclasseswithmembers class * {
    @androidx.annotation.Keep <init>(...);
}

# These classes are duplicated between android.jar and org.apache.http.legacy.jar.
-dontnote org.apache.http.**
-dontnote android.net.http.**

# These classes are duplicated between android.jar and core-lambda-stubs.jar.
-dontnote java.lang.invoke.**

# End of content from /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/app/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-7.4.0
# The proguard configuration file for the following section is /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/app/proguard-rules.pro
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
#   http://developer.android.com/guide/developing/tools/proguard.html

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
#   public *;
#}

# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile

# 打印最终配置
-printconfiguration build/outputs/configuration.txt
# 不做优化
# -dontoptimize
# 代码混淆压缩比，在 0 ~ 7 之间，默认为 5，一般不做修改
-optimizationpasses 1
# 不使用大小写混合的类名，混淆后的类名为小写
-dontusemixedcaseclassnames
# 生成混淆映射文件
-verbose
# 混淆映射
-printmapping build/outputs/mapping.txt
# 未混淆的类和成员
-printseeds build/outputs/seeds.txt
# 列出从 apk 中删除的代码
-printusage build/outputs/unused.txt
# 保留 Annotation 不混淆
-keepattributes *Annotation*,InnerClasses
# 避免混淆泛型
-keepattributes Signature
# 抛出异常时保留代码行号
-keepattributes SourceFile,LineNumberTable
# 指定混淆时采用的算法，后面的参数是一个过滤器
# 这个过滤器是谷歌推荐的算法，一般不做更改
# -optimizations !code/simplification/cast,!field/*,!class/merging/*

# 混淆字典
-obfuscationdictionary ../build_system/proguard_dic.txt
-classobfuscationdictionary ../build_system/proguard_dic.txt
-packageobfuscationdictionary ../build_system/proguard_dic.txt

-keep public class androidx.lifecycle.LiveData { *; }
-keepclassmembers class androidx.lifecycle.LiveData$ObserverWrapper { *; }
-keep public class androidx.arch.core.internal.SafeIterableMap { *; }
-keep public class com.zjinnova.jni.Zbt { *; }

# Netty
-keepclasseswithmembers class io.netty.** { *; }
-keepnames class io.netty.** { *; }

# Timber
#-assumenosideeffects class timber.log.Timber* {
#    public static *** w(...);
#    public static *** v(...);
#    public static *** d(...);
#    public static *** i(...);
#    public static *** e(...);
#}

# ProtoBuf
-keep class * extends com.google.protobuf.GeneratedMessageLite { *; }

-keepclasseswithmembers class android.os.SystemProperties { *; }

# See: https://github.com/google/gson/blob/master/examples/android-proguard-example/proguard.cfg
# Gson specific classes
-dontwarn sun.misc.**
#-keep class com.google.gson.stream.** { *; }

# Application classes that will be serialized/deserialized over Gson
-keep class com.google.gson.examples.android.model.** { <fields>; }

# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
-keep class * extends com.google.gson.TypeAdapter
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer

# Prevent R8 from leaving Data object members always null
-keepclassmembers,allowobfuscation class * {
  @com.google.gson.annotations.SerializedName <fields>;
}
# Bugly
-dontwarn com.tencent.bugly.**
-keep public class com.tencent.bugly.**{*;}

# XXPermissions
-keep class com.hjq.permissions.** {*;}
-keep class com.zjinnova.android.zlink.core.entity.AecConfigBean { *; }

# 文件说明
-keep class com.zjinnova.android.zlink.core.entity.FileDescription { *; }
-keep class com.zjinnova.android.zlink.core.entity.UploadDataRecordBean { *; }
-keep class com.zjinnova.android.zlink.core.entity.UploadRecordResponseBean { *; }
-keep class com.zjinnova.android.zlink.core.entity.PlatformAttribute { *; }

# End of content from /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/app/proguard-rules.pro
# The proguard configuration file for the following section is /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/app/build/intermediates/aapt_proguard_file/zhangxunRelease/aapt_rules.txt
-keep class androidx.core.content.FileProvider { <init>(); }
-keep class androidx.profileinstaller.ProfileInstallReceiver { <init>(); }
-keep class androidx.startup.InitializationProvider { <init>(); }
-keep class com.google.android.gms.common.api.GoogleApiActivity { <init>(); }
-keep class com.google.android.gms.measurement.AppMeasurementJobService { <init>(); }
-keep class com.google.android.gms.measurement.AppMeasurementReceiver { <init>(); }
-keep class com.google.android.gms.measurement.AppMeasurementService { <init>(); }
-keep class com.google.firebase.components.ComponentDiscoveryService { <init>(); }
-keep class com.google.firebase.iid.FirebaseInstanceIdReceiver { <init>(); }
-keep class com.google.firebase.provider.FirebaseInitProvider { <init>(); }
-keep class com.tencent.mid.api.MidProvider { <init>(); }
-keep class com.zjinnova.android.zlink.ZlinkApp { <init>(); }
-keep class com.zjinnova.android.zlink.features.broadcast.MediaButtonReceiver { <init>(); }
-keep class com.zjinnova.android.zlink.features.broadcast.PhoneStateReceiver { <init>(); }
-keep class com.zjinnova.android.zlink.features.dlna.DlnaActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.init.InitContentProvider { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.ActivationActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.AutoActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.AutoUnavailableActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.CarLifeActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.CarPlayActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.CarPlayAutoActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.CarPlayUnavailableActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.CheckPermissionsAndActivationActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.DlnaActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.HiCarActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.HiCarUnavailableActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.launcher.MirrorActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.main.HelpActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.main.MainActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.service.DaemonService { <init>(); }
-keep class com.zjinnova.android.zlink.features.service.SecondaryScreenService { <init>(); }
-keep class com.zjinnova.android.zlink.features.service.StartupBroadcastReceiver { <init>(); }
-keep class com.zjinnova.android.zlink.features.settings.SettingsActivity { <init>(); }
-keep class com.zjinnova.android.zlink.features.upgrade.InstallUpgradeBroadcastReceiver { <init>(); }
-keep class com.zjinnova.android.zlink.features.wireless.BluetoothHCTService { <init>(); }
-keep class com.zjinnova.android.zlink.features.wireless.BluetoothService { <init>(); }
-keep class com.zjinnova.android.zlink.features.wireless.ZBTService { <init>(); }
-keep class android.opengl.GLSurfaceView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class android.widget.Space { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.app.AlertController$RecycleListView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.view.menu.ActionMenuItemView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.view.menu.ExpandedMenuView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.view.menu.ListMenuItemView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ActionBarContainer { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ActionBarContextView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ActionBarOverlayLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ActionMenuView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ActivityChooserView$InnerLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AlertDialogLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AppCompatButton { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AppCompatCheckBox { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AppCompatEditText { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AppCompatImageView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AppCompatSeekBar { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.AppCompatTextView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ButtonBarLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ContentFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.DialogTitle { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.FitWindowsFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.FitWindowsLinearLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.LinearLayoutCompat { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.SearchView$SearchAutoComplete { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.Toolbar { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.ViewStubCompat { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.cardview.widget.CardView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.constraintlayout.helper.widget.Flow { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.constraintlayout.widget.Barrier { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.constraintlayout.widget.ConstraintLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.constraintlayout.widget.Guideline { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.coordinatorlayout.widget.CoordinatorLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.core.widget.ContentLoadingProgressBar { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.core.widget.NestedScrollView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.fragment.app.FragmentContainerView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.recyclerview.widget.RecyclerView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.viewpager2.widget.ViewPager2 { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.airbnb.lottie.LottieAnimationView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.flexbox.FlexboxLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.appbar.MaterialToolbar { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.button.MaterialButton { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.button.MaterialButtonToggleGroup { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.chip.Chip { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.datepicker.MaterialCalendarGridView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.internal.BaselineLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.internal.CheckableImageButton { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.internal.ClippableRoundedCornerLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.internal.NavigationMenuItemView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.internal.NavigationMenuView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.internal.TouchObserverFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.snackbar.Snackbar$SnackbarLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.snackbar.SnackbarContentLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.textfield.TextInputEditText { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.textfield.TextInputLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.timepicker.ChipTextInputComboView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.timepicker.ClockFaceView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.timepicker.ClockHandView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.google.android.material.timepicker.TimePickerView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.zjinnova.android.zlink.core.widget.ExpandableSeekBar { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.zjinnova.android.zlink.core.widget.ExpandableSwitch { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.zjinnova.android.zlink.core.widget.ExpandableText { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.zjinnova.android.zlink.core.widget.ExpandableView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.zjinnova.android.zlink.features.settings.SettingsFragment { <init>(); }


# End of content from /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/app/build/intermediates/aapt_proguard_file/zhangxunRelease/aapt_rules.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/87f793f0bc76e5030ddb28983645e220/transformed/jetified-hud_cast_core-v1.38r/proguard.txt
# 打印最终配置
-printconfiguration build/outputs/configuration.txt
# 不做优化
# -dontoptimize
# 代码混淆压缩比，在 0 ~ 7 之间，默认为 5，一般不做修改
-optimizationpasses 1
# 不使用大小写混合的类名，混淆后的类名为小写
-dontusemixedcaseclassnames
# 生成混淆映射文件
-verbose
# 混淆映射
-printmapping build/outputs/mapping.txt
# 未混淆的类和成员
-printseeds build/outputs/seeds.txt
# 列出从 apk 中删除的代码
-printusage build/outputs/unused.txt
# 保留 Annotation 不混淆
-keepattributes *Annotation*,InnerClasses
# 避免混淆泛型
-keepattributes Signature
# 抛出异常时保留代码行号
-keepattributes SourceFile,LineNumberTable
# 指定混淆时采用的算法，后面的参数是一个过滤器
# 这个过滤器是谷歌推荐的算法，一般不做更改
# -optimizations !code/simplification/cast,!field/*,!class/merging/*
# 保留support下的所有类及其内部类
-keep class android.support.** { *; }
-keep interface android.support.** { *; }
-dontwarn android.support.**
# 保留本地native方法不被混淆
-keepclasseswithmembernames class * {
    native <methods>;
}
-keep public class com.zjinnova.lib.cast.core.api.CastApi { *; }
# End of content from /root/.gradle/caches/transforms-3/87f793f0bc76e5030ddb28983645e220/transformed/jetified-hud_cast_core-v1.38r/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/672fb73ae777a69792b40dee199dea8e/transformed/databinding-runtime-7.4.0/proguard.txt
-dontwarn androidx.databinding.ViewDataBinding
-dontwarn androidx.databinding.ViewDataBinding$LiveDataListener

# instant apps load these via reflection so we need to keep them.
-keep public class * extends androidx.databinding.DataBinderMapper


# End of content from /root/.gradle/caches/transforms-3/672fb73ae777a69792b40dee199dea8e/transformed/databinding-runtime-7.4.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/1bae164ccc854f36b532ddf93b10759e/transformed/navigation-ui-2.3.0/proguard.txt
# Copyright (C) 2019 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.

# setProgress is called via an ObjectAnimator in AbstractAppBarOnDestinationChangedListener
-keepclassmembers class androidx.appcompat.graphics.drawable.DrawerArrowDrawable {
    void setProgress(float);
}

# End of content from /root/.gradle/caches/transforms-3/1bae164ccc854f36b532ddf93b10759e/transformed/navigation-ui-2.3.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/2a015aea8fb6fe650d44e7dee4c4b953/transformed/material-1.8.0/proguard.txt
# 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.

# CoordinatorLayout resolves the behaviors of its child components with reflection.
-keep public class * extends androidx.coordinatorlayout.widget.CoordinatorLayout$Behavior {
    public <init>(android.content.Context, android.util.AttributeSet);
    public <init>();
}

# Make sure we keep annotations for CoordinatorLayout's DefaultBehavior
-keepattributes RuntimeVisible*Annotation*

# 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.

# AppCompatViewInflater reads the viewInflaterClass theme attribute which then
# reflectively instantiates MaterialComponentsViewInflater using the no-argument
# constructor. We only need to keep this constructor and the class name if
# AppCompatViewInflater is also being kept.
-if class androidx.appcompat.app.AppCompatViewInflater
-keep class com.google.android.material.theme.MaterialComponentsViewInflater {
    <init>();
}


# End of content from /root/.gradle/caches/transforms-3/2a015aea8fb6fe650d44e7dee4c4b953/transformed/material-1.8.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/5ebdc1e1fcae2a953959530b640926c6/transformed/appcompat-1.6.1/proguard.txt
# 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.

# aapt is not able to read app::actionViewClass and app:actionProviderClass to produce proguard
# keep rules. Add a commonly used SearchView to the keep list until b/109831488 is resolved.
-keep class androidx.appcompat.widget.SearchView { <init>(...); }

# Never inline methods, but allow shrinking and obfuscation.
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.appcompat.widget.AppCompatTextViewAutoSizeHelper$Impl* {
  <methods>;
}

# End of content from /root/.gradle/caches/transforms-3/5ebdc1e1fcae2a953959530b640926c6/transformed/appcompat-1.6.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/d3b75e4e596d0d9d37b7e926f4047093/transformed/jetified-crashreport-4.0.4/proguard.txt

# End of content from /root/.gradle/caches/transforms-3/d3b75e4e596d0d9d37b7e926f4047093/transformed/jetified-crashreport-4.0.4/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/fbe9702a816a4d9a6beaa4c373ed1d2e/transformed/jetified-flexbox-3.0.0/proguard.txt
#
# Copyright 2016 Google Inc. All rights reserved.
#
# 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.
#

# The FlexboxLayoutManager may be set from a layout xml, in that situation the RecyclerView
# tries to instantiate the layout manager using reflection.
# This is to prevent the layout manager from being obfuscated.
-keepnames public class com.google.android.flexbox.FlexboxLayoutManager
# End of content from /root/.gradle/caches/transforms-3/fbe9702a816a4d9a6beaa4c373ed1d2e/transformed/jetified-flexbox-3.0.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/ddfddc752979efed873f3a3dc1ffdf7e/transformed/jetified-glide-4.11.0/proguard.txt
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep class * extends com.bumptech.glide.module.AppGlideModule {
 <init>(...);
}
-keep public enum com.bumptech.glide.load.ImageHeaderParser$** {
  **[] $VALUES;
  public *;
}

# Uncomment for DexGuard only
#-keepresourcexmlelements manifest/application/meta-data@value=GlideModule

# End of content from /root/.gradle/caches/transforms-3/ddfddc752979efed873f3a3dc1ffdf7e/transformed/jetified-glide-4.11.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/974afa0223d185549a6bacc1011349f6/transformed/jetified-hiddenapibypass-2.0/proguard.txt
-dontwarn dalvik.system.VMRuntime
-keepclassmembers class org.lsposed.hiddenapibypass.Helper$* { *; }

# End of content from /root/.gradle/caches/transforms-3/974afa0223d185549a6bacc1011349f6/transformed/jetified-hiddenapibypass-2.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/d377e52f909354ec4f69c2402832f220/transformed/jetified-play-services-measurement-17.4.1/proguard.txt
# We keep all fields for every generated proto file as the runtime uses
# reflection over them that ProGuard cannot detect. Without this keep
# rule, fields may be removed that would cause runtime failures.
-keepclassmembers class * extends com.google.android.gms.internal.measurement.zzfi {
  <fields>;
}

# End of content from /root/.gradle/caches/transforms-3/d377e52f909354ec4f69c2402832f220/transformed/jetified-play-services-measurement-17.4.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/b944deeaa0a3115303d09a965d5b39e6/transformed/jetified-play-services-measurement-api-17.4.1/proguard.txt
# We keep all fields for every generated proto file as the runtime uses
# reflection over them that ProGuard cannot detect. Without this keep
# rule, fields may be removed that would cause runtime failures.
-keepclassmembers class * extends com.google.android.gms.internal.measurement.zzfi {
  <fields>;
}

# End of content from /root/.gradle/caches/transforms-3/b944deeaa0a3115303d09a965d5b39e6/transformed/jetified-play-services-measurement-api-17.4.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/abdde76049340a1c77c52aa6d06399e4/transformed/jetified-play-services-measurement-sdk-17.4.1/proguard.txt
# We keep all fields for every generated proto file as the runtime uses
# reflection over them that ProGuard cannot detect. Without this keep
# rule, fields may be removed that would cause runtime failures.
-keepclassmembers class * extends com.google.android.gms.internal.measurement.zzfi {
  <fields>;
}

# End of content from /root/.gradle/caches/transforms-3/abdde76049340a1c77c52aa6d06399e4/transformed/jetified-play-services-measurement-sdk-17.4.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/fda3a59e494f9f71a8037197cb152fd9/transformed/jetified-play-services-measurement-impl-17.4.1/proguard.txt
# We keep all fields for every generated proto file as the runtime uses
# reflection over them that ProGuard cannot detect. Without this keep
# rule, fields may be removed that would cause runtime failures.
-keepclassmembers class * extends com.google.android.gms.internal.measurement.zzfi {
  <fields>;
}

# End of content from /root/.gradle/caches/transforms-3/fda3a59e494f9f71a8037197cb152fd9/transformed/jetified-play-services-measurement-impl-17.4.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/438dd6bc97dce24cb05162e462d74af3/transformed/jetified-play-services-measurement-sdk-api-17.4.1/proguard.txt
# We keep all fields for every generated proto file as the runtime uses
# reflection over them that ProGuard cannot detect. Without this keep
# rule, fields may be removed that would cause runtime failures.
-keepclassmembers class * extends com.google.android.gms.internal.measurement.zzfi {
  <fields>;
}

# End of content from /root/.gradle/caches/transforms-3/438dd6bc97dce24cb05162e462d74af3/transformed/jetified-play-services-measurement-sdk-api-17.4.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/7c75ddacf56e5543cbe0bdbccfdac056/transformed/jetified-play-services-measurement-base-17.4.1/proguard.txt
# We keep all fields for every generated proto file as the runtime uses
# reflection over them that ProGuard cannot detect. Without this keep
# rule, fields may be removed that would cause runtime failures.
-keepclassmembers class * extends com.google.android.gms.internal.measurement.zzfi {
  <fields>;
}

# End of content from /root/.gradle/caches/transforms-3/7c75ddacf56e5543cbe0bdbccfdac056/transformed/jetified-play-services-measurement-base-17.4.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/73c5bfde2be27a7802912f8569dfb4a5/transformed/jetified-firebase-common-19.3.0/proguard.txt
-dontwarn com.google.firebase.platforminfo.KotlinDetector

# End of content from /root/.gradle/caches/transforms-3/73c5bfde2be27a7802912f8569dfb4a5/transformed/jetified-firebase-common-19.3.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/c760382c397fff649f1e78aa218afc81/transformed/jetified-play-services-base-17.0.0/proguard.txt
# b/35135904 Ensure that proguard will not strip the mResultGuardian.
-keepclassmembers class com.google.android.gms.common.api.internal.BasePendingResult {
  com.google.android.gms.common.api.internal.BasePendingResult$ReleasableResultGuardian mResultGuardian;
}

# End of content from /root/.gradle/caches/transforms-3/c760382c397fff649f1e78aa218afc81/transformed/jetified-play-services-base-17.0.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/581494b7b29a139433a05e60873891c3/transformed/jetified-play-services-basement-17.0.0/proguard.txt
# Proguard flags for consumers of the Google Play services SDK
# https://developers.google.com/android/guides/setup#add_google_play_services_to_your_project

# Keep SafeParcelable NULL value, needed for reflection by DowngradeableSafeParcel
-keepclassmembers public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
    public static final *** NULL;
}

# Needed for Parcelable/SafeParcelable classes & their creators to not get renamed, as they are
# found via reflection.
-keep class com.google.android.gms.common.internal.ReflectedParcelable
-keepnames class * implements com.google.android.gms.common.internal.ReflectedParcelable
-keepclassmembers class * implements android.os.Parcelable {
  public static final *** CREATOR;
}

# Keep the classes/members we need for client functionality.
-keep @interface androidx.annotation.Keep
-keep @androidx.annotation.Keep class *
-keepclasseswithmembers class * {
  @androidx.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
  @androidx.annotation.Keep <methods>;
}

# Keep the names of classes/members we need for client functionality.
-keep @interface com.google.android.gms.common.annotation.KeepName
-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
  @com.google.android.gms.common.annotation.KeepName *;
}

# Keep Dynamite API entry points
-keep @interface com.google.android.gms.common.util.DynamiteApi
-keep @com.google.android.gms.common.util.DynamiteApi public class * {
  public <fields>;
  public <methods>;
}

# Needed when building against pre-Marshmallow SDK.
-dontwarn android.security.NetworkSecurityPolicy

# Needed when building against Marshmallow SDK.
-dontwarn android.app.Notification

# Protobuf has references not on the Android boot classpath
-dontwarn sun.misc.Unsafe
-dontwarn libcore.io.Memory

# Internal Google annotations for generating Proguard keep rules.
-dontwarn com.google.android.apps.common.proguard.UsedBy*

# Annotations referenced by the SDK but whose definitions are contained in
# non-required dependencies.
-dontwarn javax.annotation.**
-dontwarn org.checkerframework.**

# End of content from /root/.gradle/caches/transforms-3/581494b7b29a139433a05e60873891c3/transformed/jetified-play-services-basement-17.0.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/e5d61562441e57823e0b535246d212bc/transformed/fragment-1.6.2/proguard.txt
# Copyright (C) 2020 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.

# The default FragmentFactory creates Fragment instances using reflection
-if public class ** extends androidx.fragment.app.Fragment
-keepclasseswithmembers,allowobfuscation public class <1> {
    public <init>();
}

# FragmentTransition will reflectively lookup:
# androidx.transition.FragmentTransitionSupport
# We should ensure that we keep the constructor if the code using this is alive
-if class androidx.fragment.app.FragmentTransition {
   private static androidx.fragment.app.FragmentTransitionImpl resolveSupportImpl();
}
-keep class androidx.transition.FragmentTransitionSupport {
    public <init>();
}

# End of content from /root/.gradle/caches/transforms-3/e5d61562441e57823e0b535246d212bc/transformed/fragment-1.6.2/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/b1bd689485015c88d03090373aa2671b/transformed/transition-1.3.0/proguard.txt
# 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.

# Keep a field in transition that is used to keep a reference to weakly-referenced object
-keepclassmembers class androidx.transition.ChangeBounds$* extends android.animation.AnimatorListenerAdapter {
  androidx.transition.ChangeBounds$ViewBounds mViewBounds;
}

# End of content from /root/.gradle/caches/transforms-3/b1bd689485015c88d03090373aa2671b/transformed/transition-1.3.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/1d0ad9fc0299ddb9a8470ee387c5f500/transformed/media-1.0.0/proguard.txt
# 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.

# Prevent Parcelable objects from being removed or renamed.
-keep class android.support.v4.media.** implements android.os.Parcelable {
    public static final android.os.Parcelable$Creator *;
}

# Prevent Parcelable objects from being removed or renamed.
-keep class androidx.media.** implements android.os.Parcelable {
    public static final android.os.Parcelable$Creator *;
}
# End of content from /root/.gradle/caches/transforms-3/1d0ad9fc0299ddb9a8470ee387c5f500/transformed/media-1.0.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/1b68c8c0f097427cdaecdde7d4782918/transformed/coordinatorlayout-1.1.0/proguard.txt
# 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.

# CoordinatorLayout resolves the behaviors of its child components with reflection.
-keep public class * extends androidx.coordinatorlayout.widget.CoordinatorLayout$Behavior {
    public <init>(android.content.Context, android.util.AttributeSet);
    public <init>();
}

# Make sure we keep annotations for CoordinatorLayout's DefaultBehavior and ViewPager's DecorView
-keepattributes *Annotation*

# End of content from /root/.gradle/caches/transforms-3/1b68c8c0f097427cdaecdde7d4782918/transformed/coordinatorlayout-1.1.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/3533660817cfe7bc1b9c090c0a7cda6d/transformed/recyclerview-1.1.0/proguard.txt
# 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.

# When layoutManager xml attribute is used, RecyclerView inflates
#LayoutManagers' constructors using reflection.
-keep public class * extends androidx.recyclerview.widget.RecyclerView$LayoutManager {
    public <init>(android.content.Context, android.util.AttributeSet, int, int);
    public <init>();
}

-keepclassmembers class androidx.recyclerview.widget.RecyclerView {
    public void suppressLayout(boolean);
    public boolean isLayoutSuppressed();
}
# End of content from /root/.gradle/caches/transforms-3/3533660817cfe7bc1b9c090c0a7cda6d/transformed/recyclerview-1.1.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/430670596765c349fc1bd383b26836ee/transformed/vectordrawable-animated-1.1.0/proguard.txt
# 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.

# keep setters in VectorDrawables so that animations can still work.
-keepclassmembers class androidx.vectordrawable.graphics.drawable.VectorDrawableCompat$* {
   void set*(***);
   *** get*();
}

# End of content from /root/.gradle/caches/transforms-3/430670596765c349fc1bd383b26836ee/transformed/vectordrawable-animated-1.1.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/413d85137a9c60904222dd14e7eb7347/transformed/navigation-common-ktx-2.3.0/proguard.txt
# Copyright (C) 2019 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.

# NavArgsLazy creates NavArgs instances using reflection
-if public class ** implements androidx.navigation.NavArgs
-keepclassmembers public class <1> {
    ** fromBundle(android.os.Bundle);
}

# End of content from /root/.gradle/caches/transforms-3/413d85137a9c60904222dd14e7eb7347/transformed/navigation-common-ktx-2.3.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/3215b4c1bcebcc55cdf587140b7533c1/transformed/jetified-savedstate-1.2.1/proguard.txt
# Copyright (C) 2019 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.

-keepclassmembers,allowobfuscation class * implements androidx.savedstate.SavedStateRegistry$AutoRecreated {
    <init>();
}

# End of content from /root/.gradle/caches/transforms-3/3215b4c1bcebcc55cdf587140b7533c1/transformed/jetified-savedstate-1.2.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/d8387c5117050e4e5bf0eec4a9383618/transformed/jetified-lifecycle-viewmodel-savedstate-2.6.2/proguard.txt
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
    <init>(androidx.lifecycle.SavedStateHandle);
}

-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel {
    <init>(android.app.Application,androidx.lifecycle.SavedStateHandle);
}

# End of content from /root/.gradle/caches/transforms-3/d8387c5117050e4e5bf0eec4a9383618/transformed/jetified-lifecycle-viewmodel-savedstate-2.6.2/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/5382b9c63295521c882d17914039c198/transformed/core-1.9.0/proguard.txt
# Never inline methods, but allow shrinking and obfuscation.
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.ViewCompat$Api* {
  <methods>;
}
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.WindowInsetsCompat$*Impl* {
  <methods>;
}
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.app.NotificationCompat$*$Api*Impl {
  <methods>;
}
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.os.UserHandleCompat$Api*Impl {
  <methods>;
}
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.widget.EdgeEffectCompat$Api*Impl {
  <methods>;
}

# End of content from /root/.gradle/caches/transforms-3/5382b9c63295521c882d17914039c198/transformed/core-1.9.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/3faed050eb1617824ceeb0efea6d3099/transformed/lifecycle-runtime-2.6.2/proguard.txt
-keepattributes AnnotationDefault,
                RuntimeVisibleAnnotations,
                RuntimeVisibleParameterAnnotations,
                RuntimeVisibleTypeAnnotations

-keepclassmembers enum androidx.lifecycle.Lifecycle$Event {
    <fields>;
}

-keep !interface * implements androidx.lifecycle.LifecycleObserver {
}

-keep class * implements androidx.lifecycle.GeneratedAdapter {
    <init>(...);
}

-keepclassmembers class ** {
    @androidx.lifecycle.OnLifecycleEvent *;
}

# this rule is need to work properly when app is compiled with api 28, see b/142778206
# Also this rule prevents registerIn from being inlined.
-keepclassmembers class androidx.lifecycle.ReportFragment$LifecycleCallbacks { *; }
# End of content from /root/.gradle/caches/transforms-3/3faed050eb1617824ceeb0efea6d3099/transformed/lifecycle-runtime-2.6.2/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/7fb7affc3bda7dd3db2d879ce7d9a6c6/transformed/jetified-lifecycle-process-2.6.2/proguard.txt
# this rule is need to work properly when app is compiled with api 28, see b/142778206
-keepclassmembers class * extends androidx.lifecycle.EmptyActivityLifecycleCallbacks { *; }
# End of content from /root/.gradle/caches/transforms-3/7fb7affc3bda7dd3db2d879ce7d9a6c6/transformed/jetified-lifecycle-process-2.6.2/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/bf63c25046c489befbb14df5d2b2d833/transformed/lifecycle-viewmodel-2.6.2/proguard.txt
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
    <init>();
}

-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel {
    <init>(android.app.Application);
}

# End of content from /root/.gradle/caches/transforms-3/bf63c25046c489befbb14df5d2b2d833/transformed/lifecycle-viewmodel-2.6.2/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/6cf1ca224959e9be9c15d34572b98a06/transformed/jetified-mmkv-static-1.2.7/proguard.txt
# Keep all native methods, their classes and any classes in their descriptors
-keepclasseswithmembers,includedescriptorclasses class com.tencent.mmkv.** {
    native <methods>;
    long nativeHandle;
    private static *** onMMKVCRCCheckFail(***);
    private static *** onMMKVFileLengthError(***);
    private static *** mmkvLogImp(...);
    private static *** onContentChangedByOuterProcess(***);
}

# End of content from /root/.gradle/caches/transforms-3/6cf1ca224959e9be9c15d34572b98a06/transformed/jetified-mmkv-static-1.2.7/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/f32688fd97e64b659439be3935766085/transformed/rules/lib/META-INF/com.android.tools/r8/coroutines.pro
# When editing this file, update the following files as well:
# - META-INF/proguard/coroutines.pro
# - META-INF/com.android.tools/proguard/coroutines.pro

# Most of volatile fields are updated with AFU and should not be mangled
-keepclassmembers class kotlinx.coroutines.** {
    volatile <fields>;
}

# Same story for the standard library's SafeContinuation that also uses AtomicReferenceFieldUpdater
-keepclassmembers class kotlin.coroutines.SafeContinuation {
    volatile <fields>;
}

# These classes are only required by kotlinx.coroutines.debug.AgentPremain, which is only loaded when
# kotlinx-coroutines-core is used as a Java agent, so these are not needed in contexts where ProGuard is used.
-dontwarn java.lang.instrument.ClassFileTransformer
-dontwarn sun.misc.SignalHandler
-dontwarn java.lang.instrument.Instrumentation
-dontwarn sun.misc.Signal

# Only used in `kotlinx.coroutines.internal.ExceptionsConstructor`.
# The case when it is not available is hidden in a `try`-`catch`, as well as a check for Android.
-dontwarn java.lang.ClassValue

# An annotation used for build tooling, won't be directly accessed.
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
# End of content from /root/.gradle/caches/transforms-3/f32688fd97e64b659439be3935766085/transformed/rules/lib/META-INF/com.android.tools/r8/coroutines.pro
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/30870a4e0644cbbf956cb2029a97c0ce/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro
# Allow R8 to optimize away the FastServiceLoader.
# Together with ServiceLoader optimization in R8
# this results in direct instantiation when loading Dispatchers.Main
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatcherLoader {
    boolean FAST_SERVICE_LOADER_ENABLED return false;
}

-assumenosideeffects class kotlinx.coroutines.internal.FastServiceLoaderKt {
    boolean ANDROID_DETECTED return true;
}

# Disable support for "Missing Main Dispatcher", since we always have Android main dispatcher
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatchersKt {
    boolean SUPPORT_MISSING return false;
}

# Statically turn off all debugging facilities and assertions
-assumenosideeffects class kotlinx.coroutines.DebugKt {
    boolean getASSERTIONS_ENABLED() return false;
    boolean getDEBUG() return false;
    boolean getRECOVER_STACK_TRACES() return false;
}

# End of content from /root/.gradle/caches/transforms-3/30870a4e0644cbbf956cb2029a97c0ce/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/e0ab59fcc998785e0e350ab6561ad244/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/kotlin-reflect.pro
# When editing this file, update the following files as well:
# - META-INF/com.android.tools/proguard/kotlin-reflect.pro
# - META-INF/com.android.tools/r8-upto-1.6.0/kotlin-reflect.pro
# - META-INF/proguard/kotlin-reflect.pro
# Keep Metadata annotations so they can be parsed at runtime.
-keep class kotlin.Metadata { *; }

# Keep generic signatures and annotations at runtime.
# R8 requires InnerClasses and EnclosingMethod if you keepattributes Signature.
-keepattributes InnerClasses,Signature,RuntimeVisible*Annotations,EnclosingMethod

# Don't note on API calls from different JVM versions as they're gated properly at runtime.
-dontnote kotlin.internal.PlatformImplementationsKt

# Don't note on internal APIs, as there is some class relocating that shrinkers may unnecessarily find suspicious.
-dontwarn kotlin.reflect.jvm.internal.**

# Statically guarded by try-catch block and not used on Android, see CacheByClass
-dontwarn java.lang.ClassValue

# Do not even execute try-catch block for ClassValue
-assumenosideeffects class kotlin.reflect.jvm.internal.CacheByClassKt {
    boolean useClassValue return false;
}

# End of content from /root/.gradle/caches/transforms-3/e0ab59fcc998785e0e350ab6561ad244/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/kotlin-reflect.pro
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/8a99c191d48e26d52d1b72d73d7b72e7/transformed/rules/lib/META-INF/proguard/retrofit2.pro
# Retrofit does reflection on generic parameters. InnerClasses is required to use Signature and
# EnclosingMethod is required to use InnerClasses.
-keepattributes Signature, InnerClasses, EnclosingMethod

# Retrofit does reflection on method and parameter annotations.
-keepattributes RuntimeVisibleAnnotations, RuntimeVisibleParameterAnnotations

# Retain service method parameters when optimizing.
-keepclassmembers,allowshrinking,allowobfuscation interface * {
    @retrofit2.http.* <methods>;
}

# Ignore annotation used for build tooling.
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement

# Ignore JSR 305 annotations for embedding nullability information.
-dontwarn javax.annotation.**

# Guarded by a NoClassDefFoundError try/catch and only used when on the classpath.
-dontwarn kotlin.Unit

# Top-level functions that can only be used by Kotlin.
-dontwarn retrofit2.KotlinExtensions
-dontwarn retrofit2.KotlinExtensions$*

# With R8 full mode, it sees no subtypes of Retrofit interfaces since they are created with a Proxy
# and replaces all potential values with null. Explicitly keeping the interfaces prevents this.
-if interface * { @retrofit2.http.* <methods>; }
-keep,allowobfuscation interface <1>

# End of content from /root/.gradle/caches/transforms-3/8a99c191d48e26d52d1b72d73d7b72e7/transformed/rules/lib/META-INF/proguard/retrofit2.pro
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/542e5c7fa6b361adce545dea1155254e/transformed/rules/lib/META-INF/proguard/okhttp3.pro
# JSR 305 annotations are for embedding nullability information.
-dontwarn javax.annotation.**

# A resource is loaded with a relative path so the package of this class must be preserved.
-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase

# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java.
-dontwarn org.codehaus.mojo.animal_sniffer.*

# OkHttp platform used only on JVM and when Conscrypt dependency is available.
-dontwarn okhttp3.internal.platform.ConscryptPlatform

# End of content from /root/.gradle/caches/transforms-3/542e5c7fa6b361adce545dea1155254e/transformed/rules/lib/META-INF/proguard/okhttp3.pro
# The proguard configuration file for the following section is /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/proto/build/intermediates/consumer_proguard_dir/release/lib0/proguard.txt
-keep class * extends com.google.protobuf.GeneratedMessageLite { *; }
# End of content from /root/.jenkins/workspace/Zlink6GitlabCompileLibs/ZlinkAppLite/proto/build/intermediates/consumer_proguard_dir/release/lib0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/9e3e9eeb4c396b5aab8cdaec4b625553/transformed/rules/lib/META-INF/proguard/okio.pro
# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java.
-dontwarn org.codehaus.mojo.animal_sniffer.*

# End of content from /root/.gradle/caches/transforms-3/9e3e9eeb4c396b5aab8cdaec4b625553/transformed/rules/lib/META-INF/proguard/okio.pro
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/ced1b851300c3cb10e87acd6e5366533/transformed/jetified-timber-4.7.1/proguard.txt
-dontwarn org.jetbrains.annotations.**

# End of content from /root/.gradle/caches/transforms-3/ced1b851300c3cb10e87acd6e5366533/transformed/jetified-timber-4.7.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/d6dc1e1c30a0f9e81eb2ac826974dee9/transformed/jetified-firebase-components-16.0.0/proguard.txt
-dontwarn com.google.firebase.components.Component$Instantiation
-dontwarn com.google.firebase.components.Component$ComponentType

-keep class * implements com.google.firebase.components.ComponentRegistrar

# End of content from /root/.gradle/caches/transforms-3/d6dc1e1c30a0f9e81eb2ac826974dee9/transformed/jetified-firebase-components-16.0.0/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/2c753d596867c332f4bf60a0a637e287/transformed/versionedparcelable-1.1.1/proguard.txt
-keep class * implements androidx.versionedparcelable.VersionedParcelable
-keep public class android.support.**Parcelizer { *; }
-keep public class androidx.**Parcelizer { *; }
-keep public class androidx.versionedparcelable.ParcelImpl

# End of content from /root/.gradle/caches/transforms-3/2c753d596867c332f4bf60a0a637e287/transformed/versionedparcelable-1.1.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/08a12dc43e7517d939685e1e8108b5d8/transformed/jetified-startup-runtime-1.1.1/proguard.txt
# It's important that we preserve initializer names, given they are used in the AndroidManifest.xml.
-keepnames class * extends androidx.startup.Initializer

# These Proguard rules ensures that ComponentInitializers are are neither shrunk nor obfuscated,
# and are a part of the primary dex file. This is because they are discovered and instantiated
# during application startup.
-keep class * extends androidx.startup.Initializer {
    # Keep the public no-argument constructor while allowing other methods to be optimized.
    <init>();
}

-assumenosideeffects class androidx.startup.StartupLogger { public static <methods>; }

# End of content from /root/.gradle/caches/transforms-3/08a12dc43e7517d939685e1e8108b5d8/transformed/jetified-startup-runtime-1.1.1/proguard.txt
# The proguard configuration file for the following section is /root/.gradle/caches/transforms-3/2d3af04f2c1da05fcdd95e16cd958338/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro
-keep,allowobfuscation @interface androidx.annotation.Keep
-keep @androidx.annotation.Keep class * {*;}

-keepclasseswithmembers class * {
    @androidx.annotation.Keep <methods>;
}

-keepclasseswithmembers class * {
    @androidx.annotation.Keep <fields>;
}

-keepclasseswithmembers class * {
    @androidx.annotation.Keep <init>(...);
}

-keepclassmembers,allowobfuscation class * {
  @androidx.annotation.DoNotInline <methods>;
}

# End of content from /root/.gradle/caches/transforms-3/2d3af04f2c1da05fcdd95e16cd958338/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro
# The proguard configuration file for the following section is <unknown>
-ignorewarnings
# End of content from <unknown>