diff --git a/r8.jar b/r8.jar
index c7364ac..5961166 100644
--- a/r8.jar
+++ b/r8.jar
Binary files differ
diff --git a/r8.jar.map b/r8.jar.map
index 11fcc4f..2402535 100644
--- a/r8.jar.map
+++ b/r8.jar.map
@@ -1,10 +1,10 @@
 # compiler: R8
-# compiler_version: 3.3.20-dev+aosp6
+# compiler_version: 3.3.20-dev+aosp7
 # compiler_hash: engineering
 # common_typos_disable
 # {"id":"com.android.tools.r8.mapping","version":"2.0"}
-# pg_map_id: 3.3.20-dev+aosp6
-# pg_map_hash: SHA-256 d162b5f54f3dbb4e365e6b6d2371e9917910d792e2d2c0b99915b4f352dddb09
+# pg_map_id: 3.3.20-dev+aosp7
+# pg_map_hash: SHA-256 23bae7e8a8d7d663cc772ecbc869c31b46efb66f49b3137e6f848db8227cd08a
 com.android.tools.r8.ApiLevelException -> com.android.tools.r8.internal.g2:
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():10:10 -> <clinit>
@@ -19659,10 +19659,10 @@
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap):67:68 -> <init>
     boolean lambda$fromFiles$1(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod) -> a
     1:1:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate none(com.android.tools.r8.utils.InternalOptions):38:38 -> a
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> a
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> a
     2:2:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate none(com.android.tools.r8.utils.InternalOptions):38 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> a
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> a
     3:3:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate none(com.android.tools.r8.utils.InternalOptions):38 -> a
     4:5:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate none(com.android.tools.r8.utils.InternalOptions):38:39 -> a
     6:6:void lambda$fromFiles$2(java.util.Map,com.android.tools.r8.dex.VirtualFile,com.android.tools.r8.graph.DexProgramClass):53:53 -> a
@@ -19676,10 +19676,10 @@
     18:30:boolean lambda$fromFiles$3(java.util.Map,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):61 -> a
     31:32:com.android.tools.r8.code.Instruction getLastExecutableInstruction(com.android.tools.r8.graph.DexCode):267:268 -> a
     33:44:int estimatedDebugInfoSize(com.android.tools.r8.graph.DexDebugInfo):276:287 -> a
-    45:45:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> a
+    45:45:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> a
     45:45:void computeForFile(com.android.tools.r8.dex.VirtualFile,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):73 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    46:46:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> a
+    46:46:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> a
     46:46:void computeForFile(com.android.tools.r8.dex.VirtualFile,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):73 -> a
     47:53:void computeForFile(com.android.tools.r8.dex.VirtualFile,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):74:80 -> a
     54:54:void com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceOpenHashMap.<init>():119:119 -> a
@@ -19688,10 +19688,10 @@
     64:68:boolean com.android.tools.r8.debuginfo.DebugRepresentation.isPcCandidate(com.android.tools.r8.graph.DexEncodedMethod):137:141 -> a
     64:68:void computeForFile(com.android.tools.r8.dex.VirtualFile,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):90 -> a
     69:86:void computeForFile(com.android.tools.r8.dex.VirtualFile,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):93:110 -> a
-    87:87:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> a
+    87:87:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> a
     87:87:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate fromFiles(java.util.List,com.android.tools.r8.utils.InternalOptions):44 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    88:88:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> a
+    88:88:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> a
     88:88:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate fromFiles(java.util.List,com.android.tools.r8.utils.InternalOptions):44 -> a
     89:99:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate fromFiles(java.util.List,com.android.tools.r8.utils.InternalOptions):45:55 -> a
     100:100:com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate fromFiles(java.util.List,com.android.tools.r8.utils.InternalOptions):48:48 -> a
@@ -24639,11 +24639,11 @@
     9:9:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163 -> K
     10:14:com.android.tools.r8.ir.analysis.proto.ProtoShrinker com.android.tools.r8.ir.analysis.proto.ProtoShrinker.create(com.android.tools.r8.graph.AppView):66:70 -> K
     10:14:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163 -> K
-    15:15:void com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.disable():1638:1638 -> K
+    15:15:void com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.disable():1640:1640 -> K
     15:15:com.android.tools.r8.ir.analysis.proto.ProtoShrinker com.android.tools.r8.ir.analysis.proto.ProtoShrinker.create(com.android.tools.r8.graph.AppView):70 -> K
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     15:15:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163 -> K
-    16:19:void com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.disable():1639:1642 -> K
+    16:19:void com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.disable():1641:1644 -> K
     16:19:com.android.tools.r8.ir.analysis.proto.ProtoShrinker com.android.tools.r8.ir.analysis.proto.ProtoShrinker.create(com.android.tools.r8.graph.AppView):70 -> K
     16:19:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163 -> K
     20:20:com.android.tools.r8.ir.analysis.proto.ProtoShrinker com.android.tools.r8.ir.analysis.proto.ProtoShrinker.create(com.android.tools.r8.graph.AppView):74:74 -> K
@@ -24706,7 +24706,7 @@
     28:28:com.android.tools.r8.graph.DexItemFactory dexItemFactory():348:348 -> a
     29:30:void withArgumentPropagator(com.android.tools.r8.utils.ThrowingConsumer):372:373 -> a
     31:31:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):404:404 -> a
-    32:32:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.isEnumLiteProtoShrinkingEnabled():1657:1657 -> a
+    32:32:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.isEnumLiteProtoShrinkingEnabled():1659:1659 -> a
     32:32:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):404 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     33:33:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):405:405 -> a
@@ -31751,7 +31751,7 @@
     1:3:void <init>(java.util.Map,java.util.Map):129:131 -> <init>
     1:1:com.android.tools.r8.graph.GenericSignatureContextBuilder create(com.android.tools.r8.graph.AppView):135:135 -> a
     2:2:com.android.tools.r8.graph.GenericSignatureContextBuilder create(com.android.tools.r8.graph.AppView,java.util.Collection):140:140 -> a
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():639:639 -> a
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():641:641 -> a
     3:3:com.android.tools.r8.graph.GenericSignatureContextBuilder create(com.android.tools.r8.graph.AppView,java.util.Collection):140 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4:41:com.android.tools.r8.graph.GenericSignatureContextBuilder create(com.android.tools.r8.graph.AppView,java.util.Collection):143:180 -> a
@@ -31862,7 +31862,7 @@
     1:5:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GenericSignatureContextBuilder,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$Mode):93:97 -> <init>
     1:1:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper createForInitialCheck(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GenericSignatureContextBuilder):102:102 -> a
     2:3:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult run(java.util.Collection):111:112 -> a
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():639:639 -> a
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():641:641 -> a
     4:4:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult run(java.util.Collection):112 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     5:9:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult run(java.util.Collection):113:117 -> a
@@ -31870,7 +31870,7 @@
     10:10:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult run(java.util.Collection):117 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     11:12:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult evaluateSignaturesForClass(com.android.tools.r8.graph.DexProgramClass):123:124 -> a
-    13:13:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():639:639 -> a
+    13:13:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():641:641 -> a
     13:13:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult evaluateSignaturesForClass(com.android.tools.r8.graph.DexProgramClass):124 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     14:29:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult evaluateSignaturesForClass(com.android.tools.r8.graph.DexProgramClass):125:140 -> a
@@ -33101,7 +33101,7 @@
     1260:1267:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.JarApplicationReader.getTypeListFromNames(java.lang.String[]):68:75 -> a
     1260:1267:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):389 -> a
     1268:1269:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):389:390 -> a
-    1270:1270:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():639:639 -> a
+    1270:1270:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():641:641 -> a
     1270:1270:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):390 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     1271:1271:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):391:391 -> a
@@ -33372,7 +33372,7 @@
     1:3:void visitEnd():891:893 -> c
     4:5:boolean classRequiresCode():883:884 -> c
     4:5:void visitEnd():893 -> c
-    6:6:boolean com.android.tools.r8.utils.InternalOptions.canUseNestBasedAccess():1940:1940 -> c
+    6:6:boolean com.android.tools.r8.utils.InternalOptions.canUseNestBasedAccess():1943:1943 -> c
     6:6:boolean classRequiresCode():884 -> c
     6:6:void visitEnd():893 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
@@ -36552,7 +36552,7 @@
     112:112:java.util.List fixupInnerClassAttributes(java.util.List):205 -> a
     113:124:java.util.List fixupInnerClassAttributes(java.util.List):206:217 -> a
     125:132:java.util.List fixupInnerClassAttributes(java.util.List):216:223 -> a
-    133:133:boolean com.android.tools.r8.utils.InternalOptions.isTreeShakingEnabled():615:615 -> a
+    133:133:boolean com.android.tools.r8.utils.InternalOptions.isTreeShakingEnabled():617:617 -> a
     133:133:java.util.List fixupInnerClassAttributes(java.util.List):223 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     134:140:java.util.List fixupInnerClassAttributes(java.util.List):223:229 -> a
@@ -41909,7 +41909,7 @@
     1:1:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.proto.ProtoReferences):43:43 -> <init>
     2:6:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.proto.ProtoReferences):41:45 -> <init>
     1:1:void clearDeadEnumLiteMaps():59:59 -> a
-    2:2:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.isEnumLiteProtoShrinkingEnabled():1657:1657 -> a
+    2:2:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.isEnumLiteProtoShrinkingEnabled():1659:1659 -> a
     2:2:void clearDeadEnumLiteMaps():59 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     3:14:void clearDeadEnumLiteMaps():59:70 -> a
@@ -42603,10 +42603,10 @@
     2:28:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.proto.ProtoReferences):28:54 -> <init>
     1:1:java.util.Set getDeadProtoTypes():78:78 -> a
     2:4:boolean verifyDeadProtoTypesNotReferenced(com.android.tools.r8.dex.VirtualFile):88:90 -> a
-    5:5:void com.android.tools.r8.utils.InternalOptions.checkAssertionsEnabled():965:965 -> a
+    5:5:void com.android.tools.r8.utils.InternalOptions.checkAssertionsEnabled():967:967 -> a
     5:5:void setDeadProtoTypes(java.util.Set):83 -> a
     6:6:void setDeadProtoTypes(java.util.Set):84:84 -> a
-    7:7:void com.android.tools.r8.utils.InternalOptions.checkAssertionsEnabled():966:966 -> a
+    7:7:void com.android.tools.r8.utils.InternalOptions.checkAssertionsEnabled():968:968 -> a
     7:7:void setDeadProtoTypes(java.util.Set):83 -> a
 com.android.tools.r8.ir.analysis.proto.ProtoUtils -> com.android.tools.r8.internal.LP:
     boolean $assertionsDisabled -> a
@@ -53677,23 +53677,23 @@
     312:312:void lambda$prepareDesugaringForD8$5(com.android.tools.r8.ir.desugar.ProgramAdditions,com.android.tools.r8.graph.DexProgramClass):477:477 -> a
     313:313:void lambda$prepareDesugaringForD8$4(com.android.tools.r8.ir.desugar.ProgramAdditions,com.android.tools.r8.graph.ProgramMethod):479:479 -> a
     314:347:void convertMethods(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.D8MethodProcessor,com.android.tools.r8.ir.desugar.itf.InterfaceProcessor):490:523 -> a
-    348:348:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2035:2035 -> a
+    348:348:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2038:2038 -> a
     348:348:void convertMethods(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.D8MethodProcessor,com.android.tools.r8.ir.desugar.itf.InterfaceProcessor):523 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    352:352:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2039:2039 -> a
+    352:352:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2042:2042 -> a
     352:352:void convertMethods(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.D8MethodProcessor,com.android.tools.r8.ir.desugar.itf.InterfaceProcessor):523 -> a
     353:353:com.android.tools.r8.utils.structural.Ordered com.android.tools.r8.utils.structural.Ordered.min(com.android.tools.r8.utils.structural.Ordered,com.android.tools.r8.utils.structural.Ordered):21:21 -> a
-    353:353:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2040 -> a
+    353:353:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2043 -> a
     353:353:void convertMethods(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.D8MethodProcessor,com.android.tools.r8.ir.desugar.itf.InterfaceProcessor):523 -> a
     354:354:void convertMethods(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.D8MethodProcessor,com.android.tools.r8.ir.desugar.itf.InterfaceProcessor):522:522 -> a
     355:358:void convertMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):532:535 -> a
-    359:359:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2035:2035 -> a
+    359:359:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2038:2038 -> a
     359:359:void convertMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):535 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    363:363:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2039:2039 -> a
+    363:363:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2042:2042 -> a
     363:363:void convertMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):535 -> a
     364:364:com.android.tools.r8.utils.structural.Ordered com.android.tools.r8.utils.structural.Ordered.min(com.android.tools.r8.utils.structural.Ordered,com.android.tools.r8.utils.structural.Ordered):21:21 -> a
-    364:364:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2040 -> a
+    364:364:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2043 -> a
     364:364:void convertMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):535 -> a
     365:371:void convertMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):534:540 -> a
     372:376:void com.android.tools.r8.ir.conversion.IRConverter.checkPrefixMerging(com.android.tools.r8.graph.ProgramMethod):575:579 -> a
@@ -53878,10 +53878,10 @@
     4446:4446:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
     4446:4446:com.android.tools.r8.utils.Timing optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):1452 -> a
     4447:4469:com.android.tools.r8.utils.Timing optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):1453:1475 -> a
-    4470:4470:boolean com.android.tools.r8.utils.InternalOptions.methodMatchesLogArgumentsFilter(com.android.tools.r8.graph.DexEncodedMethod):1228:1228 -> a
+    4470:4470:boolean com.android.tools.r8.utils.InternalOptions.methodMatchesLogArgumentsFilter(com.android.tools.r8.graph.DexEncodedMethod):1230:1230 -> a
     4470:4470:com.android.tools.r8.utils.Timing optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):1475 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    4471:4476:boolean com.android.tools.r8.utils.InternalOptions.methodMatchesLogArgumentsFilter(com.android.tools.r8.graph.DexEncodedMethod):1228:1233 -> a
+    4471:4476:boolean com.android.tools.r8.utils.InternalOptions.methodMatchesLogArgumentsFilter(com.android.tools.r8.graph.DexEncodedMethod):1230:1235 -> a
     4471:4476:com.android.tools.r8.utils.Timing optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):1475 -> a
     4477:4535:com.android.tools.r8.utils.Timing optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):1475:1533 -> a
     4536:4543:com.android.tools.r8.utils.Timing optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):1528:1535 -> a
@@ -53894,7 +53894,7 @@
     4569:4569:com.android.tools.r8.ir.optimize.DefaultInliningOracle com.android.tools.r8.ir.optimize.Inliner.createDefaultOracle(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor,int):912:912 -> a
     4569:4569:com.android.tools.r8.ir.optimize.InliningOracle lambda$optimize$20(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor):1418 -> a
     4570:4615:void collectOptimizationInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.ClassInitializerDefaultsOptimization$ClassInitializerDefaultsResult,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.ir.conversion.MethodConversionOptions$MutableMethodConversionOptions,com.android.tools.r8.graph.bytecodemetadata.BytecodeMetadataProvider$Builder,com.android.tools.r8.utils.Timing):1559:1604 -> a
-    4616:4616:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.enableRemoveProtoEnumSwitchMap():1646:1646 -> a
+    4616:4616:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.enableRemoveProtoEnumSwitchMap():1648:1648 -> a
     4616:4616:void collectOptimizationInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.ClassInitializerDefaultsOptimization$ClassInitializerDefaultsResult,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.ir.conversion.MethodConversionOptions$MutableMethodConversionOptions,com.android.tools.r8.graph.bytecodemetadata.BytecodeMetadataProvider$Builder,com.android.tools.r8.utils.Timing):1604 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4617:4622:void collectOptimizationInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.ClassInitializerDefaultsOptimization$ClassInitializerDefaultsResult,com.android.tools.r8.ir.optimize.info.OptimizationFeedback,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.ir.conversion.MethodConversionOptions$MutableMethodConversionOptions,com.android.tools.r8.graph.bytecodemetadata.BytecodeMetadataProvider$Builder,com.android.tools.r8.utils.Timing):1605:1610 -> a
@@ -53995,7 +53995,7 @@
     154:159:com.android.tools.r8.graph.DexApplication optimize(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):777:782 -> b
     160:193:com.android.tools.r8.graph.DexApplication optimize(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):781:814 -> b
     194:198:void waveDone(com.android.tools.r8.utils.collections.ProgramMethodSet,java.util.concurrent.ExecutorService):823:827 -> b
-    199:199:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.enableRemoveProtoEnumSwitchMap():1646:1646 -> b
+    199:199:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.enableRemoveProtoEnumSwitchMap():1648:1648 -> b
     199:199:void waveDone(com.android.tools.r8.utils.collections.ProgramMethodSet,java.util.concurrent.ExecutorService):827 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     200:211:void waveDone(com.android.tools.r8.utils.collections.ProgramMethodSet,java.util.concurrent.ExecutorService):828:839 -> b
@@ -56131,7 +56131,7 @@
     103:103:void synthesizeInstanceFields(com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):205:205 -> a
     104:115:void synthesizeInstanceFields(com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):196:207 -> a
     116:117:boolean canAccessModifyLambdaImplMethod():249:250 -> a
-    118:118:boolean com.android.tools.r8.utils.InternalOptions.canAccessModifyLambdaImplementationMethods(com.android.tools.r8.graph.AppView):1886:1886 -> a
+    118:118:boolean com.android.tools.r8.utils.InternalOptions.canAccessModifyLambdaImplementationMethods(com.android.tools.r8.graph.AppView):1889:1889 -> a
     118:118:boolean canAccessModifyLambdaImplMethod():250 -> a
     119:122:boolean com.android.tools.r8.ir.desugar.LambdaClass.isPrivateOrStaticInterfaceMethodInvokeThatWillBeDesugared():242:245 -> a
     119:122:boolean canAccessModifyLambdaImplMethod():251 -> a
@@ -62539,37 +62539,37 @@
     1:8:void lambda$reportDesugarDependencies$0(com.android.tools.r8.ir.desugar.nest.Nest):42:49 -> b
     9:9:void lambda$reportDesugarDependencies$0(com.android.tools.r8.ir.desugar.nest.Nest):43:43 -> b
     10:10:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54:54 -> b
-    11:11:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):978:978 -> b
+    11:11:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980:980 -> b
     11:11:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    12:12:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):978:978 -> b
+    12:12:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980:980 -> b
     12:12:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
     13:13:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> b
-    13:13:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980 -> b
+    13:13:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     13:13:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    14:14:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980:980 -> b
+    14:14:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982:982 -> b
     14:14:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    15:15:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):984:984 -> b
-    15:15:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980 -> b
+    15:15:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):986:986 -> b
+    15:15:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982 -> b
     15:15:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
     16:16:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):0:0 -> b
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":21,"2":22,"3":23}}
-    21:21:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):985:985 -> b
-    21:21:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980 -> b
+    21:21:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):987:987 -> b
+    21:21:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982 -> b
     21:21:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    22:22:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):985:985 -> b
-    22:22:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980 -> b
+    22:22:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):987:987 -> b
+    22:22:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982 -> b
     22:22:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    23:23:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):985:985 -> b
-    23:23:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980 -> b
+    23:23:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):987:987 -> b
+    23:23:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982 -> b
     23:23:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    17:18:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):985:986 -> b
-    17:18:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980 -> b
+    17:18:java.lang.String com.android.tools.r8.utils.InternalOptions.messageErrorMissingNestHost(com.android.tools.r8.graph.DexClass):987:988 -> b
+    17:18:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982 -> b
     17:18:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    19:19:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980:980 -> b
+    19:19:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):982:982 -> b
     19:19:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
-    20:20:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):978:978 -> b
+    20:20:java.lang.RuntimeException com.android.tools.r8.utils.InternalOptions.errorMissingNestHost(com.android.tools.r8.graph.DexClass):980:980 -> b
     20:20:void lambda$reportDesugarDependencies$1(com.android.tools.r8.graph.DexClass):54 -> b
     24:24:void clearNestAttributes():59:59 -> b
     25:25:void synthesizeBridgesForNestBasedAccessesOnClasspath(com.android.tools.r8.graph.DexClasspathClass,com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaringEventConsumer):106:106 -> b
@@ -62679,7 +62679,7 @@
     void lambda$getMethodBridgeReference$5(com.android.tools.r8.synthesis.SyntheticClasspathClassBuilder) -> a
     void lambda$getMethodBridgeReference$6(com.android.tools.r8.graph.DexClasspathClass) -> a
     60:60:com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaring create(com.android.tools.r8.graph.AppView):78:78 -> a
-    61:61:boolean com.android.tools.r8.utils.InternalOptions.canUseNestBasedAccess():1940:1940 -> a
+    61:61:boolean com.android.tools.r8.utils.InternalOptions.canUseNestBasedAccess():1943:1943 -> a
     61:61:boolean com.android.tools.r8.utils.InternalOptions.shouldDesugarNests():524 -> a
     61:61:com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaring create(com.android.tools.r8.graph.AppView):78 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
@@ -64688,11 +64688,11 @@
     69:71:boolean rewriteMoveResult(com.android.tools.r8.ir.code.IRCode):1376:1378 -> j
     1:1:boolean com.android.tools.r8.ir.optimize.CodeRewriter.rewriteSwitch(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer):939:939 -> k
     1:1:boolean rewriteSwitch(com.android.tools.r8.ir.code.IRCode):935 -> k
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.isSwitchRewritingEnabled():2005:2005 -> k
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.isSwitchRewritingEnabled():2008:2008 -> k
     2:2:boolean com.android.tools.r8.ir.optimize.CodeRewriter.rewriteSwitch(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer):939 -> k
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     2:2:boolean rewriteSwitch(com.android.tools.r8.ir.code.IRCode):935 -> k
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.isSwitchRewritingEnabled():2005:2005 -> k
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.isSwitchRewritingEnabled():2008:2008 -> k
     3:3:boolean com.android.tools.r8.ir.optimize.CodeRewriter.rewriteSwitch(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer):939 -> k
     3:3:boolean rewriteSwitch(com.android.tools.r8.ir.code.IRCode):935 -> k
     4:4:boolean com.android.tools.r8.ir.optimize.CodeRewriter.rewriteSwitch(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer):942:942 -> k
@@ -66453,7 +66453,7 @@
     com.android.tools.r8.graph.AppView appView -> a
     1:2:void <init>(com.android.tools.r8.graph.AppView):35:36 -> <init>
     1:2:void run(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):40:41 -> a
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.canUseNestBasedAccess():1940:1940 -> a
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.canUseNestBasedAccess():1943:1943 -> a
     3:3:boolean com.android.tools.r8.utils.InternalOptions.shouldDesugarNests():524 -> a
     3:3:void run(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):41 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
@@ -70783,7 +70783,7 @@
     69:69:void removeSwitchMaps(com.android.tools.r8.ir.code.IRCode):216 -> a
     70:71:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntArrayMap com.android.tools.r8.ir.optimize.enums.EnumValueOptimizer.computeOrdinalToTargetMap(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.IntSwitch,com.android.tools.r8.ir.optimize.enums.EnumValueOptimizer$EnumSwitchInfo):319:320 -> a
     70:71:void removeSwitchMaps(com.android.tools.r8.ir.code.IRCode):216 -> a
-    72:72:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.enableRemoveProtoEnumSwitchMap():1646:1646 -> a
+    72:72:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.enableRemoveProtoEnumSwitchMap():1648:1648 -> a
     72:72:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntArrayMap com.android.tools.r8.ir.optimize.enums.EnumValueOptimizer.computeOrdinalToTargetMap(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.IntSwitch,com.android.tools.r8.ir.optimize.enums.EnumValueOptimizer$EnumSwitchInfo):320 -> a
     72:72:void removeSwitchMaps(com.android.tools.r8.ir.code.IRCode):216 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
@@ -83094,19 +83094,19 @@
     532:532:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):326:326 -> a
     533:533:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):326:326 -> a
     508:509:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):327:328 -> a
-    510:510:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2035:2035 -> a
+    510:510:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2038:2038 -> a
     510:510:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):329 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    514:514:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2039:2039 -> a
+    514:514:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2042:2042 -> a
     514:514:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):329 -> a
     515:515:com.android.tools.r8.utils.structural.Ordered com.android.tools.r8.utils.structural.Ordered.min(com.android.tools.r8.utils.structural.Ordered,com.android.tools.r8.utils.structural.Ordered):21:21 -> a
-    515:515:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2040 -> a
+    515:515:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2043 -> a
     515:515:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):329 -> a
     516:521:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):328:333 -> a
-    522:526:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2035:2039 -> a
+    522:526:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2038:2042 -> a
     522:526:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):333 -> a
     527:527:com.android.tools.r8.utils.structural.Ordered com.android.tools.r8.utils.structural.Ordered.min(com.android.tools.r8.utils.structural.Ordered,com.android.tools.r8.utils.structural.Ordered):21:21 -> a
-    527:527:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2040 -> a
+    527:527:com.android.tools.r8.cf.CfVersion com.android.tools.r8.utils.InternalOptions.classFileVersionAfterDesugaring(com.android.tools.r8.cf.CfVersion):2043 -> a
     527:527:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):333 -> a
     528:530:com.android.tools.r8.cf.CfVersion getClassFileVersion(com.android.tools.r8.graph.DexEncodedMethod):334:336 -> a
     534:541:com.android.tools.r8.graph.DexValue getSystemAnnotationValue(com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexType):354:361 -> a
@@ -97492,11 +97492,11 @@
     13:15:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId writeProguardMap():81 -> a
     19:21:void com.android.tools.r8.naming.ProguardMapSupplier.writeMarker(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):118:120 -> a
     19:21:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId writeProguardMap():81 -> a
-    22:22:com.android.tools.r8.naming.MapVersion com.android.tools.r8.utils.InternalOptions.getMapFileVersion():1864:1864 -> a
+    22:22:com.android.tools.r8.naming.MapVersion com.android.tools.r8.utils.InternalOptions.getMapFileVersion():1867:1867 -> a
     22:22:void com.android.tools.r8.naming.ProguardMapSupplier.writeMarker(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):120 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     22:22:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId writeProguardMap():81 -> a
-    23:25:com.android.tools.r8.naming.MapVersion com.android.tools.r8.utils.InternalOptions.getMapFileVersion():1864:1866 -> a
+    23:25:com.android.tools.r8.naming.MapVersion com.android.tools.r8.utils.InternalOptions.getMapFileVersion():1867:1869 -> a
     23:25:void com.android.tools.r8.naming.ProguardMapSupplier.writeMarker(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):120 -> a
     23:25:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId writeProguardMap():81 -> a
     26:30:void com.android.tools.r8.naming.ProguardMapSupplier.writeMarker(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):121:125 -> a
@@ -97854,7 +97854,7 @@
     2:2:java.lang.String lambda$internalComputeNameFor$0(int):62:62 -> a
 com.android.tools.r8.naming.identifiernamestring.ClassForNameIdentifierNameStringLookupResult -> com.android.tools.r8.internal.K9:
     1:1:void <init>(com.android.tools.r8.graph.DexType):14:14 -> <init>
-    1:1:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> a
+    1:1:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> a
     1:1:boolean isTypeCompatInstantiatedFromUse(com.android.tools.r8.utils.InternalOptions):24 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     boolean isTypeInitializedFromUse() -> d
@@ -98445,7 +98445,7 @@
     com.android.tools.r8.graph.GenericSignatureContextBuilder contextBuilder -> c
     1:4:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.GenericSignatureContextBuilder):35:38 -> <init>
     1:3:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):45:47 -> a
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():639:639 -> a
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():641:641 -> a
     4:4:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):47 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     5:5:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):55:55 -> a
@@ -106236,7 +106236,7 @@
     41:41:void com.android.tools.r8.graph.AppView.rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication):768:768 -> a
     41:41:boolean verifyIdentityRepackaging(com.android.tools.r8.graph.AppView):123 -> a
     42:42:com.android.tools.r8.repackaging.RepackagingLens run(com.android.tools.r8.graph.DirectMappedDexApplication$Builder,java.util.concurrent.ExecutorService):130:130 -> a
-    43:43:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isNone():1248:1248 -> a
+    43:43:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isNone():1250:1250 -> a
     43:43:com.android.tools.r8.repackaging.RepackagingLens run(com.android.tools.r8.graph.DirectMappedDexApplication$Builder,java.util.concurrent.ExecutorService):130 -> a
     44:48:com.android.tools.r8.repackaging.RepackagingLens run(com.android.tools.r8.graph.DirectMappedDexApplication$Builder,java.util.concurrent.ExecutorService):134:138 -> a
     49:63:void com.android.tools.r8.repackaging.Repackaging.processPackagesInDesiredLocation(com.android.tools.r8.graph.ProgramPackageCollection,com.android.tools.r8.com.google.common.collect.BiMap,java.util.Map,java.util.Set):202:216 -> a
@@ -106278,23 +106278,23 @@
     1:1:void <clinit>():328:328 -> <clinit>
     1:6:void <init>(com.android.tools.r8.graph.AppView):336:341 -> <init>
     1:5:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):346:350 -> a
-    6:6:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isRepackageClasses():1256:1256 -> a
+    6:6:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isRepackageClasses():1258:1258 -> a
     6:6:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):350 -> a
-    7:7:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isMinification():1260:1260 -> a
+    7:7:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isMinification():1262:1262 -> a
     7:7:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):352 -> a
     8:14:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):354:360 -> a
     15:20:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):357:362 -> a
-    21:21:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isFlattenPackageHierarchy():1252:1252 -> a
+    21:21:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isFlattenPackageHierarchy():1254:1254 -> a
     21:21:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):362 -> a
     22:27:java.lang.String getNewPackageDescriptor(com.android.tools.r8.graph.ProgramPackage,java.util.Set):362:367 -> a
     28:32:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):373:377 -> a
-    33:33:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isRepackageClasses():1256:1256 -> a
+    33:33:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isRepackageClasses():1258:1258 -> a
     33:33:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):377 -> a
     34:34:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):378:378 -> a
-    35:35:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isMinification():1260:1260 -> a
+    35:35:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isMinification():1262:1262 -> a
     35:35:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):379 -> a
     36:40:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):381:385 -> a
-    41:41:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isFlattenPackageHierarchy():1252:1252 -> a
+    41:41:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isFlattenPackageHierarchy():1254:1254 -> a
     41:41:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):385 -> a
     42:42:boolean isPackageInTargetLocation(com.android.tools.r8.graph.ProgramPackage):385:385 -> a
     43:54:com.android.tools.r8.graph.DexType getRepackagedType(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexProgramClass,java.lang.String,com.android.tools.r8.com.google.common.collect.BiMap):423:434 -> a
@@ -108352,7 +108352,7 @@
     459:460:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):365:366 -> a
     461:461:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration,com.android.tools.r8.graph.EnclosingMethodAttribute):213:213 -> a
     461:461:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):366 -> a
-    462:462:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> a
+    462:462:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> a
     462:462:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration,com.android.tools.r8.graph.EnclosingMethodAttribute):216 -> a
     462:462:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):366 -> a
     463:463:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration,com.android.tools.r8.graph.EnclosingMethodAttribute):221:221 -> a
@@ -108368,7 +108368,7 @@
     472:473:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):371:372 -> a
     474:474:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):204:204 -> a
     474:474:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):372 -> a
-    475:475:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> a
+    475:475:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> a
     475:475:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207 -> a
     475:475:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):372 -> a
     476:476:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207:207 -> a
@@ -108384,7 +108384,7 @@
     485:486:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):377:378 -> a
     487:487:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):204:204 -> a
     487:487:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):378 -> a
-    488:488:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> a
+    488:488:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> a
     488:488:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207 -> a
     488:488:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):378 -> a
     489:489:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207:207 -> a
@@ -108400,7 +108400,7 @@
     497:498:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):384:385 -> a
     499:499:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):204:204 -> a
     499:499:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):385 -> a
-    500:500:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> a
+    500:500:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> a
     500:500:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207 -> a
     500:500:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):385 -> a
     501:501:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207:207 -> a
@@ -108416,7 +108416,7 @@
     509:510:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):388:389 -> a
     511:511:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):204:204 -> a
     511:511:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):389 -> a
-    512:512:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> a
+    512:512:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> a
     512:512:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207 -> a
     512:512:boolean canRemoveInnerClassAttribute(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.InnerClassAttribute,com.android.tools.r8.graph.EnclosingMethodAttribute):389 -> a
     513:513:boolean com.android.tools.r8.shaking.KeepInfo.isInnerClassesAttributeRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):207:207 -> a
@@ -108573,7 +108573,7 @@
     1191:1191:java.lang.Boolean lambda$mayPropagateValueFor$11(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexMethod):1048:1048 -> a
     1192:1192:boolean isClassInliningAllowed(com.android.tools.r8.graph.DexProgramClass):1097:1097 -> a
     1193:1193:boolean isMinificationAllowed(com.android.tools.r8.graph.DexReference):1101:1101 -> a
-    1194:1194:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    1194:1194:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     1194:1194:boolean isMinificationAllowed(com.android.tools.r8.graph.DexReference):1101 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     1195:1196:boolean isMinificationAllowed(com.android.tools.r8.graph.DexReference):1101:1102 -> a
@@ -109858,7 +109858,7 @@
     8152:8154:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2360:2362 -> a
     8155:8155:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
     8155:8155:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
-    8156:8156:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    8156:8156:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     8156:8156:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8156:8156:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
@@ -109871,7 +109871,7 @@
     8161:8161:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2366:2366 -> a
     8162:8162:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
     8162:8162:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
-    8163:8163:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    8163:8163:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     8163:8163:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8163:8163:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
@@ -109881,7 +109881,7 @@
     8166:8166:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2372:2372 -> a
     8167:8167:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
     8167:8167:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
-    8168:8168:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    8168:8168:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     8168:8168:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8168:8168:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
@@ -110841,7 +110841,7 @@
     1873:1878:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175:3180 -> b
     1879:1879:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> b
     1879:1879:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
-    1880:1880:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> b
+    1880:1880:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> b
     1880:1880:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     1880:1880:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
@@ -112249,7 +112249,7 @@
     1:1:boolean internalIsAnnotationRemovalAllowed():79:79 -> c
     2:2:boolean isPinned(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):97:97 -> c
     3:3:boolean isSignatureRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):149:149 -> c
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> c
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> c
     4:4:boolean isSignatureRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):152 -> c
     5:5:boolean internalIsSignatureRemovalAllowed():157:157 -> c
     5:5:boolean isSignatureRemovalAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):153 -> c
@@ -112557,7 +112557,7 @@
     2:2:boolean internalIsInliningAllowed():99:99 -> f
     2:2:boolean isInliningAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):95 -> f
     1:3:boolean isMethodStaticizingAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):103:105 -> g
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.isMethodStaticizingEnabled():703:703 -> g
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.isMethodStaticizingEnabled():705:705 -> g
     4:4:boolean isMethodStaticizingAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):106 -> g
     5:5:boolean internalIsMethodStaticizingAllowed():111:111 -> g
     5:5:boolean isMethodStaticizingAllowed(com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):107 -> g
@@ -117234,7 +117234,7 @@
     2918:2919:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.addRule(com.android.tools.r8.shaking.ProguardKeepRuleBase):531:532 -> a
     2918:2919:void includeDescriptor(com.android.tools.r8.graph.DexType,com.android.tools.r8.shaking.ProguardKeepRuleBase,com.android.tools.r8.shaking.EnqueuerEvent):1107 -> a
     2920:2924:void includeDescriptor(com.android.tools.r8.graph.DexType,com.android.tools.r8.shaking.ProguardKeepRuleBase,com.android.tools.r8.shaking.EnqueuerEvent):1108:1112 -> a
-    2925:2925:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    2925:2925:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     2925:2925:void includeDescriptor(com.android.tools.r8.graph.DexType,com.android.tools.r8.shaking.ProguardKeepRuleBase,com.android.tools.r8.shaking.EnqueuerEvent):1112 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     2926:2927:void includeDescriptor(com.android.tools.r8.graph.DexType,com.android.tools.r8.shaking.ProguardKeepRuleBase,com.android.tools.r8.shaking.EnqueuerEvent):1112:1113 -> a
@@ -117348,7 +117348,7 @@
     4543:4547:boolean isInterfaceMethodNeedingDesugaring(com.android.tools.r8.graph.ProgramDefinition):1607:1611 -> a
     4543:4547:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1483 -> a
     4548:4566:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1484:1502 -> a
-    4567:4567:boolean com.android.tools.r8.utils.InternalOptions.isOptimizationEnabled():625:625 -> a
+    4567:4567:boolean com.android.tools.r8.utils.InternalOptions.isOptimizationEnabled():627:627 -> a
     4567:4567:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1502 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4568:4570:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1502:1504 -> a
@@ -117393,7 +117393,7 @@
     4612:4612:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateMinimumKeepInfoFor(com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.DexReference):70:70 -> a
     4612:4612:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1537 -> a
     4613:4617:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1538:1542 -> a
-    4618:4618:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    4618:4618:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     4618:4618:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1542 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4619:4621:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1542:1544 -> a
@@ -117403,7 +117403,7 @@
     4623:4623:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateMinimumKeepInfoFor(com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.DexReference):70:70 -> a
     4623:4623:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1544 -> a
     4624:4628:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1545:1549 -> a
-    4629:4629:boolean com.android.tools.r8.utils.InternalOptions.isOptimizationEnabled():625:625 -> a
+    4629:4629:boolean com.android.tools.r8.utils.InternalOptions.isOptimizationEnabled():627:627 -> a
     4629:4629:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1549 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4630:4632:void evaluateKeepRule(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.ProguardKeepRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1549:1551 -> a
@@ -123068,331 +123068,332 @@
     boolean enableStringSwitchConversion -> P
     boolean printTimes -> i
     boolean ignoreJavaLibraryOverride -> b0
-    java.util.Map warningInvalidParameterAnnotations -> Y0
+    java.util.Map missingEnclosingMembers -> Y0
     com.android.tools.r8.features.FeatureSplitConfiguration featureSplitConfiguration -> f
     com.android.tools.r8.experimental.startup.StartupConfiguration startupConfiguration -> g
     boolean enableFieldBitAccessAnalysis -> q
-    com.android.tools.r8.StringConsumer usageInformationConsumer -> d1
-    com.android.tools.r8.cf.CfVersion SUPPORTED_CF_VERSION -> u1
-    com.android.tools.r8.utils.OffOrAuto interfaceMethodDesugaring -> t0
-    boolean enableInheritanceClassInDexDistributor -> V0
+    com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions openClosedInterfacesOptions -> O0
+    java.util.Set reportedMissingForDesugaring -> r1
+    com.android.tools.r8.StringConsumer proguardMapConsumer -> d1
+    boolean minimalMainDex -> V0
     boolean enableInitializedClassesAnalysis -> y
-    java.util.Set extensiveInterfaceMethodMinifierLoggingFilter -> i0
-    com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions callSiteOptimizationOptions -> J0
+    com.android.tools.r8.utils.Box reportedExperimentClassFileVersion -> u1
+    java.util.Set extensiveLoggingFilter -> i0
+    com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions apiModelTestingOptions -> R0
     java.util.List outputInspections -> h
-    boolean forceProguardCompatibility -> E0
+    boolean debug -> J0
+    com.android.tools.r8.experimental.graphinfo.GraphConsumer mainDexKeptGraphConsumer -> m1
+    com.android.tools.r8.utils.AssertionConfigurationWithDefault assertionsConfiguration -> G0
+    boolean reportMissingClassesInInnerClassAttributes -> E0
+    java.util.Map warningInvalidDebugInfo -> a1
     boolean forceAnnotateSynthetics -> I
     boolean printMemory -> j
-    boolean enableMinification -> A0
-    com.android.tools.r8.utils.InternalOptions$LineNumberOptimization lineNumberOptimization -> W0
-    java.util.concurrent.atomic.AtomicBoolean reportedErrorReadingKotlinMetadataReflectively -> r1
+    boolean enableTreeShaking -> A0
+    boolean skipReadingDexCode -> b1
+    com.android.tools.r8.utils.InternalOptions$DesugarState desugarState -> s0
     boolean enableVerticalClassMerging -> r
-    boolean enableTreeShaking -> z0
-    boolean processCovariantReturnTypeAnnotations -> v0
+    boolean enableMainDexListCheck -> z0
     boolean useSmaliSyntax -> Y
+    java.util.List methodsFilter -> k0
     boolean enableSideEffectAnalysis -> z
+    boolean enableLoadStoreOptimization -> r0
     boolean cfToCfDesugar -> H
-    boolean ignoreBootClasspathEnumsForMaindexTracing -> n0
+    boolean retainCompileTimeAnnotations -> n0
+    com.android.tools.r8.utils.InternalOptions$InlinerOptions inlinerOptions -> M0
+    com.android.tools.r8.utils.ThrowingBiConsumer loadMachineDesugaredLibrarySpecification -> h1
     int callGraphLikelySpuriousCallEdgeThreshold -> M
-    com.android.tools.r8.utils.InternalOptions$TestingOptions testing -> S0
     java.lang.String dumpInputToDirectory -> l
     boolean ignoreMainDexMissingClasses -> c0
     boolean enableRedundantFieldLoadElimination -> V
-    java.util.Map missingEnclosingMembers -> X0
     boolean enableClassInlining -> w
-    com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions horizontalClassMergerOptions -> M0
-    java.util.Set reportedMissingForDesugaring -> q1
-    com.android.tools.r8.utils.AssertionConfigurationWithDefault assertionsConfiguration -> F0
-    com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions protoShrinking -> O0
-    boolean $assertionsDisabled -> x1
-    com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions apiModelTestingOptions -> Q0
-    java.util.Set extensiveLoggingFilter -> h0
-    com.android.tools.r8.StringConsumer proguardSeedsConsumer -> e1
+    com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions desugarSpecificOptions -> S0
+    boolean enableInheritanceClassInDexDistributor -> W0
+    int SUPPORTED_DEX_VERSION -> x1
+    com.android.tools.r8.StringConsumer usageInformationConsumer -> e1
+    java.util.function.Consumer syntheticProguardRulesConsumer -> o1
     boolean enableTreeShakingOfLibraryMethodOverrides -> E
     com.android.tools.r8.ProgramConsumer programConsumer -> d
     boolean enableSwitchRewriting -> O
+    boolean forceProguardCompatibility -> F0
     boolean libraryInterfacesMayHaveStaticInitialization -> p
     java.lang.String dumpInputToFile -> k
-    boolean ignoreMissingClasses -> B0
+    boolean enableMinification -> B0
+    java.util.concurrent.atomic.AtomicBoolean reportedErrorReadingKotlinMetadataReflectively -> s1
     boolean enableRedundantConstNumberOptimization -> W
-    com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions classInlinerOptions -> K0
     boolean enableClassStaticizer -> x
     com.android.tools.r8.graph.DexItemFactory itemFactory -> a
-    java.util.List mainDexKeepRules -> T0
-    java.util.List logArgumentsFilter -> p0
-    boolean lookupLibraryBeforeProgram -> w0
-    com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineDesugaredLibrarySpecification machineDesugaredLibrarySpecification -> h1
-    boolean enableNestReduction -> s0
+    boolean processCovariantReturnTypeAnnotations -> w0
+    com.android.tools.r8.DesugarGraphConsumer desugarGraphConsumer -> n1
     java.util.function.BiPredicate dexClassChecksumFilter -> G
     boolean encodeChecksums -> F
-    boolean pruneNonVissibleAnnotationClasses -> o0
-    com.android.tools.r8.utils.InternalOptions$InlinerOptions inlinerOptions -> L0
+    boolean ignoreBootClasspathEnumsForMaindexTracing -> o0
     com.android.tools.r8.DataResourceConsumer dataResourceConsumer -> e
     boolean passthroughDexCode -> m
     boolean enableCfByteCodePassThrough -> d0
-    com.android.tools.r8.experimental.graphinfo.GraphConsumer keptGraphConsumer -> k1
+    com.android.tools.r8.utils.InternalOptions$TestingOptions testing -> T0
     boolean enableVisibilityBridgeRemoval -> L
     boolean enableEnumUnboxing -> u
+    java.util.Set invalidLibraryClasses -> t1
+    com.android.tools.r8.SourceFileProvider sourceFileProvider -> q1
+    com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions horizontalClassMergerOptions -> N0
     com.android.tools.r8.dex.Marker marker -> g0
+    boolean $assertionsDisabled -> y1
     com.android.tools.r8.utils.Reporter reporter -> c
-    com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions desugarSpecificOptions -> R0
-    com.android.tools.r8.StringConsumer mainDexListConsumer -> b1
-    java.util.function.Consumer syntheticProguardRulesConsumer -> n1
+    com.android.tools.r8.MapIdProvider mapIdProvider -> p1
+    com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions protoShrinking -> P0
     int threadCount -> X
-    com.android.tools.r8.StringConsumer configurationConsumer -> f1
-    int SUPPORTED_DEX_VERSION -> w1
+    com.android.tools.r8.StringConsumer proguardSeedsConsumer -> f1
     java.util.Set neverMergePrefixes -> o
     java.lang.Thread mainThread -> N
-    com.android.tools.r8.StringConsumer desugaredLibraryKeepRuleConsumer -> j1
-    boolean skipIR -> H0
-    boolean relocatorCompilation -> i1
+    boolean configurationDebugging -> H0
     boolean enableNameReflectionOptimization -> C
-    com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions kotlinOptimizationOptions -> P0
+    com.android.tools.r8.cf.CfVersion EXPERIMENTAL_CF_VERSION -> w1
     boolean enableNeverMergePrefixes -> n
-    boolean configurationDebugging -> G0
-    boolean reportMissingClassesInEnclosingMethodAttribute -> C0
+    boolean ignoreMissingClasses -> C0
     boolean enableInitializedClassesInInstanceMethodsAnalysis -> U
     boolean enableSimpleInliningConstraints -> v
-    boolean loadAllClassDefinitions -> x0
+    boolean lookupLibraryBeforeProgram -> x0
+    java.util.List mainDexKeepRules -> U0
+    com.android.tools.r8.utils.OffOrAuto tryWithResourcesDesugaring -> v0
+    com.android.tools.r8.utils.AndroidApiLevel minApiLevel -> l0
+    java.util.List logArgumentsFilter -> q0
+    boolean enableNestReduction -> t0
     com.android.tools.r8.utils.InternalOptions$OutlineOptions outline -> T
-    com.android.tools.r8.DesugarGraphConsumer desugarGraphConsumer -> m1
-    boolean intermediate -> l0
+    com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineDesugaredLibrarySpecification machineDesugaredLibrarySpecification -> i1
+    boolean pruneNonVissibleAnnotationClasses -> p0
+    com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions classInlinerOptions -> L0
+    boolean enableRecordDesugaring -> h0
     com.android.tools.r8.dump.DumpOptions dumpOptions -> e0
     boolean enableStringConcatenationOptimization -> D
     int minimumStringSwitchSize -> Q
     boolean readDebugSetFileEvent -> J
     boolean invalidDebugInfoStrict -> a0
-    com.android.tools.r8.SourceFileProvider sourceFileProvider -> p1
-    java.util.Set invalidLibraryClasses -> s1
-    com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions openClosedInterfacesOptions -> N0
-    java.util.Map warningInvalidDebugInfo -> Z0
+    java.util.Map warningInvalidParameterAnnotations -> Z0
     boolean enableEnumValueOptimization -> R
     boolean enableUnusedInterfaceRemoval -> s
-    boolean minimalMainDex -> U0
-    com.android.tools.r8.StringConsumer proguardMapConsumer -> c1
-    com.android.tools.r8.MapIdProvider mapIdProvider -> o1
+    java.util.Set extensiveInterfaceMethodMinifierLoggingFilter -> j0
+    com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions kotlinOptimizationOptions -> Q0
+    com.android.tools.r8.StringConsumer mainDexListConsumer -> c1
     boolean invalidDebugInfoFatal -> Z
-    com.android.tools.r8.utils.Box reportedExperimentClassFileVersion -> t1
+    com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions callSiteOptimizationOptions -> K0
+    com.android.tools.r8.StringConsumer configurationConsumer -> g1
+    com.android.tools.r8.StringConsumer desugaredLibraryKeepRuleConsumer -> k1
     boolean enableDeterminismAnalysis -> A
-    boolean debug -> I0
-    com.android.tools.r8.experimental.graphinfo.GraphConsumer mainDexKeptGraphConsumer -> l1
-    com.android.tools.r8.cf.CfVersion EXPERIMENTAL_CF_VERSION -> v1
-    boolean reportMissingClassesInInnerClassAttributes -> D0
+    boolean relocatorCompilation -> j1
+    boolean skipIR -> I0
+    com.android.tools.r8.experimental.graphinfo.GraphConsumer keptGraphConsumer -> l1
+    com.android.tools.r8.cf.CfVersion SUPPORTED_CF_VERSION -> v1
+    boolean reportMissingClassesInEnclosingMethodAttribute -> D0
     com.android.tools.r8.shaking.ProguardConfiguration proguardConfiguration -> b
-    com.android.tools.r8.utils.InternalOptions$DesugarState desugarState -> r0
-    boolean skipReadingDexCode -> a1
     boolean disableL8AnnotationRemoval -> K
-    boolean enableMainDexListCheck -> y0
+    com.android.tools.r8.utils.InternalOptions$LineNumberOptimization lineNumberOptimization -> X0
+    boolean loadAllClassDefinitions -> y0
     boolean enableEnumSwitchMapRemoval -> S
-    com.android.tools.r8.utils.OffOrAuto tryWithResourcesDesugaring -> u0
+    com.android.tools.r8.utils.OffOrAuto interfaceMethodDesugaring -> u0
     boolean enableDevirtualization -> t
-    com.android.tools.r8.utils.AndroidApiLevel minApiLevel -> k0
-    boolean enableLoadStoreOptimization -> q0
-    java.util.List methodsFilter -> j0
-    boolean retainCompileTimeAnnotations -> m0
+    boolean intermediate -> m0
     boolean enableServiceLoaderRewriting -> B
-    com.android.tools.r8.utils.ThrowingBiConsumer loadMachineDesugaredLibrarySpecification -> g1
     1:32:void <clinit>():112:143 -> <clinit>
     1:1:void <init>():174:174 -> <init>
-    2:955:void <init>():165:1118 -> <init>
-    956:960:void <init>():175:179 -> <init>
-    961:961:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):183:183 -> <init>
-    962:1915:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):165:1118 -> <init>
-    1916:1923:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):184:191 -> <init>
-    1924:1924:void <init>(com.android.tools.r8.CompilationMode,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.Reporter):196:196 -> <init>
-    1925:2878:void <init>(com.android.tools.r8.CompilationMode,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.Reporter):165:1118 -> <init>
-    2879:2899:void <init>(com.android.tools.r8.CompilationMode,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.Reporter):197:217 -> <init>
-    1:1:boolean canHaveNumberConversionRegisterAllocationBug():2236:2236 -> A
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> A
-    2:2:boolean canHaveNumberConversionRegisterAllocationBug():2236 -> A
-    3:3:boolean canHaveNumberConversionRegisterAllocationBug():2236:2236 -> A
+    2:957:void <init>():165:1120 -> <init>
+    958:962:void <init>():175:179 -> <init>
+    963:963:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):183:183 -> <init>
+    964:1919:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):165:1120 -> <init>
+    1920:1927:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):184:191 -> <init>
+    1928:1928:void <init>(com.android.tools.r8.CompilationMode,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.Reporter):196:196 -> <init>
+    1929:2884:void <init>(com.android.tools.r8.CompilationMode,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.Reporter):165:1120 -> <init>
+    2885:2905:void <init>(com.android.tools.r8.CompilationMode,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.Reporter):197:217 -> <init>
+    1:1:boolean canHaveNumberConversionRegisterAllocationBug():2239:2239 -> A
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> A
+    2:2:boolean canHaveNumberConversionRegisterAllocationBug():2239 -> A
+    3:3:boolean canHaveNumberConversionRegisterAllocationBug():2239:2239 -> A
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> A0
     1:1:boolean isDesugaring():486 -> A0
     2:2:boolean isDesugaring():486:486 -> A0
-    1:1:boolean canHaveOverlappingLongRegisterBug():2120:2120 -> B
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> B
-    2:2:boolean canHaveOverlappingLongRegisterBug():2120 -> B
-    3:3:boolean canHaveOverlappingLongRegisterBug():2120:2120 -> B
-    1:1:boolean isForceProguardCompatibilityEnabled():635:635 -> B0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> C
-    1:1:boolean canHaveSuperInvokeBug():2425 -> C
-    2:2:boolean canHaveSuperInvokeBug():2425:2425 -> C
+    1:1:boolean canHaveOverlappingLongRegisterBug():2123:2123 -> B
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> B
+    2:2:boolean canHaveOverlappingLongRegisterBug():2123 -> B
+    3:3:boolean canHaveOverlappingLongRegisterBug():2123:2123 -> B
+    1:1:boolean isForceProguardCompatibilityEnabled():637:637 -> B0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> C
+    1:1:boolean canHaveSuperInvokeBug():2428 -> C
+    2:2:boolean canHaveSuperInvokeBug():2428:2428 -> C
     1:1:boolean isGeneratingClassFiles():482:482 -> C0
-    1:1:boolean canHaveSwitchMaxIntBug():2409:2409 -> D
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> D
-    2:2:boolean canHaveSwitchMaxIntBug():2409 -> D
-    3:3:boolean canHaveSwitchMaxIntBug():2409:2409 -> D
+    1:1:boolean canHaveSwitchMaxIntBug():2412:2412 -> D
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> D
+    2:2:boolean canHaveSwitchMaxIntBug():2412 -> D
+    3:3:boolean canHaveSwitchMaxIntBug():2412:2412 -> D
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingDexIndexed():474:474 -> D0
     1:1:boolean isGeneratingDex():470 -> D0
     2:2:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingDexFilePerClassFile():478:478 -> D0
     2:2:boolean isGeneratingDex():470 -> D0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> E
-    1:1:boolean canHaveThisJitCodeDebuggingBug():2114 -> E
-    2:2:boolean canHaveThisJitCodeDebuggingBug():2114:2114 -> E
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> E
+    1:1:boolean canHaveThisJitCodeDebuggingBug():2117 -> E
+    2:2:boolean canHaveThisJitCodeDebuggingBug():2117:2117 -> E
     1:1:boolean com.android.tools.r8.utils.InternalOptions.hasConsumer():427:427 -> E0
-    1:1:boolean isInterfaceMethodDesugaringEnabled():1996 -> E0
-    2:4:boolean isInterfaceMethodDesugaringEnabled():1999:2001 -> E0
-    1:1:boolean canHaveThisTypeVerifierBug():2105:2105 -> F
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> F
-    2:2:boolean canHaveThisTypeVerifierBug():2105 -> F
-    3:3:boolean canHaveThisTypeVerifierBug():2105:2105 -> F
-    1:1:boolean isKeepAttributesSignatureEnabled():644:644 -> F0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> G
-    1:1:boolean canHaveTracingPastInstructionsStreamBug():2276 -> G
-    2:2:boolean canHaveTracingPastInstructionsStreamBug():2276:2276 -> G
-    1:1:boolean isKeepEnclosingMethodAttributeEnabled():649:649 -> G0
+    1:1:boolean isInterfaceMethodDesugaringEnabled():1999 -> E0
+    2:4:boolean isInterfaceMethodDesugaringEnabled():2002:2004 -> E0
+    1:1:boolean canHaveThisTypeVerifierBug():2108:2108 -> F
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> F
+    2:2:boolean canHaveThisTypeVerifierBug():2108 -> F
+    3:3:boolean canHaveThisTypeVerifierBug():2108:2108 -> F
+    1:1:boolean isKeepAttributesSignatureEnabled():646:646 -> F0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> G
+    1:1:boolean canHaveTracingPastInstructionsStreamBug():2279 -> G
+    2:2:boolean canHaveTracingPastInstructionsStreamBug():2279:2279 -> G
+    1:1:boolean isKeepEnclosingMethodAttributeEnabled():651:651 -> G0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> H
-    1:1:boolean canHaveZipFileWithMissingCloseableBug():2401 -> H
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> H
-    2:2:boolean canHaveZipFileWithMissingCloseableBug():2401 -> H
-    3:3:boolean canHaveZipFileWithMissingCloseableBug():2401:2401 -> H
-    1:1:boolean isKeepInnerClassesAttributeEnabled():654:654 -> H0
-    1:1:boolean canInitCauseAfterAssertionErrorObjectConstructor():2050:2050 -> I
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> I
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> I
-    2:2:boolean canInitCauseAfterAssertionErrorObjectConstructor():2050 -> I
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> I
-    3:3:boolean canInitCauseAfterAssertionErrorObjectConstructor():2050 -> I
-    1:1:boolean isKeepRuntimeInvisibleAnnotationsEnabled():659:659 -> I0
-    1:1:boolean canLeaveStaticInterfaceMethodInvokes():1948:1948 -> J
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> J
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> J
-    2:2:boolean canLeaveStaticInterfaceMethodInvokes():1948 -> J
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> J
-    3:3:boolean canLeaveStaticInterfaceMethodInvokes():1948 -> J
-    1:1:boolean isKeepRuntimeInvisibleParameterAnnotationsEnabled():664:664 -> J0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> K
-    1:1:boolean canParseNumbersWithPlusPrefix():2417 -> K
-    2:2:boolean canParseNumbersWithPlusPrefix():2417:2417 -> K
-    1:1:boolean isKeepRuntimeVisibleAnnotationsEnabled():669:669 -> K0
-    1:1:boolean canUseAssertionErrorTwoArgumentConstructor():2031:2031 -> L
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> L
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> L
-    2:2:boolean canUseAssertionErrorTwoArgumentConstructor():2031 -> L
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> L
-    3:3:boolean canUseAssertionErrorTwoArgumentConstructor():2031 -> L
-    1:1:boolean isKeepRuntimeVisibleParameterAnnotationsEnabled():674:674 -> L0
+    1:1:boolean canHaveZipFileWithMissingCloseableBug():2404 -> H
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> H
+    2:2:boolean canHaveZipFileWithMissingCloseableBug():2404 -> H
+    3:3:boolean canHaveZipFileWithMissingCloseableBug():2404:2404 -> H
+    1:1:boolean isKeepInnerClassesAttributeEnabled():656:656 -> H0
+    1:1:boolean canInitCauseAfterAssertionErrorObjectConstructor():2053:2053 -> I
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> I
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> I
+    2:2:boolean canInitCauseAfterAssertionErrorObjectConstructor():2053 -> I
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> I
+    3:3:boolean canInitCauseAfterAssertionErrorObjectConstructor():2053 -> I
+    1:1:boolean isKeepRuntimeInvisibleAnnotationsEnabled():661:661 -> I0
+    1:1:boolean canLeaveStaticInterfaceMethodInvokes():1951:1951 -> J
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> J
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> J
+    2:2:boolean canLeaveStaticInterfaceMethodInvokes():1951 -> J
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> J
+    3:3:boolean canLeaveStaticInterfaceMethodInvokes():1951 -> J
+    1:1:boolean isKeepRuntimeInvisibleParameterAnnotationsEnabled():666:666 -> J0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> K
+    1:1:boolean canParseNumbersWithPlusPrefix():2420 -> K
+    2:2:boolean canParseNumbersWithPlusPrefix():2420:2420 -> K
+    1:1:boolean isKeepRuntimeVisibleAnnotationsEnabled():671:671 -> K0
+    1:1:boolean canUseAssertionErrorTwoArgumentConstructor():2034:2034 -> L
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> L
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> L
+    2:2:boolean canUseAssertionErrorTwoArgumentConstructor():2034 -> L
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> L
+    3:3:boolean canUseAssertionErrorTwoArgumentConstructor():2034 -> L
+    1:1:boolean isKeepRuntimeVisibleParameterAnnotationsEnabled():676:676 -> L0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> M
-    1:1:boolean canUseConstantMethodHandle():1924 -> M
-    2:2:boolean canUseConstantMethodHandle():1924:1924 -> M
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> M
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> M
-    3:3:boolean canUseConstantMethodHandle():1924 -> M
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> M
-    4:4:boolean canUseConstantMethodHandle():1924 -> M
-    1:3:boolean isMinifying():603:603 -> M0
-    5:5:boolean isMinifying():605:605 -> M0
+    1:1:boolean canUseConstantMethodHandle():1927 -> M
+    2:2:boolean canUseConstantMethodHandle():1927:1927 -> M
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> M
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> M
+    3:3:boolean canUseConstantMethodHandle():1927 -> M
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> M
+    4:4:boolean canUseConstantMethodHandle():1927 -> M
+    1:3:boolean isMinifying():605:605 -> M0
+    5:5:boolean isMinifying():607:607 -> M0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> N
-    1:1:boolean canUseConstantMethodType():1928 -> N
-    2:2:boolean canUseConstantMethodType():1928:1928 -> N
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> N
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> N
-    3:3:boolean canUseConstantMethodType():1928 -> N
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> N
-    4:4:boolean canUseConstantMethodType():1928 -> N
-    1:1:boolean isOptimizing():589:589 -> N0
-    1:1:boolean canUseDefaultAndStaticInterfaceMethods():1936:1936 -> O
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> O
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> O
-    2:2:boolean canUseDefaultAndStaticInterfaceMethods():1936 -> O
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> O
-    3:3:boolean canUseDefaultAndStaticInterfaceMethods():1936 -> O
-    1:1:boolean isRelease():593:593 -> O0
-    1:2:boolean canUseFilledNewArrayOfObjects():2062:2063 -> P
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> P
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> P
-    3:3:boolean canUseFilledNewArrayOfObjects():2063 -> P
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> P
-    4:4:boolean canUseFilledNewArrayOfObjects():2063 -> P
-    1:3:boolean isShrinking():597:597 -> P0
-    5:5:boolean isShrinking():599:599 -> P0
-    1:1:boolean canUseInputStackMaps():712:712 -> Q
+    1:1:boolean canUseConstantMethodType():1931 -> N
+    2:2:boolean canUseConstantMethodType():1931:1931 -> N
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> N
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> N
+    3:3:boolean canUseConstantMethodType():1931 -> N
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> N
+    4:4:boolean canUseConstantMethodType():1931 -> N
+    1:1:boolean isOptimizing():591:591 -> N0
+    1:1:boolean canUseDefaultAndStaticInterfaceMethods():1939:1939 -> O
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> O
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> O
+    2:2:boolean canUseDefaultAndStaticInterfaceMethods():1939 -> O
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> O
+    3:3:boolean canUseDefaultAndStaticInterfaceMethods():1939 -> O
+    1:1:boolean isRelease():595:595 -> O0
+    1:2:boolean canUseFilledNewArrayOfObjects():2065:2066 -> P
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> P
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> P
+    3:3:boolean canUseFilledNewArrayOfObjects():2066 -> P
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> P
+    4:4:boolean canUseFilledNewArrayOfObjects():2066 -> P
+    1:3:boolean isShrinking():599:599 -> P0
+    5:5:boolean isShrinking():601:601 -> P0
+    1:1:boolean canUseInputStackMaps():714:714 -> Q
     2:2:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> Q
-    2:2:boolean canUseInputStackMaps():712 -> Q
-    1:1:boolean isStringSwitchConversionEnabled():2009:2009 -> Q0
+    2:2:boolean canUseInputStackMaps():714 -> Q
+    1:1:boolean isStringSwitchConversionEnabled():2012:2012 -> Q0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> R
-    1:1:boolean canUseInvokeCustom():1932 -> R
-    2:2:boolean canUseInvokeCustom():1932:1932 -> R
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> R
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> R
-    3:3:boolean canUseInvokeCustom():1932 -> R
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> R
-    4:4:boolean canUseInvokeCustom():1932 -> R
+    1:1:boolean canUseInvokeCustom():1935 -> R
+    2:2:boolean canUseInvokeCustom():1935:1935 -> R
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> R
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> R
+    3:3:boolean canUseInvokeCustom():1935 -> R
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> R
+    4:4:boolean canUseInvokeCustom():1935 -> R
     1:6:void keepDebugRelatedInformation():222:227 -> R0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> S
-    1:1:boolean canUseInvokePolymorphic():1920 -> S
-    2:2:boolean canUseInvokePolymorphic():1920:1920 -> S
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> S
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> S
-    3:3:boolean canUseInvokePolymorphic():1920 -> S
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> S
-    4:4:boolean canUseInvokePolymorphic():1920 -> S
-    1:2:boolean keepInnerClassStructure():707:708 -> S0
+    1:1:boolean canUseInvokePolymorphic():1923 -> S
+    2:2:boolean canUseInvokePolymorphic():1923:1923 -> S
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> S
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> S
+    3:3:boolean canUseInvokePolymorphic():1923 -> S
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> S
+    4:4:boolean canUseInvokePolymorphic():1923 -> S
+    1:2:boolean keepInnerClassStructure():709:710 -> S0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> T
-    1:1:boolean canUseInvokePolymorphicOnVarHandle():1916 -> T
-    2:2:boolean canUseInvokePolymorphicOnVarHandle():1916:1916 -> T
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> T
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> T
-    3:3:boolean canUseInvokePolymorphicOnVarHandle():1916 -> T
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> T
-    4:4:boolean canUseInvokePolymorphicOnVarHandle():1916 -> T
-    1:1:com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions kotlinOptimizationOptions():781:781 -> T0
-    1:1:boolean canUseJavaUtilObjects():2018:2018 -> U
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> U
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> U
-    2:2:boolean canUseJavaUtilObjects():2018 -> U
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> U
-    3:3:boolean canUseJavaUtilObjects():2018 -> U
-    1:1:boolean parseSignatureAttribute():639:639 -> U0
-    1:1:boolean canUseJavaUtilObjectsIsNull():2022:2022 -> V
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> V
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> V
-    2:2:boolean canUseJavaUtilObjectsIsNull():2022 -> V
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> V
-    3:3:boolean canUseJavaUtilObjectsIsNull():2022 -> V
-    1:32:boolean printWarnings():1138:1169 -> V0
-    33:72:boolean printWarnings():1165:1204 -> V0
-    1:2:boolean canUseMultidex():2013:2014 -> W
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> W
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> W
-    3:3:boolean canUseMultidex():2014 -> W
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> W
-    4:4:boolean canUseMultidex():2014 -> W
-    1:1:com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions protoShrinking():777:777 -> W0
-    1:1:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1985:1985 -> X
-    1:1:boolean canUseNativeDexPcInsteadOfDebugInfo():1989 -> X
-    2:2:boolean canUseNativeDexPcInsteadOfDebugInfo():1989:1989 -> X
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> X
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> X
-    3:3:boolean canUseNativeDexPcInsteadOfDebugInfo():1990 -> X
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> X
-    4:4:boolean canUseNativeDexPcInsteadOfDebugInfo():1990 -> X
-    5:5:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1981:1981 -> X
-    5:5:boolean canUseNativeDexPcInsteadOfDebugInfo():1991 -> X
-    1:1:com.android.tools.r8.cf.CfVersion requiredCfVersionForConstClassInstructions():1911:1911 -> X0
+    1:1:boolean canUseInvokePolymorphicOnVarHandle():1919 -> T
+    2:2:boolean canUseInvokePolymorphicOnVarHandle():1919:1919 -> T
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> T
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> T
+    3:3:boolean canUseInvokePolymorphicOnVarHandle():1919 -> T
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> T
+    4:4:boolean canUseInvokePolymorphicOnVarHandle():1919 -> T
+    1:1:com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions kotlinOptimizationOptions():783:783 -> T0
+    1:1:boolean canUseJavaUtilObjects():2021:2021 -> U
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> U
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> U
+    2:2:boolean canUseJavaUtilObjects():2021 -> U
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> U
+    3:3:boolean canUseJavaUtilObjects():2021 -> U
+    1:1:boolean parseSignatureAttribute():641:641 -> U0
+    1:1:boolean canUseJavaUtilObjectsIsNull():2025:2025 -> V
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> V
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> V
+    2:2:boolean canUseJavaUtilObjectsIsNull():2025 -> V
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> V
+    3:3:boolean canUseJavaUtilObjectsIsNull():2025 -> V
+    1:32:boolean printWarnings():1140:1171 -> V0
+    33:72:boolean printWarnings():1167:1206 -> V0
+    1:2:boolean canUseMultidex():2016:2017 -> W
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> W
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> W
+    3:3:boolean canUseMultidex():2017 -> W
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> W
+    4:4:boolean canUseMultidex():2017 -> W
+    1:1:com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions protoShrinking():779:779 -> W0
+    1:1:boolean com.android.tools.r8.utils.InternalOptions.canUseDexPc2PcAsDebugInformation():1988:1988 -> X
+    1:1:boolean canUseNativeDexPcInsteadOfDebugInfo():1992 -> X
+    2:2:boolean canUseNativeDexPcInsteadOfDebugInfo():1992:1992 -> X
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> X
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> X
+    3:3:boolean canUseNativeDexPcInsteadOfDebugInfo():1993 -> X
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> X
+    4:4:boolean canUseNativeDexPcInsteadOfDebugInfo():1993 -> X
+    5:5:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1984:1984 -> X
+    5:5:boolean canUseNativeDexPcInsteadOfDebugInfo():1994 -> X
+    1:1:com.android.tools.r8.cf.CfVersion requiredCfVersionForConstClassInstructions():1914:1914 -> X0
     2:2:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> X0
-    2:2:com.android.tools.r8.cf.CfVersion requiredCfVersionForConstClassInstructions():1911 -> X0
-    3:4:com.android.tools.r8.cf.CfVersion requiredCfVersionForConstClassInstructions():1911:1912 -> X0
+    2:2:com.android.tools.r8.cf.CfVersion requiredCfVersionForConstClassInstructions():1914 -> X0
+    3:4:com.android.tools.r8.cf.CfVersion requiredCfVersionForConstClassInstructions():1914:1915 -> X0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> Y
-    1:1:boolean canUseNotInstruction():2098 -> Y
-    2:2:boolean canUseNotInstruction():2098:2098 -> Y
-    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> Y
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> Y
-    3:3:boolean canUseNotInstruction():2098 -> Y
-    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> Y
-    4:4:boolean canUseNotInstruction():2098 -> Y
+    1:1:boolean canUseNotInstruction():2101 -> Y
+    2:2:boolean canUseNotInstruction():2101:2101 -> Y
+    3:3:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> Y
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> Y
+    3:3:boolean canUseNotInstruction():2101 -> Y
+    4:4:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> Y
+    4:4:boolean canUseNotInstruction():2101 -> Y
     1:1:boolean com.android.tools.r8.utils.InternalOptions.hasConsumer():427:427 -> Y0
     1:1:boolean shouldBackportMethods():455 -> Y0
     2:2:boolean shouldBackportMethods():455:455 -> Y0
-    1:1:boolean canUsePrivateInterfaceMethods():1974:1974 -> Z
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> Z
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> Z
-    2:2:boolean canUsePrivateInterfaceMethods():1974 -> Z
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> Z
-    3:3:boolean canUsePrivateInterfaceMethods():1974 -> Z
-    1:1:boolean shouldDesugarRecords():528:528 -> Z0
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.canUseRecords():1944:1944 -> Z0
-    2:2:boolean shouldDesugarRecords():528 -> Z0
+    1:1:boolean canUsePrivateInterfaceMethods():1977:1977 -> Z
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> Z
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> Z
+    2:2:boolean canUsePrivateInterfaceMethods():1977 -> Z
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> Z
+    3:3:boolean canUsePrivateInterfaceMethods():1977 -> Z
+    1:1:boolean shouldDesugarRecords():530:530 -> Z0
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.canUseRecords():1947:1947 -> Z0
+    2:2:boolean shouldDesugarRecords():530 -> Z0
     boolean lambda$new$0(java.lang.String,java.lang.Long) -> a
     1:1:com.android.tools.r8.utils.InternalOptions$InlinerOptions access$200(com.android.tools.r8.utils.InternalOptions):112:112 -> a
     2:3:void setMarker(com.android.tools.r8.dex.Marker):371:372 -> a
@@ -123404,50 +123405,50 @@
     13:13:com.android.tools.r8.dex.Marker getMarker(com.android.tools.r8.dex.Marker$Tool):379 -> a
     14:19:com.android.tools.r8.dex.Marker com.android.tools.r8.utils.InternalOptions.createMarker(com.android.tools.r8.dex.Marker$Tool):391:396 -> a
     14:19:com.android.tools.r8.dex.Marker getMarker(com.android.tools.r8.dex.Marker$Tool):379 -> a
-    20:20:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> a
+    20:20:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> a
     20:20:com.android.tools.r8.dex.Marker com.android.tools.r8.utils.InternalOptions.createMarker(com.android.tools.r8.dex.Marker$Tool):397 -> a
     20:20:com.android.tools.r8.dex.Marker getMarker(com.android.tools.r8.dex.Marker$Tool):379 -> a
     21:30:com.android.tools.r8.dex.Marker com.android.tools.r8.utils.InternalOptions.createMarker(com.android.tools.r8.dex.Marker$Tool):397:406 -> a
     21:30:com.android.tools.r8.dex.Marker getMarker(com.android.tools.r8.dex.Marker$Tool):379 -> a
     31:40:void setDumpInputFlags(com.android.tools.r8.utils.DumpInputFlags,boolean):413:422 -> a
-    41:42:void setMinApiLevel(com.android.tools.r8.utils.AndroidApiLevel):584:585 -> a
-    43:43:boolean isOptimizationEnabled():625:625 -> a
-    44:53:boolean isClassMergingExtensionRequired(com.android.tools.r8.shaking.Enqueuer$Mode):682:691 -> a
-    54:57:void setDesugaredLibrarySpecification(com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibrarySpecification):901:904 -> a
-    58:58:void lambda$setDesugaredLibrarySpecification$1(com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibrarySpecification,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication):907:907 -> a
-    59:64:void loadMachineDesugaredLibrarySpecification(com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication):915:920 -> a
-    65:67:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):993:995 -> a
+    41:42:void setMinApiLevel(com.android.tools.r8.utils.AndroidApiLevel):586:587 -> a
+    43:43:boolean isOptimizationEnabled():627:627 -> a
+    44:53:boolean isClassMergingExtensionRequired(com.android.tools.r8.shaking.Enqueuer$Mode):684:693 -> a
+    54:57:void setDesugaredLibrarySpecification(com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibrarySpecification):903:906 -> a
+    58:58:void lambda$setDesugaredLibrarySpecification$1(com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibrarySpecification,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication):909:909 -> a
+    59:64:void loadMachineDesugaredLibrarySpecification(com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication):917:922 -> a
+    65:67:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):995:997 -> a
     68:68:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
-    68:68:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):995 -> a
+    68:68:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):997 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    69:69:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):995:995 -> a
-    70:70:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):993:993 -> a
-    71:77:void warningMissingTypeForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.position.Position,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexMethod):1037:1043 -> a
-    78:78:void warningMissingTypeForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.position.Position,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexMethod):1038:1038 -> a
-    79:80:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1050:1051 -> a
+    69:69:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):997:997 -> a
+    70:70:java.lang.RuntimeException errorMissingNestMember(com.android.tools.r8.ir.desugar.nest.Nest):995:995 -> a
+    71:77:void warningMissingTypeForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.position.Position,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexMethod):1039:1045 -> a
+    78:78:void warningMissingTypeForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.position.Position,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexMethod):1040:1040 -> a
+    79:80:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1052:1053 -> a
     81:81:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
-    81:81:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1053 -> a
+    81:81:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1055 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    82:88:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1053:1059 -> a
-    89:89:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1051:1051 -> a
-    90:98:void warningInvalidLibrarySuperclassForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,java.lang.String,java.util.Set):1079:1087 -> a
-    99:99:void warningInvalidLibrarySuperclassForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,java.lang.String,java.util.Set):1086:1086 -> a
-    100:100:void warningInvalidLibrarySuperclassForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,java.lang.String,java.util.Set):1080:1080 -> a
-    101:101:com.android.tools.r8.references.MethodReference lambda$warningInvalidLibrarySuperclassForDesugar$2(com.android.tools.r8.graph.DexMethod):1087:1087 -> a
-    102:105:void warningMissingEnclosingMember(com.android.tools.r8.graph.DexType,com.android.tools.r8.origin.Origin,com.android.tools.r8.cf.CfVersion):1092:1095 -> a
-    106:110:void warningInvalidParameterAnnotations(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.origin.Origin,int,int):1100:1104 -> a
-    111:117:void warningInvalidDebugInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.origin.Origin,com.android.tools.r8.errors.InvalidDebugInfoException):1109:1115 -> a
-    118:118:void warningInvalidDebugInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.origin.Origin,com.android.tools.r8.errors.InvalidDebugInfoException):1110:1110 -> a
-    119:119:java.util.List lambda$warningInvalidDebugInfo$5(com.android.tools.r8.origin.Origin):1114:1114 -> a
-    120:125:boolean methodMatchesFilter(com.android.tools.r8.graph.DexEncodedMethod):1218:1223 -> a
-    126:126:boolean canUseConstClassInstructions(com.android.tools.r8.cf.CfVersion):1906:1906 -> a
+    82:88:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1055:1061 -> a
+    89:89:void warningMissingInterfaceForDesugar(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexType):1053:1053 -> a
+    90:98:void warningInvalidLibrarySuperclassForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,java.lang.String,java.util.Set):1081:1089 -> a
+    99:99:void warningInvalidLibrarySuperclassForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,java.lang.String,java.util.Set):1088:1088 -> a
+    100:100:void warningInvalidLibrarySuperclassForDesugar(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,java.lang.String,java.util.Set):1082:1082 -> a
+    101:101:com.android.tools.r8.references.MethodReference lambda$warningInvalidLibrarySuperclassForDesugar$2(com.android.tools.r8.graph.DexMethod):1089:1089 -> a
+    102:105:void warningMissingEnclosingMember(com.android.tools.r8.graph.DexType,com.android.tools.r8.origin.Origin,com.android.tools.r8.cf.CfVersion):1094:1097 -> a
+    106:110:void warningInvalidParameterAnnotations(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.origin.Origin,int,int):1102:1106 -> a
+    111:117:void warningInvalidDebugInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.origin.Origin,com.android.tools.r8.errors.InvalidDebugInfoException):1111:1117 -> a
+    118:118:void warningInvalidDebugInfo(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.origin.Origin,com.android.tools.r8.errors.InvalidDebugInfoException):1112:1112 -> a
+    119:119:java.util.List lambda$warningInvalidDebugInfo$5(com.android.tools.r8.origin.Origin):1116:1116 -> a
+    120:125:boolean methodMatchesFilter(com.android.tools.r8.graph.DexEncodedMethod):1220:1225 -> a
+    126:126:boolean canUseConstClassInstructions(com.android.tools.r8.cf.CfVersion):1909:1909 -> a
     127:127:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    127:127:boolean canUseConstClassInstructions(com.android.tools.r8.cf.CfVersion):1906 -> a
-    128:129:boolean canUseConstClassInstructions(com.android.tools.r8.cf.CfVersion):1906:1907 -> a
-    1:1:boolean canUseSameArrayAndResultRegisterInArrayGetWide():2071:2071 -> a0
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> a0
-    2:2:boolean canUseSameArrayAndResultRegisterInArrayGetWide():2072 -> a0
-    3:3:boolean canUseSameArrayAndResultRegisterInArrayGetWide():2072:2072 -> a0
+    127:127:boolean canUseConstClassInstructions(com.android.tools.r8.cf.CfVersion):1909 -> a
+    128:129:boolean canUseConstClassInstructions(com.android.tools.r8.cf.CfVersion):1909:1910 -> a
+    1:1:boolean canUseSameArrayAndResultRegisterInArrayGetWide():2074:2074 -> a0
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> a0
+    2:2:boolean canUseSameArrayAndResultRegisterInArrayGetWide():2075 -> a0
+    3:3:boolean canUseSameArrayAndResultRegisterInArrayGetWide():2075:2075 -> a0
     1:1:boolean shouldKeepStackMapTable():459:459 -> a1
     2:2:boolean com.android.tools.r8.utils.InternalOptions.isRelocatorCompilation():451:451 -> a1
     2:2:boolean shouldKeepStackMapTable():459 -> a1
@@ -123456,82 +123457,82 @@
     5:5:boolean shouldKeepStackMapTable():461 -> a1
     6:6:boolean shouldKeepStackMapTable():462:462 -> a1
     1:1:com.android.tools.r8.utils.Box access$300(com.android.tools.r8.utils.InternalOptions):112:112 -> b
-    2:2:boolean isTreeShakingEnabled():615:615 -> b
-    3:36:java.lang.String messageErrorIncompleteNest(com.android.tools.r8.ir.desugar.nest.Nest):999:1032 -> b
-    37:37:java.util.List lambda$warningInvalidParameterAnnotations$4(com.android.tools.r8.origin.Origin):1103:1103 -> b
-    1:1:boolean canUseSuppressedExceptions():2027:2027 -> b0
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> b0
-    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> b0
-    2:2:boolean canUseSuppressedExceptions():2027 -> b0
-    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> b0
-    3:3:boolean canUseSuppressedExceptions():2027 -> b0
+    2:2:boolean isTreeShakingEnabled():617:617 -> b
+    3:36:java.lang.String messageErrorIncompleteNest(com.android.tools.r8.ir.desugar.nest.Nest):1001:1034 -> b
+    37:37:java.util.List lambda$warningInvalidParameterAnnotations$4(com.android.tools.r8.origin.Origin):1105:1105 -> b
+    1:1:boolean canUseSuppressedExceptions():2030:2030 -> b0
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> b0
+    2:2:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> b0
+    2:2:boolean canUseSuppressedExceptions():2030 -> b0
+    3:3:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> b0
+    3:3:boolean canUseSuppressedExceptions():2030 -> b0
     1:1:boolean shouldRerunEnqueuer():466:466 -> b1
-    1:1:boolean isMinificationEnabled():620:620 -> c
-    2:2:java.util.List lambda$warningMissingEnclosingMember$3(com.android.tools.r8.origin.Origin):1094:1094 -> c
-    1:1:com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions classInlinerOptions():765:765 -> c0
+    1:1:boolean isMinificationEnabled():622:622 -> c
+    2:2:java.util.List lambda$warningMissingEnclosingMember$3(com.android.tools.r8.origin.Origin):1096:1096 -> c
+    1:1:com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions classInlinerOptions():767:767 -> c0
     1:18:void signalFinishedToConsumers():502:519 -> c1
-    1:1:boolean isRepackagingEnabled():630:630 -> d
-    2:2:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isSome():1264:1264 -> d
-    2:2:boolean isRepackagingEnabled():630 -> d
+    1:1:boolean isRepackagingEnabled():632:632 -> d
+    2:2:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isSome():1266:1266 -> d
+    2:2:boolean isRepackagingEnabled():632 -> d
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    3:3:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isNone():1248:1248 -> d
-    3:3:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isSome():1264 -> d
-    3:3:boolean isRepackagingEnabled():630 -> d
+    3:3:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isNone():1250:1250 -> d
+    3:3:boolean com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode.isSome():1266 -> d
+    3:3:boolean isRepackagingEnabled():632 -> d
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    4:4:boolean isRepackagingEnabled():630:630 -> d
-    5:14:void warningExperimentalClassFileVersion(com.android.tools.r8.origin.Origin):1121:1130 -> d
-    15:21:void warningExperimentalClassFileVersion(com.android.tools.r8.origin.Origin):1126:1132 -> d
-    1:1:com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions desugarSpecificOptions():789:789 -> d0
-    1:2:void warningReadingKotlinMetadataReflective():1064:1065 -> d1
+    4:4:boolean isRepackagingEnabled():632:632 -> d
+    5:14:void warningExperimentalClassFileVersion(com.android.tools.r8.origin.Origin):1123:1132 -> d
+    15:21:void warningExperimentalClassFileVersion(com.android.tools.r8.origin.Origin):1128:1134 -> d
+    1:1:com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions desugarSpecificOptions():791:791 -> d0
+    1:2:void warningReadingKotlinMetadataReflective():1066:1067 -> d1
     1:1:boolean access$000(java.lang.String):0:0 -> e
-    2:3:boolean com.android.tools.r8.utils.InternalOptions.isSystemPropertyForDevelopmentSet(java.lang.String):822:823 -> e
+    2:3:boolean com.android.tools.r8.utils.InternalOptions.isSystemPropertyForDevelopmentSet(java.lang.String):824:825 -> e
     2:3:boolean access$000(java.lang.String):112 -> e
     1:1:com.android.tools.r8.graph.DexItemFactory dexItemFactory():150:150 -> e0
     1:1:int access$100(java.lang.String,int):0:0 -> f
-    2:5:int com.android.tools.r8.utils.InternalOptions.parseSystemPropertyForDevelopmentOrDefault(java.lang.String,int):830:833 -> f
+    2:5:int com.android.tools.r8.utils.InternalOptions.parseSystemPropertyForDevelopmentOrDefault(java.lang.String,int):832:835 -> f
     2:5:int access$100(java.lang.String,int):112 -> f
     1:3:void disableAllOptimizations():240:242 -> f0
-    1:1:com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions apiModelingOptions():785:785 -> g
+    1:1:com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions apiModelingOptions():787:787 -> g
     1:13:void disableGlobalOptimizations():246:258 -> g0
-    1:1:boolean assertionsEnabled():960:960 -> h
-    1:1:void disableNameReflectionOptimization():1873:1873 -> h0
-    1:1:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions callSiteOptimizationOptions():761:761 -> i
-    1:1:boolean enableBackportedMethodRewriting():1960:1960 -> i0
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> i0
-    2:2:boolean enableBackportedMethodRewriting():1960 -> i0
-    3:3:boolean enableBackportedMethodRewriting():1960:1960 -> i0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> j
-    1:1:boolean canHaveArtCheckCastVerifierBug():2348 -> j
-    2:2:boolean canHaveArtCheckCastVerifierBug():2348:2348 -> j
+    1:1:boolean assertionsEnabled():962:962 -> h
+    1:1:void disableNameReflectionOptimization():1876:1876 -> h0
+    1:1:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions callSiteOptimizationOptions():763:763 -> i
+    1:1:boolean enableBackportedMethodRewriting():1963:1963 -> i0
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> i0
+    2:2:boolean enableBackportedMethodRewriting():1963 -> i0
+    3:3:boolean enableBackportedMethodRewriting():1963:1963 -> i0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> j
+    1:1:boolean canHaveArtCheckCastVerifierBug():2351 -> j
+    2:2:boolean canHaveArtCheckCastVerifierBug():2351:2351 -> j
     1:6:void enableProtoShrinking():231:236 -> j0
-    1:1:boolean canHaveArtInstanceOfVerifierBug():2303:2303 -> k
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> k
-    2:2:boolean canHaveArtInstanceOfVerifierBug():2304 -> k
-    3:3:boolean canHaveArtInstanceOfVerifierBug():2304:2304 -> k
-    1:5:boolean enableTryWithResourcesDesugaring():1964:1968 -> k0
-    6:6:boolean com.android.tools.r8.utils.InternalOptions.canUseTwrCloseResourceMethod():1952:1952 -> k0
-    6:6:boolean enableTryWithResourcesDesugaring():1968 -> k0
-    7:7:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> k0
-    7:7:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877 -> k0
-    7:7:boolean com.android.tools.r8.utils.InternalOptions.canUseTwrCloseResourceMethod():1952 -> k0
-    7:7:boolean enableTryWithResourcesDesugaring():1968 -> k0
-    8:8:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1877:1877 -> k0
-    8:8:boolean com.android.tools.r8.utils.InternalOptions.canUseTwrCloseResourceMethod():1952 -> k0
-    8:8:boolean enableTryWithResourcesDesugaring():1968 -> k0
-    9:9:boolean enableTryWithResourcesDesugaring():1970:1970 -> k0
-    1:1:boolean canHaveArtStringNewInitBug():2228:2228 -> l
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> l
-    2:2:boolean canHaveArtStringNewInitBug():2228 -> l
-    3:3:boolean canHaveArtStringNewInitBug():2228:2228 -> l
-    1:9:java.util.Set getExtensiveInterfaceMethodMinifierLoggingFilter():810:818 -> l0
-    1:1:boolean canHaveBoundsCheckEliminationBug():2089:2089 -> m
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> m
-    2:2:boolean canHaveBoundsCheckEliminationBug():2089 -> m
-    3:3:boolean canHaveBoundsCheckEliminationBug():2089:2089 -> m
-    1:9:java.util.Set getExtensiveLoggingFilter():797:805 -> m0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> n
-    1:1:boolean canHaveCmpIfFloatBug():2181 -> n
-    2:2:boolean canHaveCmpIfFloatBug():2181:2181 -> n
+    1:1:boolean canHaveArtInstanceOfVerifierBug():2306:2306 -> k
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> k
+    2:2:boolean canHaveArtInstanceOfVerifierBug():2307 -> k
+    3:3:boolean canHaveArtInstanceOfVerifierBug():2307:2307 -> k
+    1:5:boolean enableTryWithResourcesDesugaring():1967:1971 -> k0
+    6:6:boolean com.android.tools.r8.utils.InternalOptions.canUseTwrCloseResourceMethod():1955:1955 -> k0
+    6:6:boolean enableTryWithResourcesDesugaring():1971 -> k0
+    7:7:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> k0
+    7:7:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880 -> k0
+    7:7:boolean com.android.tools.r8.utils.InternalOptions.canUseTwrCloseResourceMethod():1955 -> k0
+    7:7:boolean enableTryWithResourcesDesugaring():1971 -> k0
+    8:8:boolean com.android.tools.r8.utils.InternalOptions.hasMinApi(com.android.tools.r8.utils.AndroidApiLevel):1880:1880 -> k0
+    8:8:boolean com.android.tools.r8.utils.InternalOptions.canUseTwrCloseResourceMethod():1955 -> k0
+    8:8:boolean enableTryWithResourcesDesugaring():1971 -> k0
+    9:9:boolean enableTryWithResourcesDesugaring():1973:1973 -> k0
+    1:1:boolean canHaveArtStringNewInitBug():2231:2231 -> l
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> l
+    2:2:boolean canHaveArtStringNewInitBug():2231 -> l
+    3:3:boolean canHaveArtStringNewInitBug():2231:2231 -> l
+    1:9:java.util.Set getExtensiveInterfaceMethodMinifierLoggingFilter():812:820 -> l0
+    1:1:boolean canHaveBoundsCheckEliminationBug():2092:2092 -> m
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> m
+    2:2:boolean canHaveBoundsCheckEliminationBug():2092 -> m
+    3:3:boolean canHaveBoundsCheckEliminationBug():2092:2092 -> m
+    1:9:java.util.Set getExtensiveLoggingFilter():799:807 -> m0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> n
+    1:1:boolean canHaveCmpIfFloatBug():2184 -> n
+    2:2:boolean canHaveCmpIfFloatBug():2184:2184 -> n
     1:1:com.android.tools.r8.utils.InternalOutputMode getInternalOutputMode():431:431 -> n0
     2:2:boolean com.android.tools.r8.utils.InternalOptions.hasConsumer():427:427 -> n0
     2:2:com.android.tools.r8.utils.InternalOutputMode getInternalOutputMode():431 -> n0
@@ -123545,73 +123546,73 @@
     8:8:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> n0
     8:8:com.android.tools.r8.utils.InternalOutputMode getInternalOutputMode():436 -> n0
     9:11:com.android.tools.r8.utils.InternalOutputMode getInternalOutputMode():437:439 -> n0
-    1:1:boolean canHaveCmpLongBug():2153:2153 -> o
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> o
-    2:2:boolean canHaveCmpLongBug():2153 -> o
-    3:3:boolean canHaveCmpLongBug():2153:2153 -> o
-    1:1:com.android.tools.r8.utils.AndroidApiLevel getMinApiLevel():580:580 -> o0
-    1:1:boolean canHaveDalvikAbstractMethodOnNonAbstractClassVerificationBug():2380:2380 -> p
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> p
-    2:2:boolean canHaveDalvikAbstractMethodOnNonAbstractClassVerificationBug():2380 -> p
-    3:3:boolean canHaveDalvikAbstractMethodOnNonAbstractClassVerificationBug():2380:2380 -> p
-    1:1:com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions getOpenClosedInterfacesOptions():793:793 -> p0
+    1:1:boolean canHaveCmpLongBug():2156:2156 -> o
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> o
+    2:2:boolean canHaveCmpLongBug():2156 -> o
+    3:3:boolean canHaveCmpLongBug():2156:2156 -> o
+    1:1:com.android.tools.r8.utils.AndroidApiLevel getMinApiLevel():582:582 -> o0
+    1:1:boolean canHaveDalvikAbstractMethodOnNonAbstractClassVerificationBug():2383:2383 -> p
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> p
+    2:2:boolean canHaveDalvikAbstractMethodOnNonAbstractClassVerificationBug():2383 -> p
+    3:3:boolean canHaveDalvikAbstractMethodOnNonAbstractClassVerificationBug():2383:2383 -> p
+    1:1:com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions getOpenClosedInterfacesOptions():795:795 -> p0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> q
-    1:1:boolean canHaveDalvikCatchHandlerVerificationBug():2372 -> q
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> q
-    2:2:boolean canHaveDalvikCatchHandlerVerificationBug():2372 -> q
-    3:3:boolean canHaveDalvikCatchHandlerVerificationBug():2372:2372 -> q
+    1:1:boolean canHaveDalvikCatchHandlerVerificationBug():2375 -> q
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> q
+    2:2:boolean canHaveDalvikCatchHandlerVerificationBug():2375 -> q
+    3:3:boolean canHaveDalvikCatchHandlerVerificationBug():2375:2375 -> q
     1:1:com.android.tools.r8.shaking.ProguardConfiguration getProguardConfiguration():158:158 -> q0
     1:1:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> r
-    1:1:boolean canHaveDalvikIntUsedAsNonIntPrimitiveTypeBug():2394 -> r
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> r
-    2:2:boolean canHaveDalvikIntUsedAsNonIntPrimitiveTypeBug():2394 -> r
-    3:3:boolean canHaveDalvikIntUsedAsNonIntPrimitiveTypeBug():2394:2394 -> r
-    1:1:com.android.tools.r8.ir.desugar.TypeRewriter getTypeRewriter():928:928 -> r0
+    1:1:boolean canHaveDalvikIntUsedAsNonIntPrimitiveTypeBug():2397 -> r
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> r
+    2:2:boolean canHaveDalvikIntUsedAsNonIntPrimitiveTypeBug():2397 -> r
+    3:3:boolean canHaveDalvikIntUsedAsNonIntPrimitiveTypeBug():2397:2397 -> r
+    1:1:com.android.tools.r8.ir.desugar.TypeRewriter getTypeRewriter():930:930 -> r0
     2:2:com.android.tools.r8.ir.desugar.TypeRewriter com.android.tools.r8.ir.desugar.TypeRewriter.empty():18:18 -> r0
-    2:2:com.android.tools.r8.ir.desugar.TypeRewriter getTypeRewriter():929 -> r0
-    3:3:com.android.tools.r8.ir.desugar.TypeRewriter getTypeRewriter():930:930 -> r0
-    1:1:boolean canHaveDex2OatInliningIssue():2220:2220 -> s
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> s
-    2:2:boolean canHaveDex2OatInliningIssue():2220 -> s
-    3:3:boolean canHaveDex2OatInliningIssue():2220:2220 -> s
-    1:1:boolean hasMethodsFilter():1213:1213 -> s0
-    1:1:boolean canHaveDex2OatLinkedListBug():2212:2212 -> t
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> t
-    2:2:boolean canHaveDex2OatLinkedListBug():2212 -> t
-    3:3:boolean canHaveDex2OatLinkedListBug():2212:2212 -> t
+    2:2:com.android.tools.r8.ir.desugar.TypeRewriter getTypeRewriter():931 -> r0
+    3:3:com.android.tools.r8.ir.desugar.TypeRewriter getTypeRewriter():932:932 -> r0
+    1:1:boolean canHaveDex2OatInliningIssue():2223:2223 -> s
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> s
+    2:2:boolean canHaveDex2OatInliningIssue():2223 -> s
+    3:3:boolean canHaveDex2OatInliningIssue():2223:2223 -> s
+    1:1:boolean hasMethodsFilter():1215:1215 -> s0
+    1:1:boolean canHaveDex2OatLinkedListBug():2215:2215 -> t
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> t
+    2:2:boolean canHaveDex2OatLinkedListBug():2215 -> t
+    3:3:boolean canHaveDex2OatLinkedListBug():2215:2215 -> t
     1:1:boolean hasProguardConfiguration():154:154 -> t0
-    1:1:boolean canHaveExceptionTargetingLoopHeaderBug():2261:2261 -> u
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> u
-    2:2:boolean canHaveExceptionTargetingLoopHeaderBug():2261 -> u
-    3:3:boolean canHaveExceptionTargetingLoopHeaderBug():2261:2261 -> u
-    1:1:boolean hasUsageInformationConsumer():889:889 -> u0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> v
-    1:1:boolean canHaveExceptionTypeBug():2340 -> v
-    2:2:boolean canHaveExceptionTypeBug():2340:2340 -> v
-    1:1:com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions horizontalClassMergerOptions():773:773 -> v0
-    1:1:boolean canHaveForwardingInitInliningBug():2249:2249 -> w
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> w
-    2:2:boolean canHaveForwardingInitInliningBug():2249 -> w
-    3:3:boolean canHaveForwardingInitInliningBug():2249:2249 -> w
-    1:1:com.android.tools.r8.utils.InternalOptions$InlinerOptions inlinerOptions():769:769 -> w0
-    1:1:boolean canHaveInvokeInterfaceToObjectMethodBug():2437:2437 -> x
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> x
-    2:2:boolean canHaveInvokeInterfaceToObjectMethodBug():2437 -> x
-    3:3:boolean canHaveInvokeInterfaceToObjectMethodBug():2437:2437 -> x
-    1:2:boolean isAccessModificationEnabled():697:698 -> x0
-    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> y
-    1:1:boolean canHaveLongToIntBug():2327 -> y
-    2:2:boolean canHaveLongToIntBug():2327:2327 -> y
-    1:1:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():635:635 -> y0
-    1:1:boolean isAnnotationRemovalEnabled():610 -> y0
-    1:1:boolean canHaveMul2AddrBug():2203:2203 -> z
-    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():580:580 -> z
-    2:2:boolean canHaveMul2AddrBug():2203 -> z
-    3:3:boolean canHaveMul2AddrBug():2203:2203 -> z
+    1:1:boolean canHaveExceptionTargetingLoopHeaderBug():2264:2264 -> u
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> u
+    2:2:boolean canHaveExceptionTargetingLoopHeaderBug():2264 -> u
+    3:3:boolean canHaveExceptionTargetingLoopHeaderBug():2264:2264 -> u
+    1:1:boolean hasUsageInformationConsumer():891:891 -> u0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> v
+    1:1:boolean canHaveExceptionTypeBug():2343 -> v
+    2:2:boolean canHaveExceptionTypeBug():2343:2343 -> v
+    1:1:com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions horizontalClassMergerOptions():775:775 -> v0
+    1:1:boolean canHaveForwardingInitInliningBug():2252:2252 -> w
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> w
+    2:2:boolean canHaveForwardingInitInliningBug():2252 -> w
+    3:3:boolean canHaveForwardingInitInliningBug():2252:2252 -> w
+    1:1:com.android.tools.r8.utils.InternalOptions$InlinerOptions inlinerOptions():771:771 -> w0
+    1:1:boolean canHaveInvokeInterfaceToObjectMethodBug():2440:2440 -> x
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> x
+    2:2:boolean canHaveInvokeInterfaceToObjectMethodBug():2440 -> x
+    3:3:boolean canHaveInvokeInterfaceToObjectMethodBug():2440:2440 -> x
+    1:2:boolean isAccessModificationEnabled():699:700 -> x0
+    1:1:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> y
+    1:1:boolean canHaveLongToIntBug():2330 -> y
+    2:2:boolean canHaveLongToIntBug():2330:2330 -> y
+    1:1:boolean com.android.tools.r8.utils.InternalOptions.isForceProguardCompatibilityEnabled():637:637 -> y0
+    1:1:boolean isAnnotationRemovalEnabled():612 -> y0
+    1:1:boolean canHaveMul2AddrBug():2206:2206 -> z
+    2:2:com.android.tools.r8.utils.AndroidApiLevel com.android.tools.r8.utils.InternalOptions.getMinApiLevel():582:582 -> z
+    2:2:boolean canHaveMul2AddrBug():2206 -> z
+    3:3:boolean canHaveMul2AddrBug():2206:2206 -> z
     1:1:boolean isDesugaredLibraryCompilation():447:447 -> z0
 com.android.tools.r8.utils.InternalOptions$1 -> com.android.tools.r8.internal.gu:
     int[] $SwitchMap$com$android$tools$r8$utils$OffOrAuto -> a
-    1:1:void <clinit>():1964:1964 -> <clinit>
+    1:1:void <clinit>():1967:1967 -> <clinit>
 com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions -> com.android.tools.r8.internal.hu$a:
     java.util.function.BiConsumer tracedMethodApiLevelCallback -> h
     boolean enableApiCallerIdentification -> a
@@ -123621,48 +123622,48 @@
     boolean enableStubbingOfClasses -> c
     java.util.Map classApiMapping -> g
     boolean enableOutliningOfMethods -> d
-    1:12:void <init>():1589:1600 -> <init>
-    1:12:void visitMockedApiLevelsForReferences(com.android.tools.r8.graph.DexItemFactory,java.util.function.BiConsumer):1604:1615 -> a
-    13:13:void lambda$visitMockedApiLevelsForReferences$0(java.util.function.BiConsumer,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.references.ClassReference,com.android.tools.r8.utils.AndroidApiLevel):1609:1609 -> a
-    14:14:void lambda$visitMockedApiLevelsForReferences$1(java.util.function.BiConsumer,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.references.FieldReference,com.android.tools.r8.utils.AndroidApiLevel):1613:1613 -> a
-    15:15:void lambda$visitMockedApiLevelsForReferences$2(java.util.function.BiConsumer,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.references.MethodReference,com.android.tools.r8.utils.AndroidApiLevel):1617:1617 -> a
-    16:16:void disableApiCallerIdentification():1622:1622 -> a
+    1:12:void <init>():1591:1602 -> <init>
+    1:12:void visitMockedApiLevelsForReferences(com.android.tools.r8.graph.DexItemFactory,java.util.function.BiConsumer):1606:1617 -> a
+    13:13:void lambda$visitMockedApiLevelsForReferences$0(java.util.function.BiConsumer,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.references.ClassReference,com.android.tools.r8.utils.AndroidApiLevel):1611:1611 -> a
+    14:14:void lambda$visitMockedApiLevelsForReferences$1(java.util.function.BiConsumer,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.references.FieldReference,com.android.tools.r8.utils.AndroidApiLevel):1615:1615 -> a
+    15:15:void lambda$visitMockedApiLevelsForReferences$2(java.util.function.BiConsumer,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.references.MethodReference,com.android.tools.r8.utils.AndroidApiLevel):1619:1619 -> a
+    16:16:void disableApiCallerIdentification():1624:1624 -> a
 com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions -> com.android.tools.r8.internal.hu$b:
     com.android.tools.r8.utils.InternalOptions this$0 -> d
     boolean $assertionsDisabled -> e
     boolean enabled -> a
     boolean enableMethodStaticizing -> b
     boolean forceSyntheticsForInstanceInitializers -> c
-    1:1:void <clinit>():1300:1300 -> <clinit>
-    1:6:void <init>(com.android.tools.r8.utils.InternalOptions):1300:1305 -> <init>
-    1:1:void disableOptimization():1308:1308 -> a
-    2:2:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setEnableMethodStaticizing(boolean):1346:1346 -> a
-    1:4:boolean isEnabled():1316:1319 -> b
-    5:5:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setEnabled(boolean):1332:1332 -> b
-    6:6:void com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions.disableOptimization():1308:1308 -> b
-    6:6:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setEnabled(boolean):1334 -> b
-    1:1:boolean isForceSyntheticsForInstanceInitializersEnabled():1323:1323 -> c
-    2:2:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setForceSyntheticsForInstanceInitializers(boolean):1341:1341 -> c
-    1:1:boolean isMethodStaticizingEnabled():1327:1327 -> d
+    1:1:void <clinit>():1302:1302 -> <clinit>
+    1:6:void <init>(com.android.tools.r8.utils.InternalOptions):1302:1307 -> <init>
+    1:1:void disableOptimization():1310:1310 -> a
+    2:2:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setEnableMethodStaticizing(boolean):1348:1348 -> a
+    1:4:boolean isEnabled():1318:1321 -> b
+    5:5:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setEnabled(boolean):1334:1334 -> b
+    6:6:void com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions.disableOptimization():1310:1310 -> b
+    6:6:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setEnabled(boolean):1336 -> b
+    1:1:boolean isForceSyntheticsForInstanceInitializersEnabled():1325:1325 -> c
+    2:2:com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions setForceSyntheticsForInstanceInitializers(boolean):1343:1343 -> c
+    1:1:boolean isMethodStaticizingEnabled():1329:1329 -> d
 com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions -> com.android.tools.r8.internal.hu$c:
     com.android.tools.r8.utils.InternalOptions this$0 -> b
     boolean $assertionsDisabled -> c
     int classInliningInstructionAllowance -> a
-    1:1:void <clinit>():1351:1351 -> <clinit>
-    1:3:void <init>(com.android.tools.r8.utils.InternalOptions):1351:1353 -> <init>
-    1:4:int getClassInliningInstructionAllowance():1356:1359 -> a
+    1:1:void <clinit>():1353:1353 -> <clinit>
+    1:3:void <init>(com.android.tools.r8.utils.InternalOptions):1353:1355 -> <init>
+    1:4:int getClassInliningInstructionAllowance():1358:1361 -> a
     5:5:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    5:5:int getClassInliningInstructionAllowance():1359 -> a
+    5:5:int getClassInliningInstructionAllowance():1361 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     6:6:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    6:6:int getClassInliningInstructionAllowance():1359 -> a
-    7:7:int getClassInliningInstructionAllowance():1362:1362 -> a
+    6:6:int getClassInliningInstructionAllowance():1361 -> a
+    7:7:int getClassInliningInstructionAllowance():1364:1364 -> a
 com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions -> com.android.tools.r8.internal.hu$d:
     boolean sortMethodsOnCfOutput -> a
     boolean allowAllDesugaredInput -> b
     boolean noCfMarkerForDesugaredCode -> c
     boolean lambdaClassFieldsFinal -> d
-    1:15:void <init>():1283:1297 -> <init>
+    1:15:void <init>():1285:1299 -> <init>
 com.android.tools.r8.utils.InternalOptions$DesugarState -> com.android.tools.r8.internal.hu$e:
     com.android.tools.r8.utils.InternalOptions$DesugarState OFF -> b
     com.android.tools.r8.utils.InternalOptions$DesugarState ON -> c
@@ -123682,22 +123683,22 @@
     boolean enableClassInitializerDeadlockDetection -> b
     boolean enableInterfaceMerging -> c
     boolean enableInterfaceMergingInInitial -> d
-    1:1:void <clinit>():1416:1416 -> <clinit>
-    1:14:void <init>(com.android.tools.r8.utils.InternalOptions):1416:1429 -> <init>
-    1:1:void disable():1432:1432 -> a
-    2:2:void enableIf(boolean):1444:1444 -> a
-    3:9:boolean isEnabled(com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):1464:1470 -> a
-    1:1:void disableSyntheticMerging():1436:1436 -> b
-    2:8:boolean isInterfaceMergingEnabled(com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):1483:1489 -> b
-    1:1:void enable():1440:1440 -> c
+    1:1:void <clinit>():1418:1418 -> <clinit>
+    1:14:void <init>(com.android.tools.r8.utils.InternalOptions):1418:1431 -> <init>
+    1:1:void disable():1434:1434 -> a
+    2:2:void enableIf(boolean):1446:1446 -> a
+    3:9:boolean isEnabled(com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):1466:1472 -> a
+    1:1:void disableSyntheticMerging():1438:1438 -> b
+    2:8:boolean isInterfaceMergingEnabled(com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):1485:1491 -> b
+    1:1:void enable():1442:1442 -> c
     int getMaxClassGroupSize() -> d
-    1:1:boolean isClassInitializerDeadlockDetectionEnabled():1460:1460 -> e
-    1:1:boolean isRestrictedToSynthetics():1494:1494 -> f
-    1:1:boolean isSyntheticMergingEnabled():1479:1479 -> g
-    1:1:void setEnableClassInitializerDeadlockDetection():1498:1498 -> h
-    1:1:void setEnableInterfaceMerging():1502:1502 -> i
-    1:1:void setEnableInterfaceMergingInInitial():1506:1506 -> j
-    1:1:void setRestrictToSynthetics():1514:1514 -> k
+    1:1:boolean isClassInitializerDeadlockDetectionEnabled():1462:1462 -> e
+    1:1:boolean isRestrictedToSynthetics():1496:1496 -> f
+    1:1:boolean isSyntheticMergingEnabled():1481:1481 -> g
+    1:1:void setEnableClassInitializerDeadlockDetection():1500:1500 -> h
+    1:1:void setEnableInterfaceMerging():1504:1504 -> i
+    1:1:void setEnableInterfaceMergingInInitial():1508:1508 -> j
+    1:1:void setRestrictToSynthetics():1516:1516 -> k
 com.android.tools.r8.utils.InternalOptions$InlinerOptions -> com.android.tools.r8.internal.hu$g:
     boolean $assertionsDisabled -> m
     boolean enableInliningOfInvokesWithClassInitializationSideEffects -> i
@@ -123712,23 +123713,23 @@
     int[] multiCallerInliningInstructionLimits -> c
     boolean applyInliningToInlinee -> g
     boolean enableInlining -> a
-    1:1:void <clinit>():1367:1367 -> <clinit>
-    1:33:void <init>(com.android.tools.r8.utils.InternalOptions):1367:1399 -> <init>
-    1:5:int getSimpleInliningInstructionLimit():1403:1407 -> a
+    1:1:void <clinit>():1369:1369 -> <clinit>
+    1:33:void <init>(com.android.tools.r8.utils.InternalOptions):1369:1401 -> <init>
+    1:5:int getSimpleInliningInstructionLimit():1405:1409 -> a
     6:6:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    6:6:int getSimpleInliningInstructionLimit():1407 -> a
+    6:6:int getSimpleInliningInstructionLimit():1409 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     7:7:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    7:7:int getSimpleInliningInstructionLimit():1407 -> a
-    8:8:int getSimpleInliningInstructionLimit():1411:1411 -> a
+    7:7:int getSimpleInliningInstructionLimit():1409 -> a
+    8:8:int getSimpleInliningInstructionLimit():1413:1413 -> a
 com.android.tools.r8.utils.InternalOptions$InvalidParameterAnnotationInfo -> com.android.tools.r8.internal.iu:
     int expectedParameterCount -> b
     int actualParameterCount -> c
     com.android.tools.r8.graph.DexMethod method -> a
-    1:4:void <init>(com.android.tools.r8.graph.DexMethod,int,int):846:849 -> <init>
+    1:4:void <init>(com.android.tools.r8.graph.DexMethod,int,int):848:851 -> <init>
 com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions -> com.android.tools.r8.internal.ju:
     boolean disableKotlinSpecificOptimizations -> a
-    1:3:void <init>():1276:1278 -> <init>
+    1:3:void <init>():1278:1280 -> <init>
 com.android.tools.r8.utils.InternalOptions$LineNumberOptimization -> com.android.tools.r8.internal.hu$h:
     com.android.tools.r8.utils.InternalOptions$LineNumberOptimization OFF -> b
     com.android.tools.r8.utils.InternalOptions$LineNumberOptimization ON -> c
@@ -123738,21 +123739,21 @@
     java.util.List suppressions -> b
     boolean allowOpenInterfaces -> a
     boolean $assertionsDisabled -> c
-    1:1:void <clinit>():1518:1518 -> <clinit>
-    1:16:void <init>():1518:1533 -> <init>
-    1:1:void disallowOpenInterfaces():1536:1536 -> a
-    2:4:boolean isSuppressed(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1583:1585 -> a
-    5:5:boolean lambda$isSuppressed$4(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass,com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions$OpenInterfaceWitnessSuppression):1585:1585 -> a
+    1:1:void <clinit>():1520:1520 -> <clinit>
+    1:16:void <init>():1520:1535 -> <init>
+    1:1:void disallowOpenInterfaces():1538:1538 -> a
+    2:4:boolean isSuppressed(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1585:1587 -> a
+    5:5:boolean lambda$isSuppressed$4(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass,com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions$OpenInterfaceWitnessSuppression):1587:1587 -> a
     boolean lambda$suppressAllOpenInterfaces$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass) -> b
-    1:1:boolean hasSuppressions():1576:1576 -> b
-    1:1:boolean lambda$suppressAllOpenInterfacesDueToMissingClasses$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1547:1547 -> c
-    2:2:boolean isOpenInterfacesAllowed():1572:1572 -> c
-    1:2:void suppressAllOpenInterfaces():1540:1541 -> d
-    3:4:boolean lambda$suppressArrayAssignmentsToJavaLangSerializable$2(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1554:1555 -> d
-    1:2:void suppressAllOpenInterfacesDueToMissingClasses():1545:1546 -> e
-    3:9:boolean lambda$suppressZipFileAssignmentsToJavaLangAutoCloseable$3(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1562:1568 -> e
-    1:2:void suppressArrayAssignmentsToJavaLangSerializable():1551:1552 -> f
-    1:2:void suppressZipFileAssignmentsToJavaLangAutoCloseable():1559:1560 -> g
+    1:1:boolean hasSuppressions():1578:1578 -> b
+    1:1:boolean lambda$suppressAllOpenInterfacesDueToMissingClasses$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1549:1549 -> c
+    2:2:boolean isOpenInterfacesAllowed():1574:1574 -> c
+    1:2:void suppressAllOpenInterfaces():1542:1543 -> d
+    3:4:boolean lambda$suppressArrayAssignmentsToJavaLangSerializable$2(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1556:1557 -> d
+    1:2:void suppressAllOpenInterfacesDueToMissingClasses():1547:1548 -> e
+    3:9:boolean lambda$suppressZipFileAssignmentsToJavaLangAutoCloseable$3(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass):1564:1570 -> e
+    1:2:void suppressArrayAssignmentsToJavaLangSerializable():1553:1554 -> f
+    1:2:void suppressZipFileAssignmentsToJavaLangAutoCloseable():1561:1562 -> g
 com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions$OpenInterfaceWitnessSuppression -> com.android.tools.r8.internal.ku:
     boolean isSuppressed(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexClass) -> a
 com.android.tools.r8.utils.InternalOptions$OutlineOptions -> com.android.tools.r8.internal.hu$j:
@@ -123760,24 +123761,24 @@
     boolean enabled -> a
     int minSize -> b
     int maxSize -> c
-    1:5:void <init>():1268:1272 -> <init>
+    1:5:void <init>():1270:1274 -> <init>
 com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode -> com.android.tools.r8.internal.hu$k:
     com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode FLATTEN -> e
     com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode REPACKAGE -> d
     com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode MINIFICATION -> c
     com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode NONE -> b
-    1:8:void <clinit>():1238:1245 -> <clinit>
-    1:1:void <init>(java.lang.String,int):1236:1236 -> <init>
+    1:8:void <clinit>():1240:1247 -> <clinit>
+    1:1:void <init>(java.lang.String,int):1238:1238 -> <init>
 com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions -> com.android.tools.r8.internal.hu$l:
     boolean enableEnumLiteProtoShrinking -> e
     boolean enableGeneratedExtensionRegistryShrinking -> a
     boolean enableGeneratedMessageLiteShrinking -> b
     boolean enableGeneratedMessageLiteBuilderShrinking -> c
     boolean traverseOneOfAndRepeatedProtoFields -> d
-    1:7:void <init>():1626:1632 -> <init>
-    1:1:boolean enableRemoveProtoEnumSwitchMap():1646:1646 -> a
-    1:1:boolean isEnumLiteProtoShrinkingEnabled():1657:1657 -> b
-    1:1:boolean isProtoShrinkingEnabled():1650:1650 -> c
+    1:7:void <init>():1628:1634 -> <init>
+    1:1:boolean enableRemoveProtoEnumSwitchMap():1648:1648 -> a
+    1:1:boolean isEnumLiteProtoShrinkingEnabled():1659:1659 -> b
+    1:1:boolean isProtoShrinkingEnabled():1652:1652 -> c
 com.android.tools.r8.utils.InternalOptions$TestingOptions -> com.android.tools.r8.internal.hu$m:
     java.util.function.BiConsumer horizontallyMergedClassesConsumer -> i
     boolean disableMarkingMethodsFinal -> f0
@@ -123856,25 +123857,25 @@
     boolean enableSwitchToIfRewriting -> B
     boolean keepMetadataInR8IfNotRewritten -> i0
     boolean allowConflictingSyntheticTypes -> k0
-    1:200:void <init>():1661:1860 -> <init>
+    1:201:void <init>():1663:1863 -> <init>
     com.android.tools.r8.graph.DexProgramClass lambda$new$0(com.android.tools.r8.graph.AppView,java.lang.Iterable,com.android.tools.r8.graph.DexProgramClass) -> a
     void lambda$new$1(java.util.Deque) -> a
-    1:1:void setDeterminismChecker(com.android.tools.r8.utils.DeterminismChecker):1667:1667 -> a
-    2:10:void checkDeterminism(com.android.tools.r8.graph.AppView):1672:1680 -> a
-    11:11:void allowExperimentClassFileVersion(com.android.tools.r8.utils.InternalOptions):1685:1685 -> a
+    1:1:void setDeterminismChecker(com.android.tools.r8.utils.DeterminismChecker):1669:1669 -> a
+    2:10:void checkDeterminism(com.android.tools.r8.graph.AppView):1674:1682 -> a
+    11:12:void allowExperimentClassFileVersion(com.android.tools.r8.utils.InternalOptions):1687:1688 -> a
 com.android.tools.r8.utils.InternalOptions$TestingOptions$MinifierTestingOptions -> com.android.tools.r8.internal.hu$m$a:
     java.util.Comparator interfaceMethodOrdering -> a
-    1:3:void <init>():1831:1833 -> <init>
-    1:2:java.util.Comparator getInterfaceMethodOrderingOrDefault(java.util.Comparator):1837:1838 -> a
-    3:3:int lambda$getInterfaceMethodOrderingOrDefault$0(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):1839:1839 -> a
+    1:3:void <init>():1834:1836 -> <init>
+    1:2:java.util.Comparator getInterfaceMethodOrderingOrDefault(java.util.Comparator):1840:1841 -> a
+    3:3:int lambda$getInterfaceMethodOrderingOrDefault$0(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):1842:1842 -> a
 com.android.tools.r8.utils.InternalOptions$TestingOptions$ProguardIfRuleEvaluationData -> com.android.tools.r8.internal.hu$m$b:
     int numberOfProguardIfRuleMemberEvaluations -> b
     int numberOfProguardIfRuleClassEvaluations -> a
-    1:4:void <init>():1849:1852 -> <init>
+    1:4:void <init>():1852:1855 -> <init>
 com.android.tools.r8.utils.InternalOptions$TypeVersionPair -> com.android.tools.r8.internal.lu:
     com.android.tools.r8.cf.CfVersion version -> a
     com.android.tools.r8.graph.DexType type -> b
-    1:3:void <init>(com.android.tools.r8.cf.CfVersion,com.android.tools.r8.graph.DexType):858:860 -> <init>
+    1:3:void <init>(com.android.tools.r8.cf.CfVersion,com.android.tools.r8.graph.DexType):860:862 -> <init>
 com.android.tools.r8.utils.InternalOutputMode -> com.android.tools.r8.internal.mu:
     com.android.tools.r8.utils.InternalOutputMode ClassFile -> d
     com.android.tools.r8.utils.InternalOutputMode DexIndexed -> b
@@ -123995,10 +123996,10 @@
     4:12:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId runAndWriteMap(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.Timing,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):340:348 -> a
     13:23:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId runAndWriteMap(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.Timing,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):346:356 -> a
     24:32:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):482:490 -> a
-    33:33:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1981:1981 -> a
+    33:33:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1984:1984 -> a
     33:33:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):490 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    34:34:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1981:1981 -> a
+    34:34:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1984:1984 -> a
     34:34:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):490 -> a
     35:39:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):490:494 -> a
     40:40:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
@@ -124023,7 +124024,7 @@
     99:99:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):552 -> a
     100:115:boolean com.android.tools.r8.utils.LineNumberOptimizer.verifyMethodsAreKeptDirectlyOrIndirectly(com.android.tools.r8.graph.AppView,java.util.List):819:834 -> a
     100:115:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):552 -> a
-    116:116:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    116:116:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():622:622 -> a
     116:116:boolean com.android.tools.r8.shaking.KeepInfoCollection.isMinificationAllowed(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):186 -> a
     116:116:boolean com.android.tools.r8.utils.LineNumberOptimizer.verifyMethodsAreKeptDirectlyOrIndirectly(com.android.tools.r8.graph.AppView,java.util.List):834 -> a
     116:116:com.android.tools.r8.naming.ClassNameMapper run(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.OriginalSourceFiles,com.android.tools.r8.debuginfo.DebugRepresentation$DebugRepresentationPredicate):552 -> a
@@ -124136,10 +124137,10 @@
     558:558:java.util.List optimizeDexCodePositions(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,boolean,boolean):1011 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     559:636:java.util.List optimizeDexCodePositions(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,boolean,boolean):1011:1088 -> a
-    637:637:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1981:1981 -> a
+    637:637:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1984:1984 -> a
     637:637:java.util.List optimizeDexCodePositions(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,boolean,boolean):1088 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    638:638:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1981:1981 -> a
+    638:638:boolean com.android.tools.r8.utils.InternalOptions.allowDiscardingResidualDebugInfo():1984:1984 -> a
     638:638:java.util.List optimizeDexCodePositions(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,boolean,boolean):1088 -> a
     639:652:java.util.List optimizeDexCodePositions(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,boolean,boolean):1089:1102 -> a
     653:657:java.util.List optimizeDexCodePositions(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,boolean,boolean):1100:1104 -> a
