# The proguard configuration file for the following section is /builds/rd-sw1/rd-sw-t6/edgesportsapp/app/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt
-keep class androidx.core.app.CoreComponentFactory { <init>(); }
-keep class androidx.profileinstaller.ProfileInstallReceiver { <init>(); }
-keep class androidx.room.MultiInstanceInvalidationService { <init>(); }
-keep class androidx.startup.InitializationProvider { <init>(); }
-keep class androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryChargingProxy { <init>(); }
-keep class androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryNotLowProxy { <init>(); }
-keep class androidx.work.impl.background.systemalarm.ConstraintProxy$NetworkStateProxy { <init>(); }
-keep class androidx.work.impl.background.systemalarm.ConstraintProxy$StorageNotLowProxy { <init>(); }
-keep class androidx.work.impl.background.systemalarm.ConstraintProxyUpdateReceiver { <init>(); }
-keep class androidx.work.impl.background.systemalarm.RescheduleReceiver { <init>(); }
-keep class androidx.work.impl.background.systemalarm.SystemAlarmService { <init>(); }
-keep class androidx.work.impl.background.systemjob.SystemJobService { <init>(); }
-keep class androidx.work.impl.diagnostics.DiagnosticsReceiver { <init>(); }
-keep class androidx.work.impl.foreground.SystemForegroundService { <init>(); }
-keep class androidx.work.impl.utils.ForceStopRunnable$BroadcastReceiver { <init>(); }
-keep class com.example.pproject.PProjectApplication { <init>(); }
-keep class com.example.pproject.activity.CloudEnvSelectActivity { <init>(); }
-keep class com.example.pproject.activity.CloudLoginActivity { <init>(); }
-keep class com.example.pproject.activity.HiddenActivity { <init>(); }
-keep class com.example.pproject.activity.HomePageActivity { <init>(); }
-keep class com.example.pproject.activity.NetworkConnectionActivity { <init>(); }
-keep class com.example.pproject.activity.SetIPCConfigActivity { <init>(); }
-keep class com.example.pproject.activity.SettingsActivity { <init>(); }
-keep class com.example.pproject.activity.TrainAreaSettingActivity { <init>(); }
-keep class com.example.pproject.activity.areaconfig.JumpAreaConfigActivity { <init>(); }
-keep class com.example.pproject.activity.areaconfig.OtherAreaConfigActivity { <init>(); }
-keep class com.example.pproject.activity.areaconfig.PullUpAreaConfigActivity { <init>(); }
-keep class com.example.pproject.activity.areaconfig.SitUpAreaConfigActivity { <init>(); }
-keep class com.example.pproject.activity.areaconfig.SkipAreaConfigActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonJumpActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonOtherActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonPullUpActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonSitUpActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonSkippingActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonTestJumpActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonTestPullUpActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonTestSitUpActivity { <init>(); }
-keep class com.example.pproject.activity.katoon.KatoonTestSkippingActivity { <init>(); }
-keep class com.example.pproject.activity.normal.NormalTestActivity { <init>(); }
-keep class com.example.pproject.receiver.OtaRebootPendingBootReceiver { <init>(); }
-keep class com.example.pproject.service.cloudcommunication.MqttService { <init>(); }
-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.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.SearchView$SearchAutoComplete { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.appcompat.widget.SwitchCompat { <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.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.example.pproject.view.JumpAnimationView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.example.pproject.view.NormalCardView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.example.pproject.view.OtherAnimationView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.example.pproject.view.PullUpAnimationView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.example.pproject.view.SitUpAnimationView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.example.pproject.view.SkipAnimationView { <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.card.MaterialCardView { <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.progressindicator.CircularProgressIndicator { <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.tabs.TabLayout { <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); }


# End of content from /builds/rd-sw1/rd-sw-t6/edgesportsapp/app/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt
# The proguard configuration file for the following section is /builds/rd-sw1/rd-sw-t6/edgesportsapp/app/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.11.1
# 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.
-allowaccessmodification

# 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 https://www.guardsquare.com/manual/configuration/examples#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 https://www.guardsquare.com/manual/configuration/examples#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.**

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

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

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

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

-keepclasseswithmembers class * {
    @android.support.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 /builds/rd-sw1/rd-sw-t6/edgesportsapp/app/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.11.1
# The proguard configuration file for the following section is /builds/rd-sw1/rd-sw-t6/edgesportsapp/app/proguard-rules.pro
## 保留 VLC 相关类，避免被 R8/ProGuard 移除，导致 native 代码找不到
-keep class org.videolan.libvlc.** { *; }
-keep class org.videolan.libvlc.interfaces.IMedia$Slave { *; }
# 添加混淆配置文件即可解决
-keep class com.google.gson.reflect.TypeToken { *; }
-keep class * extends com.google.gson.reflect.TypeToken
-keepattributes AnnotationDefault,RuntimeVisibleAnnotations

# 保留实体类，防止 Gson 反序列化失败
-keep class com.example.pproject.bean.** { *; }

# Eclipse Paho MQTT：仅保留 ProGuard 规则（最小改动），避免 Release 混淆/移除导致连接失败
-keep class org.eclipse.paho.client.mqttv3.** { *; }
-keep class org.eclipse.paho.android.service.** { *; }

# WorkManager：避免 Worker 被 R8 移除导致周期性任务不执行
-keep class * extends androidx.work.Worker { *; }
-keep class * extends androidx.work.CoroutineWorker { *; }
-keep class com.example.pproject.service.maintenance.CoreDumpCleanupWorker { *; }

# End of content from /builds/rd-sw1/rd-sw-t6/edgesportsapp/app/proguard-rules.pro
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/11a3305a5ceb2e3a90d012a57a92618b/transformed/material-1.10.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 /cache/gradle/caches/8.14.3/transforms/11a3305a5ceb2e3a90d012a57a92618b/transformed/material-1.10.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/ed2e5d4cd58464080452a1c4cef98ebd/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 /cache/gradle/caches/8.14.3/transforms/ed2e5d4cd58464080452a1c4cef98ebd/transformed/appcompat-1.6.1/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/50ad40e23c6fa80c86f9def8e9cebb2a/transformed/fragment-1.3.6/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>();
}

# End of content from /cache/gradle/caches/8.14.3/transforms/50ad40e23c6fa80c86f9def8e9cebb2a/transformed/fragment-1.3.6/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/aeb4ccbd0608b96752f36cac27020a78/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 /cache/gradle/caches/8.14.3/transforms/aeb4ccbd0608b96752f36cac27020a78/transformed/coordinatorlayout-1.1.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/75ae0cc2072f0c16c3e431aa0834fc9c/transformed/transition-1.2.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 /cache/gradle/caches/8.14.3/transforms/75ae0cc2072f0c16c3e431aa0834fc9c/transformed/transition-1.2.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/e3093c187588933aff405bf6e10ac3a1/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 /cache/gradle/caches/8.14.3/transforms/e3093c187588933aff405bf6e10ac3a1/transformed/vectordrawable-animated-1.1.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/bd7839d5574ef5756d95f89e6617cc87/transformed/work-runtime-2.9.0/proguard.txt
-keep class * extends androidx.work.Worker
-keep class * extends androidx.work.InputMerger
# Keep all constructors on ListenableWorker, Worker
-keep public class * extends androidx.work.ListenableWorker {
    public <init>(...);
}
# We need to keep WorkerParameters for the ListenableWorker constructor
-keep class androidx.work.WorkerParameters

# End of content from /cache/gradle/caches/8.14.3/transforms/bd7839d5574ef5756d95f89e6617cc87/transformed/work-runtime-2.9.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/8e9a16aea0b8cfc366341c38b4ea14b1/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 /cache/gradle/caches/8.14.3/transforms/8e9a16aea0b8cfc366341c38b4ea14b1/transformed/recyclerview-1.1.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/f93fadf14494531df1cd22d444761b39/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 /cache/gradle/caches/8.14.3/transforms/f93fadf14494531df1cd22d444761b39/transformed/media-1.0.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/963b79f6c7fec8eb17566ae1d55da77e/transformed/core-1.12.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 /cache/gradle/caches/8.14.3/transforms/963b79f6c7fec8eb17566ae1d55da77e/transformed/core-1.12.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/626790274720efbd848b736025ea8fcb/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 /cache/gradle/caches/8.14.3/transforms/626790274720efbd848b736025ea8fcb/transformed/jetified-savedstate-1.2.1/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/099f0b2a01abbda4e7c09b45f221f586/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 /cache/gradle/caches/8.14.3/transforms/099f0b2a01abbda4e7c09b45f221f586/transformed/jetified-lifecycle-process-2.6.2/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/02cbd5ae3c1b9eb28ff3764796fd49e9/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 /cache/gradle/caches/8.14.3/transforms/02cbd5ae3c1b9eb28ff3764796fd49e9/transformed/lifecycle-viewmodel-2.6.2/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/1b2960df5758d9a3fe982e3f9cd51837/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 /cache/gradle/caches/8.14.3/transforms/1b2960df5758d9a3fe982e3f9cd51837/transformed/lifecycle-runtime-2.6.2/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/88925077bf09c6e5964ce93f18d711f6/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 /cache/gradle/caches/8.14.3/transforms/88925077bf09c6e5964ce93f18d711f6/transformed/jetified-lifecycle-viewmodel-savedstate-2.6.2/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/a9c35c39ff5e22d5c2567c95dde47669/transformed/jetified-cos-android-5.9.51/proguard.txt
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in /Users/rickenwang/Library/Android/sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
#   http://developer.android.com/guide/developing/tools/proguard.html

# Add any project specific keep options here:

# 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
# cosxml
-dontwarn com.tencent.cos.**
-keep class com.tencent.cos.xml.**{*;}

#foundation
-keep class com.tencent.qcloud.core.**{*;}
-keep class com.tencent.qcloud.qcloudxml.core.**{*;}
-keep class com.tencent.qcloud.cos.**{*;}


# End of content from /cache/gradle/caches/8.14.3/transforms/a9c35c39ff5e22d5c2567c95dde47669/transformed/jetified-cos-android-5.9.51/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/e27d32b5df3dc12c152d2e504b971286/transformed/jetified-qcloud-cos-android-base-5.9.48/proguard.txt
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in /Users/rickenwang/Library/Android/sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
#   http://developer.android.com/guide/developing/tools/proguard.html

# Add any project specific keep options here:

# 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
# cosxml
-dontwarn com.tencent.cos.**
-keep class com.tencent.cos.xml.**{*;}

#foundation
-keep class com.tencent.qcloud.core.**{*;}
-keep class com.tencent.qcloud.cos.**{*;}



# End of content from /cache/gradle/caches/8.14.3/transforms/e27d32b5df3dc12c152d2e504b971286/transformed/jetified-qcloud-cos-android-base-5.9.48/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/12d1bebcff3bf4d4d70d32a15d421e6f/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 and other security providers are available.
-dontwarn okhttp3.internal.platform.**
-dontwarn org.conscrypt.**
-dontwarn org.bouncycastle.**
-dontwarn org.openjsse.**

# End of content from /cache/gradle/caches/8.14.3/transforms/12d1bebcff3bf4d4d70d32a15d421e6f/transformed/rules/lib/META-INF/proguard/okhttp3.pro
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/2ec7114581b9b112d9d832646f0c42ae/transformed/room-runtime-2.5.0/proguard.txt
-keep class * extends androidx.room.RoomDatabase
-dontwarn androidx.room.paging.**

# End of content from /cache/gradle/caches/8.14.3/transforms/2ec7114581b9b112d9d832646f0c42ae/transformed/room-runtime-2.5.0/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/7df68b953cdb0ca7a51fcc01adc88736/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 /cache/gradle/caches/8.14.3/transforms/7df68b953cdb0ca7a51fcc01adc88736/transformed/rules/lib/META-INF/com.android.tools/r8/coroutines.pro
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/099d6f29455d6f18b5406c2b286f411d/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 /cache/gradle/caches/8.14.3/transforms/099d6f29455d6f18b5406c2b286f411d/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/465f5d5c2be04e4f46e98c7d031b05c0/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 /cache/gradle/caches/8.14.3/transforms/465f5d5c2be04e4f46e98c7d031b05c0/transformed/rules/lib/META-INF/proguard/okio.pro
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/3e7b733d890d3e0976dc2a23a6700bdb/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 /cache/gradle/caches/8.14.3/transforms/3e7b733d890d3e0976dc2a23a6700bdb/transformed/versionedparcelable-1.1.1/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/f9725af651b9374e66a047adad58700a/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 /cache/gradle/caches/8.14.3/transforms/f9725af651b9374e66a047adad58700a/transformed/jetified-startup-runtime-1.1.1/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/7216e62c493024abc2863976cfbc706e/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 /cache/gradle/caches/8.14.3/transforms/7216e62c493024abc2863976cfbc706e/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/94df38dd6391055efa4517ba128cb42d/transformed/jetified-qcloud-track-1.0.5/proguard.txt
-keep class net.jpountz.lz4.** { *; }

# beacon
-keep class com.tencent.beacon.** { *;}

# R8
-dontwarn com.tencent.beacon.event.open.BeaconConfig$Builder
-dontwarn com.tencent.beacon.event.open.BeaconConfig
-dontwarn com.tencent.beacon.event.open.BeaconEvent$Builder
-dontwarn com.tencent.beacon.event.open.BeaconEvent
-dontwarn com.tencent.beacon.event.open.BeaconReport
-dontwarn com.tencent.beacon.event.open.EventResult
-dontwarn com.tencent.beacon.event.open.EventType

-dontwarn com.tencent.smtt.export.external.extension.interfaces.IX5WebViewExtension
-dontwarn com.tencent.smtt.sdk.WebSettings
-dontwarn com.tencent.smtt.sdk.WebView
-dontwarn com.tencent.smtt.sdk.WebViewClient

-dontwarn com.tencentcloudapi.cls.android.producer.AsyncProducerClient
-dontwarn com.tencentcloudapi.cls.android.producer.AsyncProducerConfig
-dontwarn com.tencentcloudapi.cls.android.producer.Callback
-dontwarn com.tencentcloudapi.cls.android.producer.common.LogItem
-dontwarn com.tencentcloudapi.cls.android.producer.errors.ProducerException
# End of content from /cache/gradle/caches/8.14.3/transforms/94df38dd6391055efa4517ba128cb42d/transformed/jetified-qcloud-track-1.0.5/proguard.txt
# The proguard configuration file for the following section is /cache/gradle/caches/8.14.3/transforms/87478e8d861f4f587843a3ae240c27c1/transformed/jetified-qcloud-network-sonar-1.0.1/proguard.txt

# End of content from /cache/gradle/caches/8.14.3/transforms/87478e8d861f4f587843a3ae240c27c1/transformed/jetified-qcloud-network-sonar-1.0.1/proguard.txt
# The proguard configuration file for the following section is <unknown>

# End of content from <unknown>