# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/app-android/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt
-keep class androidx.appcompat.app.AppLocalesMetadataHolderService { <init>(); }
-keep class androidx.compose.ui.tooling.PreviewActivity { <init>(); }
-keep class androidx.core.app.CoreComponentFactory { <init>(); }
-keep class androidx.core.content.FileProvider { <init>(); }
-keep class androidx.credentials.playservices.CredentialProviderMetadataHolder { <init>(); }
-keep class androidx.credentials.playservices.HiddenActivity { <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.google.android.gms.auth.api.signin.RevocationBoundService { <init>(); }
-keep class com.google.android.gms.auth.api.signin.internal.SignInHubActivity { <init>(); }
-keep class com.google.android.gms.common.api.GoogleApiActivity { <init>(); }
-keep class com.google.android.gms.metadata.ModuleDependencies { <init>(); }
-keep class com.jakewharton.processphoenix.ProcessPhoenix { <init>(); }
-keep class com.rajat.pdfviewer.PdfViewerActivity { <init>(); }
-keep class com.squareup.picasso.PicassoProvider { <init>(); }
-keep class com.ustadmobile.core.domain.interop.UstadHttpOverIpcServer { <init>(); }
-keep class com.ustadmobile.httpoveripc.server.EchoHttpOverIpcServer { <init>(); }
-keep class com.ustadmobile.port.android.authenticator.AuthenticatorActivity { <init>(); }
-keep class com.ustadmobile.port.android.impl.UstadApp { <init>(); }
-keep class com.ustadmobile.port.android.view.AppActivity { <init>(); }
-keep class org.acra.attachment.AcraContentProvider { <init>(); }
-keep class org.acra.sender.JobSenderService { <init>(); }
-keep class org.acra.sender.LegacySenderService { <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.Toolbar { <init>(android.content.Context, android.util.AttributeSet); }

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

-keep class androidx.browser.browseractions.BrowserActionsFallbackMenuView { <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.ConstraintLayout { <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.legacy.widget.Space { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.media3.ui.AspectRatioFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.media3.ui.SubtitleView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.media3.ui.TrackSelectionView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class androidx.recyclerview.widget.RecyclerView { <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.rajat.pdfviewer.PdfRendererView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class com.rajat.pdfviewer.PinchZoomRecyclerView { <init>(android.content.Context, android.util.AttributeSet); }

-keep class org.wordpress.aztec.AztecText { <init>(android.content.Context, android.util.AttributeSet); }

-keep class org.wordpress.aztec.source.SourceViewEditText { <init>(android.content.Context, android.util.AttributeSet); }

-keep class org.wordpress.aztec.toolbar.AztecToolbar { <init>(android.content.Context, android.util.AttributeSet); }

-keep class org.wordpress.aztec.toolbar.RippleToggleButton { <init>(android.content.Context, android.util.AttributeSet); }


# End of content from /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/app-android/build/intermediates/aapt_proguard_file/release/processReleaseResources/aapt_rules.txt
# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/app-android/build/intermediates/default_proguard_files/global/proguard-android.txt-8.9.2
# 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.

# Optimization is turned off by default. Dex does not like code run
# through the ProGuard optimize steps (and performs some
# of these optimizations on its own).
# Note that if you want to enable optimization, you cannot just
# include optimization flags in your own project configuration file;
# instead you will need to point to the
# "proguard-android-optimize.txt" file instead of this one from your
# project.properties file.
-dontoptimize

# 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 /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/app-android/build/intermediates/default_proguard_files/global/proguard-android.txt-8.9.2
# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/app-android/proguard-rules.pro
-keep public class org.xmlpull.v1.*
-keep public interface org.xmlpull.v1.*

#Keep anything with the Serializable annotation. We are using Gson to avoid kotlinx serialization
# errors, but GSON requires classes to be exempted from obfuscation
-keep @kotlinx.serialization.Serializable class * {
    *;
}

# umDatabase entities
-keep public class com.ustadmobile.lib.db.entities.**{
       *;
}
-keep public class com.ustadmobile.core.db.**{
    public <init>(...);
}
-keep public class com.ustadmobile.centralappconfigdb.**{
    public <init>(...);
}


-keep public class com.ustadmobile.core.controller.IndexLog{
       *;
}
-keep public class com.ustadmobile.core.controller.IndexLog$IndexEntry{
       *;
}

-keep public class com.toughra.ustadmobile.BuildConfig


-keep public class com.ustadmobile.core.contentformats.metadata.*{
    *;
}

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

# As per Android Gradle Plugin 8 (2/May/2023) - probably OKHTTP related
-dontwarn org.bouncycastle.jsse.BCSSLParameters
-dontwarn org.bouncycastle.jsse.BCSSLSocket
-dontwarn org.bouncycastle.jsse.provider.BouncyCastleJsseProvider
-dontwarn org.conscrypt.Conscrypt$Version
-dontwarn org.conscrypt.Conscrypt
-dontwarn org.conscrypt.ConscryptHostnameVerifier
-dontwarn org.openjsse.javax.net.ssl.SSLParameters
-dontwarn org.openjsse.javax.net.ssl.SSLSocket
-dontwarn org.openjsse.net.ssl.OpenJSSE
-dontwarn org.slf4j.impl.StaticLoggerBinder

# As per KodeIn DI docs:
# https://kosi-libs.org/kodein/7.19/framework/android.html#_proguard_configuration
-dontwarn java.lang.invoke.StringConcatFactory

-keep, allowobfuscation, allowoptimization class org.kodein.type.TypeReference
-keep, allowobfuscation, allowoptimization class org.kodein.type.JVMAbstractTypeToken$Companion$WrappingTest

-keep, allowobfuscation, allowoptimization class * extends org.kodein.type.TypeReference
-keep, allowobfuscation, allowoptimization class * extends org.kodein.type.JVMAbstractTypeToken$Companion$WrappingTest


# Begin XXHash rules
# XXHash factories uses reflection
-keep class net.jpountz.xxhash.XXHash32JavaSafe {
    public <init>(...);
    public static ** INSTANCE;
}

-keep class net.jpountz.xxhash.XXHash32JavaSafe$Factory {
    public <init>(...);
    public static ** INSTANCE;
}

# XXHash : XXHashFactory uses reflection
-keep class net.jpountz.xxhash.XXHash64JavaSafe {
    public <init>(...);
    public static ** INSTANCE;
}

-keep class net.jpountz.xxhash.XXHash64JavaSafe$Factory {
    public <init>(...);
    public static ** INSTANCE;
}

-keep class net.jpountz.xxhash.StreamingXXHash32JavaSafe {
    public <init>(...);
    public static ** INSTANCE;
}

-keep class net.jpountz.xxhash.StreamingXXHash32JavaSafe$Factory {
    public <init>(...);
    public static ** INSTANCE;
}

# XXHash : XXHashFactory uses reflection
-keep class net.jpountz.xxhash.StreamingXXHash64JavaSafe {
    public <init>(...);
    public static ** INSTANCE;
}

-keep class net.jpountz.xxhash.StreamingXXHash64JavaSafe$Factory {
    public <init>(...);
    public static ** INSTANCE;
}

# End XXHash rules

#passkey
-if class androidx.credentials.CredentialManager
-keep class androidx.credentials.playservices.** {
  *;
}

# End of content from /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/app-android/proguard-rules.pro
# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/sharedse/build/intermediates/consumer_proguard_dir/release/exportReleaseConsumerProguardFiles/lib0/proguard.txt
#
# BleProxyResponder requires reflection based access to the HTTPSession headers field so it can
# be serialized and sent over BLE.
#
-keepclassmembernames class fi.iki.elonen.NanoHTTPD$HTTPSession {
java.util.Map headers; 
}

-keep class com.ustadmobile.sharedse.network.ContainerDownloadManagerImpl$MutableLiveDataWithRef {
    ** reference;
}

# End of content from /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/sharedse/build/intermediates/consumer_proguard_dir/release/exportReleaseConsumerProguardFiles/lib0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/core/build/intermediates/consumer_proguard_dir/release/exportReleaseConsumerProguardFiles/lib0/proguard.txt

#
# These classes are serialized using Gson, hence fields must not be obfuscated
-keep public class com.ustadmobile.core.contentformats.xapi.*{
    <fields>;
}

-keep public class com.ustadmobile.core.contentformats.metadata.*{
    *;
}

# LongWrapper is serialized and deserialized with Gson, but is not itself an entity so we need to
# explicitly exempt it from obfuscation
-keep public class com.ustadmobile.core.util.LongWrapper {
    *;
}

# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
# as per https://github.com/google/gson/blob/master/examples/android-proguard-example/proguard.cfg
-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

#Keep anything with the Serializable annotation. We are using Gson to avoid kotlinx serialization
# errors, but GSON requires classes to be exempted from obfuscation
-keep @kotlinx.serialization.Serializable class * {
    *;
}

# End of content from /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/core/build/intermediates/consumer_proguard_dir/release/exportReleaseConsumerProguardFiles/lib0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/a65d3be2ede943865edd4ecc7bacec4d/transformed/navigation-common-2.7.7/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);
}

# Retain the @Navigator.Name annotation on each subclass of Navigator.
# R8 full mode only retains annotations on items matched by a -keep rule,
# hence the extra -keep rule for the subclasses of Navigator.
#
# A -keep rule for the Navigator.Name annotation class is not required
# since the annotation is referenced from the code.
-keepattributes RuntimeVisibleAnnotations
-keep,allowobfuscation,allowshrinking class * extends androidx.navigation.Navigator

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/a65d3be2ede943865edd4ecc7bacec4d/transformed/navigation-common-2.7.7/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/99ec10b845110e2fdaa6dc47c1c7c99f/transformed/navigation-ui-2.7.7/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 /home/jenkins/.gradle/caches/8.11.1/transforms/99ec10b845110e2fdaa6dc47c1c7c99f/transformed/navigation-ui-2.7.7/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/1c0dd658c3464d1bb172b036f6885d86/transformed/compose-video-1.2.0a/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/1c0dd658c3464d1bb172b036f6885d86/transformed/compose-video-1.2.0a/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/25a3cae66b413085c41b69ad37b4ae6c/transformed/Pdf-Viewer-2.1.1/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/25a3cae66b413085c41b69ad37b4ae6c/transformed/Pdf-Viewer-2.1.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/0034bc7ed803b73c045b51a53187416c/transformed/chiptextfield-m3-release/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/0034bc7ed803b73c045b51a53187416c/transformed/chiptextfield-m3-release/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/bcbe0b6f68dc943fe23afe72194ff3e1/transformed/door-runtime-android-0.79.17/proguard.txt

#
-keep public class * extends com.ustadmobile.door.ext.DoorDatabaseMetadata {
    *;
}

# On databases that don't use replication, the DoorDatabaseWrapper constructor was removed
-keepclassmembers public class * extends com.ustadmobile.door.DoorDatabaseWrapper {
    public <init>(...);
}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/bcbe0b6f68dc943fe23afe72194ff3e1/transformed/door-runtime-android-0.79.17/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/f7ba6947557cbfd098f1fe41690cd4ad/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 /home/jenkins/.gradle/caches/8.11.1/transforms/f7ba6947557cbfd098f1fe41690cd4ad/transformed/work-runtime-2.9.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/103597ebb97756a91675381d7c56791e/transformed/room-runtime-2.6.1/proguard.txt
-keep class * extends androidx.room.RoomDatabase
-dontwarn androidx.room.paging.**
-dontwarn androidx.lifecycle.LiveData

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/103597ebb97756a91675381d7c56791e/transformed/room-runtime-2.6.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/d093aced3c4ba487a2a37329c38607a8/transformed/nestedscrollwebview-0.1.6/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/d093aced3c4ba487a2a37329c38607a8/transformed/nestedscrollwebview-0.1.6/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/961ec04b174eb0262ef4fc8c7fff9434/transformed/material-1.11.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 /home/jenkins/.gradle/caches/8.11.1/transforms/961ec04b174eb0262ef4fc8c7fff9434/transformed/material-1.11.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/d2601820597e6e3d032dca011d861166/transformed/server-0.0.3/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/d2601820597e6e3d032dca011d861166/transformed/server-0.0.3/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/150012d0ea24e704347256e474a63bcb/transformed/core-0.0.3/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/150012d0ea24e704347256e474a63bcb/transformed/core-0.0.3/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/c49c7a7e32631da8f7533ada20f8f25d/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 /home/jenkins/.gradle/caches/8.11.1/transforms/c49c7a7e32631da8f7533ada20f8f25d/transformed/appcompat-1.6.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/461243ef7682ad191facd960e3c60285/transformed/media3-exoplayer-1.3.0/proguard.txt
# Proguard rules specific to the core module.

# Constructors accessed via reflection in DefaultRenderersFactory
-dontnote androidx.media3.decoder.vp9.LibvpxVideoRenderer
-keepclassmembers class androidx.media3.decoder.vp9.LibvpxVideoRenderer {
  <init>(long, android.os.Handler, androidx.media3.exoplayer.video.VideoRendererEventListener, int);
}
-dontnote androidx.media3.decoder.av1.Libgav1VideoRenderer
-keepclassmembers class androidx.media3.decoder.av1.Libgav1VideoRenderer {
  <init>(long, android.os.Handler, androidx.media3.exoplayer.video.VideoRendererEventListener, int);
}
-dontnote androidx.media3.decoder.ffmpeg.ExperimentalFfmpegVideoRenderer
-keepclassmembers class androidx.media3.decoder.ffmpeg.ExperimentalFfmpegVideoRenderer {
  <init>(long, android.os.Handler, androidx.media3.exoplayer.video.VideoRendererEventListener, int);
}
-dontnote androidx.media3.decoder.opus.LibopusAudioRenderer
-keepclassmembers class androidx.media3.decoder.opus.LibopusAudioRenderer {
  <init>(android.os.Handler, androidx.media3.exoplayer.audio.AudioRendererEventListener, androidx.media3.exoplayer.audio.AudioSink);
}
-dontnote androidx.media3.decoder.flac.LibflacAudioRenderer
-keepclassmembers class androidx.media3.decoder.flac.LibflacAudioRenderer {
  <init>(android.os.Handler, androidx.media3.exoplayer.audio.AudioRendererEventListener, androidx.media3.exoplayer.audio.AudioSink);
}
-dontnote androidx.media3.decoder.ffmpeg.FfmpegAudioRenderer
-keepclassmembers class androidx.media3.decoder.ffmpeg.FfmpegAudioRenderer {
  <init>(android.os.Handler, androidx.media3.exoplayer.audio.AudioRendererEventListener, androidx.media3.exoplayer.audio.AudioSink);
}
-dontnote androidx.media3.decoder.midi.MidiRenderer
-keepclassmembers class androidx.media3.decoder.midi.MidiRenderer {
  <init>(android.content.Context);
}

# Constructors accessed via reflection in DefaultDownloaderFactory
-dontnote androidx.media3.exoplayer.dash.offline.DashDownloader
-keepclassmembers class androidx.media3.exoplayer.dash.offline.DashDownloader {
  <init>(androidx.media3.common.MediaItem, androidx.media3.datasource.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
}
-dontnote androidx.media3.exoplayer.hls.offline.HlsDownloader
-keepclassmembers class androidx.media3.exoplayer.hls.offline.HlsDownloader {
  <init>(androidx.media3.common.MediaItem, androidx.media3.datasource.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
}
-dontnote androidx.media3.exoplayer.smoothstreaming.offline.SsDownloader
-keepclassmembers class androidx.media3.exoplayer.smoothstreaming.offline.SsDownloader {
  <init>(androidx.media3.common.MediaItem, androidx.media3.datasource.cache.CacheDataSource$Factory, java.util.concurrent.Executor);
}

# Constructors accessed via reflection in DefaultMediaSourceFactory
-dontnote androidx.media3.exoplayer.dash.DashMediaSource$Factory
-keepclasseswithmembers class androidx.media3.exoplayer.dash.DashMediaSource$Factory {
  <init>(androidx.media3.datasource.DataSource$Factory);
}
-dontnote androidx.media3.exoplayer.hls.HlsMediaSource$Factory
-keepclasseswithmembers class androidx.media3.exoplayer.hls.HlsMediaSource$Factory {
  <init>(androidx.media3.datasource.DataSource$Factory);
}
-dontnote androidx.media3.exoplayer.smoothstreaming.SsMediaSource$Factory
-keepclasseswithmembers class androidx.media3.exoplayer.smoothstreaming.SsMediaSource$Factory {
  <init>(androidx.media3.datasource.DataSource$Factory);
}
-dontnote androidx.media3.exoplayer.rtsp.RtspMediaSource$Factory
-keepclasseswithmembers class androidx.media3.exoplayer.rtsp.RtspMediaSource$Factory {
  <init>();
}

# Constructors and methods accessed via reflection in CompositingVideoSinkProvider
-dontnote androidx.media3.effect.PreviewingSingleInputVideoGraph$Factory
-keepclasseswithmembers class androidx.media3.effect.PreviewingSingleInputVideoGraph$Factory {
  <init>(androidx.media3.common.VideoFrameProcessor$Factory);
}
-dontnote androidx.media3.effect.DefaultVideoFrameProcessor$Factory$Builder
-keepclasseswithmembers class androidx.media3.effect.DefaultVideoFrameProcessor$Factory$Builder {
  build();
}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/461243ef7682ad191facd960e3c60285/transformed/media3-exoplayer-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/fb7d4c9e48dbdfc5d7097038c2dd55b6/transformed/media3-datasource-okhttp-1.3.0/proguard.txt
# Proguard rules specific to the OkHttp extension.

# Options specified by https://github.com/square/okhttp/blob/master/README.md
-dontwarn okio.**
-dontwarn javax.annotation.**
-dontwarn org.conscrypt.**

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/fb7d4c9e48dbdfc5d7097038c2dd55b6/transformed/media3-datasource-okhttp-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/7f718fba10c394255dfa263fa12e18a4/transformed/media3-datasource-1.3.0/proguard.txt
# Proguard rules specific to the DataSource module.

# Constant folding for resource integers may mean that a resource passed to this method appears to be unused. Keep the method to prevent this from happening.
-keepclassmembers class androidx.media3.datasource.RawResourceDataSource {
  public static android.net.Uri buildRawResourceUri(int);
}

# Constructors accessed via reflection in DefaultDataSource
-dontnote androidx.media3.datasource.rtmp.RtmpDataSource
-keepclassmembers class androidx.media3.datasource.rtmp.RtmpDataSource {
  <init>();
}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/7f718fba10c394255dfa263fa12e18a4/transformed/media3-datasource-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/2dd567f83f253dbd975a76ff8e7d8619/transformed/media3-extractor-1.3.0/proguard.txt
# Proguard rules specific to the extractor module.

# Methods accessed via reflection in DefaultExtractorsFactory
-dontnote androidx.media3.decoder.flac.FlacExtractor
-keepclassmembers class androidx.media3.decoder.flac.FlacExtractor {
  <init>(int);
}
-dontnote androidx.media3.decoder.flac.FlacLibrary
-keepclassmembers class androidx.media3.decoder.flac.FlacLibrary {
  public static boolean isAvailable();
}
-dontnote androidx.media3.decoder.midi.MidiExtractor
-keepclassmembers class androidx.media3.decoder.midi.MidiExtractor {
  <init>();
}

# Don't warn about checkerframework and Kotlin annotations
-dontwarn org.checkerframework.**
-dontwarn kotlin.annotations.jvm.**
-dontwarn javax.annotation.**

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/2dd567f83f253dbd975a76ff8e7d8619/transformed/media3-extractor-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/9e39c0f9208868ca24b67f3ae0463c62/transformed/media3-common-1.3.0/proguard.txt
# Proguard rules specific to the common module.

# Don't warn about checkerframework and Kotlin annotations
-dontwarn org.checkerframework.**
-dontwarn kotlin.annotations.jvm.**
-dontwarn javax.annotation.**

# From https://github.com/google/guava/wiki/UsingProGuardWithGuava
-dontwarn java.lang.ClassValue
-dontwarn java.lang.SafeVarargs
-dontwarn javax.lang.model.element.Modifier
-dontwarn sun.misc.Unsafe

# Don't warn about Guava's compile-only dependencies.
# These lines are needed for ProGuard but not R8.
-dontwarn com.google.errorprone.annotations.**
-dontwarn com.google.j2objc.annotations.**
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement

# Workaround for https://issuetracker.google.com/issues/112297269
# This is needed for ProGuard but not R8.
-keepclassmembernames class com.google.common.base.Function { *; }

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/9e39c0f9208868ca24b67f3ae0463c62/transformed/media3-common-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/e5622ed5c5e253d39f5ee9670057c7f4/transformed/media3-ui-1.3.0/proguard.txt
# Proguard rules specific to the UI module.

# Constructor method accessed via reflection in PlayerView
-dontnote androidx.media3.exoplayer.video.spherical.SphericalGLSurfaceView
-keepclassmembers class androidx.media3.exoplayer.video.spherical.SphericalGLSurfaceView {
  <init>(android.content.Context);
}
-dontnote androidx.media3.exoplayer.video.VideoDecoderGLSurfaceView
-keepclassmembers class androidx.media3.exoplayer.video.VideoDecoderGLSurfaceView {
  <init>(android.content.Context);
}

# Constructor method accessed via reflection in TrackSelectionDialogBuilder
-dontnote androidx.appcompat.app.AlertDialog.Builder
-keepclassmembers class androidx.appcompat.app.AlertDialog$Builder {
  <init>(android.content.Context, int);
  public android.content.Context getContext();
  public androidx.appcompat.app.AlertDialog$Builder setTitle(java.lang.CharSequence);
  public androidx.appcompat.app.AlertDialog$Builder setView(android.view.View);
  public androidx.appcompat.app.AlertDialog$Builder setPositiveButton(int, android.content.DialogInterface$OnClickListener);
  public androidx.appcompat.app.AlertDialog$Builder setNegativeButton(int, android.content.DialogInterface$OnClickListener);
  public androidx.appcompat.app.AlertDialog create();
}
# Equivalent methods needed when the library is de-jetified.
-dontnote android.support.v7.app.AlertDialog.Builder
-keepclassmembers class android.support.v7.app.AlertDialog$Builder {
  <init>(android.content.Context, int);
  public android.content.Context getContext();
  public android.support.v7.app.AlertDialog$Builder setTitle(java.lang.CharSequence);
  public android.support.v7.app.AlertDialog$Builder setView(android.view.View);
  public android.support.v7.app.AlertDialog$Builder setPositiveButton(int, android.content.DialogInterface$OnClickListener);
  public android.support.v7.app.AlertDialog$Builder setNegativeButton(int, android.content.DialogInterface$OnClickListener);
  public android.support.v7.app.AlertDialog create();
}

# Don't warn about checkerframework and Kotlin annotations
-dontwarn org.checkerframework.**
-dontwarn kotlin.annotations.jvm.**
-dontwarn javax.annotation.**

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/e5622ed5c5e253d39f5ee9670057c7f4/transformed/media3-ui-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/85eb9be9386ac845a272e814cf1fe9ee/transformed/recyclerview-1.3.2/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 /home/jenkins/.gradle/caches/8.11.1/transforms/85eb9be9386ac845a272e814cf1fe9ee/transformed/recyclerview-1.3.2/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/1658aa7d965f306cb7caff07345e2e84/transformed/credentials-play-services-auth-1.3.0/proguard.txt
-if class androidx.credentials.CredentialManager
-keep class androidx.credentials.playservices.CredentialProviderPlayServicesImpl {
  *;
}
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/1658aa7d965f306cb7caff07345e2e84/transformed/credentials-play-services-auth-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/f60e15f387854f31173b6ebffce30b29/transformed/play-services-fido-21.0.0/proguard.txt
# Methods enable and disable in this class are complained as unresolved
# references, but they are system APIs and are not used by Fido client apps.
-dontwarn android.nfc.NfcAdapter
-dontwarn dalvik.system.VMStack
-dontwarn com.google.common.flogger.backend.google.GooglePlatform
-dontwarn com.google.common.flogger.backend.system.DefaultPlatform

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/f60e15f387854f31173b6ebffce30b29/transformed/play-services-fido-21.0.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/002cbb605371f5645cb7aa5e895bfb85/transformed/play-services-auth-base-18.0.10/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.auth.zzev {
  <fields>;
}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/002cbb605371f5645cb7aa5e895bfb85/transformed/play-services-auth-base-18.0.10/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/aa74301b6a18f7cbd221c86d0e765403/transformed/play-services-base-18.3.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 /home/jenkins/.gradle/caches/8.11.1/transforms/aa74301b6a18f7cbd221c86d0e765403/transformed/play-services-base-18.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/3639dd3a1e6d025722881d9e97f1274c/transformed/play-services-tasks-18.1.0/proguard.txt


# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/3639dd3a1e6d025722881d9e97f1274c/transformed/play-services-tasks-18.1.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/dcc44a508e1cc9253bf0a5d9950ea12f/transformed/play-services-basement-18.3.0/proguard.txt
# 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

# Annotations used during internal SDK shrinking.
-dontwarn com.google.android.apps.common.proguard.UsedBy*
-dontwarn com.google.android.apps.common.proguard.SideEffectFree

# Annotations referenced by the SDK but whose definitions are contained in
# non-required dependencies.
-dontwarn javax.annotation.**
-dontwarn org.checkerframework.**
-dontwarn com.google.errorprone.annotations.**
-dontwarn org.jspecify.nullness.NullMarked

# Annotations no longer exist. Suppression prevents ProGuard failures in
# SDKs which depend on earlier versions of play-services-basement.
-dontwarn com.google.android.gms.common.util.VisibleForTesting

# 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 android.support.annotation.Keep
-keep @androidx.annotation.Keep class *
-keepclasseswithmembers class * {
  @androidx.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
  @androidx.annotation.Keep <methods>;
}

# Keep androidX equivalent of above android.support to allow Jetification.
-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>;
}



# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/dcc44a508e1cc9253bf0a5d9950ea12f/transformed/play-services-basement-18.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/4f05a8a8482c89cf1e9b9c50bc6a454a/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 /home/jenkins/.gradle/caches/8.11.1/transforms/4f05a8a8482c89cf1e9b9c50bc6a454a/transformed/fragment-1.6.2/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/161a1226f90279bd4975b0cc217699b8/transformed/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 /home/jenkins/.gradle/caches/8.11.1/transforms/161a1226f90279bd4975b0cc217699b8/transformed/savedstate-1.2.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/4e6a6e4336feed86e46f291670ae633c/transformed/lifecycle-viewmodel-savedstate-2.7.0/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 /home/jenkins/.gradle/caches/8.11.1/transforms/4e6a6e4336feed86e46f291670ae633c/transformed/lifecycle-viewmodel-savedstate-2.7.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/d2c84da247635433791033f107327af8/transformed/lifecycle-viewmodel-2.7.0/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 /home/jenkins/.gradle/caches/8.11.1/transforms/d2c84da247635433791033f107327af8/transformed/lifecycle-viewmodel-2.7.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/b1372e6b5156a785fdd7ce11700f55eb/transformed/window-1.2.0/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.

# A rule that will keep classes that implement SidecarInterface$SidecarCallback if Sidecar seems
# be used. See b/157286362 and b/165268619 for details.
# TODO(b/208543178) investigate how to pass header jar to R8 so we don't need this rule
-if class androidx.window.layout.adapter.sidecar.SidecarCompat {
  public *** setExtensionCallback(androidx.window.layout.adapter.sidecar.ExtensionInterfaceCompat$ExtensionCallbackInterface);
}
-keep class androidx.window.layout.adapter.sidecar.SidecarCompat$TranslatingCallback,
 androidx.window.layout.adapter.sidecar.DistinctElementSidecarCallback {
  public *** onDeviceStateChanged(androidx.window.sidecar.SidecarDeviceState);
  public *** onWindowLayoutChanged(android.os.IBinder, androidx.window.sidecar.SidecarWindowLayoutInfo);
}
# Required for window area API reflection guard
-keep interface androidx.window.area.reflectionguard.* {*;}
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/b1372e6b5156a785fdd7ce11700f55eb/transformed/window-1.2.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/e81b2b6a5101dccb5bd5566812f36360/transformed/coordinatorlayout-1.2.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 AnnotationDefault,
                RuntimeVisibleAnnotations,
                RuntimeVisibleParameterAnnotations,
                RuntimeVisibleTypeAnnotations

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/e81b2b6a5101dccb5bd5566812f36360/transformed/coordinatorlayout-1.2.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/2178a27c39752ec93e34645966a83195/transformed/webkit-1.10.0/proguard.txt
# Copyright 2018 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# We need to avoid obfuscating the support library boundary interface because
# this API is shared with the Android Support Library.
# Note that we only 'keep' the package org.chromium.support_lib_boundary itself,
# any sub-packages of that package can still be obfuscated.
-keep public class org.chromium.support_lib_boundary.* { public *; }

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

# Prevent WebViewClientCompat from being renamed, since chromium depends on this name.
-keepnames public class androidx.webkit.WebViewClientCompat

# Prevent ProcessGlobalConfig and member sProcessGlobalConfig from being renamed, since chromium
# depends on this name.
-keepnames public class androidx.webkit.ProcessGlobalConfig {
    private static final *** sProcessGlobalConfig;
}
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/2178a27c39752ec93e34645966a83195/transformed/webkit-1.10.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/1c2cea876cdda2215529c910f5fa1f10/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 /home/jenkins/.gradle/caches/8.11.1/transforms/1c2cea876cdda2215529c910f5fa1f10/transformed/vectordrawable-animated-1.1.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/a3f312ba846a4cdde075d26eb407a4d8/transformed/zoomable-1.6.1/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/a3f312ba846a4cdde075d26eb407a4d8/transformed/zoomable-1.6.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/3e5955b9f1b5e8c394495e59652f26ad/transformed/media-1.7.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 /home/jenkins/.gradle/caches/8.11.1/transforms/3e5955b9f1b5e8c394495e59652f26ad/transformed/media-1.7.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/b87129622ab3fdf39ee4374edb956073/transformed/transition-1.4.1/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 /home/jenkins/.gradle/caches/8.11.1/transforms/b87129622ab3fdf39ee4374edb956073/transformed/transition-1.4.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/72cc086cdda364fb0ef96988c9f4f1ae/transformed/chiptextfield-core-release/proguard.txt

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/72cc086cdda364fb0ef96988c9f4f1ae/transformed/chiptextfield-core-release/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/6ae590eeeacfe49cebea931b34b8e5f9/transformed/core-1.13.1/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 /home/jenkins/.gradle/caches/8.11.1/transforms/6ae590eeeacfe49cebea931b34b8e5f9/transformed/core-1.13.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/6211b8c8874054fe91967c79b6640a3d/transformed/lifecycle-runtime-2.7.0/proguard.txt
-keepattributes AnnotationDefault,
                RuntimeVisibleAnnotations,
                RuntimeVisibleParameterAnnotations,
                RuntimeVisibleTypeAnnotations

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

-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 /home/jenkins/.gradle/caches/8.11.1/transforms/6211b8c8874054fe91967c79b6640a3d/transformed/lifecycle-runtime-2.7.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/5c2161decf66d673c24f035cae9f11f6/transformed/lifecycle-process-2.7.0/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 /home/jenkins/.gradle/caches/8.11.1/transforms/5c2161decf66d673c24f035cae9f11f6/transformed/lifecycle-process-2.7.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/5f855f23443f09b92ab461ca66d1d29e/transformed/ui-release/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.

# We supply these as stubs and are able to link to them at runtime
# because they are hidden public classes in Android. We don't want
# R8 to complain about them not being there during optimization.
-dontwarn android.view.RenderNode
-dontwarn android.view.DisplayListCanvas

-keepclassmembers class androidx.compose.ui.platform.ViewLayerContainer {
    protected void dispatchGetDisplayList();
}

-keepclassmembers class androidx.compose.ui.platform.AndroidComposeView {
    android.view.View findViewByAccessibilityIdTraversal(int);
}

# Users can create Modifier.Node instances that implement multiple Modifier.Node interfaces,
# so we cannot tell whether two modifier.node instances are of the same type without using
# reflection to determine the class type. See b/265188224 for more context.
-keep,allowshrinking class * extends androidx.compose.ui.node.ModifierNodeElement

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/5f855f23443f09b92ab461ca66d1d29e/transformed/ui-release/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/lib-ihttp-okhttp/build/intermediates/consumer_proguard_dir/release/exportReleaseConsumerProguardFiles/lib0/proguard.txt

# End of content from /home/jenkins/.jenkins/workspace/dev-simplified-onboarding-username-into-signup/lib-ihttp-okhttp/build/intermediates/consumer_proguard_dir/release/exportReleaseConsumerProguardFiles/lib0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/5ac61cd018e5d0e8a2266501e35bf23c/transformed/rules/lib/META-INF/proguard/ktor.pro
# Most of volatile fields are updated with AtomicFU and should not be mangled/removed
-keepclassmembers class io.ktor.** {
    volatile <fields>;
}

-keepclassmembernames class io.ktor.** {
    volatile <fields>;
}

# client engines are loaded using ServiceLoader so we need to keep them
-keep class io.ktor.client.engine.** implements io.ktor.client.HttpClientEngineContainer


# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/5ac61cd018e5d0e8a2266501e35bf23c/transformed/rules/lib/META-INF/proguard/ktor.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/69c4ab92c3c75ad30ca9b825e3efcfee/transformed/datastore-preferences-1.0.0/proguard.txt
-keepclassmembers class * extends androidx.datastore.preferences.protobuf.GeneratedMessageLite {
    <fields>;
}
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/69c4ab92c3c75ad30ca9b825e3efcfee/transformed/datastore-preferences-1.0.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/dfd8ccf8f0429cbd60d030ae30f854f4/transformed/runtime-release/proguard.txt
-assumenosideeffects public class androidx.compose.runtime.ComposerKt {
    void sourceInformation(androidx.compose.runtime.Composer,java.lang.String);
    void sourceInformationMarkerStart(androidx.compose.runtime.Composer,int,java.lang.String);
    void sourceInformationMarkerEnd(androidx.compose.runtime.Composer);
}

# Composer's class initializer doesn't do anything but create an EMPTY object. Marking the
# initializers as having no side effects can help encourage shrinkers to merge/devirtualize Composer
# with ComposerImpl.
-assumenosideeffects public class androidx.compose.runtime.Composer {
    void <clinit>();
}
-assumenosideeffects public class androidx.compose.runtime.ComposerImpl {
    void <clinit>();
}
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/dfd8ccf8f0429cbd60d030ae30f854f4/transformed/runtime-release/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/01e5eef379c28fa83ed8d3e6d083c9f6/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 /home/jenkins/.gradle/caches/8.11.1/transforms/01e5eef379c28fa83ed8d3e6d083c9f6/transformed/rules/lib/META-INF/com.android.tools/r8/coroutines.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/661bc20fa4fa7cc6a4e57218dc15b96d/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 /home/jenkins/.gradle/caches/8.11.1/transforms/661bc20fa4fa7cc6a4e57218dc15b96d/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/f1cd591c789ccabdc78d0342df23fe47/transformed/acra-core-5.12.0/proguard.txt
# Restore some Source file names and restore approximate line numbers in the stack traces,
# otherwise the stack traces are pretty useless
-keepattributes SourceFile,LineNumberTable

# ACRA loads Plugins using reflection
-keep class * implements org.acra.plugins.Plugin {*;}

# ACRA uses enum fields in json
-keep enum org.acra.** {*;}

# autodsl accesses constructors using reflection
-keepclassmembers class * implements org.acra.config.Configuration { <init>(...); }

# ACRA creates a proxy for this interface
-keep interface org.acra.ErrorReporter { void <init>(); }

-dontwarn android.support.**

-dontwarn com.faendir.kotlin.autodsl.DslInspect
-dontwarn com.faendir.kotlin.autodsl.DslMandatory
-dontwarn com.google.auto.service.AutoService

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/f1cd591c789ccabdc78d0342df23fe47/transformed/acra-core-5.12.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/9e905587d97e6f454c164592b166bf6b/transformed/core-1.0.0/proguard.txt
# Copyright (C) 2022 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.

# These interfaces must be kept for the client library to invoke methods in extensions.
-keep interface androidx.window.extensions.core.util.function.Consumer {
  public void accept(***);
}
-keep interface androidx.window.extensions.core.util.function.Predicate {
  public boolean test(***);
}
-keep interface androidx.window.extensions.core.util.function.Function {
  public *** apply(***);
}
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/9e905587d97e6f454c164592b166bf6b/transformed/core-1.0.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/f1a98d1494ab6f5deacaadd063adcb26/transformed/picasso-2.8/proguard.txt
### OKHTTP

# Platform calls Class.forName on types which do not exist on Android to determine platform.
-dontnote okhttp3.internal.Platform


### OKIO

# java.nio.file.* usage which cannot be used at runtime. Animal sniffer annotation.
-dontwarn okio.Okio
# JDK 7-only method which is @hide on Android. Animal sniffer annotation.
-dontwarn okio.DeflaterSink

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/f1a98d1494ab6f5deacaadd063adcb26/transformed/picasso-2.8/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/94534fd29618a48352d288fc0d5c329d/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 /home/jenkins/.gradle/caches/8.11.1/transforms/94534fd29618a48352d288fc0d5c329d/transformed/rules/lib/META-INF/proguard/okhttp3.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/ed859b9b72d467427a8292fba942d7ea/transformed/rules/lib/META-INF/com.android.tools/r8/xmlutil-r8-workaround.pro
# Needed to work around a bug in r8 where a switch over these values triggers an r8 bug.
#noinspection ShrinkerUnresolvedReference
-keep enum nl.adaptivity.xmlutil.EventType { *;}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/ed859b9b72d467427a8292fba942d7ea/transformed/rules/lib/META-INF/com.android.tools/r8/xmlutil-r8-workaround.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/4d77dcee92943acafe7cd9156c8fc923/transformed/googleid-1.1.0/proguard.txt
# Proguard cannot process META-INF/versions/9.
# See https://discuss.gradle.org/t/meta-inf-version-duplicate-error-when-using-proguard/31380
-dontwarn module-info

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/4d77dcee92943acafe7cd9156c8fc923/transformed/googleid-1.1.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/51c96f1966bfcdea7f91a51ca8ff21e8/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 /home/jenkins/.gradle/caches/8.11.1/transforms/51c96f1966bfcdea7f91a51ca8ff21e8/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 /home/jenkins/.gradle/caches/8.11.1/transforms/46826b0fd1b34e53cc8a70b4cf69737b/transformed/rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-common.pro
# Keep `Companion` object fields of serializable classes.
# This avoids serializer lookup through `getDeclaredClasses` as done for named companion objects.
-if @kotlinx.serialization.Serializable class **
-keepclassmembers class <1> {
    static <1>$Companion Companion;
}

# Keep `serializer()` on companion objects (both default and named) of serializable classes.
-if @kotlinx.serialization.Serializable class ** {
    static **$* *;
}
-keepclassmembers class <2>$<3> {
    kotlinx.serialization.KSerializer serializer(...);
}

# Keep `INSTANCE.serializer()` of serializable objects.
-if @kotlinx.serialization.Serializable class ** {
    public static ** INSTANCE;
}
-keepclassmembers class <1> {
    public static <1> INSTANCE;
    kotlinx.serialization.KSerializer serializer(...);
}

# @Serializable and @Polymorphic are used at runtime for polymorphic serialization.
-keepattributes RuntimeVisibleAnnotations,AnnotationDefault

# Don't print notes about potential mistakes or omissions in the configuration for kotlinx-serialization classes
# See also https://github.com/Kotlin/kotlinx.serialization/issues/1900
-dontnote kotlinx.serialization.**

# Serialization core uses `java.lang.ClassValue` for caching inside these specified classes.
# If there is no `java.lang.ClassValue` (for example, in Android), then R8/ProGuard will print a warning.
# However, since in this case they will not be used, we can disable these warnings
-dontwarn kotlinx.serialization.internal.ClassValueReferences

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/46826b0fd1b34e53cc8a70b4cf69737b/transformed/rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-common.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/46826b0fd1b34e53cc8a70b4cf69737b/transformed/rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-r8.pro
# Rule to save runtime annotations on serializable class.
# If the R8 full mode is used, annotations are removed from classes-files.
#
# For the annotation serializer, it is necessary to read the `Serializable` annotation inside the serializer<T>() function - if it is present,
# then `SealedClassSerializer` is used, if absent, then `PolymorphicSerializer'.
#
# When using R8 full mode, all interfaces will be serialized using `PolymorphicSerializer`.
#
# see https://github.com/Kotlin/kotlinx.serialization/issues/2050

 -if @kotlinx.serialization.Serializable class **
 -keep, allowshrinking, allowoptimization, allowobfuscation, allowaccessmodification class <1>

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/46826b0fd1b34e53cc8a70b4cf69737b/transformed/rules/lib/META-INF/com.android.tools/r8/kotlinx-serialization-r8.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/2376b81a494cb160bc0ff63c00794044/transformed/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 /home/jenkins/.gradle/caches/8.11.1/transforms/2376b81a494cb160bc0ff63c00794044/transformed/startup-runtime-1.1.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/ab0d497442773d63ce569505e1f2ad59/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 /home/jenkins/.gradle/caches/8.11.1/transforms/ab0d497442773d63ce569505e1f2ad59/transformed/versionedparcelable-1.1.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/e6f2656647e56889a82511299015ff85/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 /home/jenkins/.gradle/caches/8.11.1/transforms/e6f2656647e56889a82511299015ff85/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/f94170f823975bef88155302e88a3c9a/transformed/kaverit-release/proguard.txt
-keep, allowobfuscation, allowoptimization class org.kodein.type.TypeReference
-keep, allowobfuscation, allowoptimization class org.kodein.type.JVMAbstractTypeToken$Companion$WrappingTest

-keep, allowobfuscation, allowoptimization class * extends org.kodein.type.TypeReference
-keep, allowobfuscation, allowoptimization class * extends org.kodein.type.JVMAbstractTypeToken$Companion$WrappingTest
# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/f94170f823975bef88155302e88a3c9a/transformed/kaverit-release/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/ca48804620aee3f2a54ec1927ad65a5d/transformed/volley-1.2.1/proguard.txt
# Prevent Proguard from inlining methods that are intentionally extracted to ensure locals have a
# constrained liveness scope by the GC. This is needed to avoid keeping previous request references
# alive for an indeterminate amount of time. See also https://github.com/google/volley/issues/114
-keepclassmembers,allowshrinking,allowobfuscation class com.android.volley.NetworkDispatcher {
    void processRequest();
}
-keepclassmembers,allowshrinking,allowobfuscation class com.android.volley.CacheDispatcher {
    void processRequest();
}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/ca48804620aee3f2a54ec1927ad65a5d/transformed/volley-1.2.1/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/679704655bb18f001c38e9a1c33f3fbc/transformed/lib-decoder-av1-1.3.0/proguard.txt
# Proguard rules specific to the AV1 extension.

# This prevents the names of native methods from being obfuscated.
-keepclasseswithmembernames class * {
    native <methods>;
}

# Some members of this class are being accessed from native methods. Keep them unobfuscated.
-keep class androidx.media3.decoder.VideoDecoderOutputBuffer {
  *;
}

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/679704655bb18f001c38e9a1c33f3fbc/transformed/lib-decoder-av1-1.3.0/proguard.txt
# The proguard configuration file for the following section is /home/jenkins/.gradle/caches/8.11.1/transforms/1ccd54f765dc6231467a8dc09c4ecc1c/transformed/eventbus-3.3.1/proguard.txt
-keepattributes *Annotation*
-keepclassmembers class * {
    @org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }

# If using AsyncExecutord, keep required constructor of default event used.
# Adjust the class name if a custom failure event type is used.
-keepclassmembers class org.greenrobot.eventbus.util.ThrowableFailureEvent {
    <init>(java.lang.Throwable);
}

# Accessed via reflection, avoid renaming or removal
-keep class org.greenrobot.eventbus.android.AndroidComponentsImpl

# End of content from /home/jenkins/.gradle/caches/8.11.1/transforms/1ccd54f765dc6231467a8dc09c4ecc1c/transformed/eventbus-3.3.1/proguard.txt
# The proguard configuration file for the following section is <unknown>

# End of content from <unknown>